В машинном обучении , в вариационном автоассоциаторе , [1] , также известными как VAE , является искусственной нейронной сеть архитектуры введена Дидерик P Кингмы и Макс Веллинг , принадлежащая к семьям вероятностных графических моделей и вариационных методов байесовских .
Он часто ассоциируется с моделью автоэнкодера [2] [3] из-за его архитектурного сходства, но есть существенные различия как в цели, так и в математической формулировке. Вариационные автоэнкодеры предназначены для сжатия входной информации в многомерное скрытое распределение с ограничениями ( кодирование ), чтобы восстановить ее как можно точнее ( декодирование ). Хотя этот тип модели был первоначально разработан для неконтролируемого обучения , [4] [5] его эффективности была доказана в других областях машинного обучения , такие как полуобучаемое обучение [6] [7] или контролируемое обучение .[8]
Архитектура
Вариационные автоэнкодеры - это вариационные байесовские методы с многомерным распределением в качестве априорного и апостериорного аппроксимации искусственной нейронной сетью, образующие так называемую структуру вариационного кодера-декодера. [9] [10] [11]
Ванильный кодировщик - это искусственная нейронная сеть, способная уменьшить свою входную информацию до представления узкого места, называемого скрытым пространством. Он представляет собой первую половину архитектуры как автокодировщика, так и вариационного автокодировщика: для первого выходом является фиксированный вектор искусственных нейронов; для последнего исходящая информация сжимается в вероятностное скрытое пространство, все еще состоящее из искусственных нейронов. Однако в вариационной архитектуре автоэнкодера они представляют и обрабатываются как два различных вектора с одинаковыми размерами, представляющие вектор средних и вектор стандартных отклонений соответственно.
Ванильный декодер по-прежнему представляет собой искусственную нейронную сеть, созданную как зеркальную архитектуру кодировщика. Он принимает в качестве входных данных сжатую информацию, поступающую из скрытого пространства, а затем расширяет ее для получения выходных данных, максимально приближенных к входным данным кодировщика. В то время как для автокодера вход декодера тривиально представляет собой вектор действительных значений фиксированной длины, для вариационного автокодировщика необходимо ввести промежуточный шаг: учитывая вероятностный характер скрытого пространства, его можно рассматривать как многомерный гауссовский вектор. С этим допущением и с помощью техники, известной как трюк репараметризации, можно брать выборки из этого скрытого пространства и обрабатывать их точно как вектор реальных значений фиксированной длины.
С системной точки зрения, как ванильный автокодировщик, так и вариационный автокодировщик получают в качестве входных данных набор многомерных данных. Затем они адаптивно сжимают его в скрытое пространство (кодирование) и, наконец, пытаются восстановить его как можно точнее (декодирование). Учитывая природу своего скрытого пространства, вариационный автокодировщик характеризуется несколько иной целевой функцией: он должен минимизировать функцию потерь при реконструкции, как обычный автокодер. Однако он также принимает во внимание расхождение Кульбака – Лейблера между скрытым пространством и вектором нормальных гауссианов.
Формулировка
С формальной точки зрения, учитывая входной набор данных характеризуется неизвестной функцией вероятности и многовариантный вектор скрытого кодирования , цель состоит в том, чтобы смоделировать данные как распределение , с участием определяется как набор сетевых параметров.
Это распределение можно формализовать как
где является свидетельством данных модели с маргинализацией, выполненной по ненаблюдаемым переменным и, таким образом, представляет собой совместное распределение между входными данными и их скрытым представлением в соответствии с параметрами сети.
Согласно теореме Байеса уравнение можно переписать в виде
В ванильном вариационном автоэнкодере мы предполагаем с конечной размерностью и что - гауссово распределение, то представляет собой смесь гауссовых распределений.
Теперь можно определить набор отношений между входными данными и их скрытым представлением как
- Прежний
- Вероятность
- Задний
К сожалению, вычисление очень дорого и в большинстве случаев даже трудноразрешимо. Чтобы ускорить расчет и сделать его выполнимым, необходимо ввести дополнительную функцию для аппроксимации апостериорного распределения как
с участием определяется как набор реальных значений, которые параметризуют .
Таким образом, общая проблема может быть легко переведена в область автокодировщика, в которой условное распределение правдоподобия переносится вероятностным кодировщиком , в то время как приближенное апостериорное распределениевычисляется вероятностным декодером .
Функция потерь ELBO
Как и в любой проблеме глубокого обучения , необходимо определить дифференцируемую функцию потерь, чтобы обновлять веса сети посредством обратного распространения .
Для вариационных автокодировщиков идея состоит в том, чтобы совместно минимизировать параметры генеративной модели. для уменьшения ошибки восстановления между входом и выходом сети, и иметь как можно ближе к .
В качестве потерь реконструкции среднеквадратичная ошибка и перекрестная энтропия представляют собой хорошие альтернативы.
В качестве потери расстояния между двумя распределениями обратная дивергенция Кульбака – Лейблера хороший выбор, чтобы сжать под . [1] [12]
Только что определенная потеря расстояния раскрывается как
На этом этапе можно переписать уравнение в виде
Цель состоит в том, чтобы максимизировать логарифмическую правдоподобие LHS уравнения, чтобы улучшить качество сгенерированных данных и минимизировать расстояния распределения между реальным апостериорным и оценочным.
Это эквивалентно минимизации отрицательной логарифмической вероятности, которая является обычной практикой в задачах оптимизации.
Полученная таким образом функция потерь, также называемая функцией потерь свидетельства нижней границы, сокращенно ELBO , может быть записана как
Учитывая неотрицательное свойство расходимости Кульбака – Лейблера, правильно утверждать, что
Оптимальные параметры - это те, которые минимизируют эту функцию потерь. Проблему можно резюмировать как
Основное преимущество такой постановки заключается в возможности совместной оптимизации по параметрам. а также .
Прежде чем применять функцию потерь ELBO к задаче оптимизации для обратного распространения градиента, необходимо сделать ее дифференцируемой, применив так называемый трюк повторной параметризации, чтобы удалить стохастическую выборку из формации и, таким образом, сделать ее дифференцируемой.
Трюк с репараметризацией
Чтобы сделать формулировку ELBO подходящей для целей обучения, необходимо внести дополнительные незначительные изменения в формулировку задачи, а также в структуру вариационного автокодировщика. [1] [13] [14]
Стохастическая выборка - это недифференцируемая операция, с помощью которой можно производить выборку из скрытого пространства и передавать ее в вероятностный декодер.
Чтобы сделать возможным применение процессов обратного распространения ошибки, таких как стохастический градиентный спуск , вводится трюк с повторной параметризацией.
Основное предположение о скрытом пространстве состоит в том, что его можно рассматривать как набор многомерных гауссовских распределений и, таким образом, можно описать как
Дано а также определенный как поэлементный продукт, трюк с повторной параметризацией изменяет приведенное выше уравнение как
.
Благодаря этому преобразованию, которое может быть распространено также на другие распределения, отличные от гауссовского, вариационный автокодер можно обучить, и вероятностный кодировщик должен научиться отображать сжатое представление входных данных в два скрытых вектора. а также , в то время как стохастичность остается исключенной из процесса обновления и вводится в скрытое пространство в качестве внешнего входа через случайный вектор .
Вариации
Существует множество приложений и расширений вариативных автоэнкодеров, которые позволяют адаптировать архитектуру к различным областям и улучшить ее производительность.
-VAE - это реализация со взвешенным термином расхождения Кульбака – Лейблера для автоматического обнаружения и интерпретации факторизованных скрытых представлений. С помощью этой реализации можно принудительно распутать коллектор длязначения больше единицы. Авторы демонстрируют способность этой архитектуры генерировать высококачественные синтетические образцы. [15] [16]
Другая реализация, называемая условным вариационным автокодировщиком, сокращенно CVAE, предназначена для вставки информации метки в скрытое пространство, чтобы обеспечить детерминированное ограниченное представление изученных данных. [17]
Некоторые структуры напрямую влияют на качество сгенерированных выборок [18] [19] или реализуют более одного скрытого пространства для дальнейшего улучшения обучения представлению. [20] [21]
Некоторые архитектуры смешивают структуры вариационных автокодировщиков и генеративных состязательных сетей для получения гибридных моделей с высокими генеративными возможностями. [22] [23] [24]
Смотрите также
- Автоэнкодер
- Искусственная нейронная сеть
- Глубокое обучение
- Генеративная состязательная сеть
- Репрезентативное обучение
- Скудное изучение словаря
- Увеличение данных
- Обратное распространение
Рекомендации
- ^ a b c Kingma, Diederik P .; Веллинг, Макс (2014-05-01). «Вариационный байесовский алгоритм автокодирования». arXiv : 1312.6114 [ stat.ML ].
- ^ Крамер, Марк А. (1991). «Нелинейный анализ главных компонент с использованием автоассоциативных нейронных сетей» . Журнал Айше . 37 (2): 233–243. DOI : 10.1002 / aic.690370209 .
- ^ Хинтон, GE; Салахутдинов, Р.Р. (28.07.2006). «Снижение размерности данных с помощью нейронных сетей» . Наука . 313 (5786): 504–507. Bibcode : 2006Sci ... 313..504H . DOI : 10.1126 / science.1127647 . PMID 16873662 . S2CID 1658773 .
- ^ Дилоктанакул, Нат; Медиано, Педро А.М.; Гарнело, Марта; Ли, Мэтью СН; Салимбени, Хью; Арулкумаран, Кай; Шанахан, Мюррей (13 января 2017). "Глубокая неконтролируемая кластеризация с помощью вариационных автоэнкодеров гауссовской смеси". arXiv : 1611.02648 [ cs.LG ].
- ^ Сюй, Вэй-Нин; Чжан, Ю; Гласс, Джеймс (декабрь 2017 г.). «Неконтролируемая адаптация домена для надежного распознавания речи с помощью вариационного дополнения данных на основе автокодера» . 2017 Семинар IEEE по автоматическому распознаванию и пониманию речи (ASRU) . С. 16–23. arXiv : 1707.06265 . DOI : 10,1109 / ASRU.2017.8268911 . ISBN 978-1-5090-4788-8. S2CID 22681625 .
- ^ Ehsan Abbasnejad, M .; Дик, Энтони; ван ден Хенгель, Антон (2017). Бесконечный вариационный автоэнкодер для обучения без учителя . С. 5888–5897.
- ^ Сюй, Вейди; Солнце, Хаозе; Дэн, Чао; Тан, Ин (2017-02-12). "Вариационный автоэнкодер для полуавтоматической классификации текста" . Труды конференции AAAI по искусственному интеллекту . 31 (1).
- ^ Камеока, Хирокадзу; Ли, Ли; Иноуэ, Шота; Макино, Сёдзи (01.09.2019). «Контролируемое разделение детерминированных источников с многоканальным вариационным автоэнкодером» . Нейронные вычисления . 31 (9): 1891–1914. DOI : 10.1162 / neco_a_01217 . PMID 31335290 . S2CID 198168155 .
- Перейти ↑ An, J., & Cho, S. (2015). Обнаружение аномалий на основе вариационного автокодера с использованием вероятности восстановления. Специальная лекция по IE , 2 (1).
- ^ Khobahi, S .; Солтаналиан, М. (2019). "Глубокие архитектуры с учетом модели для однобитового компрессионного вариационного автокодирования". arXiv : 1911.12410 [ eess.SP ].
- ^ Kingma, Diederik P .; Веллинг, Макс (2019). «Введение в вариационные автоэнкодеры». Основы и тенденции в машинном обучении . 12 (4): 307–392. arXiv : 1906.02691 . DOI : 10.1561 / 2200000056 . ISSN 1935-8237 . S2CID 174802445 .
- ^ «От автоэнкодера к бета-VAE» . Lil'Log . 2018-08-12.
- ^ Бенджио, Йошуа; Курвиль, Аарон; Винсент, Паскаль (2013). «Репрезентативное обучение: обзор и новые перспективы» . IEEE Transactions по анализу шаблонов и машинному анализу . 35 (8): 1798–1828. arXiv : 1206,5538 . DOI : 10.1109 / TPAMI.2013.50 . ISSN 1939-3539 . PMID 23787338 . S2CID 393948 .
- ^ Kingma, Diederik P .; Резенде, Данило Дж .; Мохамед, Шакир; Веллинг, Макс (31.10.2014). «Полу-контролируемое обучение с глубокими генеративными моделями». arXiv : 1406.5298 [ cs.LG ].
- ^ Хиггинс, Ирина; Матти, Лоик; Пал, Арка; Берджесс, Кристофер; Глорот, Ксавьер; Ботвиник, Мэтью; Мохамед, Шакир; Лерхнер, Александр (04.11.2016). «Бета-VAE: Изучение основных визуальных концепций с ограниченным вариационным фреймворком» . Цитировать журнал требует
|journal=
( помощь ) - ^ Берджесс, Кристофер П .; Хиггинс, Ирина; Пал, Арка; Матти, Лоик; Уоттерс, Ник; Дежарден, Гийом; Лерхнер, Александр (2018-04-10). «Понимание распутывания в β-VAE». arXiv : 1804.03599 [ stat.ML ].
- ^ Сон, Кихёк; Ли, Хонглак; Ян, Синьчэнь (01.01.2015). «Обучение структурированному представлению выходных данных с использованием генеративных моделей с глубокими условиями» . Цитировать журнал требует
|journal=
( помощь ) - ^ Дай, Бин; Випф, Дэвид (30.10.2019). «Диагностика и улучшение моделей VAE». arXiv : 1903.05789 [ cs.LG ].
- ^ Дорта, Гаро; Висенте, Сара; Агапито, Лурдес; Кэмпбелл, Нил Д.Ф.; Симпсон, Айвор (31.07.2018). «Обучение VAE при структурированных остатках». arXiv : 1804.01050 [ stat.ML ].
- ^ Томчак, Якуб; Веллинг, Макс (31.03.2018). "ВАЭ с VampPrior" . Международная конференция по искусственному интеллекту и статистике . PMLR: 1214–1223. arXiv : 1705.07120 .
- ^ Разави, Али; Оорд, Аарон ван ден; Виньялс, Ориол (2019-06-02). «Создание разнообразных высококачественных изображений с помощью VQ-VAE-2». arXiv : 1906.00446 [ cs.LG ].
- ^ Ларсен, Андерс Боэсен Линдбо; Сёндерби, Сорен Кааэ; Ларошель, Хьюго; Винтер, Оле (11.06.2016). «Автокодирование за пределами пикселей с использованием изученной метрики сходства» . Международная конференция по машинному обучению . PMLR: 1558–1566. arXiv : 1512.09300 .
- ^ Бао, Цзяньминь; Чен, Донг; Вен, Фанг; Ли, Хоуцян; Хуа, Банда (2017). «CVAE-GAN: Генерация детализированных изображений посредством асимметричного обучения». С. 2745–2754. arXiv : 1703.10155 [ cs.CV ].
- ^ Гао, Руи; Хоу, Синсонг; Цинь, Цзе; Чен, Цзясинь; Лю, Ли; Чжу, Фань; Чжан, Чжао; Шао, Лин (2020). «Zero-VAE-GAN: создание невидимых функций для обобщенного и трансдуктивного обучения с нулевым выстрелом» . IEEE Transactions по обработке изображений . 29 : 3665–3680. Bibcode : 2020ITIP ... 29.3665G . DOI : 10.1109 / TIP.2020.2964429 . ISSN 1941-0042 . PMID 31940538 . S2CID 210334032 .