42 lines
4.9 KiB
Markdown
42 lines
4.9 KiB
Markdown
|
# Лабораторная работа 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* в значимые.
|