Es gibt zwei Hauptlücken in unserem Verständnis neuronaler Netze: Optimierungshärte und Generalisierungsleistung.
Das Trainieren eines neuronalen Netzwerks erfordert die Lösung eines hochgradig nicht konvexen Optimierungsproblems in hohen Dimensionen. Gegenwärtige Trainingsalgorithmen basieren alle auf einem Gefälle, das nur die Konvergenz zu einem kritischen Punkt (lokales Minimum oder Sattel) garantiert. Tatsächlich haben Anandkumar & Ge 2016 kürzlich bewiesen, dass das Finden eines selbst lokalen Minimums NP-schwer ist, was bedeutet, dass (unter der Annahme von P! = NP) "schlechte", schwer zu entweichende Sattelpunkte in der Fehleroberfläche existieren.
Diese Trainingsalgorithmen sind jedoch für viele praktische Probleme empirisch wirksam, und wir wissen nicht warum.
Es gab theoretische Arbeiten wie Choromanska et al. 2016 und Kawaguchi 2016die beweisen, dass die lokalen Minima unter bestimmten Annahmen im Wesentlichen so gut sind wie die globalen Minima, aber die Annahmen, die sie treffen, sind etwas unrealistisch und gehen nicht auf das Problem der schlechten Sattelpunkte ein.
Die andere Hauptlücke in unserem Verständnis ist die Verallgemeinerungsleistung: Wie gut schneidet das Modell an neuartigen Beispielen ab, die während des Trainings nicht gesehen wurden? Es ist leicht zu zeigen, dass an der Grenze einer unendlichen Anzahl von Trainingsbeispielen (abgetastet aus einer stationären Verteilung) der Trainingsfehler gegen den erwarteten Fehler an neuartigen Beispielen konvergiert (vorausgesetzt, Sie könnten zum globalen Optimum trainieren), aber seit wir Wir haben keine unendlichen Trainingsbeispiele, wir sind daran interessiert, wie viele Beispiele benötigt werden, um einen bestimmten Unterschied zwischen Training und Generalisierungsfehler zu erzielen. Die statistische Lerntheorie untersucht diese Verallgemeinerungsgrenzen.
Empirisch erfordert das Trainieren eines großen modernen neuronalen Netzwerks eine Vielzahl von Trainingsbeispielen (Big Data, wenn Sie Schlagworte mögen), die jedoch nicht so monumental sind, dass sie praktisch nicht durchführbar sind. Wendet man jedoch die bekanntesten Grenzen der statistischen Lerntheorie an (zum Beispiel Gao & Zhou 2014 ), erhält man normalerweise diese unvorstellbar großen Zahlen. Daher sind diese Grenzen zumindest für praktische Probleme weit davon entfernt, eng zu sein.
Einer der Gründe könnte sein, dass diese Grenzen dazu neigen, nur sehr wenig Einfluss auf die Datenerzeugungsverteilung zu nehmen, weshalb sie die schlechteste Leistung gegenüber widrigen Umgebungen widerspiegeln, während "natürliche" Umgebungen dazu neigen, "lernbarer" zu sein.
Es ist möglich, verteilungsabhängige Verallgemeinerungsgrenzen zu schreiben, aber wir wissen nicht, wie man eine Verteilung über "natürliche" Umgebungen formal charakterisiert. Ansätze wie die algorithmische Informationstheorie sind nach wie vor unbefriedigend.
Deshalb wissen wir immer noch nicht, warum neuronale Netze ohne Überanpassung trainiert werden können.
Darüber hinaus sollte beachtet werden, dass diese beiden Hauptthemen in einer noch wenig verstandenen Weise miteinander verbunden zu sein scheinen: Die Verallgemeinerungsgrenzen der statistischen Lerntheorie gehen davon aus, dass das Modell am Trainingssatz auf das globale Optimum trainiert wird, jedoch in einem praktischen Rahmen würde niemals ein neuronales Netz bis zur Konvergenz bis zu einem Sattelpunkt trainieren, da dies typischerweise zu einer Überanpassung führen würde. Stattdessen beenden Sie das Training, wenn der Fehler in einem durchgehaltenen Überprüfungssatz (der ein Proxy für den Generalisierungsfehler ist) nicht mehr behoben wird. Dies wird als "frühes Anhalten" bezeichnet.
In gewisser Hinsicht ist all diese theoretische Forschung zur Begrenzung des Generalisierungsfehlers des globalen Optimums möglicherweise irrelevant: Wir können ihn nicht nur nicht effizient finden, sondern würden es auch nicht wollen, selbst wenn wir könnten, da er eine schlechtere Leistung erbringen würde neue Beispiele als viele "suboptimale" Lösungen.
Es kann der Fall sein, dass die Optimierungshärte kein Fehler des neuronalen Netzwerks ist, im Gegenteil, vielleicht können neuronale Netzwerke überhaupt genau arbeiten, weil sie schwer zu optimieren sind.
Alle diese Beobachtungen sind empirisch und es gibt keine gute Theorie, die sie erklärt. Es gibt auch keine Theorie, die erklärt, wie die Hyperparameter neuronaler Netze eingestellt werden (Breite und Tiefe versteckter Schichten, Lernraten, Architekturdetails usw.). Praktiker verwenden ihre Intuition, die durch Erfahrung und viele Versuche und Irrtümer geschliffen wurde, um effektive Werte zu erzielen, während eine Theorie es uns ermöglichen könnte, neuronale Netze systematischer zu entwerfen.