Uus arusaam partii normaliseerimisest

Partii normaliseerimine (BN) võeti kasutusele [1] juba 2015. aastal. Sellest ajast alates on seda kasutatud kõige sügavamates õpimudelites, et parandada väljaõppe kiiruse valimise koolitust ja vastupidavust ning parameetrite lähtestamist.

BN eesmärk oli vähendada iga kihi sisendi sisemist muutujate muutust (ICS), normaliseerides kaks esimest hetke - keskmist ja dispersiooni. Samal ajal ei mõjuta see võrgu võimet toota soovitud aktiveerimise jaotust, kasutades selleks õpitavaid parameetreid (gamma ja beeta).

Hiljutises artiklis [2] heidetakse uuele valgusele BN-i ja jõudluse kasvu, mis on saadud normaliseerimistehnika abil. Katsete põhjal teatab ta:

  • ICS ei ole hea treeningtulemuste ennustaja
  • BN-i abil saavutatud jõudluse kasv ei tulene ICS-i vähenemisest
  • BN pakub pigem optimeerimise maastikku siluvat efekti, mis parandab mudelite vastupidavust hüperparameetritele, näiteks õppimiskiirus.

1. katse

Allpool olev joonis 1 (võetud [2]) näitab VGG-võrgu kolme treeningkomplekti. Esimest võrku koolitatakse ilma BN-iga, teist koolitatakse BN-iga; kolmandaks süstitakse kolmas võrk pärast iga kasutatavat BN jaotuse ebastabiilsust, lisades ajaliselt muutuva, nullist erineva ja mitteühiku dispersioonimüra. Müra põhjustab sisuliselt kõrge ICS, mis võib olla kõrgem kui standardseade.

Joonis 1 [2], katse 1 tulemused

Tulemused näitavad, et isegi suurenenud ICS-i korral müra lisamisega saavutatakse jõudluse suurenemine (roosa joon). See osutab ICSi vähenemisele, mis ei ole jõudluse paranemist põhjustav tegur.

2. katse

Iga närvivõrgu kihi jaoks kajastab ICS optimeerimisprobleemi muutust, mis on tingitud iga kihi sisendite muutumisest, kuna eelmiste kihtide parameetreid värskendatakse gradiendi laskumisega. Selle nihke reaktsioonina peab iga kiht kohandama oma parameetreid, põhjustades sageli kaldenurkade kadumist või plahvatust [1].

Seda optimeerimismaastiku muutmise ideed kajastaksid ka kihi parameetrite gradientide muutused. Suurem muutus gradiendis kajastaks suuremat muutust optimeerimise maastikul. [2] kajastab seda, mõõtes erinevust iga kihi gradientide vahel enne (G) ja pärast kõigi eelmiste kihtide värskendusi (G '). L2 erinevuse väiksem väärtus osutab väiksemale ICS-ile, kuna maastik jääb sarnaseks.

Joonis 2 [2], katse 2 tulemused

[2] uurib täiendavalt seost ICS-i ja BN-i vahel, joonistades joonisel 2 näidatud kahe gradiendi L2 erinevuse (ja koosinusnurga). Ülaltoodud jooniselt on näha, et BN-i kasutamine ei tähenda ICS-i vähenemist.

Mida siis partii normaliseerimine siis teeb?

Sügava närvivõrgu optimeerimismaastik võib koosneda paljudest lamedatest piirkondadest ja teravatest kiiludest, mis muudavad probleemi kumeraks. Sellised piirkonnad põhjustavad gradiendi kadumise (tasased piirkonnad) või gradiendi plahvatuse (järsud kallakud). See suurendab tundlikkust õppimiskiiruse ja parameetrite lähtestamise suhtes, muutes optimeerimise ebastabiilseks.

[2] viitab BN-i kasutavate kallete kõrgemale Lipschitzness-le, mis tähendab tegelikult optimeerimismaastiku suuremat sujuvust. Seda võib täheldada joonisel 3, kus graafikud arvutavad välja koolitusetapi kaotuse gradiendi ja mõõdavad, kuidas kaotus muutub selle gradiendi suunas.

Joonis 3 [2]

Jooniselt 3 annab BN sujuvama profiili. See muudab kallaku paremini ennustatavaks, st igal sammul on tõenäolisem, et gradient püsib lähituleviku etappidel sarnane. Selline etteaimatavus võimaldab astuda suuremaid samme gradiendi suunas ilma stabiilsust kaotamata.

Lõpuks [2] järeldatakse ka, et BN-i silumine võib olla võrkude parema üldistamise põhjus. Selle põhjuseks on asjaolu, et BN viib optimeerimise kindla miinimumi poole.

Viited:
[1] Ioffe S, Szegedy C. Partii normaliseerimine: sügava võrguõppe kiirendamine, vähendades kovariatsioonide sisemist nihet. arXiv eeltrükk arXiv: 1502.03167. 2015 11. veebruar.
[2] Santurkar S, Tsipras D, Ilja A, Madry A. Kuidas aitab partiide normaliseerimine optimeerimist? (Ei, see ei kehti sisemise kovariaadi nihke kohta). arXiv eeltrükk arXiv: 1805.11604. 2018 29. mai.