Une première tentative avec mlxtend
Il est temps de commencer à travailler avec mlxtend ! Vous allez continuer avec le jeu de données des notes d’applications. Comme vous avez déjà construit un modèle d’ensemble empilé avec scikit-learn, vous avez une base de comparaison avec le modèle que vous allez maintenant construire avec mlxtend.
Le jeu de données est chargé et disponible sous le nom apps.
Voyons si mlxtend peut construire un modèle aussi bon, voire meilleur, que le classifieur d’ensemble de scikit-learn.
Cet exercice fait partie du cours
Méthodes d’ensemble en Python
Instructions
- Instanciez un classifieur arbre de décision avec
min_samples_leaf = 3etmin_samples_split = 9. - Instanciez un classifieur des 5 plus proches voisins en utilisant l’algorithme
'ball_tree'. - Construisez un
StackingClassifieren passant : la liste des classifieurs, le méta-classifieur,use_probas=True(pour utiliser les probabilités) etuse_features_in_secondary = False(pour n’utiliser que les prédictions individuelles). - Évaluez les performances en calculant l’accuracy.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Instantiate the first-layer classifiers
clf_dt = ____(____, ____, random_state=500)
clf_knn = ____
# Instantiate the second-layer meta classifier
clf_meta = LogisticRegression()
# Build the Stacking classifier
clf_stack = ____
clf_stack.____
# Evaluate the performance of the Stacking classifier
pred_stack = ____
print("Accuracy: {:0.4f}".format(accuracy_score(y_test, pred_stack)))