Seuraava artikkeli auttaa sinua: Andrej Karpathy luo uudelleen 33-vuotiaan syvällisen oppimispaperin
Vuonna 1989 Yann Lecun esitteli paperin “Backpropagation Applied to Handwritten Zip Code Recognition”. Tämä artikkeli osoitti, kuinka rajoitteet voidaan integroida takaisin leviämisverkkoon sen arkkitehtuurin kautta, jotta oppimisverkoston kyky yleistyä voidaan parantaa. Tässä tutkimuksessa kirjoittajat osoittivat, kuinka yksittäinen verkko oppii koko tunnistusoperaation – hahmon normalisoidusta kuvasta lopulliseen luokitukseen.
Lehden ensijulkaisemisesta on kulunut 33 vuotta. Mutta Teslan tekoälyjohtajan Andrej Karpathyn tekemän hauskan kokeen mukaan paperi pysyy hyvänä vielä nyt. Lisäksi hän päätteli, että lehti pysyy voimassa myös 33 vuotta myöhemmin, eli vuonna 2055.
Karpathyn mukaan ainoa rajoitus vuoden 1989 paperille oli se, että se käytti pientä tietojoukkoa, joka koostui 7291 16 × 16 harmaasävykuvasta numeroista sekä pienen hermoverkon, joka käytti vain 1000 neuronia. Näitä rajoituksia lukuun ottamatta muut tekijät, kuten muun muassa hermoverkkoarkkitehtuuri, häviöfunktio, optimointi – tarkistavat mallin “moderniksi syväoppimispaperiksi”.
Andrej Karpathyn blogi
Virkistys
Karpathy kirjoitti blogissaan, että hän toteutti koko menettelyn uudelleen PyTorchissa. Alkuperäinen verkko suoritettiin Lispillä käyttämällä backpropagation simulaattoria SN (Léon Bottoun ja Yann LeCunin ehdottama ja myöhemmin nimeltään Lush). Ohjelmistosuunnittelun puolella Karpathy mainitsee, että siinä on kolme pääkomponenttia – nopea yleinen Tensor-kirjasto matemaattisten perustoimintojen toteuttamiseen; autograd-moottorin eteenpäinlaskukaavion seuraamiseksi ja toimintojen generoimiseksi taaksepäin siirtymistä varten; skriptoitava korkean tason API yleisille syväoppimisoperaatioille.
Andrej karpathy blogi
Alkuperäinen verkko harjoitteli kolme päivää SUN-4/260-työasemalla, mutta Karpathy päätti suorittaa toteutuksensa MacBook Air (M1) -suorittimella, mikä kesti vain 90 sekuntia, mikä johti 3000-kertaiseen naiiviin nopeuteen. Koulutusprosessi vaati 23 välitystä 7291 esimerkin opetussarjasta 167 693 esitystä varten neuroverkkoon. Karpathy ehdottaa, että prosessia voitaisiin nopeuttaa entisestään, jos suoritettaisiin täysi eräharjoittelu esimerkin SGD:n sijaan GPU-käytön maksimoimiseksi, mikä johtaisi 100-kertaiseen harjoitusviiveen nopeutumiseen.
Kohdatut haasteet
Karpathy sanoi, että hän pystyi tuottamaan vain karkeasti numerot, mutta ei tarkasti. Yksi syy tähän oli, että alkuperäinen tietojoukko ei ollut saatavilla, ja hänen täytyi simuloida se käyttämällä suurempia MNIST-tietoja. Hän harkitsi 28 × 28 numeroa ja pienensi sen alkuperäiseen 16 × 16 pikseliin käyttämällä bilineaarista interpolaatiota.
Karpathy huomautti myös, että paperi oli liian abstrakti painon alustusjärjestelmän kuvauksen kannalta. Verkon H1- ja H2-kerrosten välinen spesifinen harva liitettävyys valittiin kaaviolla, jota ei esitetä alkuperäisessä 1989-paperissa; Tätä kohti Karpathyn täytyi sitten tehdä “järkevä arvaus” ja käyttää päällekkäistä lohkoharhaa rakennetta. Karpathy ilmaisi epäilyksensä paperin väitteistä käyttää tanh-epälineaarisuutta normalisoidun tanhin sijasta, mikä oli trendissä alkuperäisen artikkelin julkaisuhetkellä. Muita haasteita olivat PDF-tiedoston muotoiluvirheet. “Epäilen, että PDF-tiedostossa on muotoiluvirheitä, jotka esimerkiksi poistavat pisteitä “.”, saavat “2.5” näyttämään “2 5″ ja mahdollisesti (mielestäni?) pyyhkivät neliöjuuria”, hän kirjoitti.
Opitut asiat
2022 versio:
Karpathy päättelee, että viimeisten 33 vuoden aikana ei ole juurikaan muuttunut, ainakaan makrotasolla siten, että käytämme edelleen erottuvia hermoverkkoarkkitehtuureja, jotka koostuvat neuronikerroksista, jotka on optimoitu päästä päähän takaisineteneminen ja stokastinen gradienttilasku. Aineisto ja hermoverkon koko ovat kuitenkin kasvaneet huomattavasti.
Karpathy onnistui saavuttamaan paremman suorituskyvyn nopeuden ja virhesuhteen suhteen. Hän mainitsi pystyneensä vähentämään virhetasoa 60 prosenttia muuttamatta mallin datajoukkoa ja testiaikalatenssia. “Erityisesti, jos minut siirrettäisiin vuoteen 1989, olisin viime kädessä tullut ylärajaksi kyvyssäni parantaa järjestelmää edelleen ilman isompaa tietokonetta”, hän kirjoitti.
2055 versio:
Karpathy ennustaa, että vuoden 2055 neuroverkot olisivat makrotasolla samat kuin vuoden 2022 verkko. Ainoa havaittava ero voi olla koko. Tietojen ja mallien odotetaan olevan jopa 10 000 000 kertaa suurempia. Koska nykyiset mallit eivät ole optimaalisesti muotoiltuja, vain muuttamalla mallin yksityiskohtia, häviöfunktiota, augmentaatiota jne., virheprosentti voitaisiin puolittaa. Hyötyjä voitaisiin parantaa entisestään skaalaamalla tietojoukkoa.
“Äärimmäisimmässä ekstrapoloinnissa et halua kouluttaa yhtään neuroverkkoa. Vuonna 2055 pyydät 10 000 000 X kokoista hermoverkkoa megaaivoja suorittamaan jokin tehtävä puhumalla (tai ajattelemalla) sille englanniksi. Ja jos pyydät tarpeeksi kauniisti, se velvoittaa. Kyllä, sinäkin voisit kouluttaa hermoverkkoa… mutta miksi tekisit?” hän päätteli.