Ответ
Для снижения дисперсии в моделях машинного обучения применяют несколько методов:
- Увеличение размера выборки — больше данных помогает модели лучше обобщать.
- Регуляризация (L1/L2) — добавляет штраф за сложность модели (например,
RidgeилиLassoв sklearn). - Бэггинг (Bagging) — усреднение предсказаний нескольких моделей, обученных на разных подвыборках (например,
RandomForest). - Бустинг (Boosting) — последовательное обучение моделей с коррекцией ошибок (например,
XGBoost,LightGBM). - Перекрестная проверка (Cross-Validation) — помогает выбрать оптимальные гиперпараметры, снижая переобучение.
- Уменьшение сложности модели — сокращение числа признаков или использование более простых алгоритмов.
Пример регуляризации в sklearn:
from sklearn.linear_model import Ridge
model = Ridge(alpha=1.0) # L2-регуляризация
model.fit(X_train, y_train)