55 lines
3.4 KiB
Markdown
55 lines
3.4 KiB
Markdown
# 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 признака)
|
||
| Модель | R² |
|
||
| :--- | :--- |
|
||
| Linear Regression (все 8) | 0.5758 |
|
||
| Linear Regression (отобранные 4) | 0.5706 |
|
||
| LassoCV | 0.5767 |
|
||
|
||
### Boston Housing (13 → 7 признаков)
|
||
| Модель | R² |
|
||
| :--- | :--- |
|
||
| 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
|
||
|
||
## Запуск
|
||
|
||
```bash
|
||
# Установка зависимостей
|
||
pip install -r requirements.txt
|
||
|
||
# Запуск Jupyter Lab
|
||
jupyter lab |