CommencerCommencer gratuitement

Recherche aléatoire avec Random Forest

Pour consolider vos connaissances sur l’échantillonnage aléatoire, réalisons un exercice similaire avec d’autres hyperparamètres et un autre algorithme.

Comme précédemment, créez des listes d’hyperparamètres qui pourront être combinées en une liste de listes. Vous utiliserez les hyperparamètres criterion, max_depth et max_features de l’algorithme Random Forest. Ensuite, vous échantillonnerez aléatoirement des combinaisons d’hyperparamètres afin de préparer une recherche aléatoire.

Pour cette tâche, vous utiliserez un package légèrement différent pour l’échantillonnage : random.sample().

Cet exercice fait partie du cours

Optimisation des hyperparamètres en Python

Afficher le cours

Instructions

  • Créez les listes des valeurs 'gini' et 'entropy' pour criterion et "auto", "sqrt", "log2", None pour max_features.
  • Créez une liste de valeurs entre 3 et 55 inclus pour l’hyperparamètre max_depth et assignez-la à la liste max_depth_list. Rappelez-vous que range(N,M) crée une liste de N à M-1.
  • Combinez ces listes en une liste de listes à échantillonner à l’aide de product().
  • Échantillonnez aléatoirement 150 modèles à partir de la liste combinée et affichez le résultat.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# Create lists for criterion and max_features
criterion_list = ____
max_feature_list = ____

# Create a list of values for the max_depth hyperparameter
max_depth_list = list(range(____,____))

# Combination list
combinations_list = [list(x) for x in product(____, ____, ____)]

# Sample hyperparameter combinations for a random search
combinations_random_chosen = random.sample(____, ____)

# Print the result
print(____)
Modifier et exécuter le code