Go to file
2026-05-02 21:28:13 +03:00
.gitignore All Laba4 2026-05-02 21:28:13 +03:00
README.md All Laba4 2026-05-02 21:28:13 +03:00
requirements.txt initialization 2026-05-02 21:10:36 +03:00
week4_scikit_learn.ipynb All Laba4 2026-05-02 21:28:13 +03:00

Практика 4: Pipelines and composite estimators

Из раздела примеров библиотеки scikit-learn был выбран пример Effect of Transforming the Targets in Regression Model.

Цель работы

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

Реализовано

  • Создан Jupyter Notebook week4_scikit_learn.ipynb.
  • Использован сгенерированный датасет make_regression.
  • Использован внешний датасет California Housing из OpenML (ID: 44031).
  • Выполнена предобработка внешнего датасета:
    • удаление пропусков (если есть);
    • масштабирование признаков через StandardScaler;
    • разделение на обучающую и тестовую выборки.
  • Обучена модель RidgeCV.
  • Выполнено преобразование целевой переменной через TransformedTargetRegressor с логарифмической функцией np.log1p / np.expm1.
  • Построены графики "Actual vs Predicted" и графики остатков для сравнения модели до и после преобразования.
  • Визуализировано распределение целевой переменной до и после логарифмирования.

Выводы

  • На синтетических данных логарифмическое преобразование дало значительное улучшение качества (R² вырос с ~0.5 до ~0.95).
  • На реальных данных California Housing преобразование улучшило R² на 2-4%, снизило MAE и RMSE.
  • Графики остатков после преобразования стали более равномерными.