Hyperparameters voor bagging afstemmen
Hoewel je met de standaardparameters eenvoudig een bagging-classifier kunt bouwen, is het sterk aan te raden om deze te tunen voor optimale prestaties. Idealiter optimaliseer je ze met K-fold kruisvalidatie.
In deze oefening kijken we of we de modelprestaties kunnen verbeteren door de parameters van de bagging-classifier aan te passen.
Hier geven we ook de parameter solver='liblinear' door aan LogisticRegression om de rekentijd te verkorten.
Deze oefening maakt deel uit van de cursus
Ensemblemethoden in Python
Oefeninstructies
- Bouw een bagging-classifier met logistische regressie als basismodel, met
20base-estimators,10maximale features,0.65(65%) maximale samples (max_samples), en steekproeven nemen zónder terugleggen. - Gebruik
clf_bagom de labels van de testsetX_testte voorspellen.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# 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))