stringtranslate.com

Генеративная модель на основе потока

Генеративная модель на основе потока — это генеративная модель , используемая в машинном обучении , которая явно моделирует распределение вероятностей , используя нормализующий поток [1] ​​[2] [3], который представляет собой статистический метод, использующий закон изменения переменной вероятностей для преобразования простого распределения в сложное.

Прямое моделирование правдоподобия дает много преимуществ. Например, отрицательная логарифмическая функция правдоподобия может быть напрямую вычислена и минимизирована как функция потерь . Кроме того, новые выборки могут быть получены путем выборки из начального распределения и применения преобразования потока.

Напротив, многие альтернативные методы генеративного моделирования, такие как вариационный автоэнкодер (VAE) и генеративно-состязательная сеть, явно не представляют функцию правдоподобия.

Метод

Схема нормализации потоков

Пусть будет (возможно, многомерной) случайной величиной с распределением .

Для пусть будет последовательностью случайных величин, преобразованных из . Функции должны быть обратимыми, т.е. обратная функция существует. Окончательный вывод моделирует целевое распределение.

Логарифм правдоподобия равен (см. вывод):

Для эффективного вычисления логарифмического правдоподобия функции должны быть 1. простыми для инвертирования и 2. простыми для вычисления определителя ее якобиана. На практике функции моделируются с использованием глубоких нейронных сетей и обучаются для минимизации отрицательного логарифмического правдоподобия выборок данных из целевого распределения. Эти архитектуры обычно проектируются таким образом, что требуется только прямой проход нейронной сети как в обратном вычислении, так и в вычислении определителя якобиана. Примерами таких архитектур являются NICE, [4] RealNVP, [5] и Glow. [6]

Вывод логарифмического правдоподобия

Рассмотрим и . Обратите внимание, что .

По формуле замены переменной распределение имеет вид:

Где — определитель матрицы Якоби . ​

По теореме об обратной функции :

По тождеству (где — обратимая матрица ) имеем:

Логарифм правдоподобия, таким образом, равен:

В общем случае вышесказанное применимо к любому и . Поскольку равно вычтенному нерекурсивному члену, мы можем вывести по индукции , что:

Метод обучения

Как это обычно делается при обучении модели глубокого обучения, цель нормализации потоков состоит в том, чтобы минимизировать расхождение Кульбака–Лейблера между правдоподобием модели и целевым распределением, которое должно быть оценено. Обозначая правдоподобие модели и целевое распределение для обучения, (прямое) KL-расхождение равно:

Второй член в правой части уравнения соответствует энтропии целевого распределения и не зависит от параметра, который мы хотим, чтобы модель изучила, что оставляет только ожидание отрицательного логарифмического правдоподобия для минимизации при целевом распределении. Этот трудноразрешимый член может быть аппроксимирован методом Монте-Карло с помощью выборки по важности . Действительно, если у нас есть набор данных образцов, каждый из которых независимо взят из целевого распределения , то этот член можно оценить как:

Поэтому цель обучения

заменяется на

Другими словами, минимизация расхождения Кульбака–Лейблера между правдоподобием модели и целевым распределением эквивалентна максимизации правдоподобия модели при наблюдаемых выборках целевого распределения. [7]

Псевдокод для обучения нормализующих потоков выглядит следующим образом: [8]

Варианты

Плоский поток

Самый ранний пример. [9] Зафиксируем некоторую функцию активации и пусть с соответствующими размерностями, тогда Обратное уравнение не имеет замкнутого решения в общем случае.

Якобиан — это .

Чтобы он был обратимым везде, он должен быть ненулевым везде. Например, и удовлетворяет требованию.

Нелинейная независимая оценка компонентов (NICE)

Пусть будет четномерным, и разделим их посередине. [4] Тогда нормализующие функции потока будут такими, где — любая нейронная сеть с весами .

равен всего лишь , а якобиан равен всего лишь 1, то есть поток сохраняет объем.

Когда , это рассматривается как криволинейный сдвиг вдоль направления.

Реальный не сохраняющий объем (реальный NVP)

Реальная модель без сохранения объема обобщает модель NICE следующим образом: [5]

Его обратный — , а его якобиан — . Модель NICE восстанавливается путем установки . Поскольку карта Real NVP разделяет первую и вторую половины вектора , обычно требуется добавлять перестановку после каждого слоя Real NVP.

Генеративный поток (Свечение)

В модели генеративного потока [6] каждый слой состоит из 3 частей:

Идея использования обратимой свертки 1x1 заключается в перестановке всех слоев в целом, а не просто в перестановке первой и второй половины, как в Real NVP.

