CommencezCommencez gratuitement

Une première tentative de bagging

Vous avez vu ce qui se passe lors d'une seule itération d'un ensemble de bagging. Passons maintenant à la création d'un modèle de bagging personnalisé !

Deux fonctions ont été préparées pour vous :

def build_decision_tree(X_train, y_train, random_state=None):
    # Prend un échantillon avec remise,
    # construit un arbre de décision « faible »,
    # et l'ajuste à l'ensemble d'entraînement

def predict_voting(classifiers, X_test):
    # Fait les prédictions individuelles 
    # puis les combine selon le « Vote »

Techniquement, la fonction build_decision_tree() correspond à ce que vous avez fait dans l'exercice précédent. Ici, vous allez construire plusieurs arbres de ce type puis les combiner. Voyons si cet ensemble de modèles « faibles » améliore la performance !

Cette activité fait partie du cours

Méthodes d'ensemble en Python

Voir le cours

Instructions de l’exercice

  • Construisez les modèles individuels en appelant build_decision_tree(), en passant l'ensemble d'entraînement et l'indice i comme graine aléatoire (random_state).
  • Prédisez les étiquettes de l'ensemble de test avec predict_voting(), en utilisant la liste de classificateurs clf_list et les variables explicatives de test en entrée.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Build the list of individual models
clf_list = []
for i in range(21):
	weak_dt = ____
	clf_list.append(weak_dt)

# Predict on the test set
pred = ____

# Print the F1 score
print('F1 score: {:.3f}'.format(f1_score(y_test, pred)))
Modifier et exécuter le code