.. | ||
1.png | ||
2.png | ||
3.png | ||
4.png | ||
lab.py | ||
README.md | ||
res.png |
Лабораторная работа №6. Вариант 21
Тема:
Нейронная сеть
Модель:
MLPClassifier
Как запустить программу:
Установить python, numpy, matplotlib, sklearn
python lab.py
Какие технологии использовались:
Язык программирования Python, библиотеки numpy, matplotlib, sklearn
Среда разработки VSCode
Что делает лабораторная работа:
В ходе исследования нейронных сетей, в особенности многослойных перцептронов (MLP), был проведен тщательный анализ влияния архитектуры сети на её производительность в задаче классификации стадий сердечных заболеваний. Эксперименты с различными конфигурациями слоев и их размерами позволили более глубоко понять, какие параметры сети оказывают наибольшее влияние на точность прогнозов.
В качестве MLP в коде использовался класс sklearn.neural_network.MLPClassifier
и целевой задачей являлось предсказание наличие болезни сердца (0 - отсутствует, а 1,2,3,4 - стадии)
Процесс подготовки данных и обучение MLP представлен на изображении ниже и качество оценки составило 0.83
, данное число представляет точность оценки и вычисляется как отношение правильных ответов к общему количеству ответов. Важно отметить, что данный MLP состоял только из одного скрытого слоя с размером = 100
.
При MLP, содержащим два скрытых состояния с размерами 300
и 100
соответственно получилось добиться точности в примерно 0.92
.
При MLP, содержащим четыре скрытых состояния с размерами 150, 100, 50 и 50
соответственно получилось добиться точности в 0.95
.
При MLP, который содержит 5 слоев с размерами 100, 400, 600, 400, 100
, то есть самая большая с точки зрения архитектуры модель имеет наилучший показать точности.
Вывод
На основе проведенных экспериментов можно сделать вывод, что при усложнении архитектуры нейронной сети мы получаем улучшение в ее качестве.