ИССЛЕДОВАНИЕ ГЕНЕРАТИВНО-СОСТЯЗАТЕЛЬНЫХ СЕТЕЙ ДЛЯ СИНТЕЗА НОВЫХ МЕДИЦИНСКИХ ДАННЫХ
Аннотация и ключевые слова
Аннотация (русский):
В работе рассматривается создание генеративно–состязательной модели нейронной сети (GAN – Generative Adversarial Nets), для синтеза новых медицинских данных. GAN состоит из двух моделей, обучаемых одновременно: генеративная модель (G – Generator), фиксирующая распределение данных, и дискриминирующая модель (D – Discriminator), оценивающая вероятность того, что выборка получена из обучающих данных, а не от генератора G. Для создания G применяется собственная архитектура нейронной сети, основанная на сверточных слоях, с применением экспериментальных методов глубокого обучения на основе Tensor Flow Addons. Для создания дискриминатора D применяется подход Transfer Learning (TL). Процедура обучения состоит в максимизации вероятности того, что D допустит ошибку. Эксперименты показывают, что предложенная архитектура GAN, полностью справляется с поставленной задачей – синтез новых медицинских данных.

Ключевые слова:
генеративно–состязательная сеть, сверточная нейронная сеть, генератор, предоубученная модель, дискриминатор, вероятность, обучение
Текст
Текст произведения (PDF): Читать Скачать

Введение
В настоящее время генеративные модели, основанные на нейронных сетях глубокого обучения, используются для решения различных задач: генерация рукописных цифр [1], генерация лиц [2], написания стихов [3] и др.
В современной медицинской практике, в том числе и в области кардиологии, продолжает сохраняться устойчивый рост использования методов автоматической обработки графических данных. Наиболее популярными являются алгоритмы обработки анатомических структур на основе данных МРТ и КТ. Однако в ряде случаев использование представленных модальностей невозможно, так как, например, основным ограничением компьютерной томографии (КТ) является отсутствие режима реального времени. Для решения данной проблемы необходимо разработать алгоритм трекинга и визуализации данных на основе интеллектуального анализа. GAN позволит синтезировать уникальные данные для обучения модели трекинга, подобно [4].
Популярные генеративные модели, как ограниченная машина Больцмана и ее множество вариантов [5, 6, 7], были успешно использованы в ограниченных условиях, такие как послойная предварительная подготовка и некоторые прикладные задачи. Но общее развитие генеративных моделей как самостоятельных инструментов в значительной степени отстают, из-за, возникающих проблем, при оценке максимального правдоподобия. В этой статье мы предлагаем собственную архитектуру G, и приводим сравнение различных transferlearning моделей D для синтеза медицинских данных.

Исследование

2.1. Генеративно–состязательные сети. GAN состоят из двух нейронных сетей: генератора и дискриминатора. Генератор семплирует случайные числа из некоторого распределения  , входного шума, например   и генерирует из них объекты   , а дискриминатор, получая на вход семплы от оригинальной выборки   и генератора  , учится предсказывать природу семпла (откуда он пришел), выдавая на выходе скаляр  . На рисунке 1 представлена классическая структура GAN.

 

Рис. 1. Классическая архитектура GAN

Процесс обучения GAN можно представить в виде следующего алгоритма (генератор и дискриминатор обучаются отдельно, но в рамках одной сети):
Шаг 1.    Задаем произвольный начальный G(Z).
Шаг 2.    Обучаем дискриминатор, параметры   обновляются в сторону уменьшения бинарной кросс-энтропии (BCE сокр. от Binary Cross Entropy):

                     (1)
                     (2)

Шаг 3.    Обучение генератора, обновляем параметры генератора   в сторону увеличения логарифма вероятности, а дискриминатору присвоить сгенерированному объекту лейбл реального:

                             (3)

