Статистическая модель, используемая в машинном обучении
Генеративная модель на основе потока — это генеративная модель , используемая в машинном обучении , которая явно моделирует распределение вероятностей , используя нормализующий поток [1] [2] [3], который представляет собой статистический метод, использующий закон изменения переменной вероятностей для преобразования простого распределения в сложное.
Прямое моделирование правдоподобия дает много преимуществ. Например, отрицательная логарифмическая функция правдоподобия может быть напрямую вычислена и минимизирована как функция потерь . Кроме того, новые выборки могут быть получены путем выборки из начального распределения и применения преобразования потока.
Для пусть будет последовательностью случайных величин, преобразованных из . Функции должны быть обратимыми, т.е. обратная функция существует. Окончательный вывод моделирует целевое распределение.
Логарифм правдоподобия равен (см. вывод):
Для эффективного вычисления логарифмического правдоподобия функции должны быть 1. простыми для инвертирования и 2. простыми для вычисления определителя ее якобиана. На практике функции моделируются с использованием глубоких нейронных сетей и обучаются для минимизации отрицательного логарифмического правдоподобия выборок данных из целевого распределения. Эти архитектуры обычно проектируются таким образом, что требуется только прямой проход нейронной сети как в обратном вычислении, так и в вычислении определителя якобиана. Примерами таких архитектур являются NICE, [4] RealNVP, [5] и Glow. [6]
В общем случае вышесказанное применимо к любому и . Поскольку равно вычтенному нерекурсивному члену, мы можем вывести по индукции , что:
Метод обучения
Как это обычно делается при обучении модели глубокого обучения, цель нормализации потоков состоит в том, чтобы минимизировать расхождение Кульбака–Лейблера между правдоподобием модели и целевым распределением, которое должно быть оценено. Обозначая правдоподобие модели и целевое распределение для обучения, (прямое) KL-расхождение равно:
Второй член в правой части уравнения соответствует энтропии целевого распределения и не зависит от параметра, который мы хотим, чтобы модель изучила, что оставляет только ожидание отрицательного логарифмического правдоподобия для минимизации при целевом распределении. Этот трудноразрешимый член может быть аппроксимирован методом Монте-Карло с помощью выборки по важности . Действительно, если у нас есть набор данных образцов, каждый из которых независимо взят из целевого распределения , то этот член можно оценить как:
Псевдокод для обучения нормализующих потоков выглядит следующим образом: [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 был впервые предложен в той же статье, в которой был предложен нейронный ОДУ.
У КНФ есть два основных недостатка: один из них заключается в том, что непрерывный поток должен быть гомеоморфизмом , то есть сохранять ориентацию и изотопию окружающей среды (например, невозможно перевернуть левую сторону на правую путем непрерывной деформации пространства, невозможно вывернуть сферу наизнанку или развязать узел), а другой заключается в том, что обученный поток может вести себя некорректно из-за вырожденности (то есть существует бесконечное число возможных решений одной и той же задачи).
Добавляя дополнительные измерения, КНФ получает достаточно свободы, чтобы изменить ориентацию и выйти за рамки окружающей изотопии (точно так же, как можно взять многоугольник со стола и перевернуть его в 3-мерном пространстве или развязать узел в 4-мерном пространстве), что приводит к «расширенному нейронному ОДУ». [18]
Чтобы регуляризировать поток , можно ввести потери регуляризации. В статье [15] предложены следующие потери регуляризации, основанные на оптимальной теории переноса : где — гиперпараметры. Первый член наказывает модель за осцилляции поля потока во времени, а второй член наказывает ее за осцилляции поля потока в пространстве. Оба члена вместе направляют модель в поток, который является гладким (не «неровным») в пространстве и времени.
Недостатки
Несмотря на успех нормализации потоков в оценке многомерных плотностей, в их конструкциях все еще существуют некоторые недостатки. Прежде всего, их скрытое пространство, куда проецируются входные данные, не является пространством с меньшей размерностью, и поэтому модели на основе потоков не позволяют сжимать данные по умолчанию и требуют большого объема вычислений. Однако с их помощью все еще возможно выполнять сжатие изображений. [20]
Модели на основе потоков также печально известны своей неспособностью оценить вероятность выборок вне распределения (т. е. выборок, которые не были взяты из того же распределения, что и обучающий набор). [21] Для объяснения этого явления были сформулированы некоторые гипотезы, среди которых гипотеза о типичном наборе, [22] проблемы оценки при обучении моделей, [23] или фундаментальные проблемы из-за энтропии распределений данных. [24]
Одним из самых интересных свойств нормализации потоков является обратимость их изученного биективного отображения. Это свойство задается ограничениями в конструкции моделей (ср.: RealNVP, Glow), которые гарантируют теоретическую обратимость. Целостность обратного важна для обеспечения применимости теоремы о замене переменной , вычисления якобиана отображения , а также выборки с моделью. Однако на практике эта обратимость нарушается, и обратное отображение взрывается из-за численной неточности. [25]
Приложения
Генеративные модели на основе потоков применяются для решения различных задач моделирования, включая:
Генерация звука [26]
Генерация изображения [6]
Генерация молекулярного графа [27]
Моделирование облака точек [28]
Генерация видео [29]
Сжатие изображений с потерями [20]
Обнаружение аномалий [30]
Ссылки
^ Табак, Эстебан Г.; Ванден-Эйнден, Эрик (2010). «Оценка плотности методом двойного восхождения логарифмического правдоподобия». Сообщения по математическим наукам . 8 (1): 217–233. doi :10.4310/CMS.2010.v8.n1.a11.
^ Табак, Эстебан Г.; Тернер, Кристина В. (2012). «Семейство непараметрических алгоритмов оценки плотности». Сообщения по чистой и прикладной математике . 66 (2): 145–164. doi :10.1002/cpa.21423. hdl : 11336/8930 . S2CID 17820269.
^ Папамакариос, Джордж; Налисник, Эрик; Хименес Резенде, Данило; Мохамед, Шакир; Бакшминараянан, Баладжи (2021). «Нормализация потоков для вероятностного моделирования и вывода». Журнал исследований машинного обучения . 22 (1): 2617–2680. arXiv : 1912.02762 .
^ Папамакариос, Джордж; Налисник, Эрик; Резенде, Данило Хименес; Шакир, Мохамед; Баладжи, Лакшминараянан (март 2021 г.). «Нормализация потоков для вероятностного моделирования и вывода». Журнал исследований машинного обучения . 22 (57): 1–64. arXiv : 1912.02762 .
^ Кобызев, Иван; Принс, Саймон Дж. Д.; Брубейкер, Маркус А. (ноябрь 2021 г.). «Нормализация потоков: введение и обзор современных методов». Труды IEEE по анализу шаблонов и машинному интеллекту . 43 (11): 3964–3979. arXiv : 1908.09257 . doi : 10.1109/TPAMI.2020.2992934. ISSN 1939-3539. PMID 32396070. S2CID 208910764.
^ Папамакариос, Джордж; Павлаку, Тео; Мюррей, Иэн (2017). «Маскированный авторегрессионный поток для оценки плотности». Достижения в области нейронных систем обработки информации . 30. Curran Associates, Inc. arXiv : 1705.07057 .
^ Кингма, Дюрк П.; Салиманс, Тим; Юзефович, Рафал; Чэнь, Си; Суцкевер, Илья; Веллинг, Макс (2016). «Улучшенный вариационный вывод с обратным авторегрессионным потоком». Достижения в области нейронных систем обработки информации . 29. Curran Associates, Inc. arXiv : 1606.04934 .
^ ab Финлей, Крис; Якобсен, Йорн-Хенрик; Нурбекян, Левон; Оберман, Адам (2020-11-21). «Как обучить нейронный ОДУ: мир якобианской и кинетической регуляризации». Международная конференция по машинному обучению . PMLR: 3154–3164. arXiv : 2002.02798 .
^ Хатчинсон, МФ (январь 1989). «Стохастическая оценка следа матрицы влияния для сглаживающих сплайнов Лапласа». Communications in Statistics - Simulation and Computation . 18 (3): 1059–1076. doi :10.1080/03610918908812806. ISSN 0361-0918.
^ Чен, Рики Т. К.; Рубанова, Юлия; Беттанкур, Джесси; Дювено, Дэвид К. (2018). "Нейронные обыкновенные дифференциальные уравнения" (PDF) . В Bengio, S.; Wallach, H.; Larochelle, H.; Grauman, K.; Cesa-Bianchi, N.; Garnett, R. (ред.). Достижения в области нейронных систем обработки информации . Том 31. Curran Associates, Inc. arXiv : 1806.07366 .
^ Дюпон, Эмильен; Дусе, Арно; Те, Йи Уай (2019). «Расширенные нейронные ОДУ». Достижения в области нейронных систем обработки информации . 32. Curran Associates, Inc.
^ аб Хельмингер, Леонард; Джелоуа, Абдельазиз; Гросс, Маркус; Шроерс, Кристофер (2020). «Сжатие изображения с потерями с нормализацией потоков». arXiv : 2008.10486 [cs.CV].
^ Налисник, Эрик; Мацукава, Те; Чжао, Йи Уай; Сонг, Чжао (2018). «Знают ли глубокие генеративные модели то, чего они не знают?». arXiv : 1810.09136v3 [stat.ML].
^ Налисник, Эрик; Мацукава, Те; Чжао, Йи Уай; Сонг, Чжао (2019). «Обнаружение нераспределенных входов в глубокие генеративные модели с использованием типичности». arXiv : 1906.02994 [stat.ML].
^ Чжан, Лили; Голдштейн, Марк; Ранганат, Раджеш (2021). «Понимание сбоев в обнаружении вне распределения с помощью глубоких генеративных моделей». Труды исследований машинного обучения . 139 : 12427–12436. PMC 9295254. PMID 35860036 .
^ Катерини, Энтони Л.; Лоаиза-Ганем, Габриэль (2022). «Энтропийные проблемы в обнаружении OOD на основе вероятности». С. 21–26. arXiv : 2109.10794 [stat.ML].
^ Пин, Вэй; Пэн, Кайнан; Горур, Дилан; Лакшминараянан, Баладжи (2019). «WaveFlow: компактная модель для необработанного звука на основе потока». arXiv : 1912.01219 [cs.SD].
^ Ши, Ченс; Сюй, Минкай; Чжу, Чжаочэн; Чжан, Вэйнань; Чжан, Мин; Тан, Цзянь (2020). «GraphAF: модель авторегрессии на основе потока для создания молекулярных графов». arXiv : 2001.09382 [cs.LG].