CommencezCommencez gratuitement

Recherche aléatoire avec Random Forest

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

Comme précédemment, créez des listes d'hyperparamètres qui pourront être regroupé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 au hasard des combinaisons d'hyperparamètres en vue d'exécuter une recherche aléatoire.

Pour l'échantillonnage dans cette tâche, vous utiliserez un module légèrement différent, random.sample().

Cette activité fait partie du cours

Ajustement des hyperparamètres en Python

Voir le cours

Instructions de l’exercice

  • Créez des 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 inclusivement 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 à partir de laquelle é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 ce code d’exemple.

# 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