Выгоняйло В.Р., Михелев В.М. Повышение точности классификации рентгеновских снимков с использованием дообучения составной нейросети // Научный результат. Информационные технологии. - Т.5, №1,2020
УДК 004.032.2 DOI: 10.18413/2518-1092-2020-5-1-0-3
Выгоняйло В.Р.1 Михелев В.М.2
ПОВЫШЕНИЕ ТОЧНОСТИ КЛАССИФИКАЦИИ РЕНТГЕНОВСКИХ СНИМКОВ С ИСПОЛЬЗОВАНИЕМ
ДООБУЧЕНИЯ СОСТАВНОЙ НЕЙРОСЕТИ_
4 Белгородский государственный национальный исследовательский университет, ул. Победы, д. 85, г. Белгород, 308015, Россия
2) Белгородский государственный технологический университет им. В.Г. Шухова, ул. Костюкова, д. 46,
г. Белгород, 308012, Россия
e-mail: [email protected], [email protected]
Аннотация
Данная статья посвящена решению задачи классификации рентгеновских снимков грудной клетки при помощи приема дообучения предобученной сверточной нейронной сети, обученной на малых наборах данных. Используется обучаемый бинарный классификатор для выявления наличия или отсутствия патологии нижних дыхательных путей. В работе приведены результаты вычислительного эксперимента и показано улучшение точности при решении задачи классификации. Исследование направлено на выявление качественного улучшения показателя точности при применении составной нейронной сети. Ключевые слова: классификация изображений, рентгеновские снимки грудной клетки, составные нейронные сети, нейронные сети, сверточные нейронные сети, keras, tensorflow.
UDC 004.032.2
Vygoniailo V.R.1 Mikhelev V.M. 2
INCREASING ACCURACY CLASSIFICATION OF X-RAY IMAGES USING TRAINING OF COMPOSITE NEURAL NETWORK
ц Belgorod State National Research University, 85 Pobedy St., Belgorod, 308015, Russia 2) Belgorod State Technological University named after V.G. Shukhov, 46 Kostyukova St., Belgorod,
308012, Russia
e-mail: [email protected], [email protected]
Abstract
This article is devoted to solving the problem of classifying chest x-ray images by using the retraining of a pre-trained convolutional neural network trained on small data sets. A trained binary classifier is used to detect the presence or absence of lower respiratory tract pathology. The paper presents the results of a computational experiment and shows an improvement in accuracy in solving the classification problem. The study aims to identify a qualitative improvement in the accuracy index when using a composite neural network. Keywords: image classification, chest x-rays, composite neural networks, neural networks, convolutional neural networks, keras, tensorflow.
ВВЕДЕНИЕ
Туберкулез — это инфекционное заболевание, вызываемое бактерией Mycobacterium tuberculosis. Туберкулез является основной причиной смерти от инфекционных заболеваний во всем мире, наряду с синдромом приобретенного вируса иммунодефицита человека (известным как ВИЧ). В 2014 году примерно 9600000 человек заболели туберкулезом, что привело к 1500000 смертей [1].
Хотя следует избегать неизбирательного массового скрининга на туберкулез, Всемирная Организация Здравоохранения рекомендует более широко использовать скрининг с помощью рентгенографии грудной клетки и быстрой молекулярной диагностики для отдельных групп высокого риска [1]. Рентгенография грудной клетки является важной частью многих алгоритмов скрининга на туберкулез во всем мире [1-2]. Кроме того, визуализация также играет важную роль в обследовании пациентов с подозрением на туберкулез легких [2-3].
Выгоняйло В.Р., Михелев В.М. Повышение точности классификации рентгеновских снимков с использованием дообучения составной нейросети // Научный результат. Информационные технологии. - Т.5, №1,2020
Известно [4-5], что во многих местах с преобладанием туберкулеза наблюдается относительный недостаток опыта в интерпретации результатов рентгенографии, что может отрицательно сказаться на эффективности скрининга и обследования. Эффективный автоматизированный и экономически эффективный метод может помочь улучшить результаты обследований в развивающихся странах и облегчить раннее выявление заболеваний. Однако исследование не всегда располагает большим набором входных данных или большим объемом вычислительных мощностей [4, 7].
Описание датасета
Датасет Pulmonary Chest X-Ray Abnormalities содержит рентгеновские снимки грудной клетки человека в формате изображения *.png, имеет обучающую и тестовую выборки. Этот набор данных содержит более 500 рентгеновских снимков с клиническими метками, собранными рентгенологами.
Перед началом вычислительного эксперимента необходимо подготовить входной набор данных:
1. Создать общий каталог, который будет подаваться, как входные данные.
2. В общем каталоге разместить еще два: каталог данных для обучения и каталог данных для проверки.
3. В каталогах для обучения и проверки разделить медицинские снимки еще на два каталога: с патологией и без.
4. Привести каждое изображение к размеру 299 x 299 px.
Составная нейронная сеть на основе Inception V3
Существует несколько моделей сверточных нейронных сетей для классификации изображений: LeNet, AlexNet, VGG, Inception и ResNet. Из вышеперечисленных только две архитектуры отличаются наличием глубоких слоев: Inception (22 слоя) и ResNet (152 слоя), что, несомненно, влияет на стоимость вычислений. Несмотря на то, что Inception (рис. 1) имеет меньше слоев, чем ResNet, в ней имеются параллельные сверточные слои с фильтрами различного размера (например, 1x1, 3x3, 5x5). Также, использование обратной связи по ошибкам в нескольких точках сети дает оптимальные количественные и качественные показатели точности и скорости вычисления для вычислительного эксперимента в данном исследовании.
Для создания составной сети необходимо подключить все необходимые модули из keras в составе tensorflow. Далее задается размер входных изображений (299), потому что именно на изображениях такого размера обучена модель inception v3. Устанавливается размер мини выборки - 32.
Загружаем данные из ранее подготовленной директории. Так как дынных в данном датасете не очень много, то используем дополнение данных с помощью генераторов keras: каждый пиксель изображения будет разделен на 255, изображения будут поворачиваться на угол до 10 градусов, будут выполняться сдвиги по осям до 10% и размер изображения будет изменяться в пределах
ОСНОВНАЯ ЧАСТЬ
10% (рис. 2).
НАУЧНЫЙ РЕЗУЛЬТАТ
RESEARCH RE S~lJ~i7T"M
Выгоняйло В.Р., Михелев В.М. Повышение точности классификации рентгеновских снимков с использованием дообучения составной нейросети // Научный результат. Информационные технологии. - Т.5, №1,2020
1 h
IIIIIII ик III ■■■■■ iiiii1!1 4i и \4 nun 1 1 II
Hill II ■IUI 1 H JjV >i 1
¡■(«М**» В Ut^arf Щ t « ...... IUI H
н м ИВ ц о» m»
Рис. 1. Иллюстрация архитектуры сети Inception Fig. 1. Illustration of Inception Network Architecture
а б в
г д е
Рис. 2. Изображения, созданные генератором keras: a - изображение повернуто вправо, б - изображение повернуто вправо и сдвинуто вверх, в - изображение сдвинуто влево, г - изменен размер изображения, д - изображение сдвинуто вправо,
е - изображение сдвинуто вниз Fig. 2. Images created by keras generator: a - the image is rotated to the right, b - the image is rotated to the right and shifted up, c - the image is shifted to the left, d - the image is resized, e - the image is shifted to the right, e - the image is shifted down
Далее загружаем предварительно обученную сеть Inception и "замораживаем" веса предварительно обученной сети.
Создаем составную нейронную сеть на основе загруженной, добавляем к сети новый классификатор: добавляем слой GlobalAveragePooling2D, один полносвязный слой с 512
Выгоняйло В.Р., Михелев В.М. Повышение точности классификации рентгеновских снимков с использованием дообучения составной нейросети // Научный результат. Информационные технологии. - Т.5, №1,2020
нейронами, выбираем полулинейную активацию и используем пакетную нормализацию, слой dropout с показателем 0,5 и выходной слой с одним нейроном и функцией активации sigmoid.
Sigmoid изменяется от 0 до 1 и хорошо подходит для бинарной классификации.
В результате получаем составную модель, которая в начальной части содержит слои inception, а в конце - добавленный полносвязный слой.
Компилируем модель, в качестве функции ошибки используем бинарную перекрёстную энтропию, оптимизатор RMSprop, так как используем предварительно обученную модель, то используем низкий параметр скорости обучения (1e-4) и метрику качества обучения - accuracy (доля правильных ответов).
Сохраняем модель, только если доля правильных ответов на проверочном наборе данных лучше, чем на предыдущих этапах. Уменьшаем параметр скорости обучения, если в течение 3 эпох не изменяется доля правильных ответов на проверочном наборе данных.
ВЫЧИСЛИТЕЛЬНЫЙ ЭКСПЕРИМЕНТ
Обучаем нейронную сеть с помощью метода fit_generator в течение 20 эпох (рис. 3).
4/4 [—»————.....■•■■■—] - U 2№/lt«f - tali: 0.52)7 - KC:! I.SW
EpOth &0G17; vJl.iiC fftiP 0.7£i£7 Ut.m, i*vl1t P^iJ Ti lft£«pti«w3
- 181 - luii! - JCtz 9.97H - vJl^lOSli 0,52*7 - Vll_*«: 0.85№ Ej»th
4/4 .........-......— j - U ilimi/iltp - Lui: I.HH - KCi 0.859J
EpOth (JO018; wil.iiC lp0№ved fflm (J,85006 tn n^ii Tfl
- 181 - losi: G.01M - *ttz 0.MH - \tlj6iii 0,5649 - *»l_j»«: 0.8583 EpOth 1-9/S0
4/4 [■■■^■■■'■'■»»»»»»■i.i.i.) - 11 HAsyttap - tali: 8.3m - tea f.flUd
EpGth vll_JiC IwpfGved fr-jn 0,8583J № b.biili, idvlrtdtl T4 IfKlptiOW]
- 17i - iSHI G.01K - Jit; 0.MH - vil^lOiff 0-52i9 - Vtl_KC: 0.8AJ3 EpGth »/¡0
4/4 [■■■ .,.,»»».—.«■] - ii - lbiii |.IW - Kt: |.№1
Epith HUI: aid imt li^mi m
- - Iam: &.0J17 - Kit 1.9997 - wl. Ihi: l.HM - <h1_mcc: t.№3
Рис. 3. Результат по завершению обучения, доля правильных ответов на проверочном наборе данных 0.8833 Fig. 3. The result of the completion of training, the proportion of correct answers on the test data set 0.8833
Для улучшения точности "размораживаем" два последних блока Inception и дообучаем модель на новом наборе данных.
Загружаем лучшие веса, которые были получены в ходе обучения, "размораживаем" слои Inception, начиная от слоя 249 и далее компилируем сеть с теми же параметрами. Запускаем процесс дообучения еще на 5 эпох (рис. 4).
Выгоняйло В.Р., Михелев В.М. Повышение точности классификации рентгеновских снимков с использованием дообучения составной нейросети // Научный результат. Информационные технологии. - Т.5, №1,2020
E|»(h WöOi; _«{ 1ß^^ffti fft* - ¡if № tf.WOWj -Mil №
■ 19i ■ Ьы: a.477« - Ktl i.iSil ■ nljHl; i.EllE ■ nljHC! a.iMG E[»th ДО
[------------------------------) . Ii - lau: В.54Ы ■ i«: Я.Ю17
Epoch ÜOMJ: did i№t Lnpro^p frw e.WH
- 16i - 161 ii o'ölSA - *«: &.ЙГ1 - 4*l_itiiz - i.tii? Epoch
V* l..............................] - n U4*t/*tq> - IM*: - KCi t,№)
Epoch «ööi; als iMrt Wruvt irr*
- - twit: e.liW - ice: e-Чв« - nljeit: - сL Epöch 4/5
4>/4 - I» J&tai/ftii - iQtV 0-57*? - i«!
Epqch WWW: <ЦД m?t Lepr-ügf fr« o.weee
Epwh tfMW: №Нкл1НпЛл*1И nrfüfSfti ritl tio 4.VWWH73e№76l-K,
■ ■ hlfi: ■ ЛЕС: ■ vj1>ii: V.'jT^B • viI.mc: fl.i-H.iJ Epflfh 5У£
fl.'i [<■■■■............■■•■-■......J ■ Ii - lüu: f.HiS ■ itc: kmt
Ьрэ< i- WWS: did not iaprove- f гор B.IHWi»
- lb - G.ei™ - i-iHfl - viljofsi P-^JS - fl iese
Рис. 4. Результат по завершению обучения, доля правильных ответов на проверочном наборе данных 0.9000 Fig. 4. The result of the completion of training, the proportion of correct answers on the test data set 0.9000
Лучшая доля правильных ответов получилась уже на первой же эпохе (0.9). Далее доля правильных ответов начала падать, а на обучающем наборе данных увеличиваться, это означает, что началось переобучение. Сравнение значений результатов обучения приведены в таблице.
Доля правильных ответов на проверочном наборе
Таблица Table
обучение дообучение
эпоха доля правильных ответов эпоха доля правильных ответов
17 0.8500 1 0.9000
18 0.8583 2 0.8917
19 0.8833 3 0.8833
20 0.8833 4 0.8750
Из таблицы видно, что при дообучении доля правильных ответов повысилась на первой эпохе, а затем начала падать, это означает что наступило избыточное обучение.
Важно отметить, что временные затраты на обучения зависят от аппаратного обеспечения. Параметры стенда: NVIDIA gforce 940m + Intel Core i5 6300 HQ + 16GB RAM. Также для использования tensorflow-gpu необходимо установить следующее программное обеспечение:
- NVIDIA GPU drivers —CUDA 10;
- CUDA Toolkit;
- CUPTI;
- cuDNN SDK (>= 7.4.1).
Выгоняйло В.Р., Михелев В.М. Повышение точности классификации рентгеновских снимков с использованием дообучения составной нейросети // Научный результат. Информационные технологии. - Т.5, №1,2020
ЗАКЛЮЧЕНИЕ
В ходе вычислительного эксперимента было выявлено, что дообучения составной нейронной сети, может повысить точность обученной ранее обученной модели. Однако стоит отметить, что данный способ стоит использовать только при малом количестве входных данных или же при отсутствии больших вычислительных мощностей, которые будут не в состоянии обработать большой объем данных или за приемлемое время.
Если же имеются достаточные входные данные и вычислительные мощности, то следует обучать новую модель. Предварительное обучение по тангенциально связанным наборам данных, таким как ImageNet, помогает в ситуациях, когда данные обучения ограничены, но может привести к непреднамеренным искажениям, которые нежелательны в клинических условиях.
Работа выполнена при поддержке гранта РФФИ 19-07-00133А «Разработка интеллектуальных высокопроизводительных методов распознавания медицинских изображений и создание компьютерной системы поддержки принятия решений в виде облачного сервиса для прогнозирования и диагностики в персональной медицине».
Список литературы
1. World Health Organization. Global tuberculosis report 2015 [Electronic resource]. Access mode: http://apps.who.int/iris/ bitstream/10665/191102/1/9789241565059_ eng.pdf
2. World Health Organization. Systematic screening for active tuberculosis: Principles and recommendations [Electronic resource]. Access mode: http://www.who.int/tb/publications/Final_TB_Screening_guidelines.pdf
3. Chest tuberculosis: Radiological review and imaging recommendations. / Bhalla A.S [et al.] // Indian J Radiol Imaging - 2015. - №25(3). - P. 213-225.
4. An automated tuberculosis screening strategy combining X-ray-based computer-aided detection and clinical information. / Melendez J, [et al.] // Sci Rep - 2016. - №6.
5. High sensitivity of chest radiograph reading by clinical officers in a tuberculosis prevalence survey. / Hoog A.H [et al.] // Int J Tuberc Lung Dis - 2011. - №15(10). - P. 1308-1314.
6. Antani S. Automated Detection of Lung Diseases in Chest X-Rays. A Report to the Board of Scientific Counselors. US National Library of Medicine [Electronic resource]. Access mode: https://lhncbc.nlm.nih. gov/system/files/pub9126.pdf
7. Jaeger S. Automatic screening for tuberculosis in chest radiographs: a survey. / Jaeger S., Karargyris A., Candemir S. // Quant Imaging Med Surg - 2013. - №3(2). P. 89-99.
References
1. World Health Organization. Global tuberculosis report 2015 [Electronic resource]. Access mode: http://apps.who.int/iris/ bitstream/10665/191102/1/9789241565059_eng.pdf
2. World Health Organization. Systematic screening for active tuberculosis: Principles and recommendations [Electronic resource]. Access mode: http://www.who.int/tb/publications/Final_TB_Screening_guidelines.pdf
3. Chest tuberculosis: Radiological review and imaging recommendations. / Bhalla A.S [et al.] // Indian J Radiol Imaging - 2015. - №25(3). - P. 213-225.
4. An automated tuberculosis screening strategy combining X-ray-based computer-aided detection and clinical information. / Melendez J, [et al.] // Sci Rep - 2016. - №6.
5. High sensitivity of chest radiograph reading by clinical officers in a tuberculosis prevalence survey. / Hoog A.H [et al.] // Int J Tuberc Lung Dis - 2011. - №15(10). - P. 1308-1314.
6. Antani S. Automated Detection of Lung Diseases in Chest X-Rays. A Report to the Board of Scientific Counselors. US National Library of Medicine [Electronic resource]. Access mode: https://lhncbc.nlm.nih. gov/system/files/pub9126.pdf
7. Jaeger S. Automatic screening for tuberculosis in chest radiographs: a survey. / Jaeger S., Karargyris A., Candemir S. // Quant Imaging Med Surg - 2013. - №3(2). P. 89-99.
НАУЧНЫЙ РЕЗУЛЬТАТ
RESEARCH RE S~lJ~i7T"M
Выгоняйло В.Р., Михелев В.М. Повышение точности классификации рентгеновских снимков с использованием дообучения составной нейросети // Научный результат. Информационные технологии. - Т.5, №1,2020
Выгоняйло Виктор Романович, магистрант кафедры математического и программного обеспечения информационных систем, НИУ «БелГУ»
Михелев Владимир Михайлович, кандидат технических наук, доцент, доцент кафедры программного обеспечения вычислительной техники и автоматизированных систем, БГТУ им. В.Г. Шухова
Vygoniailo Victor Romanovich, master student, Department of Mathematical and Software Information Systems, Belgorod State National Research University
Mikhelev Vladimir Mikhailovich, Candidate of Technical Sciences, Associate Professor, Associate Professor of the Department of Computer Software and Automated Systems, Belgorod State Technological University named after V.G. Shukhov