Wenn jedes Neuron in einem neuronalen Netzwerk im Grunde genommen eine logistische Regressionsfunktion ist, warum ist eine Mehrfachschicht besser?

13

Ich gehe durch den DeepAI-Kurs der Cousera (Woche 3, Video 1, "Überblick über neuronale Netze") und Andrew Ng erklärt, wie jede Schicht in einem neuronalen Netz nur eine andere logistische Regression darstellt, erklärt aber nicht, wie dies die Sache genauer macht.

Wie können Sie in einem 2-Schicht-Netzwerk die logistische Mehrfachberechnung genauer gestalten?

mskw
quelle
7
Um ein gutes Regressionsmodell für eine einzelne Logistik zu erstellen, müssen Sie häufig umfangreiche Funktionen entwickeln. Die zwei Ebenen nn versuchen, einen Teil dieser Arbeit für Sie zu erledigen.
Matthew Drury
@msk, haben Sie jemals neue Funktionen basierend auf Ihren ursprünglichen Funktionen erstellt, um Ihre logistische Regression zu verbessern? Dies ist, was die verborgenen Ebenen tun.
Ricardo Cruz

Antworten:

10

Wenn Sie logistische Aktivierungsfunktionen verwenden, ist die Funktion, die die Eingänge jeder Einheit mit ihren Ausgängen in Beziehung setzt, dieselbe wie bei der logistischen Regression. Dies ist jedoch nicht wirklich dasselbe wie bei jeder Einheit, die eine logistische Regression durchführt. Der Unterschied besteht darin, dass bei der logistischen Regression die Gewichte und die Verzerrung so gewählt werden, dass die Ausgabe am besten mit den vorgegebenen Zielwerten übereinstimmt (unter Verwendung des logarithmischen / entropieübergreifenden Verlusts). Im Gegensatz dazu senden versteckte Einheiten in einem neuronalen Netz ihre Ausgaben an nachgeschaltete Einheiten. Es gibt keine Zielausgabe für einzelne ausgeblendete Einheiten. Vielmehr werden die Gewichte und Vorspannungen ausgewählt, um eine objektive Funktion zu minimieren, die von der endgültigen Ausgabe des Netzwerks abhängt.

Anstatt eine logistische Regression durchzuführen, ist es möglicherweise sinnvoller, sich jede versteckte Einheit als Berechnung einer Koordinate in einem Merkmalsraum vorzustellen. Aus dieser Perspektive besteht der Zweck einer verborgenen Ebene darin, ihre Eingabe zu transformieren - der Eingabevektor wird auf einen Vektor von Aktivierungen verborgener Ebenen abgebildet. Sie können sich dies so vorstellen, dass Sie die Eingabe in einen Feature-Space mit einer Dimension abbilden, die jeder verborgenen Einheit entspricht.

Die Ausgabeschicht kann oft als Standardlernalgorithmus betrachtet werden, der in diesem Merkmalsraum arbeitet. Beispielsweise entspricht die Verwendung einer logistischen Ausgabeeinheit mit Kreuzentropieverlust in einer Klassifizierungsaufgabe der Durchführung einer logistischen Regression im Merkmalsbereich (oder einer multinomialen logistischen Regression, wenn Softmax-Ausgaben verwendet werden). In einer Regressionsaufgabe entspricht die Verwendung einer linearen Ausgabe mit quadratischem Fehler der Durchführung einer linearen Regression der kleinsten Quadrate im Merkmalsraum.

Das Trainieren des Netzwerks bedeutet das Erlernen der Feature-Space-Zuordnung und der Klassifizierungs- / Regressionsfunktion (im Feature-Space), die zusammen die beste Leistung liefern. Angenommen, nichtlineare verborgene Einheiten, eine Vergrößerung der Breite der verborgenen Ebene oder das Stapeln mehrerer verborgener Ebenen ermöglichen komplexere Zuordnungen des Merkmalsraums, wodurch komplexere Funktionen angepasst werden können.

user20160
quelle
7

Eine Möglichkeit, die Kraft der Nichtlinearität zu erkennen, besteht darin, den Satz der universellen Approximation zu beachten .

