65 lines
6.0 KiB
Markdown
65 lines
6.0 KiB
Markdown
Общее задание:
|
||
Решите с помощью библиотечной реализации дерева решений
|
||
задачу из лабораторной работы «Веб-сервис «Дерево решений» по предмету
|
||
«Методы искусственного интеллекта» на 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)
|
||
|
||
Пример выходных данных:
|
||
результат классификации, точность модели, количество успешных и неуспешных игр и важность признаков. |