Задачу, что решает GAN можно сформулировать следующим образом:

                 (4)
    (
При заданном генераторе оптимальный дискриминатор выдает вероятность:
                                     (5)

В своей работе Ian J. Goodfellow [8] показывает, что при достаточной мощности обеих сетей у данной задачи есть оптимум, в котором генератор научится генерировать распределение  , совпадающее с  , а дискриминатор на любое   выдает вероятность 0,5. На рисунке 2 приведена иллюстрация процесса тренировки порождающих состязательных сетей GAN из [4]. Где, черная точечная кривая – настоящее распределение   , зеленая – распределение генератора  , синяя – распределение вероятности   дискриминатора предсказать принадлежность объекта. В результате многократного повторения шагов a, b, c  совпало с   и дискриминатор не способен отличить одно от другого.

 

Рис. 2. Иллюстрация процесса тренировки GAN

2.2.    Генератор. Для решения поставленной задачи было принято реализовать собственную глубокую архитектуру сети генератора (рисунок 3), базирующуюся на обучаемых сверточных и деконволюционных слоях с применением параллельной свертки и последующей конкатенации для усиления признаков. Стоит отметить, что глубокий сверточный генератор имеет 6 уровней повышения размерности и общее количество весов составило 17,074,528. Описание структуры уровня повышения (1 уровень, l = 6) приведено в таблице 1. 

 

Рисунок 3.  Архитектура генератора
Таблица 1. Описание слоев архитектуры генератора G

Name_layer    Kernel_size    Pool_size    Padding    filters    Strides
Conv2d    (3, 3)    None    same    512 (2**l*8)    None
Up_Sampling2d    None    (2, 2)    None    None    None
Conv2d_1    (1, 1)    None    same    1024 (2**(l+1)*8)    None
Conv2dTranspose_1    (3, 3)    None    same    512 (2**l*8)    (2, 2)
Conv2d_2    (1, 1)    None    same    1024 (2**(l+1)*8)    None
Conv2dTranspose_2    (1, 1)    None    same    512 (2**l*8)    (2, 2)

2.3. Дискриминатор. В качестве дискриминатора было принято решение использовать модель transferlearning, обученные для нахождения вектора признаков (featurevector) изображений Imagenet. Рассмотренные модели приведены в таблице 2. Проведенный анализ показал, что модель Xception имеет наилучшее соотношение Accuracy / Parametrs, в связи с этим она будет использована для дальнейшего решения задачи. Общее количество весов модели представлено в таблице 3.

Таблица 1. Таблица сравнения моделей transferlearnong

Model    Size    Top-1 Accuracy    Top-5 Accuracy    Parameters
ResNet50    98 MB    0.749    0.921    25 636 712
ResNet101    171 MB    0.764    0.928    44 707 176
ResNet50V2    98 MB    0.760    0.930    25 613800
InceptionV3    92 MB    0.779    0.937    23 851784
MobileNet    16 MB    0.704    0.895    4 253864
MobileNetV2    14 MB    0.713    0.901    3 538984
NASNetMobile    23 MB    0.744    0.919    5 326716
Xception    88 MB    0.790    0.945    22 910480

Таблица 3. GAN Model Weights

    Generator    Discriminator    GAN
Total params    17 074528    20 867624    37 942152
Trainable params    17 016608    2048    17 018 656
Non-trainableparams    57920    20 865576    20 923 496

2.4. Результаты. Результаты функций потерь отражены на рисунках 4 – 5. Исходя из графиков видно, что модель стремится свести ошибку к усредненному значению. Так каждый скачек потери генератора, сказывается уменьшением ошибки дискриминатора и наоборот.  Процесс обучения апробирован на медицинских данных, полученные результаты, представленный в таблице 4. В строке а) – примеры изображений, генерируемых сетью GAN после 1-ой, 100-ой и 200-ой эпохи обучения соответственно. Можно заметить, что результат становится лучше в процессе обучения. В строке б) представлены результаты 200-ой, 250-ой и 300-ой эпохи соответственно, тенденция по улучшению в строке а) сохраняется. В строке в), отображающей результат после 300-ой, 350-ой и 400-ой эпохи соответственно изображение, генерируемые сетью, продолжают улучшаться (информативность растет). В строке г), результаты 400-ой, 500-ой и 600-ой эпохи соответственно. По данным результатам видно, что изображения достигли высокой точности к концу обучения, а значит сеть обучена и готова к использованию.

 

Рис. 4. Динамика кросс-энтропии дискриминатора

 

Рис. 5. Динамика кросс-энтропии генератора


Таблица 4. – Визуализация процесса обучения

а) визуализация результата с 1 по 200 эпоху               
б) визуализация результата с 200 по 300 эпоху               
в) визуализация результата с 300 по 400 эпоху               
г) визуализация результата с 400 по 500 эпоху               

Заключение

В результате исследования была разработана собственная архитектура глубокого сверточного генератора, а также скомпилирована модель дискриминатора для GAN, на основе которой произведена генерация медицинских данных. Данный метод использован в качестве расширения исходной выборки с последующим использованием ее в задаче трекинга ключевых точек анатомических структур и медицинских инструментов.
Данная работа выполнена в рамках РФФИ 19-07-00351\19 и государственного задания «Наука» №FFSWW-2020-0014.
 

Список литературы

1. Francois Chollet, Introducing Variational Autoencoders (in Prose and Code), [Электронный ресурс] – URL: https://blog.keras.io/building-autoencoders-in-keras.html, last accessed 2019/11/20.

2. Kateryna Koidan, Facial Surface and Texture Synthesis via GAN), [Электронный ресурс] – URL:https://neurohive.io/en/computer-vision/facial-surface-and-texture-synthesis-via-gan, last accessed2020/01/09.

3. Dan Anastasyev, Как научить свою нейросеть генерировать стихи), [Электронный ресурс] – URL: https://habr.com/ru/post/334046, last accessed 2020/04/02.

4. Gerget, O. M. Bionic models for identification of biological systems // Journal of Physics: Conference Series, 2017. – Vol. 803. - Pp. 68 – 73.

5. Bengio, Y. Better Mixing via Deep Representations / Y. Bengio, G. Mesnil, Y. Dauphin, S. Rifai //. arXiv:1207.4404 [cs], July 2012. arXiv: 1207.4404.

6. Hinton, G. E. Reducing the dimensionality of data with neural networks / G. E. Hinton, R. R. Science, 313(5786), 2006 - Pp. 504–507.

7. Salakhutdinov, R. Deep Boltzmann machines / R. Salakhutdinov, G. E. Hinton // In International Conference on Artificial Intelligence and Statistics, 2009 - Pp. 448–455.

8. Goodfellow, I. Generative Adversarial Nets / I. Goodfellow, J. Pouget-Abadie, M. Mirza // Advances in Neural Information Processing Systems 27 / Ed. by Z. Ghahramani, M. Welling, C. Cortes et al. –– Curran Associates, Inc, 2014. - Pp. 2672–2680 [Электронный ресурс] – URL:http://papers.nips.cc/paper/5423-generative-adversarial-nets.pdf.