Sklearn AdaBoost Classifier - Training a Classification Model Using AdaBoost

Python

Here we see how to train an AdaBoost classification model with a decision tree as the base estimator.

 1|  from sklearn.ensemble import AdaBoostClassifier
 2|  from sklearn.tree import DecisionTreeClassifier
 3|  from sklearn.metrics import classification_report, log_loss, roc_auc_score
 4|  
 5|  # Step 1: Initialise base estimator and AdaBoost classifier
 6|  decision_tree = DecisionTreeClassifier(max_depth=1,
 7|                                         class_weight='balanced')
 8|  model = AdaBoostClassifier(estimator=decision_tree,
 9|                             n_estimators=10,
10|                             learning_rate=0.1)
11|  model.fit(X_train, y_train)
12|  
13|  # Step 2: Create dictionary that contains feature importance
14|  feature_importance = dict(zip(X_train.columns, model.feature_importances_))
15|  print('Feature Importance:',feature_importance)
16|  
17|  # Step 3: Make predictions for test data & evaluate performance
18|  y_pred = model.predict(X_test)
19|  print('Classification Report:',classification_report(y_test, y_pred))
20|  print('Log Loss:',log_loss(y_test, y_pred))
21|  print('ROC AUC:',roc_auc_score(y_test, y_pred))
Did you find this snippet useful?

Sign up for free to to add this to your code library