Hvordan bruke backpropagation Neural Networks

Hvordan bruke backpropagation Neural Networks


Inspirert av arbeidet i den biologiske hjernen, kan nevralt nettverk utføre mønstergjenkjenning og klassifisering oppgaver som kan være vanskelig å programmere ved hjelp av tradisjonelle programmeringsmetoder. Nettverk må trenes til å gjøre den jobben de er pålagt å gjøre, og backpropagation er en ikke-biologisk metode for automatisk konfigurering av nettverk for å optimalisere sin oppgave. Ved hjelp av noen enkle trinn, kan du trene et nettverk uten å forstå svært komplekse underliggende nettverket.

Bruksanvisning

1 Velg hva du ønsker å klassifisere og klassene du vil sortere dem inn. De må være i form av separerbare enheter som kan hver være kodet. For eksempel, en liste over binære tall eller piksler av en gråskala bilde, hver på mellom 0 og 255. Dette eksempelet vil bruke en liste over syv binære tall og klassene vil være å avgjøre om det er en oddetall eller partall antall "1s. "

2 Forbered et treningssett. Denne består av en liste over innganger med riktige utganger for å trene nettverket. For eksempel, 0100110 = odd; 1001011 = selv. Velg din treningssett slik at det gir en god representasjon av omfanget av inn- og utganger, dvs. ikke bare gi innganger med et likt antall "1s".

3 Initial nettverket. Velg antall inngangsnoder, utgang noder, antall skjulte lag og stoppkriteriet. Antallet inngangsnoder er antall elementer i dine innspill. I dette eksempel er det syv knutepunkter, en for hvert siffer på listen. Antall utganger blir antall mulige grupperinger. Dette er vanligvis uttrykt i binær for rett klassifisering. I eksemplet er det bare én utgang node - noe som gir en for odd og 0 for selv. De skjulte lag kan være en rekke, men i all praktisk bør du aldri trenger mer enn to. Den stopper kriteriet er en prosentandel riktige svar som du ønsker å stoppe trening nettverket. For enkel klassifisering av binærinnganger, kan du bruke 100 prosent, men for mer komplekse oppgaver, som for eksempel klassifisere bilder, ønsker du at dette skal bli lavere. Den eneste måten å optimalisere dette på er å eksperimentere med trente nettverk for å finne den beste verdien.

4 Start treningsfase. Dette vil bruke trenings satt til reorganisere nettverket til å stoppe kriteriet er oppfylt. Når dette er oppfylt, vil nettverket bli frelst, og det vil ikke lenger bli omorganisert når en inngangs er gitt.

5 Test nettverket på en inngang ikke er inkludert i treningssettet. Dersom suksessraten er lav, og deretter prøve å trene et nettverk med en annen treningssett og stoppe kriterium. Fordi nettverket er trent, kan du ikke være sikker på om den er klar for bruk før du bruker den på reelle data.