Beispiel #1
0
        static void Main(string[] args)
        {
            var constants     = new ConstantViews();
            var changedImages = new ChangedViews();
            var table         = new Table();

            changedImages.PrepareViewsWithNoise(constants.EtalonValues, new int[] { 0, 60, 80 });
            Console.WriteLine($"Fill in speed of learning.");
            var a = Convert.ToInt32(Console.ReadLine());

            var network = new NetCore(15, 5, a, 1);

            Console.WriteLine($"Training started.");
            network.TrainTheNetwork(constants.GetMatrix());
            Console.WriteLine($"Training finished.\n\rIterations: {network.CountOfIterations}");

            foreach (var i in Enumerable.Range(0, changedImages.Views.Count))
            {
                Console.WriteLine($"Image {i + 1}\n\r\n\r{changedImages.ToString(i)}\n\r\n\r{constants.ToString()}\n\r");

                var klaster = network.ProceedData(changedImages.GetMatrix(i));

                var results = new bool[5];
                if (klaster > 0)
                {
                    results[klaster - 1] = true;
                }

                table.ColumnNames = new string[] { "Source 1", "Source 2", "Source 3", "Source 4", "Source 5" };
                var output = table.GenerateTable <bool, string>(results, new string[] { string.Empty, string.Empty, string.Empty, string.Empty, string.Empty });

                Console.WriteLine($"{output}\n\r\n\r");
            }

            Console.Read();
        }