Obwohl es in der Praxis nicht sehr wichtig ist (es geht um die Fähigkeiten von Single-Layer-Netzwerken), sagt es Ihnen, dass Sie mit (beliebig langen) Summen von Sigmoiden im Prinzip jede kontinuierliche Funktion mit jedem gewünschten Niveau approximieren können. Wenn Sie die Fouriertheorie kennen oder sich an den Weierstraß-Näherungssatz erinnern, sollte das nicht überraschen.

Jakub Bartczuk
quelle
3
Dies war die einzige Person, die die Frage tatsächlich richtig beantwortete, wenn auch etwas zu knapp. Eine verborgene Ebene reicht aus, um leistungsstarke neue Funktionen zu erstellen, die die ursprünglichen Funktionen kombinieren. Das Problem ist, dass Sie möglicherweise eine ausgeblendete Ebene mit zu vielen Knoten benötigen und der Konvergenzprozess am besten mit einem tieferen Netzwerk mit ausgeblendeten Ebenen> 1 funktioniert.
Ricardo Cruz
5

Wenn im neuronalen Netzwerk verborgene Schichten vorhanden sind, fügen wir nichtlineare Merkmale hinzu. Bitte überprüfen Sie meine Antwort hier, um einen Sinn zu bekommen.

Was macht neuronale Netze zu einem nichtlinearen Klassifikationsmodell?

Insbesondere ist eine verschachtelte Sigmoidfunktion "leistungsfähiger" als eine lineare Transformation von Originalmerkmalen und einer Sigmoidfunktion (logistische Regression).


Hier ist ein numerisches Beispiel, um auf die Kommentare von OP einzugehen.

X10×37W3×7X×W10×77

Haitao Du
quelle
Ich frage mich nur, wie unterscheidet sich dann einer der Knoten der ersten Ebene in der Ausgabe, dh Knoten 1 erhält X1, X2, X3, Knoten 2 erhält auch X1, X2, X3, wenn sie alle logistische Regression sind, wie ist das? ihre Ausgabe wird anders sein?
mskw
Angenommen, Sie haben 3 Features und 10 ausgeblendete Einheiten, dann hat die Ausgabe des ausgeblendeten Layers 10 "Engineered Features".
Haitao Du
Warum nennen Sie es "Engineered Features"? Erwähnen Sie auch die Features X1, X2, X3?
mskw
Ich werde meine Antwort bearbeiten, um Ihre Kommentare zu beantworten.
Haitao Du
Nach der Überarbeitung Ihrer Erklärung bin ich mir nicht sicher, ob Sie meine Frage nicht beantworten, oder ob ich eine Wissenslücke habe, die ich zuerst überbrücken muss. Bezieht sich Gewicht aus Ihrer Antwort speziell auf jede Ausgabefunktion des Knotens? Wenn ja, wie unterscheiden sie sich von den anderen Knoten auf derselben Ebene?
mskw
3

In der logistischen Standardregression haben wir 1 Ausgabe in der letzten Ebene. Mit einem einzigen neuronalen Hidden-Layer-Netzwerk können wir jedoch mehrere Zwischenwerte haben, von denen jeder als Ergebnis eines anderen logistischen Regressionsmodells betrachtet werden kann, dh wir führen nicht immer wieder dieselbe logistische Regression durch. Es ist dann kein großer Sprung zu der Annahme, dass die Kombination dieser Merkmale aussagekräftiger ist als das Standardmodell der logistischen Regression (und dies wurde auch in der Praxis und in der Theorie gezeigt ).

Nyj=f(i=1Nwjixi+bj)fwjixibjist etwas voreingenommen. Die Gewichte werden gewählt durch einen Optimierungsalgorithmus unser Ziel , zum Beispiel minimieren Klassifizierungsfehler zu optimieren. Die Initialisierung ist sehr wichtig für die Gradientenabstiegsalgorithmen, die normalerweise zur Optimierung der Gewichte verwendet werden. Siehe https://intoli.com/blog/neural-network-initialization/, wo das Netzwerk nicht lernen kann, wenn alle Gewichte bei 0 beginnen.

Srijan Parmeshwar
quelle