IIS_2023_1/savenkov_alexander_lab_3
2023-10-24 18:56:05 +04:00
..
.idea savenkov_alexander_lab_3 is done 2023-10-24 18:56:05 +04:00
templates savenkov_alexander_lab_3 is done 2023-10-24 18:56:05 +04:00
app.py savenkov_alexander_lab_3 is done 2023-10-24 18:56:05 +04:00
games.csv savenkov_alexander_lab_3 is done 2023-10-24 18:56:05 +04:00
open_critic.csv savenkov_alexander_lab_3 is done 2023-10-24 18:56:05 +04:00
readme.md savenkov_alexander_lab_3 is done 2023-10-24 18:56:05 +04:00

Общее задание: Решите с помощью библиотечной реализации дерева решений задачу из лабораторной работы «Веб-сервис «Дерево решений» по предмету «Методы искусственного интеллекта» на 99% ваших данных. Проверьте работу модели на оставшемся проценте, сделайте вывод.

Задание по вариантам: Тема: Анализ данных игр Epic Games Store Датасет: Epic Games Store Dataset Ссылки: https://www.kaggle.com/datasets/mexwell/epic-games-store-dataset?select=games.csv, https://www.kaggle.com/datasets/mexwell/epic-games-store-dataset?select=open_critic.csv Там один пак с несколькими наборами данных связанные с этой темой, поэтому мне нужно 2 набора данных из всего пака наборов данных для данной цели

Задача для древа решений:

Задача классификации успешности игр:

Цель: Классифицировать игры на успешные и неуспешные на основе их характеристик. Признаки: Рейтинг (Rating) Цена игры (Price of game) Жанры (Genres) Дата релиза (Release date) Целевая переменная: Успешность игры (Successful/Unsuccessful), которая может определяться, например, на основе пороговых значений продаж или оценок.

Запуск приложения осуществляется запуском файла app.py

Использованные технологии: Среда программирования Pycharm Версия языка python: 3.11 Flask: Flask - это веб-фреймворк для Python, который используется для создания веб-приложения. Он обеспечивает обработку HTTP-запросов, маршрутизацию и создание веб-страниц.

Pandas: Pandas - это библиотека для анализа данных в Python. Она использовалась для загрузки, обработки и манипуляции данными из CSV-файлов.

scikit-learn: Scikit-learn - это библиотека для машинного обучения в Python. Она включает в себя реализации различных алгоритмов машинного обучения, таких как DecisionTreeClassifier, который был использован для создания модели дерева решений.

HTML и Jinja2: Веб-страницы создавались с использованием HTML. Шаблоны HTML дополнялись с использованием шаблонизатора Jinja2, что позволяло встраивать переменные и логику Python в HTML-код.

Формы HTML: Формы HTML использовались для ввода данных пользователем (цена игры, жанры и дата релиза) и их отправки на сервер для обработки.

Модуль datetime: Модуль datetime использовался для обработки даты релиза игры и преобразования ее в формат Unix-времени.

Краткое описание работы программы: Загрузка данных: Программа загружает данные из двух CSV-файлов ("games.csv" и "open_critic.csv") и объединяет их в один набор данных.

Подготовка данных: Данные обогащаются, преобразуется формат даты, и жанры кодируются в бинарные признаки.

Обучение модели: Создается модель дерева решений для классификации игр на успешные и неуспешные на основе обучающего набора данных.

Оценка модели: Модель оценивается на тестовом наборе данных, и точность модели сохраняется.

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

Классификация: Пользователь вводит данные и отправляет форму. Программа использует обученную модель для классификации игры на успешную или неуспешную и отображает результат на веб-странице.

Дополнительная информация: Пользователь также видит дополнительную информацию, такую как точность модели, количество успешных и неуспешных игр, и важность признаков.

Локальный сервер: Программа запускается на локальном сервере с хостом "localhost" и портом 5000, что позволяет пользователям взаимодействовать с ней через веб-браузер.

Пример входных данных: Данные из файлов "games.csv" и "open_critic.csv" Цена игры (Price of game), Жанры (Genres), Дата релиза (Release date), Рейтинг (Rating)

Пример выходных данных: результат классификации, точность модели, количество успешных и неуспешных игр и важность признаков.