Zuhause Persönliche Finanzen Wie man Python benutzt, um die richtigen Variablen für Data Science auszuwählen - Dummies

Wie man Python benutzt, um die richtigen Variablen für Data Science auszuwählen - Dummies

Inhaltsverzeichnis:

Video: Python Web Apps with Flask by Ezra Zigmond 2024

Video: Python Web Apps with Flask by Ezra Zigmond 2024
Anonim

Die Auswahl der richtigen Variablen in Python kann den Lernprozess in der Datenwissenschaft verbessern, indem die Menge des Rauschens reduziert wird (nutzlos). Informationen), die die Schätzungen des Lernenden beeinflussen können. Die variable Auswahl kann daher die Varianz von Vorhersagen effektiv reduzieren. Um nur die nützlichen Variablen in das Training einzubeziehen und die redundanten auszulassen, können Sie diese Techniken verwenden:

  • Univariate Ansatz: Wählen Sie die Variablen aus, die am meisten mit dem Zielergebnis zusammenhängen.

  • Gieriger oder rückständiger Ansatz: Behalten Sie nur die Variablen, die Sie aus dem Lernprozess entfernen können, ohne deren Leistung zu beeinträchtigen.

Auswahl durch univariate Measures

Wenn Sie eine Variable anhand ihrer Assoziationsstufe mit ihrem Ziel auswählen, bietet die Klasse SelectPercentile ein automatisches Verfahren, um nur einen bestimmten Prozentsatz der besten, zugeordneten Features beizubehalten. Die verfügbaren Metriken für die Zuordnung sind

  • f_regression: Wird nur für numerische Ziele verwendet und basiert auf der linearen Regressionsleistung.

  • f_classif: Wird nur für kategoriale Ziele verwendet und basiert auf dem statistischen Test der Varianzanalyse (ANOVA).

  • chi2: Führt die Chi-Quadrat-Statistik für kategoriale Ziele aus, was für die nichtlineare Beziehung zwischen der Vorhersagevariablen und ihrem Ziel weniger sinnvoll ist.

Bei der Bewertung von Kandidaten für ein Klassifizierungsproblem liefern f_classif und chi2 tendenziell denselben Satz von Top-Variablen. Es ist immer noch empfehlenswert, die Auswahl aus beiden Zuordnungsmetriken zu testen.

Neben der direkten Auswahl der besten Perzentilzuordnungen kann SelectPercentile auch die besten Variablen einordnen, um die Entscheidung zu erleichtern, bei welcher Perzentile ein Merkmal von der Teilnahme am Lernprozess ausgeschlossen wird. Die Klasse SelectKBest ist in ihrer Funktionalität analog, wählt aber die Top-k-Variablen aus, wobei k eine Zahl und kein Perzentil ist.

von sklearn. feature_selection import SelectPercentile aus sklearn. feature_selection import f_regression Selector_f = AuswählenPerzentil (f_regression, percentile = 25) Selector_f. fit (X, y) für n, s in zip (boston. feature_names, Selector_f. score_): print 'F-score:% 3. 2ft für Merkmal% s '% (s, n) F-Wert: 88. 15 für Merkmal CRIM F-Wert: 75. 26 für Merkmal ZN F-Wert: 153. 95 für Merkmal INDUS F-Wert: 15. 97 für Feature CHAS F-Score: 112. 59 für Feature NOX F-Score: 471. 85 für Feature RM F-Score: 83.48 für Feature AGE F-Score: 33. 58 für Feature DIS F-Score: 85. 91 für Feature RAD F-Score: 141. 76 für Feature TAX F-Score: 175. 11 für Feature PTRATIO F-Score: 63. 05 für Merkmal B F-Score: 601. 62 für Merkmal LSTAT

Die Verwendung des Assoziationsausgabelevels hilft Ihnen bei der Auswahl der wichtigsten Variablen für Ihr maschinelles Lernmodell, aber Sie sollten auf diese möglichen Probleme achten: > Einige Variablen mit hoher Assoziation könnten ebenfalls stark korreliert sein und doppelte Informationen einbringen, die als Rauschen im Lernprozess wirken.

  • Einige Variablen können bestraft werden, insbesondere binäre Variablen (Variablen, die einen Status oder ein Merkmal anzeigen, wenn der Wert 1 vorhanden ist, 0, wenn dies nicht der Fall ist). Beachten Sie zum Beispiel, dass die Ausgabe die binäre Variable CHAS als die am wenigsten mit der Zielvariable verknüpfte Ausgabe anzeigt (aber Sie wissen aus vorherigen Beispielen, dass sie aus der Kreuzvalidierungsphase einen Einfluss haben).

  • Der univariate Auswahlprozess kann Ihnen einen echten Vorteil verschaffen, wenn Sie eine große Anzahl von Variablen zur Auswahl haben und alle anderen Methoden rechnerisch undurchführbar sind. Die beste Vorgehensweise besteht darin, den Wert von SelectPercentile um die Hälfte oder mehr der verfügbaren Variablen zu reduzieren, die Anzahl der Variablen auf eine verwaltbare Zahl zu reduzieren und folglich die Verwendung einer ausgeklügelteren und präziseren Methode wie einer gierigen Suche zuzulassen.

Greedy-Suche verwenden

Bei einer univariaten Selektion müssen Sie selbst entscheiden, wie viele Variablen Sie behalten möchten: Die Greedy-Selektion reduziert automatisch die Anzahl der Merkmale eines Lernmodells auf Basis ihres effektiven Beitrags zum Leistung gemessen durch die Fehlermessung.

Die RFECV-Klasse, die die Daten anpasst, kann Ihnen Informationen über die Anzahl der nützlichen Merkmale liefern, sie auf Sie hinweisen und die X-Daten durch die Methodenumwandlung automatisch in einen reduzierten Variablensatz transformieren, wie in Das folgende Beispiel:

aus sklearn. feature_selection importiert den Selektor RFECV selector = RFECV (Schätzer = Regression, cv = 10, scoring = "mean_squared_error"). fit (X, y) print ("Optimale Anzahl von Features:% d"% selector. n_features_) Optimale Anzahl von Features: 6

Es ist möglich, einen Index für die optimale Variable zu erhalten, indem das Attribut support_ vom RFECV aufgerufen wird. Klasse, nachdem Sie es passen.

drucke boston. feature_names [Auswahl. support_] ['CHAS "NOX" RM "DIS" PTRATIO "LSTAT']

Beachten Sie, dass CHAS jetzt zu den prädiktivsten Merkmalen gehört, was mit dem Ergebnis der univariaten Suche kontrastiert. Die RFECV-Methode kann erkennen, ob eine Variable ist wichtig, egal ob es binär, kategorisch oder numerisch ist, weil es direkt die Rolle des Merkmals in der Vorhersage bewertet.

Die RFECV-Methode ist im Vergleich zum -univariaten Ansatz sicherlich effizienter, weil sie berücksichtigt hochgradig korrelierte Merkmale und ist darauf abgestimmt, die Bewertungsmaßnahme (die normalerweise nicht Chi-Quadrat oder F-Score ist) zu optimieren.Es ist ein gieriger Prozess, der rechenintensiv ist und nur den besten Satz von Prädiktoren approximiert.

Da RFECV die beste Menge von Variablen aus den Daten lernt, kann die Auswahl überanpassen, was bei allen anderen maschinellen Lernalgorithmen geschieht. Das Testen von RFECV an verschiedenen Proben der Trainingsdaten kann die besten zu verwendenden Variablen bestätigen.

Wie man Python benutzt, um die richtigen Variablen für Data Science auszuwählen - Dummies

Die Wahl des Herausgebers

Netzwerkgrundlagen: IPv6-Adresse Vereinfachte Notation - Dummies

Netzwerkgrundlagen: IPv6-Adresse Vereinfachte Notation - Dummies

Bei der Arbeit mit IPv6-Adressen kann es viel Zeit in Anspruch nehmen. schreibe deine Adressen - immerhin sind sie 128 Bit lang. Um das Leben einfacher zu machen, gibt es einige Regeln, die Sie verwenden können, um diese Schreibweise zu verdichten: Führende Nullen in der Adresse sind optional. Für einen Adressblock wäre also 0A45 gleich A45, ...

Netzwerkgrundlagen: IP-Netzwerkklassen - Dummies

Netzwerkgrundlagen: IP-Netzwerkklassen - Dummies

Netzwerkadressierungsarchitektur unterteilt den Adressraum für Internet Protocol Version 4 (IPv4 ) in fünf Adressklassen. Jede Klasse, die in den ersten vier Bits der Adresse codiert ist, definiert entweder eine andere Netzwerkgröße, d.h. e. Anzahl der Hosts für Unicast-Adressen (Klassen A, B, C) oder Multicast-Netzwerk (Klasse D). Die fünfte Klasse (E) address ...

Netzwerkgrundlagen: Netzwerkport Übersicht - Dummys

Netzwerkgrundlagen: Netzwerkport Übersicht - Dummys

In TCP / IP- und UDP-Netzwerken ist ein Port ein Endpunkt eine logische Verbindung. Die Portnummer gibt an, um welchen Port es sich handelt. Port 80 wird beispielsweise für HTTP-Datenverkehr verwendet. Wenn Sie einen Befehl wie netstat -n unter Microsoft Windows oder Linux verwenden, sehen Sie eine Auflistung der lokalen Adressen ...

Die Wahl des Herausgebers

Excel-Dashboards: Wie Sie Ihr erstes Makro aufzeichnen - Dummies

Excel-Dashboards: Wie Sie Ihr erstes Makro aufzeichnen - Dummies

Wenn Sie ein Anfänger auf dem Dashboard sind Automatisierung in Excel ist es unwahrscheinlich, dass Sie den VBA-Code (Visual Basic für Applikationen) von Hand schreiben können, um Makros zu erstellen. Ohne vollständige Kenntnis des Objektmodells und der Syntax von Excel wäre das Schreiben des benötigten Codes für die meisten Anfänger unmöglich. Hier können Sie ein Makro aufzeichnen ...

Excel-Formelberechnungsmodi - Dummys

Excel-Formelberechnungsmodi - Dummys

Standardmäßig ist Excel so eingestellt, dass es automatisch neu berechnet wird. Wenn Sie eine der Zellen ändern, auf die in einer bestimmten Formel verwiesen wird, berechnet Excel diese Formel automatisch neu, sodass ein korrektes Ergebnis basierend auf den Änderungen in den Zellbezügen zurückgegeben wird. Wenn die Formel, die neu berechnet wird, auch als Zellenreferenz in anderen verwendet wird ...

Excel Formelfehler - Dummies

Excel Formelfehler - Dummies

Es ist nicht immer glatt, wenn Sie mit Excel-Formeln arbeiten. Manchmal gibt eine Formel einen Fehlerwert anstelle des erwarteten Werts zurück. Excel hilft Ihnen, das Problem zu identifizieren, indem Sie einen von sieben Fehlerwerten zurückgeben: # DIV / 0! , # N / A, #NAME? , #NULL! , #NUM! , #REF! und #WERT! , erklärt in der folgenden Liste: # DIV / 0! : ...

Die Wahl des Herausgebers

Teilen, Weiterverbreiten und Kommentieren von Google+ Posts - Dummies

Teilen, Weiterverbreiten und Kommentieren von Google+ Posts - Dummies

, Wenn Sie mit der Verwendung und Veröffentlichung beginnen Bei Google+ möchten Sie gelegentlich Links und Bilder teilen, die Beiträge anderer freigeben, ihre Beiträge kommentieren und andere in Ihren eigenen Google+ Beiträgen erwähnen. Vielleicht fragen Sie sich auch, wie Sie andere dazu bringen, Ihre eigenen Beiträge öfter zu kommentieren. Teilen von Links und Bildern in Google+ So geben Sie ein ...

Teilen Ihrer Google+ Posts mit bestimmten Personen - Dummies

Teilen Ihrer Google+ Posts mit bestimmten Personen - Dummies

Beiträge auf Google+ sind ganz einfach und können posten Text, Links, Fotos, Videos und sogar Ihren aktuellen Standort. Der schwierigste Teil des Beitrags auf Google+ besteht darin, auszuwählen, wen Sie Ihren Beitrag sehen möchten. Google+ verwendet Ihre Kreise, um festzulegen, wer Ihre Beiträge sehen kann. Kreise sind etwas einfacher als Listen, weil ...

Taggen von Personen in Google+ Fotos - Dummies

Taggen von Personen in Google+ Fotos - Dummies

Sie können Personen in Ihren Kreisen auf jedem Foto auf Google+ markieren. Wenn Sie eine Person in einem Foto taggen, wird diese Person über ihre Google+ Benachrichtigungen benachrichtigt. Sie können dann das Tag entfernen oder genehmigen, und das Foto wird mit dem Tag des Namens dieser Person darin angezeigt. Um jemanden zu markieren, ...