.. | ||
.idea | ||
templates | ||
app.py | ||
games.csv | ||
open_critic.csv | ||
readme.md |
Общее задание: Решите с помощью библиотечной реализации дерева решений задачу из лабораторной работы «Веб-сервис «Дерево решений» по предмету «Методы искусственного интеллекта» на 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)
Пример выходных данных: результат классификации, точность модели, количество успешных и неуспешных игр и важность признаков.