Die nächste beste Variable auswählen
Die vorwärtsgerichtete schrittweise Variablenauswahl startet mit einer leeren Variablenmenge und verläuft in Schritten, wobei in jedem Schritt die nächste beste Variable hinzugefügt wird. Um dieses Verfahren umzusetzen, wurden zwei hilfreiche Funktionen für dich implementiert.
Die Funktion auc berechnet für eine gegebene Variablenmenge variables die AUC des Modells, das diese Variablen als Prädiktoren verwendet. Die Funktion next_best ermittelt, welche Variable im nächsten Schritt zur Variablenliste hinzugefügt werden sollte.
In dieser Übung probierst du diese Funktionen aus, um ihren Zweck besser zu verstehen. Du berechnest die AUC einer gegebenen Variablenmenge, ermittelst, welche Variable als Nächstes hinzugefügt werden sollte, und prüfst, dass dies tatsächlich zu einer optimalen AUC führt.
Diese Übung ist Teil des Kurses
Einführung in Predictive Analytics mit Python
Anleitung zur Übung
- Die Funktion
aucwurde für dich implementiert. Berechne die AUC eines Modells, das"max_gift","mean_gift"und"min_gift"als Prädiktoren verwendet. Du solltest diese Variablen als Liste als erstes Argument an die Funktionaucübergeben. - Die Funktion
next_bestwurde für dich implementiert. Ermittle, welche Variable als Nächstes hinzugefügt werden sollte, wenn"max_gift","mean_gift"und"min_gift"derzeit im Modell sind und"age"sowie"gender_F"die Kandidaten für die nächsten Prädiktoren sind. Das erste Argument der Funktionnext_bestist eine Liste mit den aktuellen Variablen, das zweite Argument ist eine Liste mit den Kandidaten-Prädiktoren. - Berechne die AUC eines Modells, das
"max_gift","mean_gift","min_gift"und"age"als Prädiktoren verwendet. - Berechne die AUC eines Modells, das
"max_gift","mean_gift","min_gift"und"gender_F"als Prädiktoren verwendet.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Calculate the AUC of a model that uses "max_gift", "mean_gift" and "min_gift" as predictors
auc_current = ____([____, ____, ____], ["target"], basetable)
print(round(auc_current,4))
# Calculate which variable among "age" and "gender_F" should be added to the variables "max_gift", "mean_gift" and "min_gift"
next_variable = ____([____, ____, ____], [____, ____], ["target"], basetable)
print(next_variable)
# Calculate the AUC of a model that uses "max_gift", "mean_gift", "min_gift" and "age" as predictors
auc_current_age = ____([____, ____, ____, ____], ["target"], basetable)
print(round(auc_current_age,4))
# Calculate the AUC of a model that uses "max_gift", "mean_gift", "min_gift" and "gender_F" as predictors
auc_current_gender_F = ____([____], ["target"], basetable)
print(round(auc_current_gender_F,4))