Theoretische Ergebnisse hinter künstlichen neuronalen Netzen

13

Ich habe gerade über künstliche neuronale Netze in Courseras Kurs Maschinelles Lernen gesprochen und möchte gerne mehr über die dahinter stehende Theorie erfahren. Ich finde die Motivation, dass sie die Biologie imitieren, etwas unbefriedigend.

Auf der Oberfläche scheint es, dass wir auf jeder Ebene Kovariaten durch eine lineare Kombination ersetzen. Indem wir dies wiederholt tun, ermöglichen wir eine nichtlineare Modellanpassung. Dies wirft die Frage auf: Warum werden neuronale Netze manchmal der Anpassung eines nichtlinearen Modells vorgezogen?

Ganz allgemein möchte ich wissen, wie künstliche neuronale Netze in das Bayes'sche Inferenzgerüst passen, das in ET Jaynes 'Buch "Probability Theory: The Logic Of Science" ausführlich beschrieben wird. Oder einfach gesagt, warum funktionieren künstliche neuronale Netze, wenn sie funktionieren? Und die Tatsache, dass sie erfolgreiche Vorhersagen treffen, impliziert natürlich, dass sie dem oben genannten Rahmen folgen.

Tom Artiom Fiodorov
quelle

Antworten:

16

Hier ist ein Zitat aus " Ein Blick zurück in die Zukunft " von ET Jaynes.

Neue Adhockeries

In den letzten Jahren wurde die orthodoxe Angewohnheit, intuitive Geräte zu erfinden, anstatt sich auf damit verbundene theoretische Prinzipien zu berufen, auf neue Probleme ausgeweitet, so dass es zunächst so aussieht, als ob mehrere neue Wissenschaftsbereiche geschaffen wurden. Sie alle befassen sich jedoch mit Begründungen aufgrund unvollständiger Informationen. und wir glauben, dass wir Theoreme haben, die besagen , dass die Wahrscheinlichkeitstheorie als Logik das allgemeine Mittel ist, um mit all diesen Problemen umzugehen. Wir notieren drei Beispiele.

Fuzzy-Mengen sind - für jeden, der in Bayes'schen Folgerungen geschult ist - grobe Annäherungen an frühere Bayes'sche Wahrscheinlichkeiten. Sie wurden nur geschaffen, weil ihre Praktizierenden daran festhielten, die Wahrscheinlichkeit als "Zufälligkeit" zu betrachten, die in der Natur existieren sollte, aber nie genau definiert wurde. und folgerten daraus, dass die Wahrscheinlichkeitstheorie auf solche Probleme nicht anwendbar ist. Sobald man die Wahrscheinlichkeit als allgemeinen Weg zur Angabe unvollständiger Informationen erkennt , verschwindet der Grund für die Einführung von Fuzzy-Sets.

Ebenso ist ein Großteil der Künstlichen Intelligenz (KI) eine Sammlung intuitiver Argumentationshilfen für unvollständige Informationen, die wie die älteren orthodoxen Statistiken Annäherungen an Bayes'sche Methoden darstellen und in einigen eingeschränkten Problemklassen verwendet werden können. aber die zu absurden Schlussfolgerungen führen, wenn wir versuchen, sie auf Probleme außerhalb dieser Klasse anzuwenden. Wiederum sind seine Praktiker nur deshalb davon betroffen, weil sie weiterhin davon ausgehen, dass die Wahrscheinlichkeit eine physische "Zufälligkeit" darstellt, anstatt unvollständige Informationen. In der Bayes'schen Folgerung sind alle diese Ergebnisse automatisch - und eher trivial - enthalten, ohne auf eine begrenzte Klasse von Problemen beschränkt zu sein.

