299
wprowadzenie do techniki sieci
Czym jest “nauczyciel” w przypadku uczenia sieci neuronowej?
Warto wyjaśnić, jak należy rozumieć pojęcie “nauczyciela” trenującego sieć. Otóż jest to obiekt, który podaje do sieci przykładowe zadania wraz z rozwiązaniami. Uczenie sieci polega na naśladowaniu sposobu działania nauczyciela, dlatego wygodnie będzie wprowadzić pojęcie ciągu uczącego. Jest to zbiór przykładów na podstawie których sieć uczy się.
Załóżmy, że rozważana sieć ma n wejść i k wyjść. Wiąże się to oczywiście z tym, że w sieci takiej jest n neuronów w warstwie wejściowej i k neuronów w warstwie wyjściowej. Przy takich założeniach ciąg uczący dla uczenia pojedynczego neuronu ma postać:
U = {< X<»,z<1> >,< X<2>,*<2> >.....< X<W>,*<N> >}
gdzie
< X*J), *0) > są parami danych pokazywanych na wejściu i wyjściu sieci (neuronu) w j-tym kroku procesu uczenia;
X® jest n-wymiarowym wektorem danych wejściowych w j-tym kroku;
jest wymaganą odpowiedzią neuronu w j-tym kroku;
N jest liczbą posiadanych na etapie uczenia pokazów;
W przypadku całej sieci wielowarstwowej ciąg uczący ma postać
U = {< X(1), Z<*> >, < X<2), Z(2) >,...,< X<N>, Z<"> >}
X<» jest n-wymiarowym wektorem danych wejściowych w j-tym kroku
ZW) jest fc-wymiarowym wektorem stanowiącym wymaganą odpowiedź neuronów wyjściowej warstwy sieci w j-tym kroku.
W typowych warunkach działanie “nauczyciela” polega wyłącznie na podawaniu do sieci ciągu uczącego, nauczycielem może więc być dowolny komputer wyposażony w stosowną bazę danych.