Ajuster les hyperparamètres du bagging
Même s’il est facile de construire un classifieur de bagging avec les paramètres par défaut, il est fortement recommandé de les ajuster pour obtenir des performances optimales. Idéalement, ces paramètres devraient être optimisés à l’aide d’une validation croisée en K-fold.
Dans cet exercice, voyons si nous pouvons améliorer les performances du modèle en modifiant les paramètres du classifieur de bagging.
Ici, nous passons également le paramètre solver='liblinear' à LogisticRegression afin de réduire le temps de calcul.
Cet exercice fait partie du cours
Méthodes d’ensemble en Python
Instructions
- Construisez un classifieur de bagging en utilisant la régression logistique comme base, avec
20estimateurs de base,10variables maximum (max_features),0.65(65 %) d’échantillons maximum (max_samples), et un échantillonnage sans remise. - Utilisez
clf_bagpour prédire les labels de l’ensemble de test,X_test.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Build a balanced logistic regression
clf_base = LogisticRegression(class_weight='balanced', solver='liblinear', random_state=42)
# Build and fit a bagging classifier with custom parameters
clf_bag = ____(____, ____, ____, ____, ____, random_state=500)
clf_bag.fit(X_train, y_train)
# Calculate predictions and evaluate the accuracy on the test set
y_pred = ____
print('Accuracy: {:.2f}'.format(accuracy_score(y_test, y_pred)))
# Print the classification report
print(classification_report(y_test, y_pred))