Введение

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

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

Объяснение упаковки

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

Какое влияние оказывает бэггинг на производительность модели?

Бэггинг может помочь моделям машинного обучения работать лучше во многих отношениях:

  1. Пакетирование снижает вероятность переобучения путем обучения базовых моделей на различных подмножествах обучающих данных. Каждая базовая модель обучается с немного отличающейся точки зрения на данные, что помогает в обобщении и уменьшает переоснащение.
  2. Повышение точности прогноза. Бэггинг может повысить точность прогноза модели за счет снижения дисперсии прогноза. Комбинированные прогнозы базовых моделей более стабильны и менее подвержены выбросам или шуму в данных, что дает более точный прогноз.
  3. Устойчивость к выбросам и шуму. Пакетирование может повысить устойчивость модели за счет уменьшения влияния выбросов и зашумленных точек данных. Поскольку каждая базовая модель обучается на отдельной выборке данных, влияние отдельных выбросов или зашумленных точек снижается, что приводит к более надежному прогнозу.
  4. Обработка несбалансированных данных. Пакетирование также можно использовать для обработки данных с неравномерным распределением классов. Пакетирование может помочь более эффективно фиксировать экземпляры меньшинства и повысить точность прогнозирования для несбалансированных наборов данных за счет обучения базовых моделей на различных подмножествах данных.

Взаимосвязь между бэггингом и ансамблевым обучением

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

Использование бэггинга в машинном обучении

Следующие шаги связаны с реализацией пакетов в машинном обучении:

  1. Выберите базовую модель. Выберите базовую модель, о которой известно, что она хорошо справляется с определенной задачей. Базовая модель должна иметь высокую дисперсию, что указывает на то, что она соответствует данным.
  2. Выборка с начальной загрузкой. Используя случайную выборку с заменой, создайте множество подмножеств обучающих данных. Желаемое количество базовых моделей ансамбля равно количеству сформированных подгрупп. Каждое подмножество должно быть того же размера, что и исходные обучающие данные, и каждая точка данных должна иметь равные шансы включения в каждое подмножество. Это известно как выборка с начальной загрузкой, и она помогает создавать разнообразие среди базовых моделей.
  3. Обучение базовой модели. Независимое обучение каждой базовой модели на ее загруженном подмножестве обучающих данных. Это влечет за собой подгонку базовой модели к подмножеству данных и получение параметров или весов модели.
  4. Комбинация моделей прогнозирования. После обучения всех базовых моделей их можно использовать для прогнозирования тестовых данных. Чтобы создать окончательный прогноз, прогнозы базовых моделей могут быть интегрированы с использованием подхода голосования или усреднения. Наиболее популярной стратегией для решения задач классификации является использование мажоритарного голосования, при котором в качестве окончательного прогноза выбирается класс с наибольшим количеством голосов из базовых моделей. Прогнозы для проблем регрессии могут быть усреднены, чтобы дать окончательный прогноз.
  5. Оценка и анализ производительности. В зависимости от типа проблемы оцените производительность объединенной модели ансамбля, используя соответствующие показатели оценки, такие как точность, воспроизводимость, оценка F1, или СКО. Чтобы оценить улучшение производительности модели, сравните производительность ансамблевой модели в пакете с производительностью базовой модели.
  6. Для дальнейшей оптимизации производительности модели выполните точную настройку гиперпараметров базовой модели и комплекта пакетов. Поэкспериментируйте с различными значениями гиперпараметров, чтобы определить оптимальную комбинацию для данной задачи, например количество базовых моделей в ансамбле, коэффициент выборки для выборки с начальной загрузкой и тип схемы комбинации прогнозов.

Простой способ👇

Преимущества мешков

В машинном обучении бэггинг имеет ряд преимуществ:

  1. Повышенная точность прогноза. За счет уменьшения дисперсии и переоснащения пакетирование может повысить точность прогноза базовой модели, что приводит к более точному и стабильному прогнозу.
  2. Бэггинг может повысить устойчивость модели к шуму и выбросам за счет уменьшения влияния зашумленных точек данных или выбросов, в результате чего прогноз становится более надежным.
  3. Обработка несбалансированных данных. Благодаря более эффективному сбору экземпляров меньшинства и повышению точности прогнозирования несбалансированных проблем пакетирование может эффективно управлять искаженными наборами данных.
  4. Бэггинг — это масштабируемый подход, который можно применять к огромным наборам данных и распараллеливать для ускорения обучения.
  5. Разнообразие моделей.Благодаря выборке с начальной загрузкой пакетирование способствует разнообразию базовых моделей, что может повысить общую эффективность прогнозирования за счет использования сильных сторон различных моделей.

Использование реального примера для реализации бэггинга в машинном обучении

Пример. Использование мешков для прогнозирования диагноза рака молочной железы

Вступление:

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

Шаги:

  1. Выбор базовой модели. Мы можем начать с базовой модели, такой как дерево решений или классификатор случайного леса, которые, как известно, хорошо справляются с задачами классификации и имеют высокую дисперсию. делая их склонными к переоснащению.
  2. Выборка с начальной загрузкой. Используя выборку с начальной загрузкой, мы создаем несколько подмножеств обучающих данных. Предположим, мы делаем десять подмножеств (или «мешков») обучающих данных, каждое со случайной выборкой 80% исходных данных и заменой. Это означает, что некоторые образцы будут повторяться в каждом пакете, а другие будут пропущены.
  3. Обучение базовой модели. Мы обучаем базовую модель (например, дерево решений) независимо на каждом наборе обучающих данных. Это влечет за собой подгонку дерева решений к каждому мешку и получение параметров модели или веса.
  4. Комбинация моделей прогнозирования. После обучения всех базовых моделей мы можем использовать их для прогнозирования тестовых данных. Прогнозы базовых моделей можно смешивать, используя большинство голосов. Например, если шесть из десяти базовых моделей предсказывают опухоль как злокачественную, мы можем получить большинство голосов и объявить опухоль злокачественной.
  5. Оценка и анализ производительности. Мы оцениваем производительность модели ансамбля с пакетами, используя соответствующие метрики оценки, такие как точность, воспроизводимость и показатель F1. Чтобы оценить улучшение производительности модели, мы сравниваем производительность модели ансамбля в мешках с производительностью базовой модели.
  6. Настройка гиперпараметров. Чтобы повысить производительность модели, мы можем точно настроить гиперпараметры базовой модели и набора пакетов. Чтобы найти оптимальную комбинацию для конкретной проблемы, мы можем поэкспериментировать с альтернативными значениями гиперпараметров, такими как количество базовых моделей в ансамбле, коэффициент выборки для бутстрепной выборки и тип метода комбинирования прогнозов.

Вывод для этого примера:

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

Форматирование кода

# Import necessary libraries
from sklearn.ensemble import BaggingClassifier
from sklearn.tree import DecisionTreeClassifier
from sklearn.datasets import load_breast_cancer
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score
# Load breast cancer dataset
data = load_breast_cancer()
X = data.data
y = data.target

# Split the data into training and test sets
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# Base model selection: Decision Tree Classifier
base_model = DecisionTreeClassifier(random_state=42)

# Create a BaggingClassifier with 10 base models
bagging_model = BaggingClassifier(base_model, n_estimators=10, random_state=42)

# Fit the bagging model to the training data
bagging_model.fit(X_train, y_train)

# Make predictions on the test data
y_pred = bagging_model.predict(X_test)

# Calculate accuracy of the bagging model
accuracy = accuracy_score(y_test, y_pred)

print("Accuracy of Bagging Classifier: {:.2f}".format(accuracy))

Заключение

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

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

Полное руководство по ансамблевому обучению👇

Введение: https://medium.com/@brijeshsoni121272/improving-machine-learning-predictions-with-ensemble-learning-a8646e00be1c

Бэгинг:https://medium.com/@brijeshsoni121272/boost-your-machine-learning-models-with-bagging-a-powerful-ensemble-learning- техника-692bfc4d1a51

Ускорение: https://medium.com/@brijeshsoni121272/understanding-boosting-in-machine-learning-a-comprehensive-guide-bdeaa1167a6

Стэкинг: https://medium.com/@brijeshsoni121272/stacking-to-improve-model-performance-a-comprehensive-guide-on-ensemble-learning- в-питоне-9ed53c93ce28

Если вы найдете мои заметки полезными, я буду признателен за вашу поддержку в создании дополнительного контента аналогичного уровня.

👋👋Оставайтесь с нами и удачного обучения!!👋👋

Найди меня здесь👇

GitHub || Линкедин || Сводка профиля