<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article
PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.4 20190208//EN"
       "JATS-journalpublishing1.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" article-type="research-article" dtd-version="1.4" xml:lang="en">
 <front>
  <journal-meta>
   <journal-id journal-id-type="publisher-id">Automation and modeling in design and management</journal-id>
   <journal-title-group>
    <journal-title xml:lang="en">Automation and modeling in design and management</journal-title>
    <trans-title-group xml:lang="ru">
     <trans-title>Автоматизация и моделирование в проектировании и управлении</trans-title>
    </trans-title-group>
   </journal-title-group>
   <issn publication-format="print">2658-3488</issn>
   <issn publication-format="online">2658-6436</issn>
  </journal-meta>
  <article-meta>
   <article-id pub-id-type="publisher-id">37787</article-id>
   <article-id pub-id-type="doi">10.30987/2658-6436-2020-2-17-23</article-id>
   <article-categories>
    <subj-group subj-group-type="toc-heading" xml:lang="ru">
     <subject>Математическое моделирование, численные методы и комплексы программ</subject>
    </subj-group>
    <subj-group subj-group-type="toc-heading" xml:lang="en">
     <subject>Mathematical modeling, numerical methods and program complexes</subject>
    </subj-group>
    <subj-group>
     <subject>Математическое моделирование, численные методы и комплексы программ</subject>
    </subj-group>
   </article-categories>
   <title-group>
    <article-title xml:lang="en">RESEARCH OF GENERATIVE ADVERSARIAL NETWORKS FOR THE SYNTHESIS OF NEW MEDICAL DATA</article-title>
    <trans-title-group xml:lang="ru">
     <trans-title>ИССЛЕДОВАНИЕ ГЕНЕРАТИВНО-СОСТЯЗАТЕЛЬНЫХ СЕТЕЙ  ДЛЯ СИНТЕЗА НОВЫХ МЕДИЦИНСКИХ ДАННЫХ</trans-title>
    </trans-title-group>
   </title-group>
   <contrib-group content-type="authors">
    <contrib contrib-type="author">
     <name-alternatives>
      <name xml:lang="ru">
       <surname>Лаптев</surname>
       <given-names>Владислав Витальевич</given-names>
      </name>
      <name xml:lang="en">
       <surname>Laptev</surname>
       <given-names>Vladislav Vitalievich</given-names>
      </name>
     </name-alternatives>
     <email>vvl39@tpu.ru</email>
     <xref ref-type="aff" rid="aff-1"/>
    </contrib>
    <contrib contrib-type="author">
     <name-alternatives>
      <name xml:lang="ru">
       <surname>Данилов</surname>
       <given-names>Вячеслав Владимирович</given-names>
      </name>
      <name xml:lang="en">
       <surname>Danilov</surname>
       <given-names>Vyacheslav Vladimirovich</given-names>
      </name>
     </name-alternatives>
     <email>viacheslav.v.danilov@gmail.com</email>
     <xref ref-type="aff" rid="aff-1"/>
    </contrib>
    <contrib contrib-type="author">
     <name-alternatives>
      <name xml:lang="ru">
       <surname>Гергет</surname>
       <given-names>Ольга Михайловна</given-names>
      </name>
      <name xml:lang="en">
       <surname>Gerget</surname>
       <given-names>Olga Mikhailovna</given-names>
      </name>
     </name-alternatives>
     <email>gerget@tpu.ru</email>
     <bio xml:lang="ru">
      <p>доктор технических наук;</p>
     </bio>
     <bio xml:lang="en">
      <p>doctor of technical sciences;</p>
     </bio>
     <xref ref-type="aff" rid="aff-1"/>
    </contrib>
   </contrib-group>
   <aff-alternatives id="aff-1">
    <aff>
     <institution xml:lang="ru">Томский политехнический университет</institution>
    </aff>
    <aff>
     <institution xml:lang="en">Tomsk Polytechnic university</institution>
    </aff>
   </aff-alternatives>
   <volume>2020</volume>
   <issue>2</issue>
   <fpage>17</fpage>
   <lpage>23</lpage>
   <self-uri xlink:href="https://zh-szf.ru/en/nauka/article/37787/view">https://zh-szf.ru/en/nauka/article/37787/view</self-uri>
   <abstract xml:lang="ru">
    <p>В работе рассматривается создание генеративно–состязательной модели нейронной сети (GAN – Generative Adversarial Nets), для синтеза новых медицинских данных. GAN состоит из двух моделей, обучаемых одновременно: генеративная модель (G – Generator), фиксирующая распределение данных, и дискриминирующая модель (D – Discriminator), оценивающая вероятность того, что выборка получена из обучающих данных, а не от генератора G. Для создания G применяется собственная архитектура нейронной сети, основанная на сверточных слоях, с применением экспериментальных методов глубокого обучения на основе Tensor Flow Addons. Для создания дискриминатора D применяется подход Transfer Learning (TL). Процедура обучения состоит в максимизации вероятности того, что D допустит ошибку. Эксперименты показывают, что предложенная архитектура GAN, полностью справляется с поставленной задачей – синтез новых медицинских данных.</p>
   </abstract>
   <trans-abstract xml:lang="en">
    <p>The paper considers the development of a Generative Adversarial Network (GAN) for the synthesis of new medical data. The developed GAN consists of two models trained simultaneously: a generative model (G - Generator), estimating the distribution of data, and a discriminating model (D - Discriminator), which estimates the probability that the sample is obtained from the training data, and not from generator G. To create G, we used own neural network architecture based on convolutional layers using experimental functions of Tensor Flow Addons. To create discriminator D, we used a Transfer Learning (TL) approach. The training procedure is to maximize the likelihood that discriminator D will make a mistake. Experiments show that the proposed GAN architecture completely copes with the task of synthesizing of new medical data.</p>
   </trans-abstract>
   <kwd-group xml:lang="ru">
    <kwd>генеративно–состязательная сеть</kwd>
    <kwd>сверточная нейронная сеть</kwd>
    <kwd>генератор</kwd>
    <kwd>предоубученная модель</kwd>
    <kwd>дискриминатор</kwd>
    <kwd>вероятность</kwd>
    <kwd>обучение</kwd>
   </kwd-group>
   <kwd-group xml:lang="en">
    <kwd>generative adversarial network</kwd>
    <kwd>convolutional neural network</kwd>
    <kwd>generator</kwd>
    <kwd>pre-trained model</kwd>
    <kwd>discriminator</kwd>
    <kwd>probability</kwd>
    <kwd>training</kwd>
   </kwd-group>
  </article-meta>
 </front>
 <body>
  <p>ВведениеВ настоящее время генеративные модели, основанные на нейронных сетях глубокого обучения, используются для решения различных задач: генерация рукописных цифр [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. Иллюстрация процесса тренировки GAN2.2.    Генератор. Для решения поставленной задачи было принято реализовать собственную глубокую архитектуру сети генератора (рисунок 3), базирующуюся на обучаемых сверточных и деконволюционных слоях с применением параллельной свертки и последующей конкатенации для усиления признаков. Стоит отметить, что глубокий сверточный генератор имеет 6 уровней повышения размерности и общее количество весов составило 17,074,528. Описание структуры уровня повышения (1 уровень, l = 6) приведено в таблице 1.  Рисунок 3.  Архитектура генератораТаблица 1. Описание слоев архитектуры генератора GName_layer    Kernel_size    Pool_size    Padding    filters    StridesConv2d    (3, 3)    None    same    512 (2**l*8)    NoneUp_Sampling2d    None    (2, 2)    None    None    NoneConv2d_1    (1, 1)    None    same    1024 (2**(l+1)*8)    NoneConv2dTranspose_1    (3, 3)    None    same    512 (2**l*8)    (2, 2)Conv2d_2    (1, 1)    None    same    1024 (2**(l+1)*8)    NoneConv2dTranspose_2    (1, 1)    None    same    512 (2**l*8)    (2, 2)2.3. Дискриминатор. В качестве дискриминатора было принято решение использовать модель transferlearning, обученные для нахождения вектора признаков (featurevector) изображений Imagenet. Рассмотренные модели приведены в таблице 2. Проведенный анализ показал, что модель Xception имеет наилучшее соотношение Accuracy / Parametrs, в связи с этим она будет использована для дальнейшего решения задачи. Общее количество весов модели представлено в таблице 3.Таблица 1. Таблица сравнения моделей transferlearnongModel    Size    Top-1 Accuracy    Top-5 Accuracy    ParametersResNet50    98 MB    0.749    0.921    25 636 712ResNet101    171 MB    0.764    0.928    44 707 176ResNet50V2    98 MB    0.760    0.930    25 613800InceptionV3    92 MB    0.779    0.937    23 851784MobileNet    16 MB    0.704    0.895    4 253864MobileNetV2    14 MB    0.713    0.901    3 538984NASNetMobile    23 MB    0.744    0.919    5 326716Xception    88 MB    0.790    0.945    22 910480Таблица 3. GAN Model Weights    Generator    Discriminator    GANTotal params    17 074528    20 867624    37 942152Trainable params    17 016608    2048    17 018 656Non-trainableparams    57920    20 865576    20 923 4962.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. </p>
 </body>
 <back>
  <ref-list>
   <ref id="B1">
    <label>1.</label>
    <citation-alternatives>
     <mixed-citation xml:lang="ru">Francois Chollet, Introducing Variational Autoencoders (in Prose and Code), [Электронный ресурс] - URL: https://blog.keras.io/building-autoencoders-in-keras.html, last accessed 2019/11/20.</mixed-citation>
     <mixed-citation xml:lang="en">Francois Chollet, Introducing Variational Autoencoders (in Prose and Code), [Elektron. resurs] - URL: https://blog.keras.io/building-autoencoders-in-keras.html, last accessed 2019/11/20.</mixed-citation>
    </citation-alternatives>
   </ref>
   <ref id="B2">
    <label>2.</label>
    <citation-alternatives>
     <mixed-citation xml:lang="ru">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.</mixed-citation>
     <mixed-citation xml:lang="en">Kateryna Koidan, Facial Surface and Texture Synthesis via GAN), [Elektron. resurs] - URL:https://neurohive.io/en/computer-vision/facial-surface-and-texture-synthesis-via-gan, last accessed2020/01/09.</mixed-citation>
    </citation-alternatives>
   </ref>
   <ref id="B3">
    <label>3.</label>
    <citation-alternatives>
     <mixed-citation xml:lang="ru">Dan Anastasyev, Как научить свою нейросеть генерировать стихи), [Электронный ресурс] - URL: https://habr.com/ru/post/334046, last accessed 2020/04/02.</mixed-citation>
     <mixed-citation xml:lang="en">Dan Anastasyev, Automatically Generating Verse with Neural Networks, [Elektron. resurs] - URL:  https://habr.com/ru/post/334046, last accessed 2020/04/02.</mixed-citation>
    </citation-alternatives>
   </ref>
   <ref id="B4">
    <label>4.</label>
    <citation-alternatives>
     <mixed-citation xml:lang="ru">Gerget, O. M. Bionic models for identification of biological systems // Journal of Physics: Conference Series, 2017. - Vol. 803. - Pp. 68 - 73.</mixed-citation>
     <mixed-citation xml:lang="en">Gerget, O. M. Bionic models for identification of biological systems // Journal of Physics: Conference Series, 2017. - Vol. 803. - Pp. 68 - 73.</mixed-citation>
    </citation-alternatives>
   </ref>
   <ref id="B5">
    <label>5.</label>
    <citation-alternatives>
     <mixed-citation xml:lang="ru">Bengio, Y. Better Mixing via Deep Representations / Y. Bengio, G. Mesnil, Y. Dauphin, S. Rifai //. arXiv:1207.4404 [cs], July 2012. arXiv: 1207.4404.</mixed-citation>
     <mixed-citation xml:lang="en">Bengio, Y. Better Mixing via Deep Representations / Y. Bengio, G. Mesnil, Y. Dauphin, S. Rifai //. arXiv:1207.4404 [cs], July 2012. arXiv: 1207.4404.</mixed-citation>
    </citation-alternatives>
   </ref>
   <ref id="B6">
    <label>6.</label>
    <citation-alternatives>
     <mixed-citation xml:lang="ru">Hinton, G. E. Reducing the dimensionality of data with neural networks / G. E. Hinton, R. R. Science, 313(5786), 2006 - Pp. 504-507.</mixed-citation>
     <mixed-citation xml:lang="en">Hinton, G. E. Reducing the dimensionality of data with neural networks / G. E. Hinton, R. R. Science, 313(5786), 2006 - Pp. 504-507.</mixed-citation>
    </citation-alternatives>
   </ref>
   <ref id="B7">
    <label>7.</label>
    <citation-alternatives>
     <mixed-citation xml:lang="ru">Salakhutdinov, R. Deep Boltzmann machines / R. Salakhutdinov, G. E. Hinton // In International Conference on Artificial Intelligence and Statistics, 2009 - Pp. 448-455.</mixed-citation>
     <mixed-citation xml:lang="en">Salakhutdinov, R. Deep Boltzmann machines / R. Salakhutdinov, G. E. Hinton // In International Conference on Artificial Intelligence and Statistics, 2009 - Pp. 448-455.</mixed-citation>
    </citation-alternatives>
   </ref>
   <ref id="B8">
    <label>8.</label>
    <citation-alternatives>
     <mixed-citation xml:lang="ru">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.</mixed-citation>
     <mixed-citation xml:lang="en">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 [Elektronnyj resurs] - URL:http://papers.nips.cc/paper/5423-generative-adversarial-nets.pdf.</mixed-citation>
    </citation-alternatives>
   </ref>
  </ref-list>
 </back>
</article>
