Пример #1
0
        public void DenseLayer_CopyLayerForPredictionModel()
        {
            var batchSize   = 1;
            var random      = new Random(232);
            var neuronCount = 5;

            var sut = new DenseLayer(neuronCount, Activation.Undefined);

            sut.Initialize(5, 1, 1, batchSize, Initialization.GlorotUniform, random);

            var layers = new List <ILayer>();

            sut.CopyLayerForPredictionModel(layers);

            var actual = (DenseLayer)layers.Single();

            Assert.AreEqual(sut.Width, actual.Width);
            Assert.AreEqual(sut.Height, actual.Height);
            Assert.AreEqual(sut.Depth, actual.Depth);

            MatrixAsserts.AreEqual(sut.Weights, actual.Weights);
            MatrixAsserts.AreEqual(sut.Bias, actual.Bias);

            Assert.AreEqual(sut.OutputActivations.RowCount, actual.OutputActivations.RowCount);
            Assert.AreEqual(sut.OutputActivations.ColumnCount, actual.OutputActivations.ColumnCount);
        }