Die Merkmalsextraktion und Merkmalsauswahl verringern im Wesentlichen die Dimensionalität der Daten, aber die Merkmalsextraktion macht die Daten auch trennbarer, wenn ich recht habe.
Welche Technik wäre der anderen vorzuziehen und wann?
Ich dachte, da die Featureauswahl die ursprünglichen Daten und deren Eigenschaften nicht ändert, gehe ich davon aus, dass Sie die Featureauswahl verwenden, wenn es wichtig ist, dass die Features, auf denen Sie trainieren, unverändert bleiben. Aber ich kann mir nicht vorstellen, warum Sie so etwas wollen würden ..
Wie Aditya sagte, gibt es 3 merkmalsbezogene Begriffe, die manchmal miteinander verwechselt werden. Ich werde versuchen, jedem von ihnen eine zusammenfassende Erklärung zu geben:
Wenn Sie nur eine Dimensionsreduzierung in einem vorhandenen Dataset erzielen möchten, können Sie entweder eine Feature-Transformation oder eine Feature-Auswahlmethode verwenden. Wenn Sie jedoch die physikalische Interpretation der Features kennen müssen, die Sie als "wichtig" identifizieren, oder wenn Sie versuchen, die Datenmenge zu begrenzen, die für Ihre Analyse gesammelt werden muss (Sie benötigen alle anfänglichen Features für die Feature-Transformation), dann kann nur die Merkmalsauswahl funktionieren.
Weitere Informationen zur Featureauswahl und Dimensionsreduzierung finden Sie unter den folgenden Links:
Eine Zusammenfassung der Dimensionsreduktionsmethoden
Klassifizierung und Merkmalsauswahl: Ein Rückblick
Relevante Fragen und Antworten in Stack Overflow
quelle
Ich denke, es sind zwei verschiedene Dinge,
Beginnen wir mit der Funktionsauswahl :
Diese Technik wird zur Auswahl der Merkmale verwendet, die den größten Teil der Zielvariablen erklären (hat eine Korrelation mit der Zielvariablen). Dieser Test wird ausgeführt, kurz bevor das Modell auf die Daten angewendet wird.
Um es besser zu erklären, lassen Sie uns ein Beispiel betrachten: Es gibt 10 Features und 1 Zielvariable, 9 Features erklären 90% der Zielvariablen und 10 Features zusammen erklären 91% der Zielvariablen. Die Variable 1 macht also keinen großen Unterschied, daher entfernen Sie diese Variable in der Regel vor der Modellierung (dies ist auch für das Unternehmen subjektiv). Ich kann auch als Predictor Importance bezeichnet werden.
Lassen Sie uns nun über Feature-Extraktion sprechen ,
Was beim unbeaufsichtigten Lernen verwendet wird, Extraktion von Konturen in Bildern, Extraktion von Bi-Gramm aus einem Text, Extraktion von Phonemen aus der Aufnahme von gesprochenem Text. Wenn Sie nichts über die Daten wissen, wie zum Beispiel kein Datenwörterbuch, zu viele Funktionen, was bedeutet, dass die Daten nicht in einem verständlichen Format vorliegen. Anschließend wenden Sie diese Technik an, um einige Funktionen zu erhalten, mit denen die meisten Daten erklärt werden. Die Merkmalsextraktion umfasst eine Transformation der Merkmale, die häufig nicht umkehrbar ist, da beim Reduzieren der Dimensionalität einige Informationen verloren gehen.
Sie können Feature-Extraktion auf die angegebenen Daten anwenden, um Features zu extrahieren, und dann Feature-Auswahl in Bezug auf die Zielvariable anwenden, um die Teilmenge auszuwählen, die bei der Erstellung eines guten Modells mit guten Ergebnissen hilfreich sein kann.
Sie können durch diese Link-1 , Link-2 gehenZum besseren Verständnis .
wir können sie in R, Python, SPSS implementieren.
Lass es mich wissen, wenn du weitere Klarstellungen benötigst.
quelle
Die beiden sind sehr unterschiedlich: Die Feature-Auswahl reduziert zwar die Dimensionen, die Feature-Extraktion fügt jedoch Dimensionen hinzu, die aus anderen Features berechnet werden.
Für Panel- oder Zeitreihendaten hat man normalerweise die Variable datetime, und man möchte die abhängige Variable nicht auf das Datum selbst trainieren, da diese in Zukunft nicht mehr vorkommen. Sie sollten also die Datums- und Uhrzeitangabe eliminieren: Feature-Eliminierung.
Andererseits kann der Wochentag / Wochenendtag sehr relevant sein, daher müssen wir den Wochentagsstatus aus der Datums- / Uhrzeitangabe berechnen: Feature-Extraktion.
quelle
Zitat: "Maschinelles Lernen mit SciKit-Learn, Keras & Tensorflow - Aurelien Geron"
quelle