Машинное обучение — ансамблевая модель
Существует n одиночных режимов от M1 до Mn, и результаты прогнозирования этих n моделей равны pred1~predn соответственно. Мы объединяем все результаты модели, чтобы сформировать единую модель.
Теперь вопрос заключается в том, как объединить эти одномодальные прогнозы, чтобы повысить точность окончательной модели ансамбля и уменьшить ошибку обобщения. Это искусство Ансамбля.
Обучение модели на реальном наборе производственных данных может быть очень сложной задачей, поскольку оно может содержать множество潜在分布
.
Одни модели хорошо моделируют один аспект этих данных, другие – другой. Алгоритм ансамбля предоставляет решение, в котором мы можем обучать эти модели и делать синтетические прогнозы, где окончательная точность лучше, чем у каждой отдельной модели (три марионетки на одного Чжугэ Ляна ?).
пример
Здесь мы впервые используем сохранившийся пример Титаника.
Предположим, что есть 3 модели, m1, m2 и m3, Например, m1 — логистическая регрессия, m2 — KNN, а m3 — SVM. Мы получили результаты 3-х моделей, и результаты прогнозирования разных моделей не совпадают.
Как «синтезировать» результат более научно? Вот несколько различных методов интеграции:
Max Voting
Самый простой способ: получить окончательный результат от каждой модели, затем получить максимальное количество голосов для каждой модели.
Например, в следующих 3 моделях 2 модели предсказывают результат как 1, тогда окончательный pred равен 1 (Какой бы результат ни получил наибольшее количество голосов, выберите любой результат, меньшинство подчиняется большинству)
Так зачем это делать? Является ли это более надежным, чем одномодовый результат?
Более интуитивно понятное математическое объяснение
Предположим, есть 3 бинарных классификатора (a, b, c) с точностью 70%. Теперь подумайте об этих классификаторах как о генераторах псевдослучайных чисел, которые выводят «1» с вероятностью 70% и «0» с вероятностью 30%.
Для большинства голосов 3 классификаторов мы можем ожидать 4 результата:
所有可能的预测情况:
All three are correct
0.7 * 0.7 * 0.7
= 0.3429
Two are correct
0.7 * 0.7 * 0.3
+ 0.7 * 0.3 * 0.7
+ 0.3 * 0.7 * 0.7
= 0.4409
Two are wrong
0.3 * 0.3 * 0.7
+ 0.3 * 0.7 * 0.3
+ 0.7 * 0.3 * 0.3
= 0.189
All three are wrong
0.3 * 0.3 * 0.3
= 0.027
-
В большинстве случаев (около 44%) большинство избирателей исправили ошибку;
-
Точность этого мажоритарного набора составляет в среднем 78% (0,3429 + 0,4409 = 0,7838);
Базовая модель имеет точность 70%, а ансамблевая модель имеет точность 78%!
Кроме того, при добавлении большего количества классификаторов ансамбль в целом улучшается. Ансамбль голосования снижает частоту ошибок и улучшает прогнозы на основе моделей с низкой корреляцией, подходящих для**多分类任务
**.
Корреляция
A good ensemble contains high performing models which are less correlated.
Три сильно коррелированные модели создают ансамбль без улучшения:
1111111100 = 80% accuracy
1111111100 = 80% accuracy
1011111100 = 70% accuracy
The majority vote ensemble produces:
1111111100 = 80% accuracy
Теперь, снова взглянув, есть 3 малоэффективные, но крайне нерелевантные модели:
1111111100 = 80% accuracy
0111011101 = 70% accuracy
1000101111 = 60% accuracy
The majority vote ensemble produces:
1111111101 = 90% accuracy
Исправление ошибок улучшается, если корреляция между ансамблевыми моделями низкая.
Averaging
Метод усреднения более широко применим и может использоваться для классификации, задач регрессии и при различных показателях (AUC, квадрат ошибки или логарифмическая потеря).
Средний прогноз обычно может быть减少overfit
. В идеале вам нужна плавная сегментация между классами, а прогнозы отдельных моделей могут быть немного грубыми.
На изображении выше зеленая линия учится на зашумленных данных, а черная линия имеет лучшую сегментацию. Усреднение нескольких разных зеленых линий будет ближе к черной линии.
Цель построения модели машинного обучения состоит не в том, чтобы понять обучающие данные, а в том, чтобы хорошо обобщить новые данные, то есть модель должна иметь хорошую способность к обобщению на тестовом наборе.
Есть также 3 модели, и окончательные прогнозируемые результаты усредняются (хорошо понятно, особо нечего сказать)
Weighted Averaging
При использовании среднего метода, естественно, будет средневзвешенное значение.如果一个模型表现好,就给更高的权重
, наоборот, вес меньше.
Есть еще 3 модели, отсортированные по размеру R-квадрата моделей в наборе проверки, с весами, равными размеру сортировки.
Влияние М2 наихудшее, а вес равен 1, влияние М1 и М3 наилучшее, а вес равен 2.
Средневзвешенное значение результатов модели:
Rank averaging
Вышеупомянутый метод является средневзвешенным, и будет обнаружено, что вес, присвоенный модели, искусственно задан в соответствии с ранжированием показателей оценки в наборе проверки (например, M1 и M3 имеют вес 2).
Введенный сейчас метод представляет собой небольшую модификацию средневзвешенного.
- Сортировать в соответствии с производительностью разных моделей на наборе проверки;
- По ранжированию вычисляет вес (R-square / Rank), что эквивалентно выполнению
标准化处理
;
- взвешенное суммирование результатов модели;
Ссылка на ссылку
Добро пожаловать, чтобы обратить внимание на личный общедоступный номер: Отличительный номер сказал