УДК 004.93'1; 004.032.26 А. Ю. Максимова
Институт прикладной математики и механики, г. Донецк 83048, г. Донецк, ул. Розы Люксембург, 74
ПРИМЕНЕНИЕ ГЕНЕРАТИВНО-СОСТЯЗАТЕЛЬНОЙ СЕТИ ДЛЯ РЕШЕНИЯ ЗАДАЧИ ИДЕНТИФИКАЦИОННОЙ ЭКСПЕРТИЗЫ
A. Yu. Maksimova
Institute of Applied Mathematics and Mechanics, Donetsk 83048, Donetsk, Rosa Luksemburg Street, 74
USING GENERATIVE ADVERSARIAL
NET FOR IDENTIFICATION EXAMINATION TASK
О.Ю. Максимова
Ыститут прикладной математики i мехашки, м. Донецьк 83048, м. Донецьк, вул. Рози Люксембург, 74
ЗАСТОСУВАННЯ ГЕНЕРАТИВНО-ЗМАГАЛЬНО1 МЕРЕЖ1 ДЛЯ ВИР1ШЕННЯ ЗАДАЧ1 1ДЕНТИФ1КАЦ1ЙНО1 ЕКСПЕРТИЗИ
Статья является первой теоретической частью работы по созданию классификационной модели в задаче идентификационной экспертизы на основе генеративно-состязательной сети (GAN). Выполнена формальная постановка задачи идентификационной экспертизы как задачи классификации с отрицательным классом. Проведен анализ модели GAN. Рассмотрена усовершенствованная техника полуконтролируемого обучения GAN для решения задачи классификации.
Ключевые слова: классификация, полуконтролируемое обучение, генеративно-состязательная сеть, нейронная сеть, идентификационная экспертиза.
This article is the first theoretical part of the work. The classification model based on the generative-adversarial net (GAN) is created for the identification examination task. The formalization of the identification examination task is performed in the form of a classification problem with a negative class. The overview of GAN is made. The improved techniques for semi-supervised learning GAN is described for classification tasks.
Key words: classification, semi-supervised learning, generative-adversarial net, neural network, identification examination.
Стаття e першою теоретичною частиною роботи по розробц класифкацшноТ моделi задачi щентифкацмноТ експертизи на основi генеративно-змагальноТ мережi (GAN). Виконана формальна постановка задачi щентифшацмноТ експертизи як задачi класифкацп з негативним класом. Виконано аналiз моделi GAN. Розглянуто вдосконалену техшку нашв-контрольо-ваного навчання GAN для виршення задачi класифкаци.
Ключовi слова: класиф1кац1я, полуконтрольоване навчання, генеративно-змагальна мережа, нейронна мережа, щентиф1кац1йна експертиза.
Введение
В 2014 году сотрудником компании Google Яном Гудфеллоу и его группой впервые был предложен алгоритм машинного обучения без учителя - генеративно-состязательная сеть (generative-adversarial network, GAN) [1], [2]. Руководитель лаборатории искусственного интеллекта компании Facebook Ян ЛеКун, назвал GAN самой интересной идеей из предложенных в сфере машинного обучения за последние 10 лет. Применение этого алгоритма позволяет генерировать, например, изображения, которые человеческим глазом воспринимаются как настоящие изображения. Наиболее распространенные объекты, с которыми работают GAN, являются изображения, аудиофайлы с речью и символы естественного языка. Генеративно-состязательные сети состоят из генератора, цель которого научиться создавать объекты реального мира, и дискриминатора, который используется для обучения генератора. Поступающие на вход объекты реального мира дискриминатор учится отличать от подделок, поступающих от генератора. В основе алгоритма обучения лежит антого-нистическая игра, для которой стремятся достичь минимаксного равновесия.
Предложенная идея генеративно-состязательного обучения получила развитие в работах, в которых предложенный алгоритм машинного обучения был усовершенствован для решения задачи мультиклассовой классификации. Дискриминатор в этом случае преобразуется в классификатор, а генератор играет роль вспомогательной сети для решения задачи классификации. По сравнению с существующими алгоритмами классификации, обучающимися с учителем, здесь используется полуконтролируемое обучение (semi-supervised learning), которое является ключевым во многих исследованиях по глубокому обучению нейронных сетей [3], [4]. Полуконтролируемое обучение заключается в одновременном использовании размеченных и не размеченных обучающих выборок.
В данной работе рассматривается модель GAN для решения задачи идентификационной экспертизы (ИЭ) [5], [6], которая формально представляется как задача классификации.
Связанные работы
Последние несколько лет публикации по GAN все чаще посвящены использованию меток классов. В работе [7] предложен условный вариант генеративно-состязательной сети (conditional-class model), где метка класса используется как на входе генератора, так и на выходе дискриминатора. Такая сеть используется для решения задачи тегирования изображений и генерации мультимодальных примеров.
Первая мультиклассовая стратегия вывода для GAN была разработана в [8], где количество выходов дискриминантного классификатора равно количеству классов, а обучение осуществляется как на немаркированных, так и на частично маркированных данных. Такая сеть получила название категориальной генеративно-состязательной сети (CatGAN).
Наибольший интерес для решения задачи ИЭ представляет предложенная в [3], [4] модель классификации, при которой количество выходов дискриминатора соответствует количеству реальных классов плюс дополнительный выход, отвечающий за поддельный класс, который порождает генератор. Такая стратегия хорошо работает для полуконтролируемого обучения с использованием функции ошибки GAN.
Постановка задачи ИЭ с отрицательным классом
В общем виде задача классификации ставится следующим образом. Пусть известно множество примеров, заданных набором признаков х = (д^,... ,хм), где М -размерность пространства признаков задачи. Для каждого примера известно, к какому из заранее заданного множества классов у Е {1, ...,К} он принадлежит ( К -количество классов). Необходимо построить алгоритм классификации, определяющий правильный класс для каждого вновь поступившего примера.
а) б)
Рисунок 1 - Визуализация результатов работы алгоритма классификации на модельном примере: а) линейный классификатор, б) нелинейный классификатор
Пусть решается задача бинарной классификации. Обучающее множество содержит примеры двух классов с метками «+» и «X». Визуализация результатов работы простого линейного классификатора представлена на рис.1 а). Когда на этапе использования классификационной модели на вход алгоритма поступает пример, не похожий ни на один из примеров известных классов (точка А на рис. 1), то такому примеру будет присвоена метка второго класса «+». Скорее всего, это не корректный ответ. Чтобы избежать не корректных ответов для простой модельной задачи, можно искусственно сгенерировать множество отрицательных примеров ( «-» на рис.1 б) и применить их на этапе обучения алгоритма. На рис.1 б) представлен результат работы алгоритма классификации с дополнительным отрицательным классом, к которому и будет отнесен пример А.
Таким образом, задачи классификации можно разделить на два типа:
- задачи классификации, которые чувствительны к отрицательным примерам;
- задачи классификации, для которых в режиме эксплуатации алгоритма отрицательные примеры не встречаются.
Приступая к решению задачи классификации, необходимо проанализировать с какими примерами мы будем работать на этапе эксплуатации алгоритма на предмет появления примеров, которые не относятся ни к одному из известных классов.
Задача ИЭ относится к типу чувствительных к отрицательным примерам задач классификации. Это связано с частыми случаями фальсификации объектов идентификации, когда при использовании более дешевых заменителей и добавок частично меняется состав продукта. При этом репрезентативную выборку фальсификатов (отрицательных примеров) не всегда удаётся получить.
Рассмотрим формальную постановку задачи ИЭ как задачу классификации. Пусть задан алфавит известных классов П и N-мерное пространство признаковых описаний X объектов, при этом каждому классу шёП соответствует некоторое подмножество описаний Хш Q X. Введём новый класс О, соответствующий множеству признаковых описаний Х0 = Х\ U^en-X^, и назовём его отрицательным классом. По условию задачи отрицательный класс не является пустым. Объединение всех элементов из X, отвечающих за классы из П, назовём положительным классом. Таким образом, отрицательный класс является теоретико-множественным дополнением положительного класса до универсального множества допустимых признаковых описаний.
Пусть дана обучающая выборка как подмножество признаковых описаний с ответами о принадлежности какому-либо классу. По обучающей выборке требуется построить алгоритм классификации a:^->i!U {О}, решающий задачу ИЭ. Особенностью здесь является отсутствие в обучающей выборке примеров для отрицательного класса О. Поэтому возникает задача искусственного порождения таких примеров, чтобы иметь возможность решать задачу идентификационной экспертизы известными методами машинного обучения, например, с помощью искусственных нейронных сетей.
Генеративно-состязательные сети
Далее рассмотрим работу GAN, следуя описанию из статьи Яна Гудфеллоу [1], в которой она была предложена впервые. Модель GAN (рис. 2) состоит из двух нейронных сетей: генератора и дискриминатора. Генератор G можно рассматривать как фальшивомонетчика, который пытается создавать фальшивые деньги, а дискриминатор D выступает в роли полицейского, который стремится распознать подделку. Обе нейронные сети хотят победить в этой игре и усовершенствуются до тех пор, пока созданные фальшивомонетчиком деньги не станут неотличимы от настоящих.
x~Vdata
Рисунок 2 - Структурная схема GAN
Состязательный подход для обучения генератора G и дискриминатора D непосредственно применим, когда обе нейронные сети являются многослойными персеп-тронами. Для обучения распределения рд над х определяют входную случайную шумовую переменную pz(z), а ее преобразование во множество данных представляется как G(z) Qg), где G - дифференцируемая функция, представленная многослойным персептроном с параметрами вд. Также определяется многослойный персептрон D^X'.Ofü), выходом которого является скаляр D(x) Е [ОД]. D(x) соответствует вероятности того, что х является элементом из распределения p¿ata. Дискриминатор D обучается максимизировать вероятность присвоения правильной метки как примерам x~pdata, так и примерам х~G(z). Одновременно генератор G обучается
минимизировать log (1 — £>(G(z))). Другими словами D и G играют в минимаксную игру с целевой функцией V(G , D):
minG maxD V(D, G) = Ex~Pdataix)[logD(x)\ + Ez„Pz(z)[log (1 - D(G(z)))] (1)
Генератор G неявно определяет вероятностное распределение рд как распределение примеров от G(z) кода z~pz. Для того чтобы генератор G генерировал примеры из распределения Pdata в [1] предложен алгоритм 1, который обеспечивает сходимость генератору при достаточной мощности нейронной сети и достаточном временном и вычислительном ресурсе.
Алгоритм 1 обучения генеративно-состязательной сети на основе стохастического градиентного спуска на минибатчах. Количество шагов обучения дискриминатора к является гиперпараметром алгоритма.
for количество итераций do for к шагов do
Выбираем минибатч: т шумовых примеров {z«.....z(m)} из p^(z)
Выбираем минибатч: т настоящих примеров .....*(»)} из Pdata (*)
Обновляем веса дискриминатора путем увеличения стохастического градиента:
Ve^E&Nf D(xW) + log(l - DCGCz©)))].
end for
Выбираем минибатч: т шумовых примеров {z«.....Z<m> } из Pg(z)
Обновляем веса генератора путем уменьшения стохастического градиента:
end for
Обновление весов нейронной сети может быть выполнено с использованием _любого основанного на градиентах обучающего правила._
Генератор G неявно определяет вероятностное распределение рд как распределение примеров G(z) при z~pz. Минимаксная игра имеет глобальный оптимум при Рд = Pdata. Применение алгоритма 1 для обучения генеративно-состязательной сети позволяет добиться сходимости Рд -» Pdata.
Стратегия полуконтролируемого обучения классификатора на основе GAN
В соответствии с постановкой задачи ИЭ базовая модель GAN, описанная в предыдущем разделе, не может быть применена для ее решения. В работе [4] предложен метод полуконтролируемого обучения классификатора для многоклассовой классификации с помощью состязательного обучения и с применением GAN. Рассмотрим данную модель подробно.
x~Vdata
Рисунок 3 - Структурная схема классификатора на базе GAN
Пусть перед нами стоит задача построить стандартный классификатор, который определяет принадлежность элементов х множества исходных данных одному из возможных классов К. На вход такой модели поступает х, а на выходе ^-мерный вектор логитов I = (llt..., 1К), который может быть преобразован в вероятности принадлежности классам функцией softmax:
Pmodel(y=m= ¿'xpL (2)
При обучении с учителем такая классификационная модель обучается минимизацией функции кросс-энтропии между наблюдаемыми метками классов и предсказанным распределением модели pm0dei(y\x) [9].
Идея с использованием GAN для решения задачи классификации с отрицательным классом предложена в [4] и связана с возможностью применить генератор G для генерации отрицательных примеров, которые отсутствуют в обучающей выборке. Стандартный дискриминатор определяет вероятность того, что поступивший на вход пример является примером из реального множества данных, независимо от того, к какому именно классу он принадлежит. Эта особенность модели позволила реализовать полуконтролируемое обучение и использовать неразмеченные данные для обучения модели одновременно с размеченными.
На рис. 3 представлена структурная схема модели классификации на основе GAN. В качестве дискриминатора выступает классификатор с (К + 1) выходом. При этом (К + 1)-й выход соответствует отрицательному классу и для примеров, которые не похожи ни на один из известных классов, его значение стремится к единице. При этом сумма остальных К выходов наоборот стремится к нулю. Обучать такую модель можно с использованием примеров от генератора G с метками отрицательного класса у = К + 1. Теперь можно использовать pm0dei(y = К + 1|х) как вероятность того, что х не настоящий, что соответствует 1 — D(х) для обычной GAN. Также теперь можно обучаться на неразмеченных данных, зная, что они относятся к одному из К реальных классов, выполняя минимизацию log pm0dei(y = {!» — >К}\х). Если в обучающем множестве половина настоящих данных, а другая половина сгенерированных (это соотношение может быть произвольным), функция ошибки будет следующая [4]:
1 = -Ex,y~pdata(x,y)\}0g Pm0del(y\x)] - ^x-G^gVmodelt = ОД!
L — L
supervised
+ L
unsupervised,
(3)
(4)
(5)
(6)
^supervised ~ ^,x,y~pciata(x,y)[1°§ Pmodel(y\x>y ^ К + 1)], Lunsupervised = ~{Ex,y~pdata(x) log[l - Pmodel(y = K + 1|*)] + P°g JWei(У = К + 1|*)]},
где выполнена декомпозиция общей кросс-энтропии на стандартную функцию ошибки для обучения с учителем Lsupervise(i (отрицательный логарифм вероятности метки
говорит о том, что X настоящий) и Lunsupervised, которая является стандартной для GAN игры, что можно увидеть, выполнив замену D(jx) = 1 — pmoaei(y = К + Л.\х) в выражении (1).
Для обучения дискриминатора теперь используется три разных источника данных:
настоящие данные с метками классов; используются обычные пары пример-метка как для любого обучения с учителем;
- настоящие данные без меток; классификатор знает, что реальные данные относятся к одному из известных классов;
- примеры, сгенерированные генератором; классификатор знает, что это примеры отрицательного класса.
В результате усовершенствованной техники обучения GAN дискриминатор обучается классифицировать примеры, а генератор на этапе эксплуатации алгоритма классификации не используется.
Выводы
Исследования в области GAN, которые представляют новый тип алгоритмов машинного обучения, являются актуальными и перспективными. Идея использования стандартного нейросетевого классификатора в роли дискриминатора дает возможность использовать генератор для порождения отрицательных примеров в задаче классификации.
В работе предложен новый подход к решению задачи ИЭ с использованием GAN. Так как при выполнении идентификации товаров встречаются фальшивые образцы, а примеров таких фальсификатов для создания репрезентативной обучающей выборки недостаточно, то возможность сгенерировать такие примеры искусственно с помощью GAN является перспективной в силу того, что GANs, как показала практика, обладают свойством формировать реалистичные объекты, например, фотоизображения, которые не отличаются от настоящих.
Данная работа является первой частью исследования и включает в себя теоретические основы решения поставленной задачи.
Список литературы
1. Goodfellow I. Generative adversarial nets / I. Goodfellow, J. Pouget-Abadie, M. Mirza, B. Xu, D. Warde-Farley and others // Advances in Neural Information Processing Systems 27. - Curran Associates, Inc., 2014. -pp. 2672-2680. - URL: http://papers.nips.cc/paper/5423-generative-adversarial-nets.pdf.
2. Goodfellow I. Nips 2016 tutorial: Generative adversarial networks / I. Goodfellow - 2017. - URL: https://arxiv.org/abs/1701.00160.
3. Kingma D. P. Semi-Supervised Learning with Deep Generative Models / D.P. Kigma, D.J. Rezende, S. Mohamed, M. Welling / Proceedings of the International Conference on Machine Learning. 2014.- P. 35813589. - URL: https://arxiv.org/abs/1406.5298.
4. Salimans T. Improved techniques for training GAN / T.Saliman, I. Goodfellow, W. Zaremba, V. Cheung, A. Radford, X. Chen. - Advances in Neural Information Processing Systems. - 2016. - P. 2234-2242. - URL: https://arxiv.org/abs/1606.03498.
5. Maksimova A. The Model of Data Presentation with Fuzzy Portr aits for Pattern Recognition / A. Maksimova // International Journal of Computing. - 2012. - Vol. 11, Issue 1. - P. 17-24.
6. Максимова А. Ю. Задача идентификационной экспертизы и метод нечеткого портрета для ее решения / А. Ю. Максимова // Материалы международной научно-технической конференции Искусственный интеллект. Интеллектуальные системы. ИИ-2013. : междунар. научн.-тех. конф., 23-27 сент. 2013 г.: материлы конф. - АР Крым, Кацивели, 2013. - С 107-108.
7. Mirza M. Conditional generative adversarial Nets / M. Mirza, S. Osindero // Computing Research Repository -2014. - URL: https://arxiv.org/abs/1411.1784.
8. Springenberg J.T. Unsupervised and Semi-supervised Learning with Categorical Generative Adversarial Networks. - 2016. - URL: https://arxiv.org/abs/1511.06390.
9. Goodfellow I. Deep learning / I. Goodfellow, Y. Bengio, A. Courville. - Mit Press, 2016. - 789 p. - URL: http://www.deeplearningbook.org.
10. Варламов О. О. Автоматизация умственной деятельности людей через логический искусственный интеллект как фундаментальный механизм развития или гибели человечества [Текст] / О. О. Варламов // Проблемы искусственного интеллекта. - Донецк : ГУ ИПИИ. - 2017. - № 3 (6). - С. 23-31.
References
1. Goodfellow I., Pouget-Abadie J., Mirza M., Xu B., Warde-Farley D. and others. Generative adversarial nets. Advances in Neural Information Processing Systems 27, Curran Associates, Inc., 2014, pp. 2672-2680, URL: http://papers.nips.cc/paper/5423-generative-adversarial-nets.pdf.
2. Goodfellow I. Nips 2016 tutorial: Generative adversarial networks. 2017. URL: https://arxiv.org/abs/1701.00160.
3. Kigma D.P., Rezende D.J., Mohamed S., Welling M.Semi-Supervised Learning with Deep Generative Models. Proceedings of the International Conference on Machine Learning. 2014, pp. 3581-3589, URL: https://arxiv.org/abs/1406.5298.
4. Saliman T., Goodfellow I., Zaremba W., Cheung V. , Radford A., Chen X. Improved techniques for training GAN. Advances in Neural Information Processing Systems, 2016, pp. 2234-2242. URL: https:// arxiv. org/abs/1606.03498.
5. Maksimova A. The Model of Data Presentation with Fuzzy Portr aits for Pattern Recognition International Journal of Computing, 2012, Vol. 11, Issue 1, pp. 17-24.
6. Maksimova A. Yu. Zadacha identifikazionnoi ekspertizy i metod nechetkogo portreta dla ee reshenija [The identification examination problem and fuzzy portret method for its decision] Materialy mezhdunarodnoi nauchnoi konferencii Iskusstvennij intellect. Intellektualnie sistemy [Proceedings of the international scientific and technical conference Artificial intelligence. Intelligent system]. AI-2013.:international sci.-tech. conf., 23-27 Sept. 2013 : proceedings, Krym, Kazively, 2013, pp. 107-108.
7. Mirza M., Osindero S. Conditional generative adversarial Nets. Computing Research Repository, 2014, URL: https://arxiv.org/abs/1411.1784.
8. Springenberg J.T. Unsupervised and Semi-supervised Learning with Categorical Generative Adversarial Networks, 2016, URL: https://arxiv.org/abs/1511.06390.
9. Goodfellow I. Bengio Y. , Courville A. Deep learning Mit Press, 2016, 789 p, URL: http://www.deeplearningbook.org.
10. Varlamov O. O. Avtomatizatsiya umstvennoy deyatel'nosti lyudey cherez logicheskiy iskusstvennyy intellekt kak fundamental'nyy mekhanizm razvitiya ili gibeli chelovechestva [Automation of mental activity of people through logical artificial intelligence as a fundamental mechanism for the development or death of mankind]. Problemy iskusstvennogo intellekta [Problems of artificial intelligence], 2017, no. 3 (6), pp. 23-31.
RESUME
A. Yu. Maksimova
Using Generative Adversarial net for Identification Examination Task
Background: The formalisation of the identification examination task is performed in the form of special classification problem with property be sensitive for negative examples. For the identification examination task there are a lots of false examples during the classification algorithm operation. The number of such examples is not enough to create a representative training sample. Therefore, there is a problem of artificial generation of such examples for the identification examination problem using known machine learning algorithms, for example artificial neural networks.
Materials and methods: Generative-adversarial net (GAN) is the novel machine learning algorithm is proposed in 2014 for generative models. We use the improved technique for learning GAN for the classification problem with negative examples. We do
the semi-supervised training of the classification algorithm. The semi-supervised learning means using labeled and unlabeled labels simultaneously.
Results: The improved technique for semi-supervised learning for GAN is used for described classification task with negative examples. The discriminator is transformed into a classifier with the number of outputs equal to the number of classes plus one. Last output is correspond to fake class, that means the fake samples for identification examination task. The generator produces the fake examples.
Conclusion: This article is the first theoretical part of work by solving the identification examination problem using GAN. The ability to generate negative training examples artificially using GAN is promising because GANs has been shown in practice to have the ability to form realistic objects, such as photographic images, which do not differ from the real ones.
РЕЗЮМЕ
А. Ю. Максимова
Применение генеративно-состязательной сети для решения задачи идентификационной экспертизы
Предпосылки: Задача идентификационной экспертизы формализуется как задача классификации, чувствительная к отрицательным примерам. При выполнении идентификации товаров встречаются фальшивые образцы на этапе эксплуатации алгоритма. Примеров таких фальсификатов для создания репрезентативной обучающей выборки недостаточно. Поэтому возникает задача искусственного порождения таких примеров, чтобы иметь возможность решать задачу идентификационной экспертизы известными методами машинного обучения, например, с помощью искусственных нейронных сетей.
Материалы и методы: Генеративно-состязательная сеть является новым алгоритмом машинного обучения, предложенным в 2014 году для генеративных моделей. Для решения задачи классификации с отрицательными примерами используется усовершенствованная техника обучения GAN. Выполняется полуконтролируемое обучение алгоритма классификации. Полуконтролируемое обучение заключается в одновременном использовании как размеченных так и не размеченных данных.
Результаты: Улучшенный метод частичного обучения для GAN используется для описанных задач классификации с отрицательным примером. Дискриминатор преобразуется в классификатор с числом входов, равным числу классов плюс один. Последний выход соответствует поддельному классу, то есть фальшивым образцам в задаче идентификационной экспертизы. Генератор выдает поддельные примеры.
Вывод: Данная статья является первой теоретической работой в решении задачи идентификационной экспертизы с использованием GAN. Способность искусственно генерировать отрицательные обучающие примеры с использованием GAN перспективна, потому что GANs, как показала практика, обладает способностью формировать реалистичные объекты, такие как фотографические изображения, которые не отличаются от реальных.
Статья поступила в редакцию 19.10.2018.