Генеративная модель на основе потоков
Часть серии о |
Машинное обучение и интеллектуальный анализ данных |
---|
Генеративная модель на основе потока — это генеративная модель, используемая в машинном обучении , которая явно моделирует распределение вероятностей , используя нормализацию потока . [1] [2] [3] Это статистический метод, использующий закон вероятностей изменения переменных для преобразования простого распределения в сложное.
Прямое моделирование вероятности дает много преимуществ. Например, отрицательное логарифмическое правдоподобие можно напрямую вычислить и минимизировать как функцию потерь . Кроме того, новые выборки могут быть созданы путем отбора проб из исходного распределения и применения преобразования потока.
Напротив, многие альтернативные методы генеративного моделирования, такие как вариационный автокодировщик (VAE) и генеративно-состязательная сеть, не представляют явно функцию правдоподобия.
Метод
[ редактировать ]Позволять быть (возможно, многомерной) случайной величиной с распределением .
Для , позволять — последовательность случайных величин, преобразованная из . Функции должна быть обратимой, т.е. обратной функцией существует. Окончательный результат моделирует целевое распределение.
Лог вероятность есть (см. вывод ):
Чтобы эффективно вычислить логарифмическую вероятность, функции должно быть 1. легко инвертироваться и 2. легко вычисляться определитель его якобиана. На практике функции моделируются с использованием глубоких нейронных сетей и обучены минимизировать отрицательную логарифмическую вероятность выборок данных из целевого распределения. Эти архитектуры обычно проектируются таким образом, что для обратных вычислений и вычислений определителя Якоби требуется только прямой проход нейронной сети. Примеры таких архитектур включают NICE, [4] РеалНВП, [5] и Сияние. [6]
Вывод логарифмической вероятности
[ редактировать ]Учитывать и . Обратите внимание, что .
По формуле замены переменной распределение является:
Где является определителем матрицы Якобиана .
По теореме об обратной функции :
По идентичности (где обратимая матрица ), имеем:
Вероятность журнала таким образом:
В общем, сказанное выше применимо к любому и . С равно вычитая нерекурсивный член, мы можем по индукции заключить , что:
Метод обучения
[ редактировать ]Как обычно это делается при обучении модели глубокого обучения, цель нормализации потоков состоит в том, чтобы минимизировать расхождение Кульбака-Лейблера между вероятностью модели и целевым распределением, которое необходимо оценить. Обозначая вероятность модели и целевое распределение, которое нужно изучить, (прямое) KL-дивергенция:
Второе слагаемое в правой части уравнения соответствует энтропии целевого распределения и не зависит от параметра мы хотим, чтобы модель обучалась, что оставляет только ожидание минимизации отрицательной логарифмической вероятности при целевом распределении. Этот трудноразрешимый термин можно аппроксимировать методом Монте-Карло путем выборки по значимости . Действительно, если у нас есть набор данных выборок, каждая из которых независимо взята из целевого распределения , то этот член можно оценить как:
Таким образом, цель обучения
заменяется на
Другими словами, минимизация расхождения Кульбака-Лейблера между правдоподобием модели и целевым распределением эквивалентна максимизации правдоподобия модели при наблюдаемых выборках целевого распределения. [7]
Псевдокод для обучения нормализации потоков выглядит следующим образом: [8]
- ВХОД. набор данных , нормирующая модель потока .
- РЕШАТЬ. по градиентному спуску
- ВОЗВРАЩАТЬСЯ.
Варианты
[ редактировать ]Плоский поток
[ редактировать ]Самый ранний пример. [9] Исправлена некоторая функция активации , и пусть соответствующих размеров, то Обратное вообще не имеет решения в замкнутой форме.
Якобиан - это .
Чтобы оно было обратимым везде, оно должно быть везде ненулевым. Например, и удовлетворяет требованию.
Нелинейная оценка независимых компонентов (NICE)
[ редактировать ]Позволять быть четными и разделить их посередине. [4] Тогда нормирующие функции потока будут где это любая нейронная сеть с весами .
это просто , а якобиан равен всего 1, то есть поток сохраняет объем.
Когда , это выглядит как изогнутый сдвиг вдоль направление.
Реальное сохранение объема (реальный NVP)
[ редактировать ]Модель реального несохранения объема обобщает модель NICE следующим образом: [5]
Его обратная сторона , а его якобиан . Модель NICE восстанавливается путем установки .Поскольку карта Real NVP сохраняет первую и вторую половины вектора отдельно, обычно требуется добавить перестановку после каждого слоя Real NVP.
Генеративный поток (Свечение)
[ редактировать ]В модели генеративного потока [6] каждый слой состоит из 3 частей:
- аффинное преобразование по каналам с якобианом .
- обратимая свертка 1x1 с якобианом . Здесь — любая обратимая матрица.
- Реальный NVP с якобианом, описанным в Real NVP.
Идея использования обратимой свертки 1x1 состоит в том, чтобы переставлять все слои в целом, а не просто переставлять местами первую и вторую половины, как в Real NVP.
Маскированный авторегрессионный поток (MAF)
[ редактировать ]Авторегрессионная модель распределения по определяется как следующий случайный процесс: [10]
где и — фиксированные функции, определяющие авторегрессионную модель.
С помощью трюка с репараметризацией авторегрессионная модель обобщается до нормализующего потока: Авторегрессионную модель восстанавливают, установив .
Прямое отображение медленное (поскольку оно последовательное), но обратное отображение быстрое (поскольку оно параллельное).
Матрица Якобиана является нижнедиагональной, поэтому якобиан равен .
Переворачивание двух карт и Результатом MAF является обратный авторегрессионный поток (IAF), который имеет быстрое прямое отображение и медленное обратное отображение. [11]
Непрерывный нормализующий поток (CNF)
[ редактировать ]Вместо построения потока посредством композиции функций другой подход состоит в том, чтобы сформулировать поток как динамику, действующую в непрерывном времени. [12] [13] Позволять быть скрытой переменной с распределением . Сопоставьте эту скрытую переменную с пространством данных с помощью следующей функции потока:
где является произвольной функцией и может быть смоделирован, например, с помощью нейронных сетей.
Тогда обратная функция, естественно: [12]
И логарифмическая вероятность можно найти как: [12]
Поскольку след зависит только от диагонали якобиана , это позволяет якобиану «свободной формы». [14] Здесь «свободная форма» означает отсутствие ограничений на форму якобиана. Это контрастирует с предыдущими дискретными моделями нормализующего потока, в которых якобиан тщательно разрабатывается так, чтобы быть только верхней или нижней диагональю, чтобы якобиан можно было эффективно оценить.
След можно оценить с помощью «приема Хатчинсона»: [15] [16]
Учитывая любую матрицу и любое случайное с , у нас есть . (Доказательство: непосредственно расширить ожидание.)
Обычно случайный вектор выбирается из (нормальное распределение) или ( распределение Радамахера ).
Когда реализован как нейронная сеть, нейронного ОДУ методы [17] понадобится. Действительно, CNF был впервые предложен в той же статье, в которой предлагалось нейронное ОДУ.
Есть два основных недостатка КНФ: один из них заключается в том, что непрерывный поток должен быть гомеоморфизмом , таким образом, сохраняя ориентацию и объемлющую изотопию (например, невозможно перевернуть левую руку в правую путем непрерывной деформации пространства, и это невозможно вывернуть сферу наизнанку или развязать узел), а во-вторых, выученный поток может вести себя плохо из-за вырождения (то есть существует бесконечное число возможных вариантов). все это решает одну и ту же проблему).
Добавляя дополнительные измерения, CNF получает достаточную свободу, чтобы изменить ориентацию и выйти за рамки внешней изотопии (точно так же, как можно взять многоугольник со стола и перевернуть его в трехмерном пространстве или развязать узел в четырехмерном пространстве). что дает «расширенную нейронную ОДУ». [18]
Любой гомеоморфизм может быть аппроксимировано нейронным ОДУ, работающим на , доказанное путем объединения теоремы вложения Уитни для многообразий и универсальной теоремы аппроксимации для нейронных сетей. [19]
Чтобы упорядочить поток , можно наложить потери на регуляризацию. Бумага [15] предложил следующие потери при регуляризации, основанные на теории оптимального транспорта : где являются гиперпараметрами. Первый член наказывает модель за колебания поля потока во времени, а второй член наказывает ее за колебания поля потока в пространстве. Оба термина вместе направляют модель в плавный (не «ухабистый») поток в пространстве и времени.
Недостатки
[ редактировать ]Несмотря на успех нормализации потоков в оценке многомерных плотностей, в их конструкциях все еще существуют некоторые недостатки. Прежде всего, их скрытое пространство, на которое проецируются входные данные, не является пространством меньшей размерности, и поэтому модели, основанные на потоках, по умолчанию не допускают сжатия данных и требуют большого количества вычислений. Однако с их помощью по-прежнему можно выполнять сжатие изображений. [20]
Модели, основанные на потоках, также известны своей неспособностью оценить вероятность появления выборок, выходящих за пределы распределения (т. е. выборок, которые были взяты из того же распределения, что и обучающий набор). [21] Для объяснения этого явления был сформулирован ряд гипотез, среди которых гипотеза типичного множества , [22] проблемы оценки при обучении моделей, [23] или фундаментальные проблемы, связанные с энтропией распределения данных. [24]
Одним из наиболее интересных свойств нормализующих потоков является обратимость их изученного биективного отображения. Это свойство обеспечивается ограничениями при разработке моделей (см.: RealNVP, Glow), которые гарантируют теоретическую обратимость. Целостность обратного процесса важна для обеспечения применимости теоремы о замене переменной , вычисления якобиана карты , а также выборки с помощью модели. Однако на практике эта обратимость нарушается, и обратное отображение взрывается из-за числовой неточности. [25]
Приложения
[ редактировать ]Генеративные модели на основе потоков применялись для решения различных задач моделирования, в том числе:
- Генерация звука [26]
- Генерация изображений [6]
- Генерация молекулярных графов [27]
- Моделирование облаков точек [28]
- Генерация видео [29]
- Сжатие изображений с потерями [20]
- Обнаружение аномалий [30]
Ссылки
[ редактировать ]- ^ Табак, Эстебан Г.; Ванден-Эйнден, Эрик (2010). «Оценка плотности методом двойного восхождения логарифмического правдоподобия» . Связь в математических науках . 8 (1): 217–233. дои : 10.4310/CMS.2010.v8.n1.a11 .
- ^ Табак, Эстебан Г.; Тернер, Кристина В. (2012). «Семейство непараметрических алгоритмов оценки плотности» . Сообщения по чистой и прикладной математике . 66 (2): 145–164. дои : 10.1002/cpa.21423 . hdl : 11336/8930 . S2CID 17820269 .
- ^ Папамакариос, Джордж; Налисник, Эрик; Хименес Резенде, Данило; Мохамед, Шакир; Бакшминараянан, Баладжи (2021). «Нормализация потоков для вероятностного моделирования и вывода» . Журнал исследований машинного обучения . 22 (1): 2617–2680. arXiv : 1912.02762 .
- ^ Jump up to: а б Динь, Лоран; Крюгер, Дэвид; Бенджио, Йошуа (2014). «NICE: нелинейная оценка независимых компонентов». arXiv : 1410.8516 [ cs.LG ].
- ^ Jump up to: а б Динь, Лоран; Золь-Дикштейн, Яша; Бенджио, Сами (2016). «Оценка плотности с использованием реального NVP». arXiv : 1605.08803 [ cs.LG ].
- ^ Jump up to: а б с Кингма, Дидерик П.; Дхаривал, Прафулла (2018). «Свечение: генеративный поток с обратимыми свертками 1x1». arXiv : 1807.03039 [ stat.ML ].
- ^ Папамакариос, Джордж; Налисник, Эрик; Резенде, Данило Хименес; Шакир, Мохамед; Баладжи, Лакшминараянан (март 2021 г.). «Нормализация потоков для вероятностного моделирования и вывода» . Журнал исследований машинного обучения . 22 (57): 1–64. arXiv : 1912.02762 .
- ^ Кобызев Иван; Принс, Саймон Джей Ди; Брубейкер, Маркус А. (ноябрь 2021 г.). «Нормализация потоков: введение и обзор современных методов» . Транзакции IEEE по анализу шаблонов и машинному интеллекту . 43 (11): 3964–3979. arXiv : 1908.09257 . дои : 10.1109/TPAMI.2020.2992934 . ISSN 1939-3539 . ПМИД 32396070 . S2CID 208910764 .
- ^ Данило Хименес Резенде; Мохамед, Шакир (2015). «Вариационный вывод с нормализацией потоков». arXiv : 1505.05770 [ stat.ML ].
- ^ Папамакариос, Джордж; Павлаку, Тео; Мюррей, Иэн (2017). «Маскированный авторегрессионный поток для оценки плотности» . Достижения в области нейронных систем обработки информации . 30 . Curran Associates, Inc. arXiv : 1705.07057 .
- ^ Кингма, Дурк П.; Салиманс, Тим; Йозефович, Рафаль; Чен, Си; Суцкевер, Илья; Веллинг, Макс (2016). «Улучшенный вариационный вывод с обратным авторегрессионным потоком» . Достижения в области нейронных систем обработки информации . 29 . Curran Associates, Inc. arXiv : 1606.04934 .
- ^ Jump up to: а б с Гратвол, Уилл; Чен, Рики TQ; Бетанкур, Джесси; Суцкевер, Илья; Дювено, Дэвид (2018). «FFJORD: Непрерывная динамика свободной формы для масштабируемых обратимых генеративных моделей». arXiv : 1810.01367 [ cs.LG ].
- ^ Липман, Ярон; Чен, Рики TQ; Бен-Хаму, Хели; Никель, Максимилиан; Ле, Мэтт (01 октября 2022 г.). «Согласование потоков для генеративного моделирования». arXiv : 2210.02747 [ cs.LG ].
- ^ Гратвол, Уилл; Чен, Рики TQ; Бетанкур, Джесси; Суцкевер, Илья; Дювено, Дэвид (22 октября 2018 г.). «FFJORD: Непрерывная динамика свободной формы для масштабируемых обратимых генеративных моделей». arXiv : 1810.01367 [ cs.LG ].
- ^ Jump up to: а б Финли, Крис; Якобсен, Йорн-Хенрик; Нурбекян, Левон; Оберман, Адам (21 ноября 2020 г.). «Как тренировать свою нейронную ОДУ: мир якобиана и кинетической регуляризации» . Международная конференция по машинному обучению . ПМЛР: 3154–3164. arXiv : 2002.02798 .
- ^ Хатчинсон, МФ (январь 1989 г.). «Стохастическая оценка следа матрицы влияния для сглаживающих сплайнов Лапласа» . Коммуникации в статистике — моделирование и вычисления . 18 (3): 1059–1076. дои : 10.1080/03610918908812806 . ISSN 0361-0918 .
- ^ Чен, Рики TQ; Рубанова Юлия; Бетанкур, Джесси; Дювено, Дэвид (2018). «Нейронные обыкновенные дифференциальные уравнения». arXiv : 1806.07366 [ cs.LG ].
- ^ Дюпон, Эмильен; Дусе, Арно; Да, Йи Почему (2019). «Расширенные нейронные ОДУ» . Достижения в области нейронных систем обработки информации . 32 . Карран Ассошиэйтс, Инк.
- ^ Чжан, Хан; Гао, Си; Унтерман, Джейкоб; Ародз, Том (30 июля 2019 г.). «Аппроксимационные возможности нейронных ОДУ и обратимых остаточных сетей». arXiv : 1907.12998 [ cs.LG ].
- ^ Jump up to: а б Хельмингер, Леонард; Джелоуа, Абдельазиз; Гросс, Маркус; Шроерс, Кристофер (2020). «Сжатие изображения с потерями с нормализацией потоков». arXiv : 2008.10486 [ cs.CV ].
- ^ Налисник, Эрик; Мацукава, Тех; Чжао, Йи Уай; Сун, Чжао (2018). «Знают ли глубокие генеративные модели то, чего они не знают?». arXiv : 1810.09136v3 [ stat.ML ].
- ^ Налисник, Эрик; Мацукава, Тех; Чжао, Йи Уай; Сун, Чжао (2019). «Обнаружение нераспределенных входных данных для глубоких генеративных моделей с использованием типичности». arXiv : 1906.02994 [ stat.ML ].
- ^ Чжан, Лили; Гольдштейн, Марк; Ранганатх, Раджеш (2021). «Понимание сбоев в обнаружении выхода за пределы распределения с помощью глубоких генеративных моделей» . Труды исследований машинного обучения . 139 : 12427–12436. ПМЦ 9295254 . ПМИД 35860036 .
- ^ Катерини, Энтони Л.; Лоаиза-Ганем, Габриэль (2022). «Энтропийные проблемы при обнаружении OOD на основе вероятности». стр. 21–26. arXiv : 2109.10794 [ stat.ML ].
- ^ Берманн, Йенс; Викол, Пол; Ван, Куан-Чье; Гросс, Роджер; Якобсен, Йорн-Хенрик (2020). «Понимание и смягчение взрывающихся инверсий в обратимых нейронных сетях». arXiv : 2006.09347 [ cs.LG ].
- ^ Пин, Вэй; Пэн, Кайнан; Горур, Дилан; Лакшминараянан, Баладжи (2019). «WaveFlow: компактная модель для необработанного звука на основе потока». arXiv : 1912.01219 [ cs.SD ].
- ^ Ши, Ченс; Сюй, Минкай; Чжу, Чжаочэн; Чжан, Вэйнань; Чжан, Мин; Тан, Цзянь (2020). «GraphAF: модель авторегрессии на основе потока для создания молекулярных графов». arXiv : 2001.09382 [ cs.LG ].
- ^ Ян, Гуандао; Хуан, Сюнь; Хао, Зекун; Лю, Мин-Ю; Белонги, Серж; Харихаран, Бхарат (2019). «PointFlow: создание 3D-облаков точек с непрерывными нормализуемыми потоками». arXiv : 1906.12320 [ cs.CV ].
- ^ Кумар, Манодж; Бабаизаде, Мохаммед; Эрхан, Дмитрий; Финн, Челси; Левин, Сергей; Динь, Лоран; Кингма, Дурк (2019). «VideoFlow: модель на основе условного потока для стохастической генерации видео». arXiv : 1903.01434 [ cs.CV ].
- ^ Рудольф, Марко; Вандт, Бастиан; Розенхан, Бодо (2021). «То же самое, но другая сеть: полуконтролируемое обнаружение дефектов с помощью нормализации потоков». arXiv : 2008.12577 [ cs.CV ].