167
Elementarne wprowadzenie do techniki sieci neuronowych
neuron; jak zwykle położenie punktów wynika z wartości współczynników wag - rys. 9.3). Do takiej przypadkowo zainicjowanej sieci zaczynają napływać sygnały wejściowe, które stanowią przykładowe próbki obiektów, z którymi sieć ma do czynienia (pamiętasz może z drugiego rozdziału przykład, w którym występowali Marsjanie, Marsjanki i Marsjanięta?). Na pojawianie się tych obiektów w programie 10A.BAS będziesz miał wpływ. Kłóci się to trochę z ideą samouczenia (w końcu jak sieć ma się sama uczyć, to Ty nie powinieneś mieć nic do roboty!), jednak dopiero w dalszych doświadczeniach proces prezentacji obiektów ciągu uczącego (bez żadnych informacji na temat tego, co z nimi trzeba robić!) będzie przebiegał -tak jak w rzeczywistych zastosowaniach - niezależnie od Ciebie, w sposób losowy. W programie 10A.BAS zrobiłem celowo odstępstwo od tego ideału, ponieważ chciałbym, żebyś mógł sam zaobserwować, jak sposób pojawiania się obiektów uczących (które częściej, które rzadziej...) wpływa na proces samodzielnego żdobywania wiedzy” przez sieć. Konieczne jest tu jednak pewne zastrzeżenie. Otóż podczas samouczenia cała wiedza, jaką sieć może zdobyć, zawierać się musi w pokazywanych obiektach wejściowych, a dokładniej w tym, że obiekty te tworzą pewne klasy podobieństwa, to znaczy są wśród nich takie, które są do siebie nawzajem podobne (Marsjanie) i są odmienne od tych, które należą do innej klasy (Marsjanki). Oznacza to, że ani Ty, podając sieci obiekty uczące “z palca”, ani automatyczny generator, który zastąpi Cię w tej pracy w następnym programie - nie możecie pokazywać sieci obiektów o całkiem przypadkowym położeniu w przestrzeni sygnałów wejściowych. Pokazywane obiekty powinny tworzyć wyraźne skupiska wokół pewnych, dających się wykryć ośrodków (“typowy Marsjanin”, “typowa Marsjanka” itd.).
Rys. 9.3. Początkowe położenie punktów reprezentujących neurony w programie 10A.BAS