Бэгинг

В мире машинного обучения достижение точных прогнозов является постоянной целью. Тем не менее, работа с высокой дисперсией и переоснащением может быть сложной задачей. Для преодоления этих препятствий и улучшения прогностических моделей были разработаны ансамблевые методы. Одним из таких мощных методов является бэггинг, который объединяет несколько моделей для повышения точности и стабильности. В этой статье мы рассмотрим концепцию упаковки, ее основные принципы и приложения. Независимо от того, являетесь ли вы специалистом по данным или любопытным энтузиастом, эта статья представляет собой краткое введение в бэггинг и его влияние на предиктивную аналитику.

Бэггинг, сокращение от Bootstrap Aggregating, — это метод машинного обучения, направленный на повышение точности и надежности прогностических моделей. Он работает путем создания нескольких независимых моделей с использованием разных подмножеств исходного набора данных. Каждая модель обучается на случайно выбранной части данных, что позволяет им изучать различные закономерности и взаимосвязи. После того, как все модели обучены, их прогнозы объединяются путем усреднения или голосования для получения окончательного прогноза. Используя разнообразие и коллективный разум этих моделей, бэггинг уменьшает переоснащение и дисперсию, что приводит к более надежным и точным прогнозам. По сути, бэггинг — это метод, который повышает производительность моделей машинного обучения за счет объединения информации нескольких моделей в один более надежный прогноз.

Бэггинг включает в себя использование начальной выборки, что означает создание нескольких наборов обучающих данных путем случайного выбора образцов из исходного набора данных с заменой. Этот процесс гарантирует, что каждый набор обучающих данных и базовые учащиеся, обученные на них, отличаются друг от друга.

На этапе прогнозирования метод мешков использует агрегацию моделей для объединения прогнозов, сделанных каждым отдельным базовым учащимся, в единый прогноз ансамбля. В задачах классификации это обычно достигается путем голосования большинством голосов, когда выбирается прогноз с наибольшим количеством голосов. С другой стороны, в задачах регрессии отдельные прогнозы обычно объединяются посредством простого усреднения для получения окончательного прогноза.

Что такое выборка с заменой?

При использовании выборки с заменой существует возможность повторного выбора ранее выбранных объектов, поскольку они заменены. Это означает, что некоторые объекты могут быть сэмплированы несколько раз, в то время как другие могут вообще никогда не сэмплироваться. Те, которые вообще не были отобраны, называются образцами из мешка.

Выбрасывать образцы из упаковки кажется довольно неэффективным и расточительным. Однако, если мы обучаем базовую оценку на бутстрап-выборках, эти готовые выборки сохраняются для оценок ошибок OOB. Это дает нам дополнительный набор данных проверки для оценки нашей оценки точности.

Посмотрим на эффект бэггинга

Сначала мы обучаем наш набор данных с помощью DecisionTreeClassifier. И получите оценку точности теста 84%.

Теперь мы создаем классификатор мешков с базовым оценщиком (с тем же классификатором дерева решений в приведенном выше примере), количество оценщиков равно 500 и устанавливаем max_samples (размер выборки каждого мешка) равным 300. И мы устанавливаем oob_score как True, поэтому мы можем см. оценку точности готовых образцов в дополнение к нашей оценке данных испытаний. В результате этого тренировочного процесса мы получаем оценку точности теста 88,5% и оценку точности oob %91,8. Эти оценки кажутся намного лучше, чем оценка одного дерева решений.

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

Я хотел бы еще раз подчеркнуть, что оценка вне пакета (OOB) в методах пакетирования дает оценку производительности классификатора на невидимых данных. Он служит внутренней метрикой проверки во время обучения и может помочь в оценке обобщения, обнаружении переобучения, выборе модели и настройке гиперпараметров для оптимизации прогностических возможностей модели.

До сих пор мы говорили о создании образцов данных (пакетов) из исходного набора данных с помощью пакетов. Но эти образцы данных могут не иметь всех функций, таких как исходный набор данных. Потому что, извлекая некоторые признаки, мы можем обеспечить большее разнообразие. На этом этапе появляются новые термины: Случайные подпространства и Случайные патчи.

Случайные подпространства и случайные патчи

Случайные подпространства и случайные исправления — это методы, используемые в ансамблевом обучении для повышения производительности и надежности моделей машинного обучения. Случайные подпространства включают случайный выбор подмножества признаков из исходного набора данных для обучения каждой базовой модели в ансамбле. Это вносит разнообразие в модели, позволяя им сосредоточиться на разных наборах функций и фиксировать различные закономерности в данных. С другой стороны, случайные исправления расширяют эту идею не только за счет выборки функций, но и за счет случайного выбора подмножества экземпляров (точек данных) для обучения каждой базовой модели. Это еще больше увеличивает разнообразие моделей, позволяя им учиться на разных подмножествах как экземпляров, так и функций. Включая случайность в выбор функций и экземпляров, случайные подпространства и случайные патчи предотвращают переоснащение и помогают моделям ансамбля хорошо обобщать невидимые данные. Эти методы особенно эффективны при работе с многомерными наборами данных или при наличии избыточных или нерелевантных признаков, поскольку они позволяют ансамблю сосредоточиться на наиболее информативных аспектах данных.

Давайте сделаем пример об этих методах.

Для случайных подпространств мы устанавливаем гиперпараметры в классификаторе, как показано ниже. Обратите внимание, что для параметра max_samples установлено значение 1,0 (а не 1), поэтому мы используем все наблюдения для обучения. И мы получаем точность теста 88%.

Для случайных исправлений мы устанавливаем гиперпараметры в классификаторе, как показано ниже. На этот раз с начальной загрузкой, установленной на True, и max_samples, установленной на 0,8, наши пакеты содержат образцы данных, которые составляют 80 процентов исходного набора данных, выбранного с заменой. И мы получаем точность теста 88%.

Методы упаковки, случайных подпространств и случайных исправлений играют жизненно важную роль в повышении производительности и надежности моделей машинного обучения. Бэггинг с его ансамблевым подходом объединяет несколько базовых моделей, чтобы уменьшить переоснащение и улучшить обобщение. Случайные подпространства и случайные патчи добавляют ансамблю дополнительный уровень разнообразия, случайным образом выбирая подмножества функций или экземпляров во время обучения. Эти методы особенно ценны при работе с многомерными наборами данных и наборами данных с избыточными или нерелевантными функциями. Включая случайность в выбор объектов и экземпляров, они позволяют ансамблю сосредоточиться на наиболее информативных аспектах данных. Это повышает способность моделей фиксировать различные закономерности и снижает влияние зашумленных или нерелевантных точек данных. Использование пакетов, случайных подпространств и случайных исправлений повышает стабильность и прогностическую точность моделей машинного обучения, делая их важными инструментами в различных областях, включая классификацию, регрессию и обнаружение аномалий.

Продолжение с Boosting…..