Die großartige Neuentwicklung sind Neuronale Netze, dh ein System von Algorithmen mit der wundervollen neuen Eigenschaft, dass sie wie das menschliche Gehirn adaptiv sind, sodass sie aus Fehlern der Vergangenheit lernen und sich automatisch korrigieren können (WOW! Was für eine großartige neue Idee!). . Tatsächlich wundert es uns nicht, dass neuronale Netze in vielen Anwendungen sehr nützlich sind. mehr als Fuzzy Sets oder AI. Gegenwärtige neuronale Netze haben jedoch zwei praktische Nachteile; (a) Sie ergeben einen Output, der durch den gegenwärtigen Input plus die vergangenen Trainingsinformationen bestimmt wird. Diese Ausgabe ist wirklich eine Schätzungder richtigen Antwort, basierend auf allen verfügbaren Informationen, aber sie gibt keinen Hinweis auf ihre Richtigkeit und sagt uns daher nicht, wie nahe wir am Ziel sind (dh wie viel mehr Training erforderlich ist); (b) Wenn eine nichtlineare Antwort verlangt wird, spricht man von einer intern gespeicherten nichtlinearen Standard- "Sigmoid" -Funktion, die mit verschiedenen Verstärkungen und linearen Gemischen in gewissem Maße zur Annäherung an die wahre nichtlineare Funktion gebracht werden kann. (Anmerkung: Hervorhebung von mir.)

Aber müssen wir wirklich darauf hinweisen, dass (1) jedes adaptive Verfahren per Definition ein Mittel ist, unvollständige Informationen zu berücksichtigen; (2) Der Satz von Bayes ist genau die Mutter aller adaptiven Verfahren; die allgemeine Regel für die Aktualisierung des Kenntnisstands unter Berücksichtigung neuer Informationen; (3) Wenn diese Probleme in Bayes'schen Ausdrücken formuliert werden, ergibt eine einzige Berechnung automatisch sowohl die beste Schätzung als auch ihre Genauigkeit. (4) Wenn Nichtlinearität gefordert ist, generiert der Bayes-Satz automatisch die exakte nichtlineare Funktion, die durch das Problem gefordert wird, anstatt zu versuchen, eine Näherung durch ein anderes Ad-hoc- Gerät zu erstellen .

Mit anderen Worten, wir behaupten, dass dies überhaupt keine neuen Felder sind; Nur Fehlstarts. Formuliert man alle diese Probleme nach der üblichen Bayes'schen Vorschrift, so hat man automatisch alle nützlichen Ergebnisse in verbesserter Form. Die Schwierigkeiten, die Menschen dabei zu haben scheinen, sind Beispiele dafür, dass es nicht gelungen ist, die Beziehung zwischen der abstrakten Mathematik und der realen Welt zu erfassen. Sobald wir erkennen, dass Wahrscheinlichkeiten nicht die Realität beschreiben - nur unsere Informationen über die Realität -, öffnen sich die Tore für die optimale Lösung von Begründungsproblemen aus diesen Informationen.

