ВВЕДЕНИЕ 4
1. ПОСТАНОВКА ЗАДАЧИ 6
2. ОБЗОР СУЩЕСТВУЮЩИХ РЕШЕНИЙ 7
2.1. Библиотеки 7
2.2. Архитектуры 8
3. ИССЛЕДОВАНИЕ И ПОСТРОЕНИЕ РЕШЕНИЯ ЗАДАЧИ 9
3.1. Архитектура 9
3.2. Данные 11
4. ПРОГРАММНАЯ РЕАЛИЗАЦИЯ 15
4.1. Данные 15
4.2. Обучение 18
5. ЭКСПЕРИМЕНТЫ 20
ЗАКЛЮЧЕНИЕ 28
СПИСОК ЛИТЕРАТУРЫ 29
ПРИЛОЖЕНИЕ
В последние десятилетия одним из актуальных направлений развития компьютерных технологий в медицине становится обработка цифровых изображений: улучшение качества изображения, восстановление поврежденных изображений, распознавание отдельных элементов. Распознавание патологических процессов является одной из наиболее важных задач обработки и анализа медицинских изображений.
Как правило, объекты исследования на медицинских изображениях имеют резко неоднородную, сложную структуру и требуют от специалистов большого опыта для выявления тех или иных особенностей, позволяющих поставить определенный диагноз. Использование вычислительной техники и математических методов в этой отрасли позволяет автоматизировать этот процесс и повысить точность результатов исследований.
Подобные задачи особенно интересны и трудоемки, поскольку размеченные обучающие базы достаточно малы по сравнению с другими задачами компьютерного зрения, анатомические структуры могут сильно варьироваться у разных субъектов, на изображениях отсутствует цветовая информация.
Одним из наиболее успешных методов распознавания медицинских и не только изображений в последние годы является применение сверточных нейронных сетей.
Нейронная сеть - это математическая модель, действующая по принципу работы биологических нейронных сетей. В ней одни нейроны обрабатывают и передают сигналы другим нейронам, а в процессе обучения изменяется сила этих сигналов - те нейроны, которые не привносят вклада в результат передают очень слабый сигнал, а нейроны, от которых результат зависит достаточно сильно, передают более мощный сигнал. Нейронные сети используются в задачах распознавания образов, кластеризации, классификации и т.д.
Сверточная нейронная сеть - это специальная архитектура нейронной сети, нацеленная на эффективное распознавание изображений. В ней используются некоторые особенности зрительной коры головного мозга, в которой были открыты так называемые простые клетки, реагирующие на прямые линии под разными углами, и сложные клетки, реакция которых связана с активацией определенного набора простых клеток. Свое название сеть получила из-за наличия операции свертки, в которой каждый фрагмент изображения умножается на ядро свертки поэлементно, и результат записывается в аналогичную позицию выходного изображения.
Для успешного обучения сверточной нейронной сети нужно большое количество размеченных данных. В случае их отсутствия используются различные способы аугментации данных [1] - обычно матричные преобразования имеющихся изображения (например, повороты, зеркальное отражение, перемещение, масштабирование и т.д.). Это позволяет получать “новые” изображения несколько отличающиеся от имеющихся, но сохраняющих определенные их свойства.
Также важной частью обучения сверточной нейронной сети является подбор подходящей архитектуры сети и ее параметров [2]. Это остается одной из основных проблем использования глубокого обучения - нет определенных правил подбора параметров сети под конкретную задачу. Вследствие этого, для каждой новой задачи, а нередко и для нового набора данных, приходится подбирать наилучшую архитектуру и параметры, руководствуясь поначалу лишь экспериментами, проведенными предыдущими исследователями. Предлагаемая магистерская работа посвящена разработке и реализации алгоритма классификации рентгеновских изображений органов грудной полости из определенного набора данных на основе глубокого обучения.
1. ПОСТАНОВКА ЗАДАЧИ
Цель работы состоит в разработке алгоритма и программного обеспечения для классификации рентгеновских изображений органов грудной полости на основе глубокой нейронной сети.
Для ее осуществления были поставлены следующие задачи:
• Изучить библиотеки для сверточных нейронных сетей и выбрать наиболее эффективную
• Найти и изучить литературу по темам: глубокие нейронные сети, машинное обучение в медицине, обработка медицинских изображений
• Перевести данные для обучения (рентгеновские изображения в формате DICOM) в необходимый для работы с выбранной библиотекой формат
• Провести серию экспериментов для получения обученной глубокой нейронной сети с наилучшей точностью классификации рентгеновских изображений органов грудной полости
В ходе выполнения исследовательской работы были выполнены следующие задачи:
• Исследованы существующие библиотеки для сверточных нейронных сетей и выбрана библиотека Theano.
• Изучена литература по темам: глубокие нейронные сети, машинное обучение в медицине, обработка медицинских изображений.
• Данные для обучения переведены в необходимый для работы с библиотекой Theano и выбранной архитектурой формат.
• Проведены эксперименты для получения обученной глубокой нейронной сети с наилучшей точностью классификации рентгеновских изображений органов грудной полости.
1. Dieleman S. et al. Classifying plankton with deep neural networks //Blog entry. - 2015. - Т. 3. - С. 4.
2. Shin H. C. et al. Deep convolutional neural networks for computer-aided detection: CNN architectures, dataset characteristics and transfer learning //IEEE transactions on medical imaging. - 2016. - Т. 35. - №. 5. - С. 1285-1298.
3. https://habrahabr.ru/company/intel/blog/254747/#Paper1 - Сравнение библиотек глубокого обучения на примере задачи классификации рукописных цифр.
4. Druzhkov P. N., Kustikova V. D. A survey of deep learning methods and software tools for image classification and object detection //Pattern Recognition and Image Analysis. - 2016. - Т. 26. - №. 1. - С. 9.
5. Krizhevsky A., Sutskever I., Hinton G. E. Imagenet classification with deep convolutional neural networks //Advances in neural information processing systems. - 2012. - С. 1097-1105.
6. Szegedy C. et al. Going deeper with convolutions //Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. - 2015. - С. 1-9.
7. https://github.com/Lasagne/Lasagne - Lasagne library
8. He K. et al. Delving deep into rectifiers: Surpassing human-level performance on imagenet classification //Proceedings of the IEEE international conference on computer vision. - 2015. - С. 1026-1034.
9. Shin H. C. et al. Learning to read chest X-rays: recurrent neural cascade model for automated image annotation //Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. - 2016. - С. 2497-2506.
10. Lakhani P., Sundaram B. Deep Learning at Chest Radiography: Automated Classification of Pulmonary Tuberculosis by Using Convolutional Neural Networks //Radiology. - 2017. - С. 162326.