Что такое bagging?
Что проверяют
Понимаете ли вы, какую именно составляющую ошибки лечит ансамбль и при каких условиях он вообще работает. Фраза «много моделей лучше одной» ответом не считается, за ней сразу спросят, почему лучше.
Как отвечать
Bagging это bootstrap aggregating. Из обучающей выборки берут много подвыборок того же размера с возвращением, на каждой независимо учат базовую модель, а предсказания усредняют для регрессии или собирают голосованием для классификации.
Ключ в том, зачем это работает. Усреднение слабо связанных оценок гасит дисперсию, а смещение оставляет примерно прежним. Значит базовая модель должна быть с низким смещением и высокой дисперсией, и каноничный выбор это глубокое неподрезанное дерево. Bagging над линейной регрессией почти ничего не даёт: она и так устойчива к смене выборки, усреднять нечего.
Полезные детали, которые отличают заученный ответ. При взятии с возвращением примерно треть объектов в подвыборку не попадает, и на них считается out-of-bag оценка качества, честная без отдельного отложенного множества. Модели учатся независимо, поэтому bagging тривиально параллелится, в отличие от бустинга, где деревья строятся последовательно и работают уже со смещением.
Случайный лес это bagging над деревьями плюс вторая случайность: в каждом разбиении рассматривается только случайное подмножество признаков. Без неё деревья вышли бы похожими, все ухватились бы за один сильный признак, и усреднение помогло бы слабо.
Где спотыкаются
Говорят, что bagging лечит переобучение вообще. Он снимает дисперсию, а недообученную модель со слишком бедным базовым алгоритмом мешок копий умнее не сделает.
Ставят знак равенства между bagging и случайным лесом. Тогда непонятно, зачем нужен лес, если есть просто мешок деревьев, и кандидат не может назвать вторую случайность, которая деревья и раскоррелировала.
По привычке подрезают базовые деревья. Внутри бэггинга их растят глубокими намеренно: разброс снимет усреднение, а ранняя остановка добавит смещения, которое ансамбль уже не уберёт.