Ein paar Kommentare:

  1. Punkt (a) ignoriert die Entwicklungen in Bayesian Neural Networks, die in den späten achtziger und frühen neunziger Jahren begannen (beachten Sie jedoch, dass Jaynes 'Artikel 1993 geschrieben wurde). Schau dir das an Beitrag an . Lesen Sie auch die schöne Doktorarbeit von Yarin Gal und sehen Sie sich diese großartige Präsentation von Zoubin Ghahramani an.

  2. Ich sehe nicht ein, wie Punkt (b) ein "Manko" sein könnte. Tatsächlich ist es das Wesentliche, warum neuronale Netze eine große Klasse von Funktionen gut approximieren können. Beachten Sie, dass kürzlich erfolgreiche Architekturen von Sigmoid- zu ReLU-Aktivierungen in den inneren Schichten übergegangen sind und "Tiefe" der "Breite" vorgezogen haben. Näherungssätze wurden kürzlich für ReLU-Netze bewiesen .

Zen
quelle
2
+1 Nichts ist befriedigender, als genau zu wissen, wo genau die richtige Referenz für eine Antwort gefunden werden kann.
Sycorax sagt Reinstate Monica
5
Angesichts der Tatsache, dass die Ad-hoc-Geräte gezeigt haben, dass sie in vielen Situationen funktionieren, wäre es produktiv zu zeigen (oder zu widerlegen), dass sie einfach in das Bayes'sche Gerüst passen, und somit ein tieferes Verständnis für die Adhockeries zu erlangen, die so weit verbreitet sind Tage. Dies ist die Art von Arbeit, die mich interessiert.
Tom Artiom Fiodorov
1

Erstens stapeln wir keine linearen Funktionen ineinander, um eine nichtlineare Funktion zu erhalten. Es gibt einen klaren Grund, warum NNs niemals so funktionieren könnten: Wenn lineare Funktionen ineinander gestapelt würden, ergäbe sich wieder eine lineare Funktion.

Was NNs nichtlinear macht, ist die Aktivierungsfunktion , die hinter der linearen Funktion steht! Grundsätzlich haben Sie jedoch Recht: Wir stapeln einfach viele logistische Regressionen (aber keine linearen!) Ineinander und ... tadaa: Wir haben etwas Gutes daraus ... ist das fair? Es stellt sich heraus, dass es (aus theoretischer Sicht) tatsächlich fair ist. Schlimmer noch: Mit dem bekannten Theorem von Stone-Weierstrass beweisen wir einfach, dass neuronale Netze mit nur einer verborgenen Schicht und keiner Ausgangsfunktion am Endknoten ausreichen, um etwaige stetige Funktionen zu approximieren (und glauben Sie mir, stetige Funktionen können hässlich sein) Bestien finden Sie in der "Teufelstreppe": https://en.wikipedia.org/wiki/Cantor_distribution[ein,b]x↦ =b+ein1ϕ1(x)+...+einlϕl(x)l die Größe der verborgenen Schicht ist, dh Polynome in logistischen Funktionen und sie per Definition eine Algebra bilden!). Das heißt, "von der Konstruktion", sind NNs sehr ausdrucksstark.

Warum verwenden wir dann tiefe NNs? Der Grund ist, dass der obige SW-Satz nur garantiert, dass es eine ausreichend große Schichtgröße gibt, damit wir unserer (hoffentlich kontinuierlichen) Zielfunktion nahe kommen können. Die erforderliche Schichtgröße kann jedoch so groß sein, dass kein Computer jemals Gewichtsmatrizen dieser Größe verarbeiten kann. NNs mit mehr verborgenen Schichten scheinen ein guter Kompromiss zwischen Genauigkeit und Berechenbarkeit zu sein. Ich kenne keine theoretischen Ergebnisse, die darauf hindeuten, um wie viel die Expresivität von NNs zunimmt, wenn mehr ausgeblendete Ebenen eingefügt werden, als wenn nur die Größe der einzelnen ausgeblendeten Ebene vergrößert wird, aber es gibt möglicherweise einige Ressourcen im Web ...

Können wir tiefe NNs wirklich verstehen? Beispielfragen: Warum sagt der NN genau voraus, dass dieser Fall WAHR ist, während dieser andere, ähnliche Fall FALSCH ist? Warum genau bewertet es diesen Kunden als wertvoller als den anderen? Das glaube ich nicht wirklich. Es ist mit der Kompliziertheit des Modells verbunden, dass man es nicht mehr gut erklären kann ... Ich höre nur, dass dies immer noch ein aktives Forschungsgebiet ist, aber ich kenne keine Ressourcen ...

Was macht NNs so einzigartig bei allen Modellen? Der wahre Grund, warum wir heutzutage so häufig NNs verwenden, sind die folgenden zwei Gründe:

  1. Sie kommen mit einer natürlichen "Streaming" -Eigenschaft.
  2. Wir können sie in viele Richtungen aufpeppen.

TfTTWir können diese Trainingsbeispiele einfach in das NN aufnehmen, indem wir einfach den Gradientenabstiegs- / Backprop-Algorithmus fortsetzen und nur Chargen aus auswählen Tfür das training. Der gesamte Bereich des Verstärkungslernens (zum Gewinnen von Spielen wie Tic Tac Toe, Pong , Schach, Go, vielen verschiedenen Atari-Spielen mit nur einem Modell usw.) basiert auf dieser Eigenschaft. Die Leute haben versucht, diese Streaming-Eigenschaft auf andere Modelle zu übertragen (z. B. Gradient Boosting), aber das ist natürlich nicht so und auch nicht so rechenintensiv wie beim NN-Setup.

Mit 2. meine ich, dass die Leute NNs trainiert haben, die seltsamsten Dinge zu tun, aber im Prinzip haben sie nur das gleiche Framework verwendet: glatte Funktionen ineinander stapeln und dann den Computer (z. B. PyTorch / Tensorflow) die schmutzige Mathematik für Sie machen lassen, wie das Rechnen Die Ableitung der Verlustfunktion bezieht sich auf die Gewichte. Ein Beispiel wäre dieses Papierwo die Leute den RL-Ansatz benutzt haben und auch die Architektur des NN aufgepeppt haben, um die komplexe Sprache chemischer Substanzen zu lernen, indem sie ihm beigebracht haben, wie man mit einem Speicherstapel arbeitet (!). Versuchen Sie das mit Gradienten-Boosting ;-) Der Grund, warum sie das tun müssen, ist, dass die Sprache der Chemikalien mindestens so schwer zu lernen ist wie die Sprache der Klammern (dh jede öffnende Klammer hat eine schließende Sprache später im Wort) ) weil die SMILES-Sprache, die Menschen zur Beschreibung von Molekülen verwenden, die Symbole '(' und ')' enthält. Aus der theoretischen Informatik (Chomsky-Hierarchie) weiß man, dass man diese Sprache nicht mit regulären Automaten beschreiben kann, sondern Push-Down-Automaten (dh Automaten mit Stapelspeicher) benötigt. Das war die Motivation für sie (glaube ich), dem NN diese seltsame Sache beizubringen.

