コード例 #1
0
        private void testujBtn_Click(object sender, EventArgs e)
        {
            siec.wyliczWartoscWyjsciowaSieci(siec.warstwy, testWejscia.ToArray());
            List <double> wyjscia = siec.daneWyjsciowe();
            string        pom     = "Wyjscia: ";

            for (int i = 0; i < wyjscia.Count; i++)
            {
                if (i < wyjscia.Count - 1)
                {
                    pom += (wyjscia[i] + ", ");
                }
                else
                {
                    pom += wyjscia[i];
                }
            }
            wyjscieLbl.Text = pom;
        }
コード例 #2
0
 public static void przeuczSiec(List <double[]> listaProbek, Siec siec, Propagacja propagacja, int iloscWejsc)
 {
     for (int j = 0; j < 20000; j++)
     {
         for (int i = 0; i < listaProbek.Count; i++)
         {
             // siec.wyswietlListeNeuronowZWagami();
             siec.wyliczWartoscWyjsciowaSieci(siec.warstwy, listaProbek[i]);
             propagacja.wyliczBlad(listaProbek[i].Skip(iloscWejsc).ToArray());
             propagacja.wyliczKoretke(listaProbek[i], iloscWejsc);
         }
         randomizujListe(listaProbek);
         if (j % 1000 == 0)
         {
             Console.WriteLine("\n========================================");
             Console.WriteLine("Epoka: " + j);
             propagacja.wyswietlKOrektyWszystkichWag(propagacja.korektyWagCalejSieci);
         }
         //nadpisanie wag po propagacji wszystkich probek
         propagacja.nadpiszWagi(siec, propagacja.korektyWagCalejSieci);
         propagacja.korektyWagCalejSieci.Clear();
     }
 }