Feature Selection in Machine Learning

Machine Learning

Shaurya Lalwani

Follow

Jul 10, 2020 – 7 min read

Foto von Louis Hansel @shotsoflouis auf Unsplash

In der echten Welt, sind die Daten nicht so sauber, wie man oft annimmt. Hier kommt das Data Mining und die Datenverarbeitung ins Spiel, um aus den Daten, die mit Hilfe von Abfragen strukturiert wurden und nun wahrscheinlich bestimmte fehlende Werte enthalten und mögliche Muster aufweisen, die mit dem bloßen Auge nicht zu erkennen sind, Erkenntnisse zu gewinnen. Hier kommt das maschinelle Lernen ins Spiel: Die Suche nach Mustern und die Nutzung dieser Muster zur Vorhersage von Ergebnissen unter Verwendung dieser neu verstandenen Beziehungen in den Daten.

Um die Tiefe des Algorithmus zu verstehen, muss man sich die Variablen in den Daten ansehen und wissen, wofür diese Variablen stehen. Dies ist wichtig, weil Sie Ihre Ergebnisse auf der Grundlage Ihres Verständnisses der Daten nachweisen müssen. Wenn Ihre Daten fünf oder sogar fünfzig Variablen enthalten, können Sie sie alle durchgehen. Was aber, wenn sie 200 Variablen enthalten? Sie haben nicht die Zeit, jede einzelne Variable durchzugehen. Hinzu kommt, dass verschiedene Algorithmen nicht mit kategorischen Daten arbeiten, so dass Sie alle kategorischen Spalten in quantitative Variablen umwandeln müssen (sie sehen quantitativ aus, aber die Metriken rechtfertigen, dass sie kategorisch sind), um sie in das Modell zu übertragen. Dadurch erhöht sich die Anzahl der Variablen in Ihren Daten, und Sie haben es nun mit 500 Variablen zu tun. Wie geht man mit ihnen um? Man könnte meinen, dass die Dimensionalitätsreduktion sofort die Antwort ist. Algorithmen zur Dimensionalitätsreduktion reduzieren die Dimensionen, aber die Interpretierbarkeit ist nicht so gut. Wie wäre es, wenn ich Ihnen sage, dass es andere Techniken gibt, mit denen Merkmale eliminiert werden können, und dass die verbleibenden Merkmale immer noch leicht zu verstehen und zu interpretieren sind?

Abhängig davon, ob die Analyse auf Regression oder Klassifikation basiert, können sich die Techniken zur Merkmalsauswahl unterscheiden/verändern, aber die allgemeine Idee, wie man sie implementiert, bleibt dieselbe.

Hier sind einige Techniken zur Auswahl von Merkmalen, um dieses Problem zu lösen:

Variablen, die stark miteinander korreliert sind, liefern dem Modell dieselben Informationen, und daher ist es unnötig, sie alle in unsere Analyse einzubeziehen. Ein Beispiel: Wenn ein Datensatz ein Merkmal “Browsing Time” und ein weiteres mit der Bezeichnung “Data Used while Browsing” enthält, dann können Sie sich vorstellen, dass diese beiden Variablen in gewissem Maße korreliert sind, und wir würden diese hohe Korrelation auch dann sehen, wenn wir eine unverzerrte Stichprobe der Daten nehmen. In einem solchen Fall müsste nur eine dieser Variablen als Prädiktor im Modell vorhanden sein, denn wenn wir beide verwenden, wird das Modell überangepasst und in Richtung dieses bestimmten Merkmals (dieser bestimmten Merkmale) verzerrt.

Foto von Akin Cakiner auf Unsplash

P-Werte

In Algorithmen wie der linearen Regression, ist ein anfängliches statistisches Modell immer eine gute Idee, da es hilft, die Bedeutung von Merkmalen anhand ihrer P-Werte, die mit diesem Modell ermittelt wurden, zu visualisieren. Bei der Festlegung eines Signifikanzniveaus werden die erhaltenen P-Werte überprüft, und wenn dieser Wert unter dem Signifikanzniveau liegt, zeigt dies, dass das Merkmal signifikant ist, d. h. eine Änderung dieses Wertes führt wahrscheinlich zu einer Änderung des Wertes des Ziels.

Foto von Joshua Eckstein auf Unsplash

Vorwärtsselektion

Die Vorwärtsselektion ist eine Technik, die die Verwendung einer schrittweisen Regression beinhaltet. Das Modell beginnt also bei Null, d.h. einem leeren Modell, und fügt dann bei jeder Iteration eine Variable hinzu, so dass sich eine Verbesserung des erstellten Modells ergibt. Die in jeder Iteration hinzuzufügende Variable wird anhand ihrer Signifikanz bestimmt, die anhand verschiedener Metriken berechnet werden kann, wobei eine gängige Metrik der P-Wert ist, der sich aus einem anfänglichen statistischen Modell ergibt, das mit allen Variablen erstellt wurde. Manchmal kann die Vorwärtsauswahl zu einer Überanpassung führen, da sie dem Modell stark korrelierte Variablen hinzufügen kann, selbst wenn sie dem Modell die gleichen Daten liefern (aber das Modell eine Verbesserung aufweist).

Foto von Edu Grande auf Unsplash

Backward Elimination

