Adaboost sklearn 中的估计器错误 python

Estimator errors in Adaboost sklearn python

我正在实施 sklearn AdaBoostClassifier 并绘制了 estimator_errors_,它表示增强集成中每个估计器的分类错误。

剧情是这样的:

我有几个问题: 1. 是测试集还是训练集的错误? 2.为什么30的错误是1? 3.是累积误差吗?

谢谢。

我的代码:

base = LinearSVC(tol=1e-10, loss='hinge', C=1000, max_iter=50000)
ada = AdaBoostClassifier(base_estimator=base ,algorithm='SAMME', n_estimators=n,random_state=10)

Sklearn AdaBoostClassifier 有一个 n_estimators=50 的默认参数,我相信你的情况使用了它。但是,如果达到其他条件之一,升压过程可能会提前终止。这可能由基本估计器或 SAMME 算法的停止条件之一决定。

在你的案例中,根据情节,提升似乎在 30 个估算器后停止。您可以使用

轻松获得估算器的实际数量
len(estimator)

其中 estimator 是使用 AdaBoostClassifier 的拟合估计器。错误类型取决于打印前执行的功能 estimator_errors_

estimator.predict(X_test) 
estimator.estimator_errors_ 

显示测试数据错误X_test

希望对您有所帮助。