Déterminer l’ordre des variables
La sélection de variables par ajout successif (forward stepwise) commence avec un ensemble vide de variables et ajoute les prédicteurs un par un. À chaque étape, on sélectionne le prédicteur qui, combiné aux variables actuelles, donne l’AUC la plus élevée.
Dans cet exercice, vous allez apprendre à implémenter cette procédure. Pour cela, vous pouvez utiliser la fonction next_best qui a été implémentée pour vous. Elle s’utilise ainsi :
next_best(current_variables,candidate_variables,target,basetable)
où current_variables est la liste des variables déjà présentes dans le modèle et candidate_variables la liste des variables pouvant être ajoutées ensuite.
Cet exercice fait partie du cours
Introduction à l’analytique prédictive en Python
Instructions
- Utilisez la fonction
next_bestpour calculer la meilleure variable suivante et affectez-la ànext_variable. - Mettez à jour la liste
current_variables. - Mettez à jour la liste
candidate_variables.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Find the candidate variables
candidate_variables = list(basetable.columns.values)
candidate_variables.remove("target")
# Initialize the current variables
current_variables = []
# The forward stepwise variable selection procedure
number_iterations = 5
for i in range(0, number_iterations):
next_variable = ____(____, ____, ["target"], basetable)
current_variables = current_variables + [____]
candidate_variables.remove(____)
print("Variable added in step " + str(i+1) + " is " + next_variable + ".")
print(current_variables)