Multivariate lineare Regression gegen neuronales Netz?

54

In einigen Fällen scheint es möglich zu sein, ähnliche Ergebnisse wie bei einem neuronalen Netzwerk mit einer multivariaten linearen Regression zu erzielen, und die multivariate lineare Regression ist superschnell und einfach.

Unter welchen Umständen können neuronale Netze bessere Ergebnisse liefern als multivariate lineare Regression?

Hugh Perkins
quelle

Antworten:

28

Neuronale Netze können im Prinzip Nichtlinearitäten automatisch modellieren (siehe den universellen Approximationssatz ), den Sie explizit unter Verwendung von Transformationen (Splines usw.) in linearer Regression modellieren müssten.

Der Vorbehalt: Die Versuchung zur Überanpassung kann in neuronalen Netzen (noch) stärker sein als in der Regression, da das Hinzufügen von versteckten Schichten oder Neuronen harmlos aussieht. Seien Sie also besonders vorsichtig, wenn Sie sich die Prognoseleistung außerhalb der Stichprobe ansehen.

S. Kolassa - Setzen Sie Monica wieder ein
quelle
Okay. Ich denke, eine Frage in meinem Kopf ist, inwieweit ich ein ähnliches Verhalten reproduzieren kann, indem ich meine Eingabedaten mit quadratischen und kubischen Begriffen anreiche.
Hugh Perkins
3
Tatsächlich können Sie NNs mit entsprechend transformierten Regressoren in einer linearen Regression wahrscheinlich so genau approximieren, wie Sie möchten (und umgekehrt). Bessere Methoden als Quadratics und Cubics sind jedoch Splines - ich empfehle von ganzem Herzen Harrells Lehrbuch "Regression Modeling Strategies".
S. Kolassa - Wiedereinsetzung von Monica
Okay. Ist es vernünftig anzunehmen, dass die Trainingszeit für die lineare Regression transformierter Daten schneller sein wird, oder sind die Trainingszeiten in etwa ähnlich? Wird die Lösung für die lineare Regression transformierter Daten ein einziges globales Maximum haben oder wird sie viele lokale Minima haben, wie bei neuronalen Netzen? (Edit: Ich denke, egal wie die Eingaben transformiert werden, die Lösung für die lineare Regression ist nur die Pseudoinverse der Designmatrix multipliziert mit etwas-etwas und ist daher immer entweder einzigartig oder singulär?)
Hugh Perkins
2
Die Trainingszeiten hängen natürlich von den Eingabedimensionen ab (wenige / viele Beobachtungen, wenige / viele Prädiktoren). Lineare Regression beinhaltet eine einzelne (Pseudo-) Inverse (ja, Eindeutigkeit / Singularität auch bei transformierten Regressoren), wohingegen NNs in der Regel iterativ trainiert werden, Iterationen jedoch keine Matrixinversionen beinhalten, sodass jede Iteration schneller ist - in der Regel Beenden Sie das Training anhand eines Kriteriums, das Sie vor einer Überanpassung bewahren soll.
S. Kolassa - Wiedereinsetzung von Monica
1
@Yamcha: Mein Verständnis des universellen Approximationssatzes ist, dass die Dimensionalität im Prinzip keine Rolle spielt. (Natürlich ist dies ein asymptotisches Ergebnis. Ich würde erwarten, dass Sie horrende Datenmengen benötigen, damit der NN besser ist als eine fein abgestimmte polynomielle Regression. Fängt an, wie Deep Learning zu klingen ...)
S. Kolassa - Wiedereinsetzung von Monica
16

Sie erwähnen die lineare Regression. Dies hängt mit der logistischen Regression zusammen , die über einen ähnlich schnellen Optimierungsalgorithmus verfügt. Wenn Sie Grenzen für die Zielwerte haben, z. B. bei einem Klassifizierungsproblem, können Sie die logistische Regression als Verallgemeinerung der linearen Regression anzeigen.

Neuronale Netze sind streng allgemeiner als die logistische Regression der ursprünglichen Eingänge, da dies einem Überspring-Layer-Netz (mit Verbindungen, die die Eingänge mit den Ausgängen direkt verbinden) mit versteckten Knoten entspricht.0

Wenn Sie Features wie hinzufügen , ähnelt dies der Auswahl von Gewichten für einige ausgeblendete Knoten in einer einzelnen ausgeblendeten Ebene. Es gibt nicht genau eine Entsprechung, da das Modellieren einer Funktion wie mit Sigmoiden mehr als ein verstecktes Neuron erfordern kann. Wenn Sie ein neuronales Netzwerk trainieren, lassen Sie es seine eigenen verborgenen Gewichte finden, die möglicherweise besser sind. Es kann auch länger dauern und inkonsistent sein. Sie können mit einer Annäherung an die logistische Regression mit zusätzlichen Funktionen beginnen und die Eingabe in verborgene Gewichte langsam trainieren. Dies sollte letztendlich besser funktionieren als die logistische Regression mit zusätzlichen Funktionen. Je nach Problem kann die Trainingszeit vernachlässigbar oder unerschwinglich sein.x311x3

Eine Zwischenstrategie besteht darin, eine große Anzahl zufälliger Knoten auszuwählen, ähnlich wie dies beim Initialisieren eines neuronalen Netzwerks geschieht, und die Eingabe-zu-versteckten Gewichte zu korrigieren. Die Optimierung über die * -zu-Output-Gewichte bleibt linear. Dies wird als extreme Lernmaschine bezeichnet . Es funktioniert mindestens so gut wie die ursprüngliche logistische Regression.

Douglas Zare
quelle
1
"Eine Zwischenstrategie besteht darin, eine große Anzahl zufälliger Knoten auszuwählen, ähnlich wie dies beim Initialisieren eines neuronalen Netzwerks geschieht, und die Eingabe-zu-versteckten Gewichte zu korrigieren. Die Optimierung über die * -zu-Ausgabe-Gewichte bleibt linear." => Sie meinen, dass es in diesem Fall ein einziges globales Maximum für die Lösung gibt?
Hugh Perkins
1
Für eine generische zufällige Auswahl zufälliger versteckter Knoten, ja.
Douglas Zare
2
toller nachbereitender Kontext für [LR, LogR, NN, ELM]. Ihr Kommentar dazu, dass LogR ein Überspring-Layer-NN ist, ist offensichtlich, nachdem Sie darauf hingewiesen wurden, aber ein guter Einblick.
Javadba
3

Die lineare Regression zielt darauf ab, die Daten zu trennen, die linear trennbar sind. Ja, Sie können zusätzliche Polynome> dritten Grades verwenden, aber auf diese Weise haben Sie erneut einige Annahmen zu den Daten gemacht, die Sie haben, da Sie die Struktur der Zielfunktion definiert haben. Im neuronalen Netz. Im Allgemeinen verfügen Sie über eine Eingabeebene, die die linearen Trennzeichen für die von Ihnen gespeicherten Daten erstellt, und eine ausgeblendete Ebene, UND die Regionen, die einige Klassen begrenzen, und eine letzte Ebene, ODER alle diese Regionen. Auf diese Weise können alle Daten, die Sie haben, nicht linear klassifiziert werden, und alle diese Prozesse werden mit intern erlernten Gewichten und definierten Funktionen ausgeführt. Das Erhöhen der Merkmalsnummer für die lineare Regression steht außerdem dem "Fluch der Dimensionalität" entgegen. Darüber hinaus benötigen einige Anwendungen als Ausgabe mehr Wahrscheinlichkeitsergebnisse als konstante Zahlen.

Erogol
quelle