Go to file
2026-05-04 17:55:04 +03:00
.ipynb_checkpoints final version 2026-05-04 17:48:14 +03:00
.gitignore project structure 2026-05-03 16:44:41 +03:00
Boston-house-price-data.csv complete solo task 2026-05-04 17:21:37 +03:00
README.md README.md 2026-05-04 17:55:04 +03:00
requirements.txt project structure 2026-05-03 16:44:41 +03:00
week4_feature_selection.ipynb complete solo task 2026-05-04 17:21:37 +03:00
week4_scikit_learn.ipynb final version 2026-05-04 17:48:14 +03:00

# Feature Selection Project

Описание проекта

Практическая работа по отбору признаков Feature Selection с использованием библиотеки Scikit-learn.

Используемые методы

  • SelectFromModel с LassoCV
  • Linear Regression (для сравнения качества до и после отбора)
  • StandardScaler (масштабирование данных)

Датасеты

  1. California Housing Dataset (fetch_california_housing)

    • Встроенный датасет scikit-learn
    • 20,640 наблюдений, 8 признаков
    • Целевая переменная: медианная стоимость дома
  2. Boston Housing Dataset (собственный CSV)

    • Загружен через pandas.read_csv()
    • 506 наблюдений, 13 признаков
    • Целевая переменная: MEDV (медианная стоимость дома)

Структура

  • week4_scikit_learn.ipynb — базовая нейросеть (MLPClassifier)
  • week4_feature_selection.ipynb — основной ноутбук с Feature Selection
  • Boston-house-price-data.csv — данные

Результаты

California Housing (8 → 4 признака)

Модель
Linear Regression (все 8) 0.5758
Linear Regression (отобранные 4) 0.5706
LassoCV 0.5767

Boston Housing (13 → 7 признаков)

Модель
Linear Regression (все 13) 0.6688
Linear Regression (отобранные 7) 0.6727
LassoCV 0.6684

Ключевые выводы

  • LassoCV + SelectFromModel успешно сокращают количество признаков без потери качества
  • Отбор признаков даже улучшил качество модели на Boston Housing (R² вырос с 0.6688 до 0.6727)
  • Геолокация (Latitude/Longitude) и доход (MedInc) — ключевые факторы для California
  • Количество комнат (RM) и статус населения (LSTAT) — ключевые факторы для Boston

Запуск

# Установка зависимостей
pip install -r requirements.txt

# Запуск Jupyter Lab
jupyter lab