Маскированный авторегрессионный поток (MAF)

Авторегрессионная модель распределения определяется как следующий стохастический процесс: [10]

где и — фиксированные функции, определяющие модель авторегрессии.

С помощью приема репараметризации авторегрессионная модель обобщается до нормализующего потока: Авторегрессионная модель восстанавливается путем установки .

Прямое отображение выполняется медленно (потому что оно последовательное), а обратное отображение выполняется быстро (потому что оно параллельное).

Матрица Якоби имеет нижнюю диагональ, поэтому якобиан равен .

Обратное преобразование двух отображений и MAF приводит к обратному авторегрессионному потоку (IAF), который имеет быстрое прямое отображение и медленное обратное отображение. [11]

Непрерывный нормализующий поток (CNF)

Вместо построения потока с помощью композиции функций, другой подход заключается в формулировании потока как непрерывной динамики времени. [12] [13] Пусть будет скрытой переменной с распределением . Сопоставьте эту скрытую переменную с пространством данных с помощью следующей функции потока:

где — произвольная функция, которую можно смоделировать, например, с помощью нейронных сетей.

Обратная функция тогда, естественно, имеет вид: [12]

А логарифм правдоподобия можно найти как: [12]

Поскольку след зависит только от диагонали якобиана , это допускает якобиан «свободной формы». [14] Здесь «свободная форма» означает, что нет ограничений на форму якобиана. Это контрастирует с предыдущими дискретными моделями нормализации потока, где якобиан тщательно проектировался так, чтобы быть только верхне- или нижнедиагональным, так что якобиан можно было эффективно оценить.

След можно оценить с помощью «трюка Хатчинсона»: [15] [16]

Учитывая любую матрицу и любые случайные числа с , мы имеем . (Доказательство: непосредственно разложить математическое ожидание.)

Обычно случайный вектор выбирается из (нормального распределения) или ( распределения Радамахера ).

При реализации в виде нейронной сети понадобятся методы нейронного ОДУ [17] . Действительно, CNF был впервые предложен в той же статье, в которой был предложен нейронный ОДУ.

У КНФ есть два основных недостатка: один из них заключается в том, что непрерывный поток должен быть гомеоморфизмом , то есть сохранять ориентацию и изотопию окружающей среды (например, невозможно перевернуть левую сторону на правую путем непрерывной деформации пространства, невозможно вывернуть сферу наизнанку или развязать узел), а другой заключается в том, что обученный поток может вести себя некорректно из-за вырожденности (то есть существует бесконечное число возможных решений одной и той же задачи).

Добавляя дополнительные измерения, КНФ получает достаточно свободы, чтобы изменить ориентацию и выйти за рамки окружающей изотопии (точно так же, как можно взять многоугольник со стола и перевернуть его в 3-мерном пространстве или развязать узел в 4-мерном пространстве), что приводит к «расширенному нейронному ОДУ». [18]

Любой гомеоморфизм может быть аппроксимирован нейронным ОДУ, действующим на , что доказано путем объединения теоремы вложения Уитни для многообразий и универсальной теоремы аппроксимации для нейронных сетей. [19]

Чтобы регуляризировать поток , можно ввести потери регуляризации. В статье [15] предложены следующие потери регуляризации, основанные на оптимальной теории переноса : где — гиперпараметры. Первый член наказывает модель за осцилляции поля потока во времени, а второй член наказывает ее за осцилляции поля потока в пространстве. Оба члена вместе направляют модель в поток, который является гладким (не «неровным») в пространстве и времени.

Недостатки

Несмотря на успех нормализации потоков в оценке многомерных плотностей, в их конструкциях все еще существуют некоторые недостатки. Прежде всего, их скрытое пространство, куда проецируются входные данные, не является пространством с меньшей размерностью, и поэтому модели на основе потоков не позволяют сжимать данные по умолчанию и требуют большого объема вычислений. Однако с их помощью все еще возможно выполнять сжатие изображений. [20]

Модели на основе потоков также печально известны своей неспособностью оценить вероятность выборок вне распределения (т. е. выборок, которые не были взяты из того же распределения, что и обучающий набор). [21] Для объяснения этого явления были сформулированы некоторые гипотезы, среди которых гипотеза о типичном наборе, [22] проблемы оценки при обучении моделей, [23] или фундаментальные проблемы из-за энтропии распределений данных. [24]

