Ошибки оценки в Adaboost sklearn python - PullRequest
1 голос
/ 06 января 2020

Я реализовывал sklearn AdaBoostClassifier и составил график estimator_errors_, который говорит, что это ошибка классификации для каждого оценщика в усиленном ансамбле.

Это график:

enter image description here

У меня есть несколько вопросов: 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)

1 Ответ

2 голосов
/ 06 января 2020

Sklearn AdaBoostClassifier имеет параметр по умолчанию для n_estimators = 50, который, я считаю, используется в вашем случае. Однако процесс повышения может завершиться досрочно, если будет выполнено одно из других условий. Это может быть продиктовано одним из условий остановки для базового оценщика или алгоритма SAMME.

В вашем случае, основанном на графике, кажется, что повышение прекращается после 30 оценок. Вы можете легко получить фактическое количество оценок, используя,

len(estimator)

, где оценка - это встроенная оценка, используя AdaBoostClassifier. Тип ошибки зависит от функции, выполняемой перед печатью estimator_errors_.

estimator.predict(X_test) 
estimator.estimator_errors_ 

показывает ошибку для тестовых данных X_test.

надеюсь, что это помогает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...