IIS_2023_1/savenkov_alexander_lab_2
2023-10-12 15:29:03 +04:00
..
.idea savenkov_alexander_lab_2 is done 2023-10-12 15:29:03 +04:00
templates savenkov_alexander_lab_2 is done 2023-10-12 15:29:03 +04:00
app.py savenkov_alexander_lab_2 is done 2023-10-12 15:29:03 +04:00
readme.md savenkov_alexander_lab_2 is done 2023-10-12 15:29:03 +04:00

Общее задание: Используя код из [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-запросы и использует форму

для отправки данных при нажатии кнопки "Выполнить".

Краткое описание работы программы: Сгенерированные данные: Программа создает случайные данные в виде матрицы X и вектора Y.

Обучение моделей: Обучаются три модели машинного обучения: линейная регрессия, RFE (рекурсивное исключение признаков) и случайные леса, используя сгенерированные данные.

Ранжирование признаков: Для каждой модели рассчитываются ранги признаков, отражающие их важность для прогнозирования целевой переменной Y.

Средний ранг: Вычисляется средний ранг для каждого признака на основе результатов всех трех моделей.

Вывод результатов: После нажатия кнопки "Выполнить" на веб-странице, программа отображает следующие результаты:

Ранги признаков для каждой модели (линейная регрессия, RFE, случайные леса). Средний ранг признаков. Значения признаков X. Значения целевой переменной Y. 4 самых важных признака на основе среднего ранга (по названиям).

Пример входных данных: Случайные данные в виде матрицы X и вектора Y.

Пример выходных данных: Ранги признаков для каждой модели (линейная регрессия, RFE, случайные леса). Средний ранг признаков. Значения признаков X. Значения целевой переменной Y. 4 самых важных признака на основе среднего ранга (по названиям).