211service.com
Nowy sposób budowania małych sieci neuronowych może stworzyć potężną sztuczną inteligencję w Twoim telefonie
SM. TECHNOLOGIA Pani Tech
Sieci neuronowe to podstawowe oprogramowanie głębokiego uczenia. Mimo że są tak rozpowszechnione, są naprawdę słabo rozumiane. Naukowcy zaobserwowali ich pojawiające się właściwości bez faktycznego zrozumienia czemu pracują tak jak oni.
Teraz nowy papier z MIT zrobiło duży krok w kierunku odpowiedzi na to pytanie. W trakcie tego procesu naukowcy dokonali prostego, ale dramatycznego odkrycia: używamy sieci neuronowych znacznie większych, niż faktycznie potrzebujemy. W niektórych przypadkach są 10, a nawet 100 razy większe, więc wyszkolenie ich kosztuje nas o rząd wielkości więcej czasu i mocy obliczeniowej niż to konieczne.
Innymi słowy, w każdej sieci neuronowej istnieje znacznie mniejsza sieć, którą można wytrenować, aby osiągnąć taką samą wydajność, jak jej nadwymiarowy rodzic. To nie tylko ekscytująca wiadomość dla badaczy AI. Odkrycie ma potencjał, aby odblokować nowe aplikacje — niektórych z nich jeszcze nie potrafimy pojąć — które mogą poprawić nasze codzienne życie. Więcej o tym później.
Ale najpierw przyjrzyjmy się, jak działają sieci neuronowe, aby zrozumieć, dlaczego jest to możliwe.

Schemat sieci neuronowej uczącej się rozpoznawania lwa. JEFF CLUNE/ZRZUT EKRANU
Jak działają sieci neuronowe
Być może widziałeś sieci neuronowe przedstawione na diagramach, takich jak ten powyżej: składają się z ułożonych w stos warstw prostych węzłów obliczeniowych, które są połączone w celu obliczenia wzorców w danych.
Liczą się połączenia. Zanim sieć neuronowa zostanie wytrenowana, połączeniom tym przypisywane są losowe wartości z zakresu od 0 do 1, które reprezentują ich intensywność. (Nazywa się to procesem inicjalizacji.) Podczas treningu, gdy sieć jest zasilana serią, powiedzmy, zdjęć zwierząt, zmienia i dostraja te intensywności – podobnie jak mózg wzmacnia lub osłabia różne połączenia neuronowe w miarę gromadzenia doświadczenia i wiedza. Po treningu końcowe intensywności połączeń są następnie wykorzystywane na zawsze do rozpoznawania zwierząt na nowych zdjęciach.
Chociaż mechanika sieci neuronowych jest dobrze poznana, powód ich działania pozostaje tajemnicą. Jednak dzięki wielu eksperymentom naukowcy zaobserwowali dwie właściwości sieci neuronowych, które okazały się przydatne.
Obserwacja #1. Gdy sieć jest inicjowana przed procesem uczenia, zawsze istnieje pewne prawdopodobieństwo, że losowo przydzielone siły połączeń skończą się konfiguracją niemożliwą do nauczenia. Innymi słowy, bez względu na to, ile zdjęć zwierząt wprowadzisz do sieci neuronowej, nie osiągnie ona przyzwoitej wydajności i wystarczy ją ponownie zainicjować do nowej konfiguracji. Im większa sieć (im więcej ma warstw i węzłów), tym mniej prawdopodobne. Podczas gdy mała sieć neuronowa może być trenowana tylko w jednej na pięć inicjacji, większa sieć może być trenowana w czterech na pięć. Jeszcze raz, czemu tak się dzieje, było tajemnicą, ale właśnie dlatego badacze zazwyczaj używają bardzo dużych sieci do swoich zadań głębokiego uczenia się. Chcą zwiększyć swoje szanse na osiągnięcie udanego modelu.
Obserwacja #2. Konsekwencją jest to, że sieć neuronowa zwykle zaczyna się od większej, niż jest to konieczne. Po zakończeniu treningu zazwyczaj tylko część połączeń pozostaje silna, podczas gdy inne są dość słabe – tak słabe, że można je usunąć lub przyciąć bez wpływu na wydajność sieci.
Od wielu lat naukowcy wykorzystują tę drugą obserwację do zmniejszania swoich sieci po szkolenia w celu obniżenia czasu i kosztów obliczeniowych związanych z ich prowadzeniem. Ale nikt nie sądził, że można zmniejszyć ich sieci zanim trening. Zakładano, że trzeba zacząć od sieci ponadgabarytowej, a proces szkoleniowy musi przebiegać, aby oddzielić odpowiednie połączenia od nieistotnych.
Jonathan Frankle, doktorant z MIT, współautor artykułu, zakwestionował to założenie. Jeśli potrzebujesz znacznie mniej połączeń niż na początku, mówi, dlaczego nie możemy po prostu wyszkolić mniejszej sieci bez dodatkowych połączeń? Okazuje się, że możesz.

