We know that sklearn
's implemenation of AdaBoost algorithm uses DecisionTreeClassifier as the base learner.
Conceptually, AdaBoost
assigns equal weights to all examples initially, where the weight is equal to 1/n
. n
- the number of examples.
But then the AdaBoost documentantion includes a hyperparameter learning_rate
defined as:
learning_rate float, default=1.
Weight applied to each classifier at each boosting iteration. A higher learning rate increases the contribution of each classifier. There is a trade-off between the learning_rate and n_estimators parameters.
But then Decision Trees do not use learning_rate
parameter since it not a gradient-based model learning approach. Besides, AdaBoost
already assigns 1/n
to each sample. How then the definition of learning_rate
defined in the documentation fits here?