58 lines
2.6 KiB
Markdown
58 lines
2.6 KiB
Markdown
|
# Лабораторная работа №2
|
|||
|
|
|||
|
## Ранжирование признаков
|
|||
|
|
|||
|
### Как запустить лабораторную работу
|
|||
|
|
|||
|
1. Установить python, numpy, sklearn
|
|||
|
2. Запустить команду `python main.py` в корне проекта
|
|||
|
|
|||
|
### Использованные технологии
|
|||
|
|
|||
|
* Язык программирования `python`
|
|||
|
* Библиотеки `numpy, sklearn`
|
|||
|
* Среда разработки `PyCharm`
|
|||
|
|
|||
|
### Что делает программа?
|
|||
|
|
|||
|
Выполняет ранжирование 14 признаков для регрессионной проблемы Фридмана с помощью моделей:
|
|||
|
|
|||
|
- Лассо (Lasso)
|
|||
|
- Рекурсивное сокращение признаков (Recursive Feature Elimination – RFE)
|
|||
|
- Линейная корреляция (f_regression)
|
|||
|
|
|||
|
Было проведено несколько экспериментов с разными параметрами моделей, чтобы оценить их влияние на итоговый результат:
|
|||
|
|
|||
|
#### Тест 1
|
|||
|
|
|||
|
![alt text](exp_1.png "Experiment 1")
|
|||
|
|
|||
|
![alt text](exp_console_1.png "Result 1")
|
|||
|
|
|||
|
#### Тест 2
|
|||
|
|
|||
|
![alt text](exp_2.png "Experiment 2")
|
|||
|
|
|||
|
![alt text](exp_console_2.png "Result 2")
|
|||
|
|
|||
|
#### Тест 3
|
|||
|
|
|||
|
![alt text](exp_3.png "Experiment 3")
|
|||
|
|
|||
|
![alt text](exp_console_3.png "Result 3")
|
|||
|
|
|||
|
#### Тест 4
|
|||
|
|
|||
|
![alt text](exp_4.png "Experiment 4")
|
|||
|
|
|||
|
![alt text](exp_console_4.png "Result 4")
|
|||
|
|
|||
|
Первые 2 эксперимента выявили, что признаки x4, x2, x1, x5 оказались самыми важными по среднему значению.
|
|||
|
|
|||
|
Другие 2 эксперимента выявили, что признаки x4, x2, x1, x11 оказались самыми важными по среднему значению.
|
|||
|
|
|||
|
Так как мы изначально знаем, что от признаков x1, x2, x3, x4 зависит наша функция и x11, x12, x13, x14 соответсвенно зависят от них, то лучшим исходом будут эти признаки.
|
|||
|
Но ни один эксперимент не смог точно их выявить. Лучшими оказались эксперименты 3 и 4, так как в отличии от 1-го и 2-го они выявили ещё признак x11 вместо x5, который не влияет на нашу функцию вообще.
|
|||
|
|
|||
|
Из данных моделей лучше всего определила признаки модель Lasso с alpha=0.001
|