Table of Contents
Backpropagation on perusalgoritmi, jota käytetään syvien hermoverkkojen kouluttamiseen. Se sisältää häviötoiminnon liukuvärien laskemisen suhteessa verkon jokaiseen painoon, jolloin voidaan tehdä painopäivityksiä, jotka minimoivat virheet. Tämä artikkeli tarjoaa vaiheittaisen katsauksen backpropagation-prosessiin, jossa keskitytään syvän verkon kouluttamiseen liittyviin laskelmiin.
Eteenpäin
Prosessi alkaa eteenpäin syöte, jossa syötetiedot lisätään verkon kautta. Jokainen neuroni laskee painotetun summan sen syötteitä, lisää harhaa, ja soveltaa aktivointitoimintoa. Kunkin kerroksen tulostus toimii syöttönä seuraavan kerroksen kunnes lopullinen ennuste on saatu.
Tappion laskeminen
Kun verkko tuottaa lähdön, tappiotoiminto mittaa eron ennustetun tuotoksen ja todellisen merkinnän välillä. Yhteiset tappiotoiminnot sisältävät Mean Squared Error - ja Cross-Entropia -toiminnon. Tavoitteena on minimoida tämä tappio painonsäädöillä.
Takaisinpäin Pass: Gradient Computation
Backpropagationin ydin sisältää häviön liukuvärien laskentaa suhteessa kuhunkin painoon. Tulostekerroksesta alkaen virhetermi lasketaan ja lisätään taaksepäin verkon kautta. Tämä tarkoittaa ketjun säännön soveltamista johdannaisiin kussakin kerroksessa.
Kunkin neuronin virhetermi määritetään kertomalla aktivointitoiminnon johdannainen seuraavan kerroksen virheiden painotetulla summalla. Näitä virhetermejä käytetään laskemaan liukuvärit kullekin painolle ja hartioille.
Päivitetään painoja
Laskettujen kaltevuuksien avulla painot päivitetään tyypillisesti liukuvärin laskun kautta. Päivityssääntö vähentää murto-osan nykyisestä painosta, jota ohjataan oppimisnopeudella. Tämä prosessi vähentää menetystä peräkkäisiin iteraatioihin verrattuna.
Yhteenveto avainvaiheista
- Suorita eteenpäin syöttää laskea ennusteita.
- Laske menetys ennustusten ja todellisten tarrojen välillä.
- Laske virhetermit lähtötasosta taaksepäin.
- Lasketaan gradientit kullekin painolle ja harvapainolle.
- Päivitä painot liukuvärin laskeutumisen avulla.