Michael Carbin (po lewej) i Jonathan Frankle (po prawej), autorzy artykułu. Jason Dorfman, MIT CSAIL
Hipoteza losu na loterię
Odkrycie opiera się na rzeczywistości, że losowe siły połączeń przypisane podczas inicjalizacji nie są w rzeczywistości losowe w swoich konsekwencjach: predysponują różne części sieci do niepowodzenia lub sukcesu, zanim nastąpi nawet szkolenie. Innymi słowy, konfiguracja początkowa wpływa na to, do jakiej konfiguracji końcowej dotrze sieć.
Skupiając się na tym pomyśle, naukowcy odkryli, że jeśli po szkoleniu przytniesz zbyt dużą sieć, możesz w rzeczywistości ponownie wykorzystać powstałą mniejszą sieć do trenowania na nowych danych i zachowania wysokiej wydajności — o ile zresetujesz każde połączenie w tej zmniejszonej sieci z powrotem do jego początkowa siła.
Na podstawie tego odkrycia Frankle i jego współautor Michael Carbin, adiunkt w MIT, proponują coś, co nazywają hipotezą losu na loterię. Kiedy losowo inicjujesz moc połączenia sieci neuronowej, to prawie jak kupowanie paczki losów na loterię. Masz nadzieję, że w twojej torbie znajduje się zwycięski bilet — tj. początkowa konfiguracja, która będzie łatwa do wyszkolenia i zaowocuje udanym modelem.
To również wyjaśnia, dlaczego obserwacja nr 1 jest prawdziwa. Rozpoczęcie od większej sieci jest jak kupowanie większej liczby losów na loterię. Nie zwiększasz ilości mocy, którą rzucasz na swój problem z głębokim uczeniem; po prostu zwiększasz prawdopodobieństwo, że będziesz mieć zwycięską konfigurację. Po znalezieniu zwycięskiej konfiguracji powinieneś być w stanie ponownie ją wykorzystać, zamiast kontynuować grę na loterii.
Następne kroki
Rodzi to wiele pytań. Po pierwsze, jak znaleźć zwycięski bilet? W swoim artykule Frankle i Carbin zastosowali brutalne podejście do trenowania i przycinania ponadwymiarowej sieci za pomocą jednego zestawu danych, aby wyodrębnić zwycięski kupon na inny zestaw danych. Teoretycznie od samego początku powinny istnieć znacznie wydajniejsze sposoby znajdowania — a nawet projektowania — zwycięskiej konfiguracji.
Po drugie, jakie są ograniczenia treningowe zwycięskiej konfiguracji? Przypuszczalnie różne rodzaje danych i różne zadania uczenia głębokiego wymagałyby różnych konfiguracji.
Po trzecie, jaka jest najmniejsza możliwa sieć neuronowa, którą możesz ujść na sucho, jednocześnie osiągając wysoką wydajność? Frankle odkrył, że dzięki iteracyjnemu procesowi szkolenia i przycinania był w stanie konsekwentnie zmniejszać początkową sieć do od 10% do 20% jej pierwotnego rozmiaru. Uważa jednak, że jest szansa, by była jeszcze mniejsza.
Już teraz wiele zespołów badawczych w ramach społeczności AI rozpoczęło dalsze prace. Badacz w Princeton od niedawna drażnił wyniki przyszłego artykułu dotyczącego drugiego pytania. Zespół Ubera również opublikował nowy papier na kilku eksperymentach badających naturę metaforycznych losów na loterię. Co najbardziej zaskakujące, odkryli, że po znalezieniu zwycięskiej konfiguracji osiąga ona znacznie lepszą wydajność niż oryginalna niewytrenowana sieć oversize zanim jakiekolwiek szkolenie. Innymi słowy, czynność przycinania sieci w celu wyodrębnienia zwycięskiej konfiguracji jest sama w sobie ważną metodą szkolenia.
Nirwana sieci neuronowej
Frankle wyobraża sobie przyszłość, w której społeczność naukowa będzie miała bazę danych o otwartym kodzie źródłowym zawierającą wszystkie znalezione konfiguracje, wraz z opisami zadań, do których się nadają. Żartobliwie nazywa tę sieć neuronową nirwaną. Uważa, że radykalnie przyspieszyłoby i zdemokratyzowało badania nad sztuczną inteligencją poprzez obniżenie kosztów i szybkości szkolenia, a także umożliwienie osobom nieposiadającym gigantycznych serwerów danych wykonywania tej pracy bezpośrednio na małych laptopach, a nawet telefonach komórkowych.
Mogłoby to również zmienić charakter aplikacji AI. Jeśli możesz trenować sieć neuronową lokalnie na urządzeniu zamiast w chmurze, możesz poprawić szybkość procesu uczenia i bezpieczeństwo danych. Wyobraźmy sobie na przykład urządzenie medyczne oparte na uczeniu maszynowym, które mogłoby się poprawić dzięki użytkowaniu bez konieczności wysyłania danych pacjenta na serwery Google lub Amazon.
Nieustannie napotykamy na krawędzi tego, co możemy wyszkolić, mówi Jason Yosinski, członek-założyciel Uber AI Labs, który był współautorem kolejnego artykułu Ubera, co oznacza, że największe sieci można zmieścić na GPU lub najdłuższe, jakie możemy. tolerować czekanie, zanim otrzymamy wynik z powrotem. Gdyby badacze mogli dowiedzieć się, jak od samego początku identyfikować wygrywające konfiguracje, zmniejszyłoby to rozmiar sieci neuronowych o współczynnik 10, a nawet 100. Granica możliwości dramatycznie wzrosłaby, otwierając nowy świat potencjalnych zastosowań.