AdaBoostClassifier
- classsklearn.ensemble.AdaBoostClassifier(estimator=None, *, n_estimators=50, learning_rate=1.0, random_state=None)[исходный код]
-
Классификатор AdaBoost.
Классификатор AdaBoost [1] — это метаоцениватель, который сначала обучает классификатор на исходном наборе данных, а затем обучает дополнительные копии этого классификатора на том же наборе данных, корректируя веса неправильно классифицированных экземпляров так, чтобы последующие классификаторы уделяли больше внимания сложным случаям.
Этот класс реализует алгоритм, основанный на [2].
Подробнее см. в руководстве пользователя.
Добавлено в версии 0.14.
- Параметры:
-
- estimatorобъект, по умолчанию=None
-
Базовый оцениватель, на основе которого строится ансамбль с бустингом. Необходима поддержка взвешивания выборок, а также соответствующие атрибуты
classes_иn_classes_. ЕслиNone, базовым оценивателем становитсяDecisionTreeClassifier, инициализированный с помощьюmax_depth=1.Добавлено в версии 1.2:
base_estimatorпереименован вestimator. - n_estimatorsint, по умолчанию=50
-
Максимальное количество оценивателей, после которого бустинг прекращается. При идеальном соответствии процедура обучения завершается раньше. Значения должны находиться в диапазоне
[1, inf). - learning_ratefloat, по умолчанию=1.0
-
Вес, применяемый к каждому классификатору на каждой итерации бустинга. Чем выше скорость обучения, тем больше вклад каждого классификатора. Между параметрами
learning_rateиn_estimatorsсуществует компромисс. Значения должны находиться в диапазоне(0.0, inf). - random_stateint, экземпляр RandomState или None, по умолчанию=None
-
Управляет начальным значением генератора случайных чисел, задаваемым для каждого
estimatorна каждой итерации бустинга. Поэтому он используется только тогда, когдаestimatorпредоставляет атрибутrandom_state. Передайте int, чтобы получать воспроизводимые результаты при нескольких вызовах функции. См. глоссарий.
- Атрибуты:
-
- estimator_оцениватель
-
Базовый оцениватель, на основе которого формируется ансамбль.
Добавлено в версии 1.2:
base_estimator_переименован вestimator_. - estimators_список классификаторов
-
Набор обученных подоценивателей.
- classes_ndarray формы (n_classes,)
-
Метки классов.
- n_classes_int
-
Количество классов.
- estimator_weights_ndarray вещественных чисел
-
Веса каждого оценивателя в ансамбле с бустингом.
- estimator_errors_ndarray вещественных чисел
-
Ошибка классификации каждого оценивателя в ансамбле с бустингом.
-
feature_importances_ndarray формы (n_features,) -
Важность признаков, основанная на нечистоте.
- n_features_in_int
-
Количество признаков, обнаруженных во время обучения.
Добавлено в версии 0.24.
-
feature_names_in_ndarray формы (
n_features_in_,) -
Названия признаков, обнаруженных во время обучения. Определяется только в том случае, если
Xсодержит названия признаков, все из которых являются строками.Добавлено в версии 1.0.
См. также
AdaBoostRegressor-
Регрессор AdaBoost, который сначала обучает регрессор на исходном наборе данных, а затем обучает дополнительные копии этого регрессора на том же наборе данных, корректируя веса экземпляров в соответствии с ошибкой текущего прогноза.
GradientBoostingClassifier-
GB строит аддитивную модель прямым поэтапным способом. Деревья регрессии обучаются на отрицательном градиенте биномиальной или мультиномиальной функции потерь девианса. Бинарная классификация является частным случаем, в котором строится только одно дерево регрессии.
sklearn.tree.DecisionTreeClassifier-
Непараметрический метод обучения с учителем, используемый для классификации. Создает модель, которая прогнозирует значение целевой переменной, изучая простые правила принятия решений, выведенные из признаков данных.
Список литературы
[1]Y. Freund, R. Schapire, «Обобщение обучения в режиме онлайн на основе теории принятия решений и его применение к бустингу», 1995.
Примеры
>>> from sklearn.ensemble import AdaBoostClassifier >>> from sklearn.datasets import make_classification >>> X, y = make_classification(n_samples=1000, n_features=4, ... n_informative=2, n_redundant=0, ... random_state=0, shuffle=False) >>> clf = AdaBoostClassifier(n_estimators=100, random_state=0) >>> clf.fit(X, y) AdaBoostClassifier(n_estimators=100, random_state=0) >>> clf.predict([[0, 0, 0, 0]]) array([1]) >>> clf.score(X, y) 0.96
Подробный пример использования AdaBoost для обучения последовательности деревьев решений в качестве слабых моделей см. в разделе Многоклассовые деревья решений с AdaBoost.
Подробный пример использования AdaBoost для обучения на линейно неразделимом наборе данных классификации, состоящем из двух кластеров гауссовых квантилей, см. в разделе Двухклассовый AdaBoost.
- decision_function(X)[исходный код]
-
Вычисляет функцию принятия решений для
X.- Параметры:
-
- X{массивоподобная структура, разреженная матрица} формы (n_samples, n_features)
-
Обучающие входные выборки. Разреженная матрица может иметь формат CSC, CSR, COO, DOK или LIL. COO, DOK и LIL преобразуются в CSR.
- Возвращает:
-
- scorendarray формы (n_samples, k)
-
Функция принятия решений для входных выборок. Порядок выходных значений совпадает с порядком атрибута classes_. Бинарная классификация — частный случай, в котором
k == 1; в противном случаеk==n_classes. Для бинарной классификации значения, близкие к -1 или 1, соответствуют большей вероятности принадлежности к первому или второму классу вclasses_соответственно.
- fit(X, y, sample_weight=None)[исходный код]
-
Создает классификатор/регрессор с бустингом на основе обучающего набора (X, y).
- Параметры:
-
- X{массивоподобная структура, разреженная матрица} формы (n_samples, n_features)
-
Обучающие входные выборки. Разреженная матрица может иметь формат CSC, CSR, COO, DOK или LIL. COO, DOK и LIL преобразуются в CSR.
- yмассивоподобная структура формы (n_samples,)
-
Целевые значения.
- sample_weightмассивоподобная структура формы (n_samples,), по умолчанию=None
-
Веса выборок. Если значение None, веса выборок инициализируются значением 1 / n_samples.
- Возвращает:
-
- selfобъект
-
Обученный оцениватель.
- get_metadata_routing()[исходный код]
-
Вызывает
NotImplementedError.Этот оцениватель пока не поддерживает маршрутизацию метаданных.
- get_params(deep=True)[исходный код]
-
Получает параметры этого оценивателя.
- Параметры:
-
- deepbool, по умолчанию=True
-
Если значение True, возвращает параметры этого оценивателя и содержащихся в нем подобъектов, которые являются оценивателями.
- Возвращает:
-
- paramsdict
-
Имена параметров и соответствующие им значения.
- predict(X)[исходный код]
-
Предсказывает классы для X.
Предсказанный класс входной выборки вычисляется как взвешенное среднее предсказаний классификаторов ансамбля.
- Параметры:
-
- X{массивоподобная структура, разреженная матрица} формы (n_samples, n_features)
-
Обучающие входные выборки. Разреженная матрица может иметь формат CSC, CSR, COO, DOK или LIL. COO, DOK и LIL преобразуются в CSR.
- Возвращает:
-
- yndarray формы (n_samples,)
-
Предсказанные классы.
- predict_log_proba(X)[исходный код]
-
Предсказывает логарифмы вероятностей классов для X.
Предсказанные логарифмы вероятностей классов для входной выборки вычисляются как взвешенное среднее предсказанных логарифмов вероятностей классов классификаторов ансамбля.
- Параметры:
-
- X{массивоподобная структура, разреженная матрица} формы (n_samples, n_features)
-
Обучающие входные выборки. Разреженная матрица может иметь формат CSC, CSR, COO, DOK или LIL. COO, DOK и LIL преобразуются в CSR.
- Возвращает:
-
- pndarray формы (n_samples, n_classes)
-
Вероятности классов для входных выборок. Порядок выходных значений совпадает с порядком атрибута classes_.
- predict_proba(X)[исходный код]
-
Предсказывает вероятности классов для X.
Предсказанные вероятности классов для входной выборки вычисляются как взвешенное среднее предсказанных вероятностей классов классификаторов ансамбля.
- Параметры:
-
- X{массивоподобная структура, разреженная матрица} формы (n_samples, n_features)
-
Обучающие входные выборки. Разреженная матрица может иметь формат CSC, CSR, COO, DOK или LIL. COO, DOK и LIL преобразуются в CSR.
- Возвращает:
-
- pndarray формы (n_samples, n_classes)
-
Вероятности классов для входных выборок. Порядок выходных значений совпадает с порядком атрибута classes_.
- score(X, y, sample_weight=None)[исходный код]
-
Возвращает точность на предоставленных данных и метках.
В многометочной классификации это точность по подмножествам — строгая метрика, поскольку для каждой выборки требуется правильно предсказать весь набор меток.
- Параметры:
-
- Xмассивоподобная структура формы (n_samples, n_features)
-
Тестовые выборки.
- yмассивоподобная структура формы (n_samples,) или (n_samples, n_outputs)
-
Истинные метки для
X. - sample_weightмассивоподобная структура формы (n_samples,), по умолчанию=None
-
Веса выборок.
- Возвращает:
-
- scorefloat
-
Средняя точность
self.predict(X)относительноy.
- set_fit_request(*, sample_weight:bool|None|str='$UNCHANGED$') AdaBoostClassifier[исходный код]
-
Настраивает, следует ли запрашивать передачу метаданных в метод
fit.Обратите внимание, что этот метод имеет значение только тогда, когда данный оцениватель используется как подоцениватель внутри метаоценивателя и включена маршрутизация метаданных с помощью
enable_metadata_routing=True(см.sklearn.set_config). Описание работы механизма маршрутизации см. в руководстве пользователя.Для каждого параметра доступны следующие варианты:
-
True: запрашиваются метаданные и передаются вfit, если они предоставлены. Если метаданные не предоставлены, запрос игнорируется. -
False: метаданные не запрашиваются, и метаоцениватель не передает их вfit. -
None: метаданные не запрашиваются, и метаоцениватель вызывает ошибку, если пользователь их предоставляет. -
str: метаданные передаются метаоценивателю под указанным псевдонимом вместо исходного имени.
Значение по умолчанию (
sklearn.utils.metadata_routing.UNCHANGED) сохраняет текущий запрос. Это позволяет изменить запрос для некоторых параметров, не затрагивая остальные.Добавлено в версии 1.3.
- Параметры:
-
- sample_weightstr, True, False или None, по умолчанию=sklearn.utils.metadata_routing.UNCHANGED
-
Маршрутизация метаданных для параметра
sample_weightвfit.
- Возвращает:
-
- selfобъект
-
Обновленный объект.
-
- set_params(**params)[исходный код]
-
Задает параметры этого оценивателя.
Метод работает как с простыми оценивателями, так и с вложенными объектами (например,
Pipeline). Параметры последних имеют вид<component>__<parameter>, что позволяет обновлять каждый компонент вложенного объекта.- Параметры:
-
- **paramsdict
-
Параметры оценивателя.
- Возвращает:
-
- selfэкземпляр оценивателя
-
Экземпляр оценивателя.
- set_score_request(*, sample_weight:bool|None|str='$UNCHANGED$') AdaBoostClassifier[исходный код]
-
Настраивает, следует ли запрашивать передачу метаданных в метод
score.Обратите внимание, что этот метод имеет значение только тогда, когда данный оцениватель используется как подоцениватель внутри метаоценивателя и включена маршрутизация метаданных с помощью
enable_metadata_routing=True(см.sklearn.set_config). Описание работы механизма маршрутизации см. в руководстве пользователя.Для каждого параметра доступны следующие варианты:
-
True: запрашиваются метаданные и передаются вscore, если они предоставлены. Если метаданные не предоставлены, запрос игнорируется. -
False: метаданные не запрашиваются, и метаоцениватель не передает их вscore. -
None: метаданные не запрашиваются, и метаоцениватель вызывает ошибку, если пользователь их предоставляет. -
str: метаданные передаются метаоценивателю под указанным псевдонимом вместо исходного имени.
Значение по умолчанию (
sklearn.utils.metadata_routing.UNCHANGED) сохраняет текущий запрос. Это позволяет изменить запрос для некоторых параметров, не затрагивая остальные.Добавлено в версии 1.3.
- Параметры:
-
- sample_weightstr, True, False или None, по умолчанию=sklearn.utils.metadata_routing.UNCHANGED
-
Маршрутизация метаданных для параметра
sample_weightвscore.
- Возвращает:
-
- selfобъект
-
Обновленный объект.
-
- staged_decision_function(X)[исходный код]
-
Вычисляет функцию принятия решений для
Xна каждой итерации бустинга.Этот метод позволяет выполнять мониторинг (например, определять ошибку на тестовом наборе) после каждой итерации бустинга.
- Параметры:
-
- X{массивоподобная структура, разреженная матрица} формы (n_samples, n_features)
-
Обучающие входные выборки. Разреженная матрица может иметь формат CSC, CSR, COO, DOK или LIL. COO, DOK и LIL преобразуются в CSR.
- Возвращает значения:
-
- scoreгенератор ndarray формы (n_samples, k)
-
Функция принятия решений для входных выборок. Порядок выходных значений совпадает с порядком атрибута classes_. Бинарная классификация — частный случай, в котором
k == 1; в противном случаеk==n_classes. Для бинарной классификации значения, близкие к -1 или 1, соответствуют большей вероятности принадлежности к первому или второму классу вclasses_соответственно.
- staged_predict(X)[исходный код]
-
Возвращает поэтапные прогнозы для X.
Предсказанный класс входного образца вычисляется как взвешенное среднее прогнозов классификаторов ансамбля.
Этот метод-генератор возвращает прогноз ансамбля после каждой итерации бустинга и, таким образом, позволяет отслеживать результаты, например определять прогноз на тестовом наборе после каждого этапа бустинга.
- Параметры:
-
- Xarray-like of shape (n_samples, n_features)
-
Входные образцы. Разреженная матрица может иметь формат CSC, CSR, COO, DOK или LIL. Форматы COO, DOK и LIL преобразуются в CSR.
- Возвращает значения:
-
- ygenerator of ndarray of shape (n_samples,)
-
Предсказанные классы.
- staged_predict_proba(X)[исходный код]
-
Предсказывает вероятности классов для X.
Предсказанные вероятности классов для входного образца вычисляются как взвешенное среднее предсказанных вероятностей классов классификаторов ансамбля.
Этот метод-генератор возвращает предсказанные ансамблем вероятности классов после каждой итерации бустинга и, таким образом, позволяет отслеживать результаты, например определять предсказанные вероятности классов на тестовом наборе после каждого этапа бустинга.
- Параметры:
-
- X{array-like, sparse matrix} of shape (n_samples, n_features)
-
Обучающие входные образцы. Разреженная матрица может иметь формат CSC, CSR, COO, DOK или LIL. Форматы COO, DOK и LIL преобразуются в CSR.
- Возвращает значения:
-
- pgenerator of ndarray of shape (n_samples,)
-
Вероятности классов для входных образцов. Порядок выходных значений совпадает с порядком атрибута classes_.
- staged_score(X, y, sample_weight=None)[исходный код]
-
Возвращает поэтапные оценки для X, y.
Этот метод-генератор возвращает оценку ансамбля после каждой итерации бустинга и, таким образом, позволяет отслеживать результаты, например определять оценку на тестовом наборе после каждого этапа бустинга.
- Параметры:
-
- X{array-like, sparse matrix} of shape (n_samples, n_features)
-
Обучающие входные образцы. Разреженная матрица может иметь формат CSC, CSR, COO, DOK или LIL. Форматы COO, DOK и LIL преобразуются в CSR.
- yarray-like of shape (n_samples,)
-
Метки для X.
- sample_weightarray-like of shape (n_samples,), default=None
-
Веса образцов.
- Возвращает значения:
-
- zfloat
Примеры из галереи
© 2007–2026 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.9/modules/generated/sklearn.ensemble.AdaBoostClassifier.html