Jakiej odpowiedzi chce TCS na pytanie „Dlaczego sieci neuronowe działają tak dobrze?”

52

Mój doktorat jest w czystej matematyce i przyznaję, że niewiele wiem (tj. nic) na temat teoretycznej CS. Jednak zacząłem badać opcje pozaakademickie w mojej karierze i zapoznałem się z uczeniem maszynowym, natknąłem się na takie stwierdzenia, jak: „Nikt nie rozumie, dlaczego sieci neuronowe działają dobrze”, co uznałem za interesujące.

Moje pytanie zasadniczo brzmi: jakiego rodzaju odpowiedzi oczekują badacze? Oto, co znalazłem podczas mojego krótkiego wyszukiwania na ten temat:

  • Algorytmy implementujące proste sieci neuronowe są dość proste.
  • Proces SGD jest dobrze rozumiany matematycznie, podobnie jak teoria statystyczna.
  • Uniwersalne twierdzenie o aproksymacji jest potężne i udowodnione.
  • Niedawno opublikowano ładny artykuł https://arxiv.org/abs/1608.08225, który zasadniczo daje odpowiedź, że uniwersalne przybliżenie to znacznie więcej niż w rzeczywistości potrzebujemy, ponieważ możemy poczynić silne uproszczenia założenia dotyczące funkcji, które próbujemy modelować za pomocą sieć neuronowa.

We wspomnianym artykule stwierdzają (parafrazują) „Algorytmy GOFAI są w pełni rozumiane analitycznie, ale wiele algorytmów ANN jest rozumianych tylko heurystycznie”. Twierdzenia o konwergencji dla zaimplementowanych algorytmów są przykładem analitycznego zrozumienia, że ​​wydaje się, że mamy do czynienia z sieciami neuronowymi, więc stwierdzenie na tym poziomie ogólności nie mówi mi wiele o tym, co znane, a co nieznane, lub co można by uznać za „odpowiedź . ”

Autorzy sugerują we wniosku, że pytania takie jak skuteczne ograniczenia wielkości sieci neuronowej potrzebne do przybliżenia danego wielomianu są otwarte i interesujące. Jakie są inne przykłady matematycznych pytań analitycznych, na które należy odpowiedzieć, aby powiedzieć, że „rozumiemy” sieci neuronowe? Czy są pytania, na które można odpowiedzieć w bardziej czystym języku matematycznym?

(W szczególności myślę o metodach teorii reprezentacji ze względu na zastosowanie fizyki w tym artykule --- i, samolubnie, ponieważ jest to moja dziedzina badań. Mogę jednak również wyobrazić sobie obszary takie jak kombinatoryka / teoria grafów, geometria algebraiczna oraz topologia zapewniająca realne narzędzia).

Neuling
źródło
3
Czy GOFAI naprawdę jest tak dobrze zrozumiany? Wydaje się, że wiele GOFAI sprowadza się do rozwiązania SAT, archetypowego problemu NP-zupełnego. Współczesne solwery SAT działają wyjątkowo dobrze w praktyce, nawet jeśli nie powinny zgodnie z istniejącą teorią. Dlaczego?
Martin Berger,
w tej dziedzinie istnieje naprawdę nauka / zmiana / historia uczenia się przed pogłębioną nauką i nauka pogłębiona, co stanowi poważną zmianę paradygmatu w tej dziedzinie. głębokie uczenie się rozpoczęło się dopiero w ciągu ostatniej dekady. prosta odpowiedź jest taka, że ​​sieci neuronowe mogą reprezentować dowolnie złożone funkcje i że złożoność jest teraz na bardzo zaawansowanych poziomach z głębokimi sieciami neuronowymi. inną odpowiedzią jest to, że badane problemy, a może nawet „rzeczywistość w ogóle”, są „zbudowane z funkcji”, a ANN są teraz biegli w uczeniu się bardzo złożonych funkcji.
vzn
Nie sądzę, że ludzie tak naprawdę szukają tutaj „odpowiedzi”. Starają się wykorzystywać sieci neuronowe do rozwiązywania problemów, a jeśli problem rzeczywiście zostanie rozwiązany, to jest w porządku. Wiedza o tym, w jaki sposób sieci osiągnęły to rozwiązanie, niekoniecznie jest tu interesująca. Nikt nie dba o to, jeśli jest to czarne / nieprzezroczyste pudełko, o ile rozwiązuje problem.
Xji

Odpowiedzi:

38

