Целью выпускной квалификационной работы является создание web- приложения, в котором будут реализованы две модели CNN.
Проблема определения данной пневмонии рассматривалась ранее, существует несколько программ обучения нейронной сети в интернете, но все они имеют недочеты. Во-первых, максимальная точность обучения равняется 90,2%. По меркам машинного обучения это хорошее значение, но не является идеальным, так как вероятность допустить критическую ошибку существует и ее необходимо свести к минимуму. Необходимо добиться большей точности, а также создать еще одну дополнительную модель CNN, обученной по другой выборке с другими параметрами. Работа в совокупности двух моделей должна привести к правильному определению прогноза и исключить проблему не выявлений болезни. Во-вторых, нет приложений, распознающих пневмонию. Необходимо создать простой и понятный интерфейс для того, чтобы любой не разбирающийся в программировании пользователь мог загрузить снимки и получить результат. Наиболее подходящим для данной задачи является создание Web- приложения. В данной работе сайт будет работать на локальном сервере.
Для достижения цели были поставлены следующие задачи:
· Изучить работу нейронных сетей;
· Для языка программирования Python изучить следующие библиотеки: Tensorflow, Keras, Flask;
· Подготовить данные для обучения;
· Создать две модели нейронной сети, обучить их по разным наборам данных;
· Реализовать Web – приложение, подключить обученные модели;
· Протестировать программу на реальных изображениях.
Бакалаврская работа состоит из введения, пяти основных глав, заключения, списка используемой литературы и приложения.
В первой главе рассматриваются нейронные сети, классификация и дискриминация, особенности сверточной нейронной сети.
Во второй главе подробно описан процесс подготовки данных для обучения моделей.
В третьей главе рассматриваются особенности обучения CNN, показана поэтапная реализация двух моделей, анализ их прогнозирования.
В четвертой главе представлена реализация Web – приложения.
В пятой главе показано как работает приложение, подробно описан процесс обучения, функционал сайта.
В заключении подводятся итоги проделанной работы.
ВВЕДЕНИЕ..................................................................................................... 3
Раздел 1. Нейронные сети............................................................................... 6
1.1. Архитектура и модель нейронных сетей.............................................. 7
1.2. Классификация и дискриминация......................................................... 8
1.3. Сверточная нейронная сеть................................................................. 10
Раздел 2. Подготовка данных....................................................................... 15
Раздел 3.Создание модели с помощью библиотеки Keras.......................... 18
3.1. Процесс обучения модели................................................................... 21
3.1.1. Модель с двумя классами........................................................... 21
3.1.2. Модель с тремя классами........................................................... 27
3.2. Анализ работы моделей...................................................................... 33
Раздел 4. Создание Web-приложения.......................................................... 36
4.1. Разработка frond-end части web-приложения.................................... 36
4.2. Разработка back-end части web-приложения...................................... 37
Раздел 5. Работа программы........................................................................ 42
5.1. Процесс обучения................................................................................ 42
5.2. Запуск web-приложения...................................................................... 43
ЗАКЛЮЧЕНИЕ............................................................................................. 48
СПИСОК ЛИТЕРАТУРЫ............................................................................. 53
ПРИЛОЖЕНИЕ............................................................................................. 55
1. Нейронная сеть // Большая российская энциклопедия: [в 35 т.] / гл. ред. Ю. С. Осипов. — М.: Большая российская энциклопедия, 2004— 2017.
2. Мак-Каллок У. С., Питтс В. Логическое исчисление идей, относящихся к нервной активности Архивная копия от 27 ноября 2007 на Wayback Machine // Автоматы / Под ред. К. Э. Шеннона и Дж. Маккарти. — М.: Изд-во иностр. лит. 1956. — С. 363—384. (Перевод английской статьи 1943 г.)
3. Хакимов Б. Б. Моделирование корреляционных зависимостей сплайнами на примерах в геологии и экологии. — М.: Изд-во Моск. ун-та; СПб.: Нева, 2003. — 144 с.
4. Горбань А. Н. Обобщенная аппроксимационная теорема и вычислительные возможности нейронных сетей Архивная копия от 27 января 2012 на Wayback Machine // Сибирский журнал вычислительной математики, 1998, т. 1, № 1. — С. 12—24.
5. Миркес Е. М. Логически прозрачные нейронные сети и производство явных знаний из данных // Нейроинформатика / А. Н. Горбань, В. Л. Дунин-Барковский, А. Н. Кирдин и др. — Новосибирск: Наука. Сибирское предприятие РАН, 1998. — 296 с. — ISBN 5-02-031410-2.
6. Барцев С. И., Охонин В. А. Адаптивные сети обработки информации. — Красноярск: Ин-т физики СО АН СССР, 1986. Препринт N 59Б. — 20 с.
7. Оптимайзеры - Русскоязычная документация Keras [Электронный ресурс]. —2015. — URL: https://ru-keras.com/optimizer (дата обращения 12.05.2021).
8. Активационные функции - Русскоязычная документация Keras [Электронный ресурс]. —2015. — URL: https://ru-keras.com/activation-function (дата обращения 17.05.2021).
9. Сверточные нейронные сети: архитектура, примеры, особенности [Электронный ресурс]. —2018. — URL: https://neurohive.io/ru/osnovy-data- science/glubokaya-svertochnaja-nejronnaja-set (дата обращения 11.04.2021).
10. Flask (веб-фрейморк) [Электронный ресурс]. —2021. — URL: https://ru.wikipedia.org/wiki/Flask_(веб-фреймворк) (дата обращения 21.05.2021).
11. Фреймворк Flask в Python [Электронный ресурс]. —2021. — URL: https://pythonim.ru/libraries/freymvork-flask-v-python (дата обращения 23.05.2021).
12. HTML стили – CSS [Электронный ресурс]. —2018. — URL: https://html5css.ru/html/html_css.php (дата обращения 28.05.2021).
13. Введение и создание веб приложения на Python [Электронный ресурс]. —2018. — URL: https://proglib.io/p/python-web-development/ (дата обращения 25.05.2021).
14. Пневмония – причины, симптомы, диагностика лечения [Электронный ресурс]. —2020. — URL: https://krasotamedicina.ru/pneumonia/ (дата обращения 10.03.2021).