60 lines
3.4 KiB
Markdown
60 lines
3.4 KiB
Markdown
# Лабораторная работа №6: Нейронная сеть
|
||
## Задание. Вариант 28
|
||
|
||
Использовать нейронную сеть (четные варианты –MLPRegressor, нечетные –MLPClassifier) для данных из таблицы 1 по
|
||
варианту, самостоятельно сформулировав задачу. Интерпретировать результаты и оценить, насколько хорошо она подходит для
|
||
решения сформулированной вами задачи.
|
||
|
||
Задача:
|
||
Зависимость стоимости хостела (price.from) от других признаков, атмосферы (atmosphere), расстоянии от центра города
|
||
(Distance), персонал (staff), общего рейтинга хостела (summary.score).
|
||
|
||
|
||
## Описание программы
|
||
|
||
Данная программа реализует сразу два варианта использования нейронной сети MLPRegressor, MLPClassifier. Связано это с
|
||
тем что в ходе выполнения работы для чётного варианта результаты были неутешительными и был сделан вывод что
|
||
MLPRegressor не подходит для поставленной задачи и поэтому было решено воспользоваться MLPClassifier для сравнения.
|
||
|
||
## Как запустить лабораторную работу
|
||
|
||
1. Установите необходимые библиотеки:
|
||
|
||
```bash
|
||
pip install pandas scikit-learn numpy
|
||
```
|
||
|
||
2. Запустите скрипт:
|
||
|
||
```bash
|
||
python main.py
|
||
```
|
||
|
||
## Использованные технологии
|
||
|
||
- Python
|
||
- Pandas
|
||
- scikit-learn
|
||
- NumPy
|
||
|
||
## Что программа делает
|
||
|
||
Программа загружает данные из файла "Hostel.csv", выбирает определенные признаки для регрессии и классификации,
|
||
предобрабатывает данные, разделяет их на обучающий и тестовый наборы, нормализует признаки, затем инициализирует и
|
||
обучает две модели: MLPRegressor для регрессии и MLPClassifier для классификации.
|
||
|
||
## Тесты
|
||
|
||
![Графики моделей](img.png)
|
||
|
||
## Вывод
|
||
|
||
_При использовании нейронной сети MLPRegressor её метрики такие как Среднеквадратичная ошибка (MSE), Корень из
|
||
среднеквадратичной ошибки (RMSE) показывали ужасный результат, а попытки исправить модель, изменить признаки и
|
||
увеличить итерации не увенчались успех. Поэтому MLPRegressor не подходит для сформулированной задачи. Так же для
|
||
сравнения была использована нейронная сеть MLPClassifier, которая показала вполне приемлемую точность (0.75), из этого
|
||
следует что MLPClassifier вполне подходит для сформулированной задачи_
|
||
|
||
---
|
||
|