Tekoäly
Tutkijat kehittivät vaihtoehdon GPU:lle

Rice-yliopiston tietojenkäsittelytieteilijät yhteistyössä Intelin kanssa ovat kehittäneet edullisemman vaihtoehdon GPU:lle. Uusi algoritmi on nimeltään “alilineaarinen syväoppimismoottori” (SLIDE), ja se käyttää yleiskäyttöisiä keskusprosessoriyksiköitä (CPU) ilman erikoistuneita kiihdytyslaitteita.
Tulokset esiteltiin Austin Convention Centerissä, jossa järjestettiin koneoppimisen järjestelmäkonferenssi MLSys.
Yksi suurimmista haasteista tekoälyssä (AI) liittyy erikoistuneisiin kiihdytyslaitteisiin, kuten grafiikkaprotsessoriyksiköihin (GPU). Ennen uusia kehityksiä uskottiin, että syväoppimistechnologian nopeuttamiseksi vaaditaan erikoistuneiden kiihdytyslaitteiden käyttöä.
Monet yritykset ovat panostaneet voimakkaasti GPU:iin ja erikoistuneisiin laitteisiin syväoppimiseen, joka on vastuussa teknologioista, kuten digitaalisista avustajista, kasvontunnistuksesta ja tuotesuositusjärjestelmistä. Yksi tällainen yritys on Nvidia, joka valmistaa Tesla V100 Tensor Core -GPU:ita. Nvidia ilmoitti hiljattain 41 prosentin kasvun neljännessä vuosineljänneksessä edellisvuoteen verrattuna.
SLIDE:n kehitys avaa täysin uusia mahdollisuuksia.
Anshumali Shrivastava on apulaisprofessori Rice-yliopiston Brownin insinööritieteellisessä tiedekunnassa ja auttoi kehittämään SLIDE:a jatko-opiskelijoiden Beidi Chenin ja Tharun Medinin kanssa.
“Testimme osoittavat, että SLIDE on ensimmäinen älykäs algoritminen toteutus syväoppimisesta CPU:lla, joka voi ylittää GPU:n kiihdytyslaitekohtaisen nopeutuksen teollisuusmittaisilla suositteludatajoukoissa, joissa on suuria täysin yhdistettyjä arkkitehtuureja”, sanoi Shrivastava.
SLIDE pääsee GPU:n haasteen yli täysin erilaisen lähestymistapansa ansiosta. Tällä hetkellä syvien neuroverkkojen standarditraining-tekniikka on “taustapropagaatio”, joka vaatii matriisien kertolaskua. Tämä työkuorma vaatii GPU:n käyttöä, joten tutkijat muuttivat neuroverkkojen koulutusta siten, että se voidaan ratkaista hajautustaulujen avulla.
Tämä uusi lähestymistapa vähentää merkittävästi laskennallista kuormitusta SLIDE:ssa. Nykyinen paras GPU-alusta, jonka yritykset kuten Amazon ja Google käyttävät pilvipohjaisessa syväoppimisessa, on kahdeksan Tesla V100:aa, ja sen hinta on noin 100 000 dollaria.
“Meillä on yksi laboratoriossa, ja testitapauksessamme otimme työkuorman, joka on täydellinen V100:lle, yksi, jossa on yli 100 miljoonaa parametriä suurissa, täysin yhdistetyissä verkostoissa, jotka mahtuvat GPU-muistiin”, sanoi Shrivastava. “Koulutimme sen parhaalla (ohjelmistopaketilla) siellä, Google:n TensorFlow, ja se kesti 3,5 tuntia kouluttaa.
“Sitten osoitimme, että uusi algoritmi voi suorittaa koulutuksen tunnissa, ei GPU:lla, vaan 44-ydin Xeon-luokan CPU:lla”, hän jatkoi.
Hajautus on tietojen hakutapaa, joka keksittiin 1990-luvulla internet-haun vuoksi. Numerometodeja käytetään koodaamaan suuria tietomääriä numeroiden merkkijonoksi, jota kutsutaan hajautukseksi. Hajautukset luokitellaan luetteloihin, jotka voidaan hakea nopeasti.
“Ei olisi ollut järkeä toteuttaa algoritmiamme TensorFlow:ssa tai PyTorchissa, koska ensimmäinen asia, jonka he haluavat tehdä, on muuttaa mitä tahansa tekemään matriisien kertolasku-ongelma”, sanoi Chen. “Se on täsmälleen sitä, mitä halusimme välttää. Kirjoitimme siis oman C++-koodin alusta alkaen. “
Shrivastavan mukaan SLIDE:n suurin etu on, että se on data-rinnakkainen.
“Data-rinnakkaisuudella tarkoitan, että jos minulla on kaksi data-eksemplaaria, joita haluan kouluttaa, esimerkiksi yksi on kissan kuva ja toinen bussin kuva, ne todennäköisesti aktivoivat eri neuroneja, ja SLIDE voi päivittää tai kouluttaa näitä kahta riippumattomasti”, hän sanoi. “Tämä on paljon parempi hyödyntäminen rinnakkaisuutta CPU:lle.”
“Toisaalta, verrattuna GPU:hen, meidän vaaditaan suuri muisti”, hän sanoi. “Päämuistissa on välimuistihierarkia, ja jos olet varovainen sen kanssa, voit ajautua ongelmaan, jota kutsutaan välimuistin raksinnaksi, jossa saat paljon välimuistikatoja.”
SLIDE on avannut oven uusille tavoille toteuttaa syväoppimista, ja Shrivastava uskoo, että se on vasta alku.
“Olemme vasta raapaisseet pinnan”, hän sanoi. “On paljon, mitä voimme vielä tehdä optimointiin. Emme ole käyttäneet vektorointia esimerkiksi tai sisäänrakennettuja kiihdytyslaitteita CPU:ssa, kuten Intel Deep Learning Boost. On paljon muita temppuja, joita voimme vielä käyttää, jotta se olisi vielä nopeampi.”










