Õppetund
Teooria — Gradiendlaskumine ja õppimismäär
Gradientlaskumine seisneb üheainsa rea kordamises: seisa mingis punktis, mõõda kallet ja astu sellega võrdeliselt allamäge. x ← x − η f′(x). Sammupikkus η ei ole osa ülesandest. Kaokõver on ette antud, gradient arvutatakse välja ning η on ainus arv, mille valib inimene. Kõverusega a ruutfunktsiooni puhul on aritmeetika täpselt lahendatav, mistõttu me seda siin lehel kasutamegi. Iga hilisem väide õppimiskiiruse kohta on tegelikult väide avaldise 1 − ηa kohta.
Mida iga sümbol tähendab
η- õppimiskiirus, ainus suurus, mille sa ise valid
a- kao kõverus, mille ülesanne valib sinu eest
- Eeldab
- Üks muutuja, fikseeritud sammupikkus ja täpselt teadaolev gradient. Tegelik treenimine rikub neid kõiki kolme korraga: parameetreid on miljoneid, sammupikkus muutub vastavalt ajakavale ja gradienti hinnatakse väikese valimi põhjal. Ainus, mis säilib puutumatuna, on piir 2/a juures. See tuleneb kõverusest ühesainsas suunas ja tegelikul kaopinnal on neid iga omavektori kohta üks.
Ülesanne täielikult lahendatud
-
Sinu õppimismäär 0,4 toimib. Leia täpne kõverus, mille juures see lakkab töötamast, ja ütle, milline näeb tõrge välja mõlemal pool seda punkti. Alusta tööriistast väärtustega η = 0,4, a = 1 ja x₀ = 8, kus rea Sammu kordaja väärtus on 0,6000 ning teekond astub vaikselt mööda üht nõlva alla.
-
Iga küsimus sellel lehel puudutab tingimust |r| < 1, kus r = 1 − aη. Määr on fikseeritud väärtusele 0,4 ja kõverus on see, mida tohid muuta, seega kirjuta tingimus lahti pigem a, mitte η kaudu.
-
|1 − 0,4a| < 1 avaneb kujule −1 < 1 − 0,4a < 1, seejärel 0 < 0,4a < 2, ehk a < 5. Määr elab üle iga kõveruse, mis on alla 5, ja ei ainsatki, mis on üle selle. See on tuttav η < 2/a teisipidi loetuna ehk a < 2/η. Võrratus on sama ning just teine paigutus vastab küsitule.
-
Määra täpselt a = 5 ja loe tabelit. r = −1,0000 ning Asukoht pärast 20 sammu näitab 8,000, mis on arv, millest see alustas. Osa algsest kaost on 1,000. See ongi piir ise: iga samm maandub miinimumist sama kaugel kui eelmine, kuid vastasküljel, seega põrkab teekond 8 ja −8 vahel nii kaua, kuni lased sel joosta.
-
Nüüd nihuta a väärtusele 5,1. r = −1,0400 ja pärast kahtkümmend sammu on x 8 asemel 17,529. See on tõeline hajumine ja tasub tähele panna, kui leebe see välja näeb: kakskümmend sammu peaaegu kahekordistasid kauguse. Vahetult üle piiri asuv teekond võib pikka aega tunduda pelgalt mürane, enne kui arvud ilmselgelt absurdseks muutuvad.
-
Teises suunas koondub a = 4,9 endiselt. r = −0,9600, |r| on alla 1 ja tabel ütleb Lendab üle, koondub. Kuid Samme |x| viimiseks alla 10⁻⁶ näitab nüüd 390, võrreldes 32-ga kõverusel a = 4. Peaaegu stabiilne on praktiliselt kasutu.
Vastus
a = 5, mis on 2/η. Sellest allpool määr koondub, sellel olles kadu ei muutu kunagi, ja sellest ülevalpool kasvab kadu piiramatult. Kallis osa on lähenemine. Piiri lähedal on |r| 1 − a·g, tähistades g-ga vahet 2/a − η, seega log|r| ≈ −a·g ja sammude arv on umbes log(|x₀|/tolerants) jagatud a·g-ga. See on pöördvõrdeline kaugusega piirini: poolita vahe ja sa kahekordistad töö. Kui a = 5 kohast x₀ = 8, nõuavad vahed 0,05, 0,025 ja 0,0125 vastavalt 56, 120 ja 247 sammu, ning korrutades iga arvu oma vahega saame 2,8, 3,0 ja 3,1, mis läheneb väärtusele log(8 × 10⁶)/5 = 3,18. Seepärast ei asu häälestatud õppimismäär kunagi stabiilsuse piiril. Viimane ohutu riba enne piiri on ühtlasi kogu telje üks aeglasemaid piirkondi ja kõigist kiireim määr asub täpselt keskel kohas 1/a.
-
Õpitee
Andmetele sirge sobitamine
Allikad (3)
- Where the method comes from. Two pages, and the idea is already complete: follow the gradient downhill in steps. A.-L. Cauchy, “Méthode générale pour la résolution des systèmes d’équations simultanées.” Comptes Rendus de l’Académie des Sciences 25, 536–538, 1847.
- The tool's central claim, in the form it takes for a real network: with a as the largest eigenvalue of the Hessian, the fastest single learning rate is 1/a and anything past 2/a diverges. This is the source for insight block 3. Y. LeCun, L. Bottou, G. B. Orr and K.-R. Müller, “Efficient BackProp.” In Neural Networks: Tricks of the Trade, Lecture Notes in Computer Science, 9–50. Springer, 1998.
- The convergence analysis behind the step count: why the work needed grows with the ratio of the largest curvature to the smallest, which is the condition number named in insight block 3. S. Boyd and L. Vandenberghe, Convex Optimization. Cambridge University Press, 2004.