IIS_2023_1/savenkov_alexander_lab_3/readme.md

65 lines
6.0 KiB
Markdown
Raw Normal View History

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)
Пример выходных данных:
результат классификации, точность модели, количество успешных и неуспешных игр и важность признаков.