Merkmalsauswahl im maschinellen Lernen

Hallo, Habr!

Wir bei „Rexoft“ haben einen Artikel ins Deutsche übersetzt Feature Selection im Maschinenlernen. Wir hoffen, dass es für alle von Interesse sein wird, die sich für das Thema begeistern.

In der realen Welt sind Daten nicht immer so sauber, wie es manchmal die Geschäftskunden annehmen. Genau deshalb ist die intelligente Datenanalyse (Data Mining und Data Wrangling) gefragt. Sie hilft dabei, fehlende Werte und Muster in strukturierten Daten zu identifizieren, die durch Abfragen schwer erkennbar sind. Um diese Muster zu finden und zu nutzen, um Ergebnisse vorherzusagen, sind die entdeckten Verbindungen in den Daten hilfreich; hier kommt das maschinelle Lernen (Machine Learning) ins Spiel.

Um jeden Algorithmus zu verstehen, ist es notwendig, alle Variablen in den Daten zu betrachten und herauszufinden, was diese Variablen darstellen. Dies ist von entscheidender Bedeutung, da das Verständnis der Daten die Grundlage für die Begründung der Ergebnisse bildet. Wenn die Daten 5 oder sogar 50 Variablen umfassen, kann man alle untersuchen. Aber was ist, wenn es 200 sind? Dann reicht die Zeit einfach nicht aus, um jede einzelne Variable zu analysieren. Darüber hinaus funktionieren einige Algorithmen nicht für kategoriale Daten, und es ist notwendig, alle kategorialen Spalten in quantitative Variablen umzuwandeln (sie können wie quantitative Variablen aussehen, aber die Metriken zeigen, dass sie kategorial sind), um sie in das Modell einzufügen. Dadurch erhöht sich die Anzahl der Variablen, und es könnten etwa 500 werden. Was ist jetzt zu tun? Man könnte denken, dass die Antwort in der Dimensionsreduktion liegt. Algorithmen zur Dimensionsreduktion verringern die Anzahl der Parameter, beeinträchtigen jedoch die Interpretierbarkeit. Gibt es vielleicht andere Techniken, die Merkmale ausschließen und gleichzeitig das Verständnis und die Interpretation der verbleibenden Merkmale erleichtern?

Je nach Art der Analyse, ob sie auf Regression oder Klassifikation basiert, können sich die Auswahlmethoden für Merkmale unterscheiden, aber die grundlegende Idee ihrer Implementierung bleibt gleich.

Stark korrelierte Variablen

Stark korrelierte Variablen liefern dem Modell dieselbe Information, weshalb nicht alle für die Analyse benötigt werden. Wenn beispielsweise der Datensatz die Merkmale „Online-Zeit“ und „Verbrauchter Traffic“ enthält, kann man annehmen, dass sie in gewissem Maße korreliert sind, und wir werden eine starke Korrelation sehen, selbst wenn wir eine zufällige Stichprobe wählen. In diesem Fall wird nur eine dieser Variablen im Modell benötigt. Wenn beide verwendet werden, besteht die Gefahr der Überanpassung (Overfitting) und der Vorurteil gegenüber einem speziellen Merkmal.

P-Werte

In Algorithmen wie der linearen Regression ist ein anfängliches statistisches Modell immer eine gute Idee. Es hilft, die Bedeutung der Merkmale anhand ihrer p-Werte zu zeigen, die mit diesem Modell ermittelt wurden. Indem wir ein Signifikanzniveau festlegen, überprüfen wir die erhaltenen p-Werte, und wenn ein Wert unter dem festgelegten Signifikanzniveau liegt, wird dieses Merkmal als signifikant betrachtet, das heißt, eine Änderung seines Wertes wird voraussichtlich zu einer Änderung des Zielwerts führen.

Direktauswahl

Die direkte Auswahl ist eine Technik, die auf iterativer Regression basiert. Der Aufbau des Modells beginnt von Grund auf, also mit einem leeren Modell, und jede Iteration fügt eine Variable hinzu, die eine Verbesserung des konstruierten Modells bewirkt. Welche Variable dem Modell hinzugefügt wird, bestimmt ihre Bedeutung. Dies kann mit verschiedenen Metriken berechnet werden. Der gebräuchlichste Weg ist die Anwendung von p-Werten, die aus dem ursprünglichen statistischen Modell unter Verwendung aller Variablen gewonnen werden. Manchmal kann die direkte Auswahl jedoch zur Überanpassung des Modells führen, da im Modell stark korrelierte Variablen enthalten sein können, selbst wenn sie die gleiche Information liefern (das Modell zeigt jedoch eine Verbesserung).

Die rückwärtige Auswahl

