IIS_2023_1/basharin_sevastyan_lab_2/README.md

42 lines
3.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

## Лабораторная работа 2. Вариант 5.
### Задание
Выполнить ранжирование признаков. Отобразить получившиеся значения\оценки каждого признака каждым методом\моделью и среднюю оценку. Провести анализ получившихся результатов. Какие четыре признака оказались самыми важными по среднему значению?
Модели:
- Гребневая регрессия `Ridge`,
- Рекурсивное сокращение признаков `Recursive Feature Elimination RFE`,
- Сокращение признаков Случайными деревьями `Random Forest Regressor`
### Как запустить
Для запуска программы необходимо с помощью командной строки в корневой директории файлов прокета прописать:
```
python main.py
```
### Используемые технологии
- `numpy` (псевдоним `np`): NumPy - это библиотека для научных вычислений в Python.
- `sklearn` (scikit-learn): Scikit-learn - это библиотека для машинного обучения и анализа данных в Python. Из данной библиотеки были использованы следующие модули:
- `LinearRegression` - линейная регрессия - это алгоритм машинного обучения, используемый для задач бинарной классификации.
- `Ridge` - инструмент работы с моделью "Гребневая регрессия"
- `RFE` - инструмент оценки важности признаков "Рекурсивное сокращение признаков"
- `RandomForestRegressor` - инструмент работы с моделью "Регрессор случайного леса"
### Описание работы
1. Программа генерирует данные для обучения моделей, содержащие матрицу признаков X и вектор целевой переменной y.
1. Создает DataFrame data, в котором столбцы представляют признаки, а последний столбец - целевую переменную.
1. Разделяет данные на матрицу признаков X и вектор целевой переменной y
1. Создает список обученных моделей для ранжирования признаков: гребневой регрессии, рекурсивного сокращения признаков и сокращения признаков случайными деревьями.
1. Создает словарь model_scores для хранения оценок каждой модели.
1. Выводит оценки признаков каждой модели и их средние оценки.
1. Находит четыре наиболее важных признака по средней оценке и выводит их индексы и значения.
### Результат работы
![](ridge.png "Гребневая регрессия")
![](rfe.png "Рекурсивное сокращение признаков")
![](rfr.png "Сокращение признаков Случайными деревьями")
![](res.png "Четыре самых важных")
### Вывод
Четыре наиболее важных признака, определенных на основе средних оценок, включают
Признак 1, Признак 3, Признак 12 и Признак 6.