Это 16-й день моего участия в ноябрьском испытании обновлений.Подробности о событии:Вызов последнего обновления 2021 г.
написать впереди
Эта статья для большинства людей может иметь только научно-популярную роль, потому что Gumbel-Max используется только в некоторых областях, таких как GAN, VAE и т. д. Когда автор исследовал статью о EMNLP, я увидел, что формула Gumbel-Softmax использовалась для решения проблемы невозможности получения выборки распределения вероятностей, поэтому я подумал сделать резюме Gumbel-Softmax, поэтому я написал эту статью.
Зачем нам нужен Gumbel-Softmax?
Предположим, теперь у нас есть дискретная случайная величинаРаспределение
в,. мы хотим основатьвероятностная выборка для получения ряда дискретныхзначение . Но с этим есть проблема,Мы попробовалиТолько значения, не сгенерированныеформула. Например, мы просиможидания, то есть формула
правильноПроизводные очень понятны. Но теперь наше требование состоит в том, чтобы попробовать некоторые конкретныезначения, нет формулы для выборки этой операции, поэтому ее нельзя вывести. Так родилась очень естественная идея, можем ли мы датьотФормула для параметров, пусть результат, возвращаемый этой формулой, будетА результаты выборки?
Gumbel-Softmax
Вообще говоряпредсказывает нейронная сеть для классаВероятность , которая очень часто встречается в задачах классификации, предположим, что мы вводим образец в модель, а распределение вероятностей конечного результата равноЭто показывает, что это проблема классификации 5, с наибольшей вероятностью вероятности того, что вторая категория, на этот шаг, мы можем получить результат непосредственно через argmax, но теперь мы не прогнозируем, а проблема выборки. Для моделей вероятность прямой удаления является самой большой, но для нас каждая категория имеет определенную вероятность. Мы хотим образец в соответствии с этой вероятностью, а не прямой простую выходную вероятность вывода. Значение
самая обычная выборкаГорячая формула
виндекс категории, случайная величинаследовать равномерному распределению
Вышеприведенный процесс на самом деле очень умный, мы добавляем распределение вероятностей спереди назад, и при добавлении кпревышает некоторое случайное значение, то этот процесс случайной выборки,случайным образом выбирается каккласс, наконец-то прошел горячее преобразование
Но у приведенной выше формулы есть фатальная проблема: функция max неуправляема.
Gumbel-Max Trick
Техника Gumbel-Max предназначена для решения невыводимой проблемы функции max.Мы можем заменить max на argmax, то есть
в,, этот термин называется шумом Гамбеля или распределением Гамбеля, цель состоит в том, чтобы сделатьРезультат возврата не фиксирован
видимыйВо всем процессе непроизводной частью является только argmax, Фактически, мы можем использовать производную функцию softmax в параметреаппроксимация argmax под управлением , и, наконец,Формула
в,меньшеБолее плавное приближение аргмакса на протяжении всего софтмакса, а такжеЧем ближе он к вектору onehot;больше,Чем ближе вектор к равномерному распределению
Суммировать
Весь процесс эквивалентен тому, что мы берем неуправляемый процесс выборки изсама переведена водна из формулв, покане зависит от себя,такправильномы можем добраться туда, и мы получимВсе еще выборка из дискретных распределений вероятностей. Этот прием передачи процесса выборки имеет собственное имя, называемоеТрюк с репараметризацией