Example #1
0
        public void ANN()
        {
            //var dbn = new DeepBeliefNetwork(new Accord.Neuro.ActivationFunctions.GaussianFunction(), 1, new int[] { 3, 5, 5, 10, 3 });
            var dbn = DeepBeliefNetwork.CreateGaussianBernoulli(50, new int[] { 3, 5, 5, 10, 3 });
            var dblNode = new UnsupervisedLearning(new DeepBeliefNetworkLearning(dbn) {
                Algorithm = (h, v, i) => new ContrastiveDivergenceLearning(h,v)
                {
                    LearningRate = 0.1,
                    Momentum = 0.5,
                    Decay = 0.001
                }
            });
            var cout = new ConsoleOut("ANNOut.txt");

            dbn.UpdateVisibleWeights();

            dblNode.Process.LinkTo(cout.Output);

            var data = new double[1000000][];
            for (int i = 0; i < 1000000; i++)
            {
                var curr = new double[50];

                for (int j = 0; j < 50; j++)
                {
                    curr[j] = Math.Sin((double)j);
                }

                data[i] = curr;
            }

            dblNode.Process.Post(new MachineLearningData<double[][], double>(data));
            System.Threading.Thread.Sleep(1000);
        }
Example #2
0
        public void ClusterAlg()
        {
            var data = new double[10][];
            for (int i = 0; i < 10; i++)
            {
                var curr = new double[3];

                for (int j = 0; j < 3; j++)
                {
                    curr[j] = Math.Sin((double)j);
                }

                data[i] = curr;
            }

            var cout = new ConsoleOut("Temp.txt");
            var kNNNode = new KNearestNeighbors(3, data, new int[10] { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 });

            kNNNode.Process.LinkTo(cout.Output);
            kNNNode.Process.Post(new MachineLearningData<double[], int>(new double[] { 0, 1, 2 }));
            System.Threading.Thread.Sleep(1000);
        }