Одним из самых интересных свойств нормализации потоков является обратимость их изученного биективного отображения. Это свойство задается ограничениями в конструкции моделей (ср.: RealNVP, Glow), которые гарантируют теоретическую обратимость. Целостность обратного важна для обеспечения применимости теоремы о замене переменной , вычисления якобиана отображения , а также выборки с моделью. Однако на практике эта обратимость нарушается, и обратное отображение взрывается из-за численной неточности. [25]

Приложения

Генеративные модели на основе потоков применяются для решения различных задач моделирования, включая:

Ссылки

  1. ^ Табак, Эстебан Г.; Ванден-Эйнден, Эрик (2010). «Оценка плотности методом двойного восхождения логарифмического правдоподобия». Сообщения по математическим наукам . 8 (1): 217–233. doi :10.4310/CMS.2010.v8.n1.a11.
  2. ^ Табак, Эстебан Г.; Тернер, Кристина В. (2012). «Семейство непараметрических алгоритмов оценки плотности». Сообщения по чистой и прикладной математике . 66 (2): 145–164. doi :10.1002/cpa.21423. hdl : 11336/8930 . S2CID  17820269.
  3. ^ Папамакариос, Джордж; Налисник, Эрик; Хименес Резенде, Данило; Мохамед, Шакир; Бакшминараянан, Баладжи (2021). «Нормализация потоков для вероятностного моделирования и вывода». Журнал исследований машинного обучения . 22 (1): 2617–2680. arXiv : 1912.02762 .
  4. ^ ab Динь, Лоран; Крюгер, Дэвид; Бенджио, Йошуа (2014). "NICE: Нелинейная независимая оценка компонентов". arXiv : 1410.8516 [cs.LG].
  5. ^ Аб Динь, Лоран; Золь-Дикштейн, Яша; Бенджио, Сами (2016). «Оценка плотности с использованием реального NVP». arXiv : 1605.08803 [cs.LG].
  6. ^ abc Kingma, Diederik P.; Dhariwal, Prafulla (2018). «Glow: Генеративный поток с обратимыми свертками 1x1». arXiv : 1807.03039 [stat.ML].
  7. ^ Папамакариос, Джордж; Налисник, Эрик; Резенде, Данило Хименес; Шакир, Мохамед; Баладжи, Лакшминараянан (март 2021 г.). «Нормализация потоков для вероятностного моделирования и вывода». Журнал исследований машинного обучения . 22 (57): 1–64. arXiv : 1912.02762 .
  8. ^ Кобызев, Иван; Принс, Саймон Дж. Д.; Брубейкер, Маркус А. (ноябрь 2021 г.). «Нормализация потоков: введение и обзор современных методов». Труды IEEE по анализу шаблонов и машинному интеллекту . 43 (11): 3964–3979. arXiv : 1908.09257 . doi : 10.1109/TPAMI.2020.2992934. ISSN  1939-3539. PMID  32396070. S2CID  208910764.
  9. ^ Данило Хименес Резенде; Мохамед, Шакир (2015). «Вариационный вывод с нормализацией потоков». arXiv : 1505.05770 [stat.ML].
  10. ^ Папамакариос, Джордж; Павлаку, Тео; Мюррей, Иэн (2017). «Маскированный авторегрессионный поток для оценки плотности». Достижения в области нейронных систем обработки информации . 30. Curran Associates, Inc. arXiv : 1705.07057 .
  11. ^ Кингма, Дюрк П.; Салиманс, Тим; Юзефович, Рафал; Чэнь, Си; Суцкевер, Илья; Веллинг, Макс (2016). «Улучшенный вариационный вывод с обратным авторегрессионным потоком». Достижения в области нейронных систем обработки информации . 29. Curran Associates, Inc. arXiv : 1606.04934 .
  12. ^ abc Grathwohl, Will; Chen, Ricky TQ; Bettencourt, Jesse; Sutskever, Ilya; Duvenaud, David (2018). "FFJORD: Свободная непрерывная динамика для масштабируемых обратимых генеративных моделей". arXiv : 1810.01367 [cs.LG].
  13. ^ Липман, Ярон; Чен, Рики TQ; Бен-Хаму, Хели; Никель, Максимилиан; Ле, Мэтт (2022-10-01). «Соответствие потоков для генеративного моделирования». arXiv : 2210.02747 [cs.LG].
  14. ^ Гратволь, Уилл; Чен, Рики Т.К.; Беттанкур, Джесси; Суцкевер, Илья; Дювено, Дэвид (2018-10-22). "FFJORD: Свободная непрерывная динамика для масштабируемых обратимых генеративных моделей". arXiv : 1810.01367 [cs.LG].
  15. ^ ab Финлей, Крис; Якобсен, Йорн-Хенрик; Нурбекян, Левон; Оберман, Адам (2020-11-21). «Как обучить нейронный ОДУ: мир якобианской и кинетической регуляризации». Международная конференция по машинному обучению . PMLR: 3154–3164. arXiv : 2002.02798 .
  16. ^ Хатчинсон, МФ (январь 1989). «Стохастическая оценка следа матрицы влияния для сглаживающих сплайнов Лапласа». Communications in Statistics - Simulation and Computation . 18 (3): 1059–1076. doi :10.1080/03610918908812806. ISSN  0361-0918.
  17. ^ Чен, Рики Т. К.; Рубанова, Юлия; Беттанкур, Джесси; Дювено, Дэвид К. (2018). "Нейронные обыкновенные дифференциальные уравнения" (PDF) . В Bengio, S.; Wallach, H.; Larochelle, H.; Grauman, K.; Cesa-Bianchi, N.; Garnett, R. (ред.). Достижения в области нейронных систем обработки информации . Том 31. Curran Associates, Inc. arXiv : 1806.07366 .
  18. ^ Дюпон, Эмильен; Дусе, Арно; Те, Йи Уай (2019). «Расширенные нейронные ОДУ». Достижения в области нейронных систем обработки информации . 32. Curran Associates, Inc.
  19. ^ Чжан, Хань; Гао, Си; Унтерман, Якоб; Ародз, Том (2019-07-30). «Возможности аппроксимации нейронных ОДУ и обратимых остаточных сетей». arXiv : 1907.12998 [cs.LG].
  20. ^ аб Хельмингер, Леонард; Джелоуа, Абдельазиз; Гросс, Маркус; Шроерс, Кристофер (2020). «Сжатие изображения с потерями с нормализацией потоков». arXiv : 2008.10486 [cs.CV].
  21. ^ Налисник, Эрик; Мацукава, Те; Чжао, Йи Уай; Сонг, Чжао (2018). «Знают ли глубокие генеративные модели то, чего они не знают?». arXiv : 1810.09136v3 [stat.ML].
  22. ^ Налисник, Эрик; Мацукава, Те; Чжао, Йи Уай; Сонг, Чжао (2019). «Обнаружение нераспределенных входов в глубокие генеративные модели с использованием типичности». arXiv : 1906.02994 [stat.ML].
  23. ^ Чжан, Лили; Голдштейн, Марк; Ранганат, Раджеш (2021). «Понимание сбоев в обнаружении вне распределения с помощью глубоких генеративных моделей». Труды исследований машинного обучения . 139 : 12427–12436. PMC 9295254. PMID  35860036 . 
  24. ^ Катерини, Энтони Л.; Лоаиза-Ганем, Габриэль (2022). «Энтропийные проблемы в обнаружении OOD на основе вероятности». С. 21–26. arXiv : 2109.10794 [stat.ML].
  25. ^ Берманн, Йенс; Викол, Пол; Ван, Куан-Чье; Гросс, Роджер; Якобсен, Йорн-Хенрик (2020). «Понимание и смягчение взрывающихся инверсий в обратимых нейронных сетях». arXiv : 2006.09347 [cs.LG].
  26. ^ Пин, Вэй; Пэн, Кайнан; Горур, Дилан; Лакшминараянан, Баладжи (2019). «WaveFlow: компактная модель для необработанного звука на основе потока». arXiv : 1912.01219 [cs.SD].
  27. ^ Ши, Ченс; Сюй, Минкай; Чжу, Чжаочэн; Чжан, Вэйнань; Чжан, Мин; Тан, Цзянь (2020). «GraphAF: модель авторегрессии на основе потока для создания молекулярных графов». arXiv : 2001.09382 [cs.LG].
  28. ^ Ян, Гуандао; Хуан, Сюнь; Хао, Цзэкунь; Лю, Мин-Ю; Белонжи, Серж; Харихаран, Бхарат (2019). «PointFlow: генерация трехмерного облака точек с непрерывными нормализующими потоками». arXiv : 1906.12320 [cs.CV].
  29. ^ Кумар, Манодж; Бабаизаде, Мохаммад; Эрхан, Думитру; Финн, Челси; Левин, Сергей; Динь, Лоран; Кингма, Дюрк (2019). «VideoFlow: модель на основе условного потока для стохастической генерации видео». arXiv : 1903.01434 [cs.CV].
  30. ^ Рудольф, Марко; Вандт, Бастиан; Розенхан, Бодо (2021). «То же самое, но DifferNet: полуконтролируемое обнаружение дефектов с нормализующими потоками». arXiv : 2008.12577 [cs.CV].

Внешние ссылки