previous up next
Foregående: Indlæring af neurale netværk Op: FAMØS september 1996 Næste: Eksempler

Kohonen-funktionen tex2html_wrap_inline1996 fungerer, kort sagt, ved at modtage et argument fra tex2html_wrap_inline3092 , som den modificerer sig efter og så afgiver en funktionsværdi i tex2html_wrap_inline3094 . Hvilken funktionsværdi, som et givent argument giver anledning til, afhænger altså af hvornår, vi betrager funktionen.

Kohonen-nettet, som bruges til at udregne funktionsværdien efter, består af et tex2html_wrap_inline3096 (hvor tex2html_wrap_inline3098 ) netværk af Kohonen-enheder (også kaldet neuroner)gif. Hver af disse enheder har tilskrevet en værdi tex2html_wrap_inline3102 . Da de b indekser er ganske uinformative at slæbe rundt på, vil vi i stedet indeksere w'erne med et vektor-indeks tex2html_wrap_inline3108 . (Hvis ``vektor-indeks'' lyder meget slemt, kan man bare tænke på i som neuronens nummer.)

For b=1 kan man tænke på neuronerne som perler på en snor. For højre dimensioner kan man tænke på netværket som et gitterværk.

Beregning af funktionsværdien sker på følgende vis: Lad tex2html_wrap_inline3114 betegne det t'te input. For hver enhed beregnes tex2html_wrap_inline3118 og `vinder-enheden' defineres til at være enheden med indeks tex2html_wrap_inline3120 , hvor

displaymath1081

Med andre ord: Vinderenheden er den enhed, hvis værdi ligger tættets på argumentets værdigif.

Kohonen-funktionens funktionsværdi er nu den vindede enheds placering i Kohonen-nettet.

displaymath1087

Som den vakse læser allerede har bemærket, er angivelsen af afhængigheden af iterationsantallet t for w'erne og tex2html_wrap_inline3120 udeladt. Da stort set alle parametre i denne artikel afhænger af iterationsantallet, vil vi underforstå t'erne for at lette notationen. For en god ordens skyld er t'erne genindført på side gif, hvor alle de nødvendige trin af beregningen og indlæringen af Kohonen-funktionen er samlet.

Modifikation af Kohonen-nettet

På baggrund af valget af en vinderenhed kan enhedernes værdier nu modificeres. Denne modifikation kaldes i neuralnet-termologi for indlæring, idet nettet lærer fra det input (argument), som det netop har modtaget.

Ændringen af enhedernes værdier beregnes som

displaymath1092

tex2html_wrap_inline3132 kaldes nabofunktionen og tex2html_wrap_inline3134 er en indlæringskoefficent. Ofte vælges nabofunktionen som

displaymath1096

hvor tex2html_wrap_inline3136 kan være en konstant eller aftage med iterationsantallet, som for eksempel tex2html_wrap_inline3138 . tex2html_wrap_inline3140 er den euklidiske afstand i tex2html_wrap_inline3094 mellem en given enhed og vinderenheden i nettet.

I simplere typer af selvorganiserende funktioner bliver kun vinderenhedens værdi ændret, men ved Kohonen-funktionerne bliver ligeledes de nærmeste naboers værdier i netværket ændret - nabofunktionen bestemmer hvor meget. I dette tilfælde aftager graden af naboskab som en normal-fordeling.

Denne type naboskab er dog ikke den eneste mulige; da Kohonen første gang beskrev sine funktioner brugte han et diskret naboskab, tex2html_wrap_inline3144 og

displaymath1104

Repræsentation

Hvad er det overhovedet nettet skal lære? Dette spørgsmål hænger nøje sammen med naturen af Kohonen-fuktiones argument, dvs.  det input, nettet får. Nettet kan lære at blive en binær repræsentation af input. (Intuitivt: Tænk på nettet som et gitterværk af elektriske pære. En af pærene - vinderneuronen - tænder og markere positionen af input; resten af pærene er slukket.) Hvis input kommer fra enhedskvadrattet, kan nettet repræsentere dette ved at returnere en diskret udgave af input. Da nettet kun kan modtage et punkt af gangen, kan man ikke give hele kvadratet på en gang til nettet. I stedet kan man give nettet tilfældige punkter fra kvadratet. Med andre ord: Nettet modtager tilfældige punkter fra enhedskvadratet og `gætter', at inputmængden er hele enhedskvadratet og tager form som enhedskvadratet.

Indlæringen er fuldendt, når følgende sum (eller integral) over alle mulige input er mindst:

displaymath1112

hvor tex2html_wrap_inline3146 er sandsynlighedtætheden.

Et net med vægte tex2html_wrap_inline3148 , som minimerer summen, kaldes en ideel repræsentation. I det følgende vil jeg ganske u-stringent snakke om gode og dårlige repræsentationer. For en god repræsentation er summen tex2html_wrap_inline3150 `lille', men ikke nødvendigvis minimal.

Hvis man lader indlæringskoefficenten tex2html_wrap_inline3134 aftage med iterationsantallet, vil Kohonen-nettet `størkne'. Det er klart, at små værdier af tex2html_wrap_inline3134 bremser indlæringen, og tex2html_wrap_inline3156 stopper den helt. Med andre ord: Hvis man betragter de tex2html_wrap_inline3158 følger af vektorer tex2html_wrap_inline3160 , vil hver af følgerne konvergere, hvis tex2html_wrap_inline3162 . Dette er en tilstrækkelig men ikke en nødvendig betingelse. Hvis for eksempel tex2html_wrap_inline3164 for alle t er det ligegyldigt, hvilken værdi tex2html_wrap_inline3134 har, følgerne af vektorer tex2html_wrap_inline3170 konvergerer alligevel. Men hvis vi ser bort fra `underlige' tilfælde, er betingelsen også nødvendig.

Man kan bevise, at jo langsommere tex2html_wrap_inline3134 går mod 0 jo bedre bliver repræsentationen. Den ideele repræsentation når man kun i grænsen.

Man fortrækker ofte i praktiske anvendelsergif, at tex2html_wrap_inline3176 , hvor tex2html_wrap_inline3178 . Små værdier af tex2html_wrap_inline3026 holder indlæringen i gang i længere tid og giver en mere præcis repræsentation af input. Dog vil man dog typisk hælde mod store værdier af tex2html_wrap_inline3026 for at få nettet til at stabilisere sig med en repræsentation, som afviger en lille smule fra den ideelle repræsentation, fremfor at vente en del længere på en lille forbedring i repræsentationen, idet det har en betydning i anvendelsen, at nettet ikke flytter for meget på sig.

Lad os resumere: I almindelige ord bevirker indlæringen, at den vindende enhed trækkes hen mod inputvektoren, så enhedens værdi kommer til at ligne input mere (dvs.  afstanden mellem enhedens værdi og et tilsvarende input vil, alt andet lige, i fremtiden blive mindre). Den vindende enhed trækker sine naboer med hen mod input. Dette betyder, at efter nogen tid vil områder i inputrummet, som er meget aktive (dvs.  der kommer relativt ofte input her - området har en høj sansynlighedestæthed), have en højere tæthed af enheder, end områder med lav aktivitet.


previous up next
Foregående: Indlæring af neurale netværk Op: FAMØS september 1996 Næste: Eksempler

famos@math.ku.dk
Sun Sep 22 00:34:24 MET DST 1996