Wenn tiefe neuronale Netze als universelle Funktionsapproximatoren betrachtet werden, ist eine Basiserweiterung wirklich notwendig? Oder wäre dies fallspezifisch? Wenn man beispielsweise drei quantitative X-Variablen hat, wäre es dann von Vorteil, die Anzahl der Variablen durch Einführung von Wechselwirkungen, Polynomen usw. zu erweitern? Dies scheint beispielsweise bei RFs und SVM von Nutzen zu sein, aber ich bin mir nicht sicher, ob dies eine gute Strategie für neuronale Netze wäre.
Wenn dies vielleicht zu weit gefasst oder vage ist, könnte mich jemand auf relevante Informationen zur Basiserweiterung und zum Feature-Engineering im Kontext von Deep Nets verweisen?
quelle
Viele Deep-Learning-Modelle lernen während des Trainings ihre eigenen Merkmale aus den rohen Eingabedaten (z. B. 2D-Faltungs-Neuronale Netze für Bilder). In vielen Fällen müssen Sie sich also nicht einmal darum kümmern, Variablen explizit an Ihr Modell zu übergeben. In einigen anderen Fällen benötigen Sie weiterhin Funktionen, jedoch nur Kernfunktionen (z. B. Wörter in NLP). Diese Merkmale werden als Vektoren in einem Einbettungsraum dargestellt, der Ähnlichkeit erfasst (z. B. dass "Präsident" in der Nähe von "Obama" ist). Der Einbettungsraum stammt entweder aus unbeaufsichtigtem Vortraining (word2vec, Handschuh) oder wird zufällig initialisiert, und die Vektoren werden während des Trainings über Backpropagation abgestimmt. Die Architektur des Netzwerks ist für das Lernen von Funktionskombinationen verantwortlich, z. B. den Unterschied zwischen "nicht schlecht, ziemlich gut" und "nicht gut".
Der Absatz „Merkmalskombinationen“ in Abschnitt 3 von Goldberg, Y. (2015). Eine Einführung in neuronale Netzwerkmodelle für die Verarbeitung natürlicher Sprache. Journal of Artificial Intelligence Research, 57, 345-420. sehr gut erklärt dies (ich empfehle wirklich, den gesamten Abschnitt 3 zu lesen, es ist ausgezeichnet):
quelle