Auch bei der Backward Elimination wird eine schrittweise Auswahl von Merkmalen vorgenommen, und zwar auf eine Weise, die der der Forward Selection entgegengesetzt ist. In diesem Fall beginnt das Ausgangsmodell mit allen unabhängigen Variablen, und eine nach der anderen werden diese Variablen eliminiert (eine pro Iteration), wenn sie in jeder Iteration keinen Wert für das neu gebildete Regressionsmodell liefern. Dies geschieht wiederum auf der Grundlage der P-Werte, die anhand des ursprünglichen statistischen Modells ermittelt wurden, und auf der Grundlage dieser P-Werte werden die Merkmale aus dem Modell entfernt. Auch bei dieser Methode gibt es eine Unsicherheit bei der Entfernung hoch korrelierter Variablen.

Foto von Markus Spiske auf Unsplash

Recursive Feature Elimination (RFE)

RFE ist eine weit verbreitete Technik/Algorithmus, um eine genaue Anzahl signifikanter Merkmale auszuwählen, Manchmal, um eine bestimmte Anzahl der “wichtigsten” Merkmale, die sich auf das Geschäft auswirken, zu erklären, und manchmal als Methode, um eine sehr hohe Anzahl von Merkmalen (z. B. 200-400) auf diejenigen zu reduzieren, die sich auch nur ein bisschen auf das Modell auswirken, und den Rest zu eliminieren. RFE verwendet ein rangbasiertes System, um die Ränge der Merkmale im Datensatz anzuzeigen, und diese Ränge werden verwendet, um Merkmale in einer rekursiven Schleife zu eliminieren, basierend auf der Kollinearität zwischen ihnen und natürlich der Bedeutung dieser Merkmale im Modell. Neben der Einstufung der Merkmale kann RFE auch zeigen, ob diese Merkmale wichtig sind oder nicht, sogar für die gewählte Anzahl von Merkmalen (denn es ist sehr gut möglich, dass die gewählte Anzahl, die wir gewählt haben, nicht die optimale Anzahl von wichtigen Merkmalen darstellt und dass die optimale Anzahl von Merkmalen mehr oder weniger als diese vom Benutzer gewählte Anzahl sein kann).

Foto von Andrew Seaman auf Unsplash

Gemessene Merkmalsbedeutung

Wenn wir über die Interpretierbarkeit von Algorithmen des maschinellen Lernens sprechen, diskutieren wir normalerweise über lineare Regression (da wir die Merkmalsbedeutung anhand der P-Werte analysieren können) und Entscheidungsbaum (der die Merkmalsbedeutung praktisch in Form eines Baums darstellt, die auch die Hierarchie der Wichtigkeit zeigt), aber andererseits verwenden wir oft das Variablen-Wichtigkeits-Diagramm, um die Variablen und den “Betrag ihrer Wichtigkeit” in Algorithmen wie Random Forest Classifier, Light Gradient Boosting Machine und XG Boost darzustellen. Dies ist besonders nützlich, wenn die Wichtigkeit von Merkmalen einem Unternehmen, das analysiert wird, gut strukturiert präsentiert werden muss.

Foto von Robert Anasch auf Unsplash

Regularisierung

Die Regularisierung wird durchgeführt, um den Kompromiss zwischen Bias und Varianz zu überwachen. Die Verzerrung gibt an, wie sehr das Modell den Trainingsdatensatz übererfüllt hat. Die Varianz gibt Aufschluss darüber, wie unterschiedlich die Vorhersagen in den Trainings- und Testdatensätzen waren. Im Idealfall müssen sowohl Bias als auch Varianz reduziert werden. Hier kommt die Regularisierung als Retter in der Not ins Spiel! Es gibt hauptsächlich zwei Arten von Regularisierungstechniken:

L1 Regularisierung – Lasso: Lasso bestraft die Beta-Koeffizienten des Modells, um ihre Bedeutung im Modell zu verändern, und kann sie sogar “erden” (sie in Nullen verwandeln, d.h. diese Variablen grundsätzlich aus dem endgültigen Modell entfernen). Im Allgemeinen wird Lasso verwendet, wenn Sie feststellen, dass Ihr Datensatz eine große Anzahl von Variablen enthält und Sie einige davon entfernen müssen, um besser zu verstehen, wie sich die wichtigen Merkmale auf Ihr Modell auswirken (d. h. die Merkmale, die schließlich von Lasso ausgewählt werden und deren Bedeutung zugewiesen wird).

L2 Regularisierung – Ridge: Die Funktion von Ridge besteht darin, alle Variablen zu erhalten, d.h. alle Variablen zur Erstellung des Modells zu verwenden und ihnen gleichzeitig eine solche Bedeutung zuzuweisen, dass eine Verbesserung der Modellleistung erzielt wird. Ridge ist eine gute Wahl, wenn die Anzahl der Variablen im Datensatz gering ist und daher alle diese Variablen benötigt werden, um die gewonnenen Erkenntnisse und vorhergesagten Zielergebnisse zu interpretieren.

Da Ridge alle Variablen beibehält und Lasso den Variablen eine bessere Bedeutung zuweist, wurde eine Kombination aus beiden, bekannt als Elastic-Net, als Möglichkeit entwickelt, einen Algorithmus zu entwickeln, der die besten Eigenschaften von Ridge und Lasso kombiniert. Elastic-Net ist auf diese Weise die ideale Wahl.

Foto von Hunter Harritt auf Unsplash

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.