Какие знаешь методы снижения дисперсии

«Какие знаешь методы снижения дисперсии» — вопрос из категории Статистика и проверка гипотез, который задают на 38% собеседований Продуктовый Аналитик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Для снижения дисперсии в моделях машинного обучения применяют несколько методов:

  1. Увеличение размера выборки — больше данных помогает модели лучше обобщать.
  2. Регуляризация (L1/L2) — добавляет штраф за сложность модели (например, Ridge или Lasso в sklearn).
  3. Бэггинг (Bagging) — усреднение предсказаний нескольких моделей, обученных на разных подвыборках (например, RandomForest).
  4. Бустинг (Boosting) — последовательное обучение моделей с коррекцией ошибок (например, XGBoost, LightGBM).
  5. Перекрестная проверка (Cross-Validation) — помогает выбрать оптимальные гиперпараметры, снижая переобучение.
  6. Уменьшение сложности модели — сокращение числа признаков или использование более простых алгоритмов.

Пример регуляризации в sklearn:

from sklearn.linear_model import Ridge
model = Ridge(alpha=1.0)  # L2-регуляризация
model.fit(X_train, y_train)