Fabian Werner
quelle
-1

"Warum funktioniert es, wenn es funktioniert?"

Eine andere Antwort hier zitiert ET Jaynes. Er sagt, dass andere Algorithmen für maschinelles Lernen ad hoc sind, neuronale Netze jedoch nicht. Der Grund ist, dass der Algorithmus sich selbst korrigiert. In Wirklichkeit, wenn Sie habennBeispiele in einer Stichprobe, warum ist es besser, sie nacheinander zu verwenden, als sie alle zusammen zu verwenden? Es gibt keinen Beweis dafür, dass der NN-Ansatz besser ist. In den meisten Fällen mit begrenzten Daten ist NN tatsächlich schlechter.

Alle maschinellen Lernvorgänge finden also ad hoc statt.

Maschinelles Lernen ähnelt der Alchemie: Es gibt viele rätselhafte Rezepte. Wenden Sie eines an und Sie erhalten möglicherweise Gold. Wenn nicht, wenden Sie einfach ein anderes Rezept an.

Niemand stellt die Frage, die Sie gestellt haben, zumindest nicht in den mir bekannten Publikationen.

Hinzu kommt die statistische Lerntheorie. Die statistische Lerntheorie geht davon aus, dass die Größe des Trainingssatzes unendlich ist. Die meisten Ergebnisse, die ich kenne, haben die Form: "Unter bestimmten Bedingungen können Sie mit diesem Verfahren fast so gute Ergebnisse wie möglich erzielen, wenn Sie über einen ausreichend großen Trainingssatz verfügen." Die Schätzungen dessen, was "groß genug" ist, sind unvorstellbar.

Das Problem ist natürlich, dass die Größe des Trainings-Sets nirgendwo hinführt, geschweige denn ins Unendliche.

Ich denke, es ist ein guter Zeitpunkt, (1) diese Frage zu stellen, (2) einen mathematischen Apparat zu entwickeln, um die Frage nach allen möglichen Algorithmen für maschinelles Lernen zu beantworten, und (3) diese Frage zu beantworten.

Yachthafen
quelle