Das rückwärtige Feature-Selection besteht ebenfalls aus der schrittweisen Eliminierung von Merkmalen, jedoch in die entgegengesetzte Richtung im Vergleich zur Vorwärtsauswahl. In diesem Fall umfasst das Ausgangsmodell alle unabhängigen Variablen. Anschließend werden Variablen (eine nach der anderen) ausgeschlossen, wenn sie in jeder Iteration keinen Wert für das neue Regressionsmodell haben. Die Grundlage für die Merkmalseliminierung bilden die p-Werte des Ausgangsmodells. Auch in dieser Methode gibt es Unsicherheiten beim Entfernen von stark korrelierten Variablen.

Rekursives Feature-Selection

RFE ist eine weit verbreitete Technik/Algorithmus zur Auswahl einer genauen Anzahl bedeutender Merkmale. Manchmal wird die Methode verwendet, um eine bestimmte Anzahl von "wichtigsten" Merkmalen zu erklären, die die Ergebnisse beeinflussen; manchmal auch, um eine sehr große Anzahl von Variablen (etwa 200-400) zu reduzieren und nur die zu belassen, die einen gewissen Beitrag zum Modell leisten, während alle anderen ausgeschlossen werden. RFE verwendet ein Rangsystem. Den Merkmalen im Datensatz werden Ränge zugewiesen. Diese Ränge werden dann verwendet, um Merkmale rekursiv basierend auf der Kollinearität zwischen ihnen und der Bedeutung dieser Merkmale im Modell auszuschließen. Neben der Rangordnung der Merkmale kann RFE zeigen, ob diese Merkmale oder nicht sogar für eine bestimmte Anzahl von Merkmalen wichtig sind (da es sehr wahrscheinlich ist, dass die gewählte Anzahl von Merkmalen nicht optimal ist und die optimale Anzahl sowohl größer als auch kleiner als die gewählte sein kann).

Diagramm der Merkmalswichtigkeit

Wenn es um die Interpretierbarkeit von Machine-Learning-Algorithmen geht, wird oft über lineare Regressionen gesprochen (die mit p-Werten die Bedeutung der Merkmale analysieren) und Entscheidungsbäume (die die Wichtigkeit der Merkmale in Form eines Baumes darstellen und zudem deren Hierarchie aufzeigen). Andererseits wird in Algorithmen wie Random Forest, LightGBM und XG Boost häufig ein Diagramm zur Merkmalsbedeutung verwendet, das heißt, es wird ein Diagramm der Variablen und deren "Bedeutungsgrad" erstellt. Dies ist besonders nützlich, wenn eine strukturierte Begründung der Merkmalswichtigkeit in Bezug auf deren Einfluss auf das Geschäft bereitgestellt werden muss.

Regularisierung

Regularisierung wird eingesetzt, um das Gleichgewicht zwischen Bias (Voreingenommenheit) und Varianz zu steuern. Der Bias zeigt, wie stark das Modell auf die Trainingsdaten überangepasst (overfit) ist. Die Varianz zeigt, wie unterschiedlich die Vorhersagen zwischen dem Trainings- und dem Testdatensatz waren. Idealerweise sollten sowohl Bias als auch Varianz gering sein. Hier kommt die Regularisierung ins Spiel! Es gibt zwei grundlegende Techniken:

L1-Regularisierung – Lasso: Lasso bestraft die Gewichtungskoeffizienten des Modells, um deren Bedeutung für das Modell zu verändern, und kann sie sogar auf null setzen (d. h. diese Variablen aus dem endgültigen Modell entfernen). Normalerweise wird Lasso verwendet, wenn der Datensatz eine große Anzahl von Variablen enthält und einige ausgeschlossen werden müssen, um besser zu verstehen, wie wichtige Merkmale das Modell beeinflussen (d. h. die Merkmale, die von Lasso ausgewählt wurden und deren Bedeutung festgelegt wurde).

L2-Regularisierung – Ridge-Methode: Ziel von Ridge ist es, alle Variablen beizubehalten und ihnen gleichzeitig eine Bedeutung basierend auf ihrem Beitrag zur Effizienz des Modells zuzuweisen. Ridge ist eine gute Wahl, wenn der Datensatz eine kleine Anzahl von Variablen enthält und alle für die Interpretation der Schlussfolgerungen und der erzielten Ergebnisse erforderlich sind.

Da Ridge alle Variablen belässt und Lasso besser deren Bedeutung festlegt, wurde ein Algorithmus entwickelt, der die besten Eigenschaften beider Regularisierungen kombiniert und als Elastic-Net bekannt ist.

Es gibt viele Methoden zur Merkmalsauswahl für maschinelles Lernen, aber die Hauptidee bleibt immer die gleiche: die Wichtigkeit der Variablen zu demonstrieren und dann einige von ihnen basierend auf der ermittelten Wichtigkeit auszuschließen. Wichtigkeit ist ein sehr subjektiver Begriff, da es sich nicht um einen, sondern um eine ganze Reihe von Metriken und Diagrammen handelt, die verwendet werden können, um Schlüsselmerkmale zu identifizieren.

Danke fürs Lesen! Viel Spaß beim Lernen!

Quelle: habr.com

Zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen 🔥 Zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen | ProHoster