Merkmalsauswahl vs Merkmalsextraktion. Welche wann verwenden?


14

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 ..

Antworten:


15

Hinzufügen zu der Antwort von Toros,

Diese drei (siehe unter Aufzählungszeichen) sind sich sehr ähnlich, unterscheiden sich jedoch geringfügig - :( prägnant und leicht zu merken)

  • Merkmalsextraktion und Merkmalstechnik : Umwandlung von Rohdaten in für die Modellierung geeignete Merkmale;

  • Feature-Transformation : Transformation von Daten zur Verbesserung der Genauigkeit des Algorithmus;

  • Funktionsauswahl : Entfernen unnötiger Funktionen.

Nur um ein Beispiel desselben hinzuzufügen,

Feature-Extraktion und Engineering (wir können etwas daraus extrahieren)

  • Texte (ngrams, word2vec, tf-idf etc)
  • Bilder (CNNs, Texte, Fragen und Antworten)
  • Geodaten (Lat, Long usw.)
  • Datum und Uhrzeit (Tag, Monat, Woche, Jahr ..)
  • Zeitreihen, Web, etc ...
  • Dimensionsreduktionstechniken ..
  • .....(Und viele andere)

Feature-Transformationen (sinnvolle Transformationen)

  • Normalisierung und sich ändernde Verteilung (Skalierung)
  • Wechselwirkungen
  • Ergänzen der fehlenden Werte (Medianfüllung etc.)
  • .....(Und viele andere)

Featureauswahl (Erstellen Ihres Modells anhand dieser ausgewählten Features)

  • Statistische Ansätze
  • Auswahl durch Modellierung
  • Rastersuche
  • Quervalidierung
  • .....(Und viele andere)

Hoffe das hilft...

Schauen Sie sich die Links an, die von anderen geteilt wurden. Sie sind ganz nett ...


nette Art, +1 dafür zu beantworten.
Toros91

Ein großes Lob an diese Community .. Ich lerne viel daraus ..
Aditya

1
Richtig, dieser Mann, ich bin seit Oktober 2017 Mitglied. Ich habe eine Menge gelernt. Ich hoffe, es ist auch für Sie so. Ich habe deine Antworten gelesen, sie sind gut. Übrigens entschuldige die Sache, die du auf SO durchgemacht hast. Ich konnte das Ganze nicht sehen, aber als Neil Slater gut sagte, dass du bis zum Ende cool geblieben bist. Mach weiter! Wir haben noch einen langen Weg vor uns. :)
Toros91

In welcher Reihenfolge sollen diese verarbeitet werden? Neben Datenbereinigung und Datenaufteilung. Welcher der 5 ist der erste Schritt?
Technazi

Die Aufteilung der Daten erfolgt ganz am Ende, wenn Sie sicherstellen, dass die Daten für die Modellierung bereit sind ... Und imho gibt es keine solche Reihenfolge für die oben genannten Dinge, da sie sich einige Male überlappen (Feature-Extraktion, Feature-Engineering, Merkmalsumwandlung.), Aber die Merkmalsauswahl wird mit Sicherheit nach der Aufteilung der Daten in einen Zug als Validierung durchgeführt, vorausgesetzt, Sie verwenden die Metrik Ihres Modells oder etwas Äquivalentes in einem Validierungsdatensatz (um dessen Leistung zu messen) für die Kreuzvalidierung oder etwas Äquivalentes. Sie können iterativ beginnen Säulen fallen und sehen, Kobold colsorimp
Aditya

4

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:

  • Merkmalsextraktion: Generierung von Merkmalen aus Daten in einem Format, das sich nur schwer direkt analysieren lässt bzw. nicht direkt vergleichen lässt (z. B. Bilder, Zeitreihen usw.). Im Beispiel einer Zeitreihe können einige einfache Merkmale verwendet werden Beispiel: Zeitreihenlänge, Periode, Mittelwert, Standard usw.
  • Feature-Transformation: Transformation bestehender Features, um basierend auf den alten Features neue zu erstellen. Eine sehr populäre Technik zur Dimensionsreduktion ist die Hauptkomponentenanalyse (Principal Component Analysis, pca), bei der eine orthogonale Transformation verwendet wird, um eine Reihe linear nicht korrelierter Variablen auf der Grundlage der ursprünglichen Variablenmenge zu erzeugen.
  • Featureauswahl: Auswahl der Features mit der höchsten "Wichtigkeit" / Auswirkung auf die Zielvariable aus einer Reihe vorhandener Features. Dies kann mit verschiedenen Techniken erfolgen: z. B. lineare Regression, Entscheidungsbäume, Berechnung von Wichtigkeitsgewichten (z. B. Fisher Score, ReliefF)

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:


3

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.


3

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.


0

Ein entscheidender Teil des Erfolgs eines Maschinellen Lernprojekts besteht darin, eine Reihe guter Funktionen zu entwickeln, die trainiert werden können. Dieser als Feature-Engineering bezeichnete Prozess umfasst Folgendes:

• Funktionsauswahl: Auswahl der nützlichsten Funktionen, die unter den vorhandenen Funktionen trainiert werden sollen.
• Merkmalsextraktion: Kombinieren vorhandener Merkmale, um ein nützlicheres zu erhalten (wie wir bereits gesehen haben, können Algorithmen zur Dimensionsreduktion hilfreich sein).
• Erstellen neuer Funktionen durch Sammeln neuer Daten

Zitat: "Maschinelles Lernen mit SciKit-Learn, Keras & Tensorflow - Aurelien Geron"

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.