IIS_2023_1/podkorytova_yulia_lab_2
2023-10-27 05:35:21 +04:00
..
f_regression.JPG podkorytova_yulia_lab2 2023-10-27 05:35:21 +04:00
lasso.JPG podkorytova_yulia_lab2 2023-10-27 05:35:21 +04:00
linear_regression.JPG podkorytova_yulia_lab2 2023-10-27 05:35:21 +04:00
lr2.py podkorytova_yulia_lab2 2023-10-27 05:35:21 +04:00
mean.JPG podkorytova_yulia_lab2 2023-10-27 05:35:21 +04:00
README.md podkorytova_yulia_lab2 2023-10-27 05:35:21 +04:00
ridge.JPG podkorytova_yulia_lab2 2023-10-27 05:35:21 +04:00

Лабораторная работа 2. Ранжирование признаков

Задание на лабораторную:

Используя код из пункта «Решение задачи ранжирования признаков», выполните ранжирование признаков с помощью указанных по варианту моделей. Отобразите получившиеся значения\оценки каждого признака каждым методом\моделью и среднюю оценку. Проведите анализ получившихся результатов. Какие четыре признака оказались самыми важными по среднему значению? (Названия\индексы признаков и будут ответом на задание).

Вариант 20. Линейная регрессия (LinearRegression), Гребневая регрессия (Ridge), Лассо (Lasso), Линейная корреляция (f_regression).


Как запустить лабораторную работу:

Для запуска лабораторной работы необходимо открыть файл lr2.py, нажать на ПКМ и в выпадающем списке выбрать опцию "Run".


Технологии:

NumPy (Numerical Python) - это библиотека для научных вычислений в Python, которая обеспечивает эффективные вычисления и манипуляции с данными.

Scikit-learn (Sklearn) - это библиотека для языка программирования Python, которая предоставляет инструменты для разработки и применения различных алгоритмов машинного обучения, включая классификацию, регрессию, кластеризацию, снижение размерности и многое другое. Scikit-learn также предлагает функции для предобработки данных, оценки моделей и выбора наилучших параметров.


Что делает лабораторная работа:

В лабораторной работе генерируются исходные данные (750 строк-наблюдений и 14 столбцов-признаков), задается зависимость для функции-выхода Y с использованием формулы регрессионной проблемы Фридмана, а также добавляется зависимость между признаками. Далее создаются 4 модели (линейная регрессия, гребневая регрессия, лассо и линейная корреляция). Для каждой модели происходит тренировка и оценка рангов признаков с помощью функции rank_to_dict. Средние оценки признаков вычисляются при помощи функции mean_ranks.

Результатом работы являются оценки признаков для каждой из 4 моделей и средние оценки признаков, выведенные в консоль.


Пример выходных данных:

ОЦЕНКИ ПРИЗНАКОВ

СРЕДНИЕ ОЦЕНКИ ПРИЗНАКОВ


Вывод: результаты показали, что признаки "х4", "х1", "х2" и "х14" - это четыре самых важных признака по среднему значению, при этом признак "х14" был признан ошибочно значимым.

Модель Лассо выявила все значимые признаки (х1-х5), не взяв никакого лишнего.

Модель Линейная регрессия верно выявила значимость признаков x1, x2, x3, х4, но потеряла значимый признак x5 и ошибочно включила признак x11 в значимые.

Модель Гребневая регрессия верно выявила значимость признаков x1, x2, x4, х5, но потеряла значимый признак x3 и ошибочно включила признак x14 в значимые.

Модель Линейная корреляция верно выявила значимость признаков x1, x2, x4, но потеряла значимые признак x3, х5 и ошибочно включила признаки x12, х14 в значимые.