60 lines
5.3 KiB
Markdown
60 lines
5.3 KiB
Markdown
|
Общее задание:
|
|||
|
Используя код из [1] (пункт «Решение задачи ранжирования признаков»,
|
|||
|
стр. 205), выполните ранжирование признаков с помощью указанных по
|
|||
|
варианту моделей. Отобразите получившиеся значения\оценки каждого
|
|||
|
признака каждым методом\моделью и среднюю оценку. Проведите анализ
|
|||
|
получившихся результатов. Какие четыре признака оказались самыми
|
|||
|
45
|
|||
|
важными по среднему значению? (Названия\индексы признаков и будут
|
|||
|
ответом на задание).
|
|||
|
|
|||
|
Задание по вариантам 2 вариант (22), взял 2 т.к. всего 20 вариант задания:
|
|||
|
2. Линейная регрессия (LinearRegression), Рекурсивное сокращение
|
|||
|
признаков (Recursive Feature Elimination – RFE), Сокращение признаков
|
|||
|
Случайными деревьями (Random Forest Regressor)
|
|||
|
|
|||
|
Запуск приложения осуществляется запуском файла app.py
|
|||
|
|
|||
|
Использованные технологии:
|
|||
|
Среда программирования Pycharm
|
|||
|
Версия языка python: 3.11
|
|||
|
Flask: Flask - это микрофреймворк для создания веб-приложений на языке Python. Он используется для создания веб-интерфейса и обработки HTTP-запросов и ответов.
|
|||
|
|
|||
|
scikit-learn: Scikit-learn - это библиотека для машинного обучения в Python. В вашей программе она используется для обучения моделей машинного обучения, таких как линейная регрессия, RFE и случайный лес, а также для выполнения ранжирования признаков.
|
|||
|
|
|||
|
NumPy: NumPy - это библиотека для научных вычислений в Python. Она используется для работы с массивами и матрицами данных.
|
|||
|
|
|||
|
Pandas: Pandas - это библиотека для анализа данных. Она используется для создания и обработки данных, включая таблицы и структуры данных.
|
|||
|
|
|||
|
MinMaxScaler: Это функция из библиотеки Scikit-learn, используемая для масштабирования оценок признаков в диапазоне [0, 1].
|
|||
|
|
|||
|
HTML и шаблоны Jinja2: HTML - это язык разметки для создания веб-страниц, а Jinja2 - это шаблонный движок для вставки данных в HTML-шаблоны.
|
|||
|
|
|||
|
HTTP и формы: Ваше приложение Flask обрабатывает HTTP-запросы и использует форму <form> для отправки данных при нажатии кнопки "Выполнить".
|
|||
|
|
|||
|
Краткое описание работы программы:
|
|||
|
Сгенерированные данные: Программа создает случайные данные в виде матрицы X и вектора Y.
|
|||
|
|
|||
|
Обучение моделей: Обучаются три модели машинного обучения: линейная регрессия, RFE (рекурсивное исключение признаков) и случайные леса, используя сгенерированные данные.
|
|||
|
|
|||
|
Ранжирование признаков: Для каждой модели рассчитываются ранги признаков, отражающие их важность для прогнозирования целевой переменной Y.
|
|||
|
|
|||
|
Средний ранг: Вычисляется средний ранг для каждого признака на основе результатов всех трех моделей.
|
|||
|
|
|||
|
Вывод результатов: После нажатия кнопки "Выполнить" на веб-странице, программа отображает следующие результаты:
|
|||
|
|
|||
|
Ранги признаков для каждой модели (линейная регрессия, RFE, случайные леса).
|
|||
|
Средний ранг признаков.
|
|||
|
Значения признаков X.
|
|||
|
Значения целевой переменной Y.
|
|||
|
4 самых важных признака на основе среднего ранга (по названиям).
|
|||
|
|
|||
|
Пример входных данных:
|
|||
|
Случайные данные в виде матрицы X и вектора Y.
|
|||
|
|
|||
|
Пример выходных данных:
|
|||
|
Ранги признаков для каждой модели (линейная регрессия, RFE, случайные леса).
|
|||
|
Средний ранг признаков.
|
|||
|
Значения признаков X.
|
|||
|
Значения целевой переменной Y.
|
|||
|
4 самых важных признака на основе среднего ранга (по названиям).
|