Это 15-й день моего участия в августовском испытании обновлений. Узнайте подробности события:Испытание августовского обновления
Подробный вариационный автоэнкодер - VAE
Полное название VAE (Variational Auto-Encoder) — вариационный автокодер. является генеративной моделью.
Чтобы понять VAE, давайте сначала кратко разберемся с автоэнкодером, о котором часто говорятAuto-Encoder.
Auto-EncoderВключая энкодер (Encoder) и декодер (Decoder). Его структура выглядит следующим образом:
Средний слой кода также называется встраиванием.
Цель ВАЭ
Сначала предположим распределение скрытой переменной Z и построим модель от Z до целевых данных X, то есть построим, так что изученные целевые данные близки к распределению вероятностей реальных данных. По сути, в соответствии с GAN, GAN также изучает распределение вероятностей.
Структура модели
Структурная схема VAE (картинка взята из блога г-на Су, захваченного и удаленного) выглядит следующим образом:
VAE для каждого образцаЧтобы соответствовать распределению Гаусса, скрытая переменная Z выбирается из распределения Гаусса. Для K выборок предполагается, что гауссово распределение каждой выборки равно, вопрос в том, как подогнать эти дистрибутивы.
VAE строит две нейронные сети, чтобы соответствовать среднему значению и дисперсии. который, примеркаПричина в том, что нет необходимости добавлять функцию активации.
Кроме того, VAE максимально приближает каждое распределение Гаусса к стандартному распределению Гаусса.. Потеря ошибки в этом процессе подгонки рассчитывается с использованием расхождения KL.
Подробный вывод приведен ниже.
Принцип вывода
По сути, VAE очень похожа на GMM (модель гауссовой смеси), которая также является генеративной моделью, и фактически VAE можно рассматривать как версию GMM с распределенным представлением. Мы знаем, что GMM — это скрытая переменная с конечным числом распределений Гаусса., а VAE можно рассматривать как бесконечное количество скрытых переменныхСмесь, обратите внимание, VAE вМожет быть гауссовым или негауссовым. Но чаще используется гауссова.
необработанные данные выборкиРаспределение вероятностей:
мы предполагаем, чтоСоблюдайте стандартное распределение Гаусса, предварительное распределениеявляется гауссовым, т.е..две функции соответственноСреднее значение и дисперсия соответствующего распределения Гаусса (как показано ниже), затемЭто совокупность всех распределений Гаусса в области интегралов.
так какизвестен,неизвестно, поэтому решение проблемы на самом деле требуетэти две функции. Наша первоначальная цель - решить, и мы надеемсяЧем больше, тем лучше, что эквивалентно решению дляМаксимальное логарифмическое правдоподобие:
иможно преобразовать в:
Здесь мы находим, что второй элементНа самом деле этоиKL-расхождение , т.е., так как расхождение KL больше или равно 0,
Таким образом, приведенную выше формулу можно записать в следующем виде:
Таким образом, мы находим нижнюю границу, которая является правым членом выражения, а именно
Исходная формула также может быть выражена как:
чтобыЧем больше значение, наша цель — максимизировать его нижнюю границу.
Нажали сюда, может возникнуть вопрос: а зачем вводить(здесьможет быть любой дистрибутив)?
На самом деле, поскольку апостериорное распределениеЕго трудно получить (неразрешимый), поэтому я использую егодля аппроксимации этого апостериорного распределения. В процессе оптимизации мы обнаружили, что сначалаисовершенно не имеет значения,просто следуйтесвязанные, регулируемыене повлияет кажется, чтоиз. Итак, когда мы исправимвремя, настроитьМаксимизируйте нижнюю границу, KL меньше. когдас аппроксимацией апостериорного распределенияКогда расхождение KL стремится к 0,какэквивалентность. так максимизироватьэквивалентно максимизации.
обзор,
Очевидно, максимизироватьэквивалентно минимизациии максимизировать.
Первый член, минимизирующий расходимость KL. Мы предполагали ранееподчиняется стандартному распределению Гаусса, иподчиняется распределению Гаусса, поэтому мы можем получить:
Чтобы дополнительно решить интеграл в приведенной выше формуле,В самом деле, плотность вероятности, а интеграл функции плотности вероятности равен 1, поэтому первый член интеграла равен, и поскольку второй момент гауссовского распределения равен, что в точности соответствует второму члену интеграла. По определению дисперсии известно, что, поэтому третий член интеграла равен.
Окончательный упрощенный результат выглядит следующим образом:
Второй срок, максимизация ожиданий. То есть дано(выход энкодера)(выход декодера) как можно выше. В частности, первым шагом является использование нейронной сети кодировщика для вычисления среднего значения и дисперсии, а также выборки из них., этот процесс соответствует; Второй шаг — использовать вычисление NN декодераСредняя дисперсия , пусть среднее (или также рассмотрим дисперсию) ближе, затем производитшансЧем больше значение, тем больше соответствует максимизация в формулеэта часть.
Теперь вывод завершен.
Трюк с повторным параметром
Наконец, когда модель реализована, есть трюк с перепараметрированием, то есть мы хотим получить данные из распределения Гаусса.При выборке Z это фактически эквивалентнообразец один, а затем вычислить. Причина этого в том, что операция выборки неуправляема, а результат выборки управляем.Это может участвовать в градиентном спуске, и модель может быть обучена.
Ссылаться на