W uczeniu maszynowym istnieje wiele twierdzeń o „braku darmowego lunchu”, z grubsza stwierdzających, że nie może być jednego głównego algorytmu uczenia się, który działałby tak samo lepiej niż wszystkie inne algorytmy (patrz np. Tutaj : http: //www.no-free- lunch.org/ ). Rzeczywiście, głębokie uczenie się może być „zepsute” bez większych trudności: http://www.evolvingai.org/fooling

Stąd, aby być skutecznym, uczeń musi mieć uprzedzenie indukcyjne --- tj. Pewne wcześniejsze założenia dotyczące danych. Przykłady uprzedzeń indukcyjnych obejmują założenia rzadkości danych lub niskiej wymiarowości, lub że rozkład dobrze ładnie rozkłada się, lub ma duży margines, itp. Różne udane algorytmy uczenia się wykorzystują te założenia do udowodnienia gwarancji uogólnienia. Na przykład (liniowy) SVM działa dobrze, gdy dane są dobrze oddzielone w przestrzeni; inaczej - nie tak bardzo.

Myślę, że głównym wyzwaniem związanym z głębokim uczeniem się jest zrozumienie jego indukcyjnego nastawienia. Innymi słowy, ma to udowodnić twierdzenia typu: Jeśli dane treningowe spełniają te założenia, to mogę zagwarantować coś o wydajności uogólniającej. (W przeciwnym razie wszystkie zakłady są wyłączone.)

2

Aryeh
źródło
Należy zauważyć, że przykłady przeciwników nie są unikalne dla głębokich sieci neuronowych. Można je również łatwo konstruować dla regresji liniowej i logistycznej, na przykład: arxiv.org/pdf/1412.6572.pdf
Lenar Hoyt
1
Tak, ale regresja liniowa i logistyczna są znacznie lepiej rozumiane teoretycznie.
Aryeh
2
Należy również zauważyć, że twierdzenia NFL mogą nie odgrywać dużej roli w praktycznym uczeniu maszynowym, ponieważ podczas gdy NFL dotyczy klasy wszystkich funkcji, problemy w świecie rzeczywistym są zwykle ograniczone do np. Płynnych funkcji lub nawet bardziej szczegółowych funkcji, takich jak rozważane w artykule przez Lin i Tegmark. Być może uda się znaleźć uprzedzenia indukcyjne obejmujące wszystkie problemy edukacyjne, którymi jesteśmy zainteresowani.
Lenar Hoyt
4
Następnie powinniśmy sformalizować tę przestrzeń „wszystkich problemów edukacyjnych, którymi jesteśmy zainteresowani”.
Aryeh
1
To zdecydowanie wydaje się opłacalne, zwłaszcza w odniesieniu do bezpieczeństwa AI. Musimy być w stanie wiarygodnie określić, czego powinien nauczyć się algorytm uczenia maszynowego.
Lenar Hoyt
26

Istnieją dwa główne luki w naszym rozumieniu sieci neuronowych: twardość optymalizacji i wydajność generalizacji.

Szkolenie sieci neuronowej wymaga rozwiązania wysoce niewypukłego problemu optymalizacji w dużych wymiarach. Aktualne algorytmy treningowe opierają się na zniżaniu gradientu, co gwarantuje jedynie zbieżność do punktu krytycznego (minimum lokalne lub siodło). W rzeczywistości Anandkumar i Ge 2016 niedawno udowodnili, że znalezienie nawet lokalnego minimum jest trudne NP, co oznacza, że ​​(zakładając P! = NP) istnieją „złe”, trudne do uniknięcia, punkty siodłowe na powierzchni błędu.
Jednak te algorytmy szkoleniowe są empirycznie skuteczne w przypadku wielu praktycznych problemów i nie wiemy, dlaczego.
Pojawiły się prace teoretyczne, takie jak Choromanska i in. 2016 i Kawaguchi 2016które dowodzą, że przy pewnych założeniach lokalne minima są zasadniczo tak dobre jak minima globalne, ale przyjęte przez nich założenia są nieco nierealne i nie odnoszą się do problemu złych punktów siodłowych.

Inną główną luką w naszym rozumieniu jest wydajność uogólniająca: jak dobrze model działa na nowatorskich przykładach, których nie zaobserwowano podczas szkolenia? Łatwo jest wykazać, że na granicy nieskończonej liczby przykładów treningowych (próbkowanych iid z rozkładu stacjonarnego) błąd szkolenia zbiega się z oczekiwanym błędem w nowych przykładach (pod warunkiem, że można trenować do optimum globalnego), ale ponieważ nie mamy nieskończonych przykładów szkolenia, interesuje nas, ile przykładów jest potrzebnych do osiągnięcia danej różnicy między błędem szkolenia a błędem uogólnienia. Statystyczna teoria uczenia się bada te granice uogólnienia.
Empirycznie, szkolenie dużej nowoczesnej sieci neuronowej wymaga dużej liczby przykładów szkolenia (Big Data, jeśli lubisz modne słowa), ale nie tak monumentalnie dużych, aby były praktycznie niewykonalne. Ale jeśli zastosujesz najbardziej znane granice teorii uczenia statystycznego (na przykład Gao i Zhou 2014 ), zwykle uzyskasz te niewyobrażalnie duże liczby. Dlatego granice te są bardzo dalekie od ścisłości, przynajmniej w przypadku problemów praktycznych.
Jednym z powodów może być to, że granice te zwykle nie zakładają bardzo dużo o rozkładzie generowania danych, stąd odzwierciedlają najgorszy przypadek w środowiskach przeciwnych, podczas gdy „naturalne” środowiska wydają się być bardziej „przyswajalne”.
Możliwe jest napisanie granic generalizacji zależnych od dystrybucji, ale nie wiemy, jak formalnie scharakteryzować rozkład w „naturalnych” środowiskach. Podejścia takie jak algorytmiczna teoria informacji są nadal niezadowalające.
Dlatego wciąż nie wiemy, dlaczego sieci neuronowe można trenować bez nadmiernego dopasowania.

Ponadto należy zauważyć, że te dwa główne problemy wydają się być powiązane w wciąż słabo zrozumiałym zakresie: granice uogólnienia wynikające z teorii uczenia statystycznego zakładają, że model jest szkolony do optymalnego poziomu globalnego na zestawie szkoleniowym, ale w praktyce nigdy nie trenowałby sieci neuronowej, dopóki konwergencja nie byłaby możliwa nawet do punktu siodłowego, ponieważ takie postępowanie zwykle powodowałoby nadmierne dopasowanie. Zamiast tego przestajesz trenować, gdy błąd w wyciągniętym zestawie sprawdzania poprawności (który jest proxy dla błędu generalizacji) przestaje się poprawiać. Jest to znane jako „wczesne zatrzymanie”.
W pewnym sensie wszystkie te teoretyczne badania dotyczące ograniczenia błędu uogólnienia globalnego optimum mogą być dość nieistotne: nie tylko nie możemy go skutecznie znaleźć, ale nawet jeśli moglibyśmy, nie chcielibyśmy, ponieważ działałoby gorzej nowe przykłady niż wiele „nieoptymalnych” rozwiązań.
Może się zdarzyć, że twardość optymalizacji nie jest wadą sieci neuronowej, wręcz przeciwnie, może sieci neuronowe mogą w ogóle działać dokładnie dlatego, że są trudne do optymalizacji.
Wszystkie te obserwacje są empiryczne i nie ma dobrej teorii, która by je wyjaśniała. Nie ma też teorii wyjaśniającej, jak ustawić hiperparametry sieci neuronowych (szerokość i głębokość ukrytej warstwy, wskaźniki uczenia się, detale architektoniczne itp.). Praktycy wykorzystują swoją intuicję dopracowaną doświadczeniem oraz wieloma próbami i błędami, aby wymyślić skuteczne wartości, a teoria mogłaby pozwolić nam zaprojektować sieci neuronowe w bardziej systematyczny sposób.

Antonio Valerio Miceli-Barone
źródło
11

Kolejne podejście do tego pytania, aby dodać do uwag @ Aryeha: W przypadku wielu innych modeli uczenia się znamy „kształt” przestrzeni hipotez. SVM są najlepszym tego przykładem, ponieważ znajdujesz liniowy separator w (możliwie wysokiej wymiarowej) przestrzeni Hilberta.

W przypadku sieci neuronowych ogólnie nie mamy takiego jasnego opisu ani nawet przybliżenia. Taki opis jest dla nas ważny, aby zrozumieć, co dokładnie sieć neuronowa znajduje w danych.

Suresh Venkat
źródło
Jak nazwałbyś „kształt” przestrzeni hipotezy? :) Czy nasze twierdzenie 2.1 (strona 3) odpowiada na niektóre pytania: eccc.weizmann.ac.il/report/2017/098 ? : D
Anirbit
4

Zasada wąskiego gardła informacyjnego została zaproponowana w celu wyjaśnienia sukcesu sieci głębokich nueral.

Oto cytat z magazynu Quanta

W zeszłym miesiącu wideo na YouTube z konferencji w Berlinie, szeroko rozpowszechnione wśród badaczy sztucznej inteligencji, podało możliwą odpowiedź. W przemówieniu Naftali Tishby, informatyk i neurobiolog z Uniwersytetu Hebrajskiego w Jerozolimie, przedstawił dowody na poparcie nowej teorii wyjaśniającej, jak działa głębokie uczenie się. Tishby argumentuje, że głębokie sieci neuronowe uczą się zgodnie z procedurą zwaną „wąskim gardłem informacyjnym”, którą on i dwaj współpracownicy opisali po raz pierwszy w czysto teoretycznych terminach w 1999 r. Pomysł polega na tym, że sieć eliminuje hałaśliwe dane wejściowe obcych danych, jakby ściskając informacje za pośrednictwem wąskiego gardła, zachowując jedynie funkcje najbardziej odpowiednie dla ogólnych pojęć.

Bibliografia:

1- Głębokie uczenie się i zasada wąskiego gardła informacyjnego , Naftali Tishby i Noga Zaslavsky

2- Otwieranie czarnej skrzynki głębokich sieci neuronowych za pośrednictwem informacji , Ravida Shwartza-Ziva i Naftali Tishby

3- Wideo z konferencji: Teoria informacji o głębokim uczeniu się autorstwa Naftali Tishby

Mohammad Al-Turkistany
źródło
1

Powiedziałbym, że wciąż musimy odkryć skuteczny algorytm do uczenia głębokich sieci neuronowych. Tak, SGD działa dobrze w praktyce, ale znalezienie lepszego algorytmu, który ma gwarancje konwergencji do globalnego minimum, byłoby bardzo przyjemne.

Didymus
źródło