Exemple #1
0
        public void LogisticRegression()
        {
            var X = Matrix <double> .Build.DenseOfArray(new double[, ] {
                { 1 }, { 2 }
            });

            var Y = Matrix <double> .Build.DenseOfArray(new double[, ] {
                { 1 }
            });

            var model = new DeepCat.DeepCat();

            model.Add(new Dense(1, Activations.Sigmoid(), weightInitializer: Initializations.Fixed()));
            model.Compile(X.RowCount, LossFunctions.CrossEntropy(), Optimizers.GradientDescent(0.02));
            model.Fit(X, Y, 1);

            var a = model.Predict(X);

            a[0, 0] = Math.Round(a[0, 0], 8);

            var expectedResult = Matrix <double> .Build.DenseOfArray(new double[, ] {
                { 0.59859297 }
            });

            Assert.AreEqual(a, expectedResult);
        }
Exemple #2
0
        static void Main(string[] args)
        {
            var X = Matrix <double> .Build.Random(5, 100);

            var Y = Matrix <double> .Build.Random(1, 100);

            var test = Matrix <double> .Build.Random(5, 1);


            var model = new DeepCat();

            model.Add(new Dense(5, Activations.Relu(), weightInitializer: Initializations.RandomNormal()));
            model.Add(new Dense(5, Activations.Relu(), weightInitializer: Initializations.RandomNormal()));
            model.Add(new Dense(1, Activations.Sigmoid()));

            model.Compile(X.RowCount, LossFunctions.CrossEntropy(), Optimizers.GradientDescent(0.002));

            model.Fit(X, Y, 100);
            model.Predict(test);



            var x = 1;
        }