Sestavení křivek AUC
Postup dopředného postupného výběru proměnných určuje pořadí, ve kterém se proměnné optimálně přidávají do sady prediktorů. Abys mohl/a rozhodnout, kde výběr ukončit, můžeš vykreslit křivky AUC pro trénovací a testovací data. Tyto křivky zobrazují hodnoty AUC pro první, první dvě, první tři, … proměnné zahrnuté v modelu.
V tomto cvičení se naučíš tyto křivky AUC vykreslit. Metoda auc_train_test pro výpočet hodnot AUC je již implementována a lze ji použít takto:
auc_train, auc_test = auc_train_test(variables, target, train, test)
kde variables je sada proměnných použitých v modelu logistické regrese, target je seznam s názvem cílové proměnné a train a test jsou trénovací a testovací základní tabulka.
Proměnné seřazené podle dopředného postupného postupu jsou uvedeny v seznamu variables. Můžeš si ho prozkoumat v konzoli. Navíc jsou pro tebe připraveny tři prázdné seznamy:
auc_values_train, který bude obsahovat hodnoty AUC trénovacího modelu v každé iteraciauc_values_test, který bude obsahovat hodnoty AUC testovacího modelu v každé iteracivariables_evaluate, který bude obsahovat proměnné vyhodnocované v každé iteraci
Toto cvičení je součástí kurzu
Introduction to Predictive Analytics in Python
Pokyny k cvičení
- Iteruj přes proměnné.
- V každé iteraci přidej další proměnnou ze seznamu
variablesdovariables_evaluate. - V každé iteraci vypočítej trénovací a testovací AUC pomocí metody
auc_train_test. DataFramytrainatestobsahují trénovací a testovací data. - V každé iteraci přidej vypočítané hodnoty do
auc_values_trainaauc_values_test.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# Keep track of train and test AUC values
auc_values_train = []
auc_values_test = []
variables_evaluate = []
# Iterate over the variables in variables
for v in ____:
# Add the variable
variables_evaluate.append(____)
# Calculate the train and test AUC of this set of variables
auc_train, auc_test = ____(____, ["target"], ____, ____)
# Append the values to the lists
auc_values_train.append(____)
auc_values_test.append(____)
# Make plot of the AUC values
import matplotlib.pyplot as plt
import numpy as np
x = np.array(range(0,len(auc_values_train)))
y_train = np.array(auc_values_train)
y_test = np.array(auc_values_test)
plt.xticks(x, variables, rotation = 90)
plt.plot(x,y_train)
plt.plot(x,y_test)
plt.ylim((0.6, 0.8))
plt.show()