Neuronske mreže, vrsta modela mašinskog učenja, koriste se da pomognu ljudima da završe širok spektar zadataka, od predviđanja da li je nečiji kreditni rezultat dovoljno visok da se kvalifikuje za zajam do dijagnoze da li pacijent ima određenu bolest. Ali istraživači i dalje imaju samo ograničeno razumevanje kako ovi modeli funkcionišu. Ostaje otvoreno pitanje da li je dati model optimalan za određeni zadatak.
Istraživači sa MIT-a pronašli su neke odgovore. Sproveli su analizu neuronskih mreža i dokazali da se one mogu dizajnirati tako da su „optimalne“, što znači da minimiziraju verovatnoću pogrešne klasifikacije zajmoprimaca ili pacijenata u pogrešnu kategoriju kada se mrežama da mnogo označenih podataka za obuku. Da bi se postigla optimalnost, ove mreže moraju biti izgrađene sa specifičnom arhitekturom.
Istraživači su otkrili da u određenim situacijama gradivni blokovi koji omogućavaju da neuronska mreža bude optimalna nisu oni koji programeri koriste u praksi. Ovi optimalni građevinski blokovi, izvedeni kroz novu analizu, su nekonvencionalni i nisu ranije razmatrani, kažu istraživači.
U radu objavljenom ove nedelje u Proceedings of the National Academi of Sciences, oni opisuju ove optimalne građevne blokove, nazvane aktivacionim funkcijama, i pokazuju kako se mogu koristiti za dizajniranje neuronskih mreža koje postižu bolje performanse na bilo kom skupu podataka. Rezultati ostaju čak i kada neuronske mreže rastu veoma velike. Ovaj rad bi mogao pomoći programerima da odaberu ispravnu funkciju aktivacije, omogućavajući im da izgrade neuronske mreže koje preciznije klasifikuju podatke u širokom spektru oblasti primene, objašnjava stariji autor Caroline Uhler, profesor na Odseku za elektrotehniku i računarstvo (EECS) .
„Iako su to nove funkcije aktivacije koje nikada ranije nisu korišćene, one su jednostavne funkcije koje bi neko zaista mogao da implementira za određeni problem. Ovaj rad zaista pokazuje važnost posedovanja teoretskih dokaza. Ako idete za principijelnim razumevanjem ovih modela, to vas zapravo može dovesti do novih funkcija aktivacije na koje inače nikada ne biste pomislili“, kaže Uler, koji je takođe ko-direktor Centra Erik i Vendi Šmit na Broad institutu MIT-a i Harvarda, i istraživač u Laboratoriji MIT-a za informacione sisteme i sisteme odlučivanja (LIDS) i njegov Institut za podatke, sisteme i društvo (IDSS).
Uhleru se u radu pridružuju glavni autor Aditianaraianan Radhakrishnan, diplomirani student EECS-a i stipendista Centra Eric i Vendi Schmidt, i Mihail Belkin, profesor na Institutu za nauku podataka Halicioglu na Univerzitetu Kalifornije u San Dijegu.
Neuronska mreža je tip modela mašinskog učenja koji je labavo zasnovan na ljudskom mozgu. Mnogi slojevi međusobno povezanih čvorova ili neurona obrađuju podatke. Istraživači obučavaju mrežu da završi zadatak tako što joj pokazuju milione primera iz skupa podataka.
Na primer, mreža koja je obučena da klasifikuje slike u kategorije, recimo pse i mačke, dobija sliku koja je kodirana kao brojevi. Mreža izvodi niz složenih operacija množenja, sloj po sloj, sve dok rezultat ne bude samo jedan broj. Ako je taj broj pozitivan, mreža klasifikuje sliku kao psa, a ako je negativna, za mačku.
Funkcije aktivacije pomažu mreži da nauči složene obrasce u ulaznim podacima. Oni to rade primenom transformacije na izlaz jednog sloja pre nego što se podaci pošalju na sledeći sloj. Kada istraživači grade neuronsku mrežu, oni biraju jednu funkciju aktivacije koju će koristiti. Oni takođe biraju širinu mreže (koliko neurona je u svakom sloju) i dubinu (koliko slojeva je u mreži.)
„Ispostavilo se da, ako uzmete standardne funkcije aktivacije koje ljudi koriste u praksi, i nastavite da povećavate dubinu mreže, to vam daje zaista strašne performanse. Pokazujemo da ako dizajnirate sa različitim funkcijama aktivacije, kako dobijate više podataka, vaša mreža će biti sve bolja i bolja“, kaže Radhakrishnan.
On i njegovi saradnici proučavali su situaciju u kojoj je neuronska mreža beskonačno duboka i široka – što znači da se mreža gradi stalnim dodavanjem više slojeva i više čvorova – i obučena je da obavlja zadatke klasifikacije. U klasifikaciji, mreža uči da stavlja ulazne podatke u posebne kategorije.
Nakon sprovođenja detaljne analize, istraživači su utvrdili da postoje samo tri načina na koja ova vrsta mreže može naučiti da klasifikuje ulaze. Jedna metoda klasifikuje ulaz na osnovu većine inputa u podacima o obuci; ako ima više pasa nego mačaka, odlučiće da je svaki novi unos pas. Drugi metod se klasifikuje izborom oznake (pas ili mačka) tačke podataka za obuku koja najviše liči na novi unos.
Treći metod klasifikuje novi unos na osnovu ponderisanog proseka svih tačaka podataka za obuku koji su mu slični. Njihova analiza pokazuje da je ovo jedini metod od tri koja vodi do optimalnog učinka. Oni su identifikovali skup aktivacionih funkcija koje uvek koriste ovu optimalnu metodu klasifikacije.
„To je bila jedna od najiznenađujućih stvari — bez obzira šta odaberete za funkciju aktivacije, to će biti samo jedan od ova tri klasifikatora. Imamo formule koje će vam eksplicitno reći koja će od ova tri to biti. To je veoma čista slika“, kaže on.
Oni su testirali ovu teoriju na nekoliko zadataka benčmarkinga klasifikacije i otkrili da je to dovelo do poboljšanih performansi u mnogim slučajevima. Graditelji neuronskih mreža mogli bi da koriste svoje formule da izaberu funkciju aktivacije koja daje poboljšane performanse klasifikacije, kaže Radhakrishnan.
U budućnosti, istraživači žele da koriste ono što su naučili za analizu situacija u kojima imaju ograničenu količinu podataka i za mreže koje nisu beskonačno široke ili duboke. Oni takođe žele da primene ovu analizu na situacije u kojima podaci nemaju oznake.
„U dubokom učenju želimo da izgradimo teorijski utemeljene modele kako bismo mogli da ih pouzdano primenimo u nekom okruženju koje je kritično za misiju. Ovo je obećavajući pristup da se dođe do nečeg sličnog — izgradnje arhitekture na teorijski utemeljen način koji se prevodi u bolje rezultate u vežbajte“, kaže on.