Агрегирование бутстрапа - Bootstrap aggregating

Bootstrap агрегирования , называемый также расфасовке (от б ootstrap AGG regat ING ), является машинного обучения ансамбль мета-алгоритм , предназначенный для повышения стабильности и точности машинного обучения алгоритмов , используемых в статистической классификации и регрессии . Это также снижает дисперсию и помогает избежать переобучения . Хотя он обычно применяется к методам дерева решений , его можно использовать с любым типом метода. Бэггинг - это частный случай метода усреднения модели .

Описание техники

Принимая во внимание стандартный обучающий набор из размера п , мешки генерирует м новые наборы обучающих , каждый из размера N ' , путем отбора проб из D равномерно и с заменой . При выборке с заменой некоторые наблюдения могут повторяться в каждом . Если n = n , то для больших n ожидается, что в наборе будет доля (1 - 1 / e ) (≈63,2%) уникальных примеров D , остальные будут дублироваться. Такой образец известен как образец начальной загрузки . Выборка с заменой гарантирует, что каждый бутстрап независим от своих сверстников, так как он не зависит от предыдущих выбранных выборок при выборке. Затем m моделей подбираются с использованием m вышеупомянутых бутстрап-выборок и объединяются путем усреднения выходных данных (для регрессии) или голосования (для классификации).

Иллюстрация концепции начального агрегирования


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

Процесс алгоритма

Исходный набор данных

Исходный набор данных содержит несколько записей выборок от s1 до s5. Каждый образец имеет пять характеристик (от гена 1 до гена 5). Все образцы помечаются как «Да» или «Нет» в зависимости от проблемы классификации.

Образцы Джин 1 Джин 2 Джин 3 Джин 4 Ген 5 Результат
s1 1 0 1 0 0 Нет
s2 1 0 0 0 1 Нет
s3 0 1 1 0 1 да
s4 1 1 1 0 1 да
s5 0 0 0 1 1 Нет

Создание наборов данных начальной загрузки

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

В этом примере размер равен пяти (от s1 до s5). Загрузочный набор данных создается путем случайного выбора образцов из исходного набора данных. Допускается повторный выбор. Любые выборки, которые не выбраны для набора данных начальной загрузки, помещаются в отдельный набор данных, называемый набором данных вне сумки.

См. Пример загруженного набора данных ниже. Он имеет пять записей (такого же размера, как и исходный набор данных). Есть повторяющиеся записи, такие как две s3, поскольку записи выбираются случайным образом с заменой.

Образцы Джин 1 Джин 2 Джин 3 Джин 4 Ген 5 Результат
s1 1 0 1 0 0 Нет
s3 0 1 1 0 1 да
s2 1 0 0 0 1 Нет
s3 0 1 1 0 1 да
s4 1 1 1 0 1 да


Этот шаг будет повторяться для создания m наборов данных начальной загрузки.

Создание деревьев решений

NewBootstrapdatasettree

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

Прогнозирование с использованием нескольких деревьев решений

NewEntryIntoBaseTableExample Когда в таблицу добавляется новая выборка, загруженный набор данных используется для определения значения классификатора новой записи.

NewEntrytesttree

Новая выборка тестируется в случайном лесу, созданном каждым загруженным набором данных, и каждое дерево создает значение классификатора для новой выборки. Для классификации используется процесс, называемый голосованием, для определения окончательного результата, где результат, наиболее часто получаемый случайным лесом, является заданным результатом для выборки. Для регрессии выборке присваивается среднее значение классификатора, созданное деревьями.

FinalTable

После тестирования выборки в случайном лесу выборке присваивается значение классификатора, и она добавляется в таблицу.

Алгоритм (классификация)

Блок-схема алгоритма упаковки при использовании для классификации

Для классификации используйте обучающий набор , Inducer и количество образцов начальной загрузки в качестве входных данных. Сгенерировать классификатор в качестве вывода

  1. Создавайте новые обучающие наборы , начиная с замены
  2. Классификатор строится из каждого набора с использованием для определения классификации набора
  3. Наконец, классификатор генерируется с использованием ранее созданного набора классификаторов на исходном наборе данных , классификация, наиболее часто предсказываемая подклассификаторами, является окончательной классификацией.
for i = 1 to m {
    D' = bootstrap sample from D    (sample with replacement)
    Ci = I(D')
}
C*(x) = argmax    Σ 1               (most often predicted label y)
         y∈Y   i:Ci(x)=y

Пример: данные по озону

Чтобы проиллюстрировать основные принципы упаковки в мешки, ниже представлен анализ взаимосвязи между озоном и температурой (данные Rousseeuw и Leroy (1986), анализ выполнен в R ).

Взаимосвязь между температурой и озоном в этом наборе данных, судя по диаграмме рассеяния, кажется нелинейной. Чтобы математически описать эту взаимосвязь, используются сглаживающие устройства LOESS (с полосой пропускания 0,5). Вместо того, чтобы строить единую систему сглаживания для полного набора данных, было отрисовано 100 образцов начальной загрузки . Каждая выборка состоит из случайного подмножества исходных данных и сохраняет подобие распределения и изменчивости основного набора. Для каждого образца бутстрапа подбирался сглаживающий фильтр LOESS. Затем были сделаны прогнозы по этим 100 сглаживаниям по всему диапазону данных. Черные линии представляют эти первоначальные прогнозы. Линии не согласованы в своих прогнозах и имеют тенденцию переоценивать свои точки данных: это видно по шаткому течению линий.

Озон.png

Взяв среднее значение из 100 сглаживающих устройств, каждое из которых соответствует подмножеству исходного набора данных, мы приходим к одному предиктору с упаковкой (красная линия). Течение красной линии стабильно и не слишком соответствует какой-либо точке (точкам) данных.

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

Преимущества:

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

Недостатки:

  • Для слабых учеников с высокой предвзятостью упаковка также несет в себе высокую предвзятость.
  • Утрата интерпретируемости модели.
  • Может быть дорогостоящим с точки зрения вычислений в зависимости от набора данных.

История

Концепция агрегирования начальной загрузки происходит от концепции начальной загрузки, разработанной Брэдли Эфроном. Bootstrap агрегирование было предложено Лео Breiman , который также ввели сокращенный термин «расфасовка» ( б ootstrap AGG regat ИНГ ). Брейман разработал концепцию упаковки в 1994 году, чтобы улучшить классификацию путем комбинирования классификаций случайно сгенерированных обучающих наборов. Он утверждал: «Если возмущение обучающей выборки может вызвать значительные изменения в построенном предикторе, то упаковка может повысить точность».

Смотрите также

использованная литература

дальнейшее чтение