IIS_2023_1/tsyppo_anton_lab_6
2023-12-06 15:14:07 +04:00
..
Hostel.csv tsyppo_anton_lab_6 is ready 2023-12-06 15:14:07 +04:00
img.png tsyppo_anton_lab_6 is ready 2023-12-06 15:14:07 +04:00
main.py tsyppo_anton_lab_6 is ready 2023-12-06 15:14:07 +04:00
README.md tsyppo_anton_lab_6 is ready 2023-12-06 15:14:07 +04:00

Лабораторная работа №6: Нейронная сеть

Задание. Вариант 28

Использовать нейронную сеть (четные варианты MLPRegressor, нечетные MLPClassifier) для данных из таблицы 1 по варианту, самостоятельно сформулировав задачу. Интерпретировать результаты и оценить, насколько хорошо она подходит для
решения сформулированной вами задачи.

Задача: Зависимость стоимости хостела (price.from) от других признаков, атмосферы (atmosphere), расстоянии от центра города (Distance), персонал (staff), общего рейтинга хостела (summary.score).

Описание программы

Данная программа реализует сразу два варианта использования нейронной сети MLPRegressor, MLPClassifier. Связано это с тем что в ходе выполнения работы для чётного варианта результаты были неутешительными и был сделан вывод что MLPRegressor не подходит для поставленной задачи и поэтому было решено воспользоваться MLPClassifier для сравнения.

Как запустить лабораторную работу

  1. Установите необходимые библиотеки:

    pip install pandas scikit-learn numpy
    
  2. Запустите скрипт:

    python main.py
    

Использованные технологии

  • Python
  • Pandas
  • scikit-learn
  • NumPy

Что программа делает

Программа загружает данные из файла "Hostel.csv", выбирает определенные признаки для регрессии и классификации, предобрабатывает данные, разделяет их на обучающий и тестовый наборы, нормализует признаки, затем инициализирует и обучает две модели: MLPRegressor для регрессии и MLPClassifier для классификации.

Тесты

Графики моделей

Вывод

При использовании нейронной сети MLPRegressor её метрики такие как Среднеквадратичная ошибка (MSE), Корень из среднеквадратичной ошибки (RMSE) показывали ужасный результат, а попытки исправить модель, изменить признаки и увеличить итерации не увенчались успех. Поэтому MLPRegressor не подходит для сформулированной задачи. Так же для сравнения была использована нейронная сеть MLPClassifier, которая показала вполне приемлемую точность (0.75), из этого следует что MLPClassifier вполне подходит для сформулированной задачи