Диссертация (1137108), страница 19
Текст из файла (страница 19)
Функция f (z) непрерывно дифференцируема при z ∈ [0; 1]d ;2. Каждый фактор q(zi |z<i , ϕ), i > 1 непрерывно дифференцируем при z<i ∈ [0,1]i−1 .При условии этих предположений можно применить релаксацию Гумбель-Софтмакс с температурой λ > 0 к каждому фактору:q(ẑ|ϕ, λ) =d∏q(ẑi |ẑ<i , ϕ, λ).(4.10)i=1Релаксированная целевая функция имеет видL̂(ϕ|λ) =Eq(ẑ|ϕ,λ)f (ẑ).(4.11)85Полученная целевая функция может быть стохастически оценена с помощью метода МонтеКарло. Заметим, что если все вероятности в релаксированном распределении приближаются ккрайним значениям (нулю или единице), то релаксированное распределение приближается к нерелаксированному при любой температуре λ.
Отсюда следует, что величина релаксированной целевой функции L̂(ϕ|λ) приближается к значению исходной целевой функции L(ϕ).4.4 Вероятностный метод для адаптивного времени вычисленийДля начала определим блок адаптивных вычислений. Это вычислительный модуль, которыйвыбирает число итераций в зависимости от входа.
В зависимости от конкретного вида латентныхпеременных блок может быть дискретным, пороговым или релаксированным. Все блоки совместимы, то есть параметры модели, обученной с одним видом блока, могут быть протестированы сдругим видом блока. Затем представим вероятностную модель, которая включает число итерацийкак латентную переменную в дискриминативной модели.
Априорное распределение на латентныепеременные поощряет использование меньшего числа итераций. Наконец, применим к этой модели стохастическую вариационную оптимизацию, описанную в подразделе 4.3, чтобы выполнитьприближённый MAP-вывод на число итераций.4.4.1 Дискретный блок адаптивных вычисленийДискретный блок адаптивных вычислений выполняет z ∈ {1, . . . , L} итераций вычислений,где z –– дискретная латентная переменная, а L –– максимальное число итераций.
Предположим,что l-я итераций вычислений возвращает значение U l (будем использовать верхние индексы дляиндексации значений в блоке), а также что все значения U 1 , . . . , U L имеют одинаковую размерность. Выходом блока назовём значение U z , то есть выход z-й итерации. Для оптимизации подискретной латентной переменной z введём вспомогательное распределение q(z|ϕ) с параметрами ϕ.
Обозначим через z l = [z = l] индикатор остановки блока: как только он равен единице,вычисления прерываются.Сформулируем два желаемых свойства распределения q(z|ϕ), необходимых для полученияметода, аналогичного АВВ:1. Вероятность остановки на шаге l должна зависеть от значения выхода U l на шаге l.2. Генерация значения индикатора остановки z l должна быть возможна после выполненияпервых l шагов.Для выполнения первого свойства введём вероятность остановки итерации как функциюот выходов этой итерации. На последней итерации гарантируем остановку, положив вероятностьостановки равной единице.86Определение 24.
Вероятность остановки блока адаптивных вычислений задаётся какhl = H l (U l |ϕ),l = 1, . . . , L − 1,hL = 1.(4.12)(4.13)Определение 25. Вероятностное распределение латентных переменных q(z|ϕ) задаётся какq(z = 1|ϕ) = h1 ,(4.14)l−1∏q(z = l|ϕ) = h(1 − hi ),ll = 2, . . . , L.(4.15)i=1Рассмотрим теперь способ генерации точек из этого распределения.Утверждение 5.
Рассмотрим следующую процедуру генерации случайного вектора (z 1 , . . . , z L ):ξ l ∼ Bernoulli(hl ),1l = 1, . . . , L − 1,l−1∏z =ξ(1 − ξ i ),1lz =ξ ,lξ L = 1.l = 2, . . . , L.(4.16)(4.17)i=1Верно, чтоq(z = l|ϕ) = q(z l = 1|ϕ).(4.18)Из утверждения следует, что бинарный вектор (z 1 , . . . , z L ) является т.н. one-hot представлением случайной величины z.Доказательство. При l = 1 утверждение следует из того, что мат. ожидание распределения Бернулли равно вероятности за единицу:q(z l = 1|ϕ) =E1 ξ 1 = h1 .q(ξ |ϕ)(4.19)При l > 1 по определению z llq(z = 1|ϕ) =El−1∏ξ(1 − ξ i ).lq(ξ 1 ,...,ξ l |ϕ)(4.20)i=1Пользуясь независимостью случайных переменных ξ 1 , . .
. , ξ l , имеемq(z l = 1|ϕ) = E ξ lq(ξ l |ϕ)l−1∏i=1Ei (1 − ξ i ) = hlq(ξ |ϕ)l−1∏(1 − hi ) = q(z = l|ϕ).(4.21)i=1Выходом дискретного блока адаптивных вычислений является величина U z , которую, пользуясь доказанным утверждением, можно переписать в следующем виде:выход = U z =L∑zlU l.(4.22)l=1Заметим, что после того, как получен индикатор остановки (то есть z l = 1), следующие значенияU l+1 , .
. . , U L можно не вычислять, поскольку их вклад в выход будет нулевым.87яяяии0,10,720,180,10,810,20,51ииРисунок 4.1 — Релаксированный блок адаптивных вычислений.4.4.2Пороговый блок адаптивных вычисленийПороговый блок адаптивных вычислений –– это детерминированная версия дискретного блока адаптивных вычислений. Поскольку на латентные переменные выполняется MAP-оценка, можно ожидать, что вероятности остановки hl будут достаточно близки к крайним значениям, нулюили единице.
При тестировании предлагается заменить генерацию точек из распределения Бернулли на пороговую функцию:ξ l = [hl > 0,5].(4.23)Преимуществом порогового блока адаптивных вычислений является крайне простая имплементация: достаточно остановить вычисления при получении вероятности остановки, большей0,5.4.4.3Релаксированный блок адаптивных вычисленийРелаксированный блок адаптивных вычислений получается из дискретного адаптивного блока вычислений заменой переменных Бернулли на релаксированные переменные Бернулли с температурой релаксации λ > 0.
При этом распределение остановки становится дискретным вероятностным распределением, получаемым из вероятностей остановки процессом ломания палки(stick-breaking).88Определение 26. Релаксированное распределение q(ẑ|ϕ, λ) случайного вектора ẑ = (ẑ 1 , . .
. , ẑ L )задаётся следующей процедурой генерации:ξˆl ∼ RelaxedBernoulli(hl |λ),ẑ 1 = ξˆ1 ,ẑ l = ξˆlξˆL = 1,l = 1, . . . , (L − 1),l−1∏(1 − ξˆi ),(4.24)(4.25)l = 2, . . . , L.i=1Утверждение 6. Вектор ẑ = (ẑ 1 , . . . , ẑ L ) ∼ q(ẑ|ϕ, λ) является дискретным случайным распределением, то естьẑ l ⩾ 0,L∑l = 1, . . . , L,(4.26)ẑ l = 1.(4.27)l=1Доказательство. Вспомним, что случайные величины ξˆl ∈ [0; 1], l = 1, . .
. , L. При l =1, . . . , L − 1 это вытекает из того, что по определению релаксации Гумбель-Софтмакс случайныевеличины являются выходами сигмоидальной функции, при l = L это следует из определения ξˆL .Отсюдаξˆl ⩾ 0, 1 − ξˆl ⩾ 0, l = 1, . . . , L.(4.28)Поэтому ẑ l , l = 1, .
. . , L является произведением неотрицательных множителей, то есть ẑ l ⩾ 0.Покажем, что значения суммируются в единицу. Введём вспомогательные обозначенияS l = ξˆl + (1 − ξˆl )S l+1 ,S L = ξˆL = 1.l = 1, . . . , L − 1,(4.29)(4.30)Докажем по индукции, чтоS = ξˆl +lL∑ξˆii=l+1i−1∏(1 − ξˆj ),l = 1, . . . , L − 1.(4.31)j=lДействительно, при l = L − 1,S L−1 = ξˆL−1 + (1 − ξˆL−1 )S L = ξˆL−1 + (1 − ξˆL−1 )ξˆL == ξˆL−1 +L∑i=Lξˆii−1∏(1 − ξˆj ).(4.33)j=L−1Пусть утверждение верно для l = k + 1. Докажем его для l = k.()i−1L∏∑S k = ξˆk + (1 − ξˆk )S k+1 = ξˆk + (1 − ξˆk ) ξˆk+1 +ξˆi(1 − ξˆj ) =i=k+2= ξˆk + (1 − ξˆk )ξˆk+1 + (1 − ξˆk )L∑i=k+2= ξˆk + (1 − ξˆk )ξˆk+1 +(4.32)L∑i=k+2ξˆiξˆii−1∏(4.34)j=k+1(1 − ξˆj ) =(4.35)j=k+1i−1∏L∑j=ki=k+1(1 − ξˆj ) = ξˆk +ξˆii−1∏(1 − ξˆj ).j=k(4.36)89Также по индукции показывается, что S 1 = · · · = S L = 1.
Действительно, S L = 1 поопределению, а если S l+1 = 1, тоS l = ξˆl + (1 − ξˆl )S l+1 = ξˆl + (1 − ξˆl ) = 1.Для доказательства утверждения осталось показать, что S 1 =L∑l1ẑ = ẑ +l=1L∑ẑ = ξˆ1 +ll=2L∑l=2ξˆl(4.37)∑Ll=1ẑ l :l−1∏(1 − ξˆi ) = S 1 .(4.38)i=1Определение 27. Выход релаксированного блока адаптивных вычислений есть мат. ожиданиевыходов итераций по дискретному вероятностному распределению, задаваемому вектором ẑ =(ẑ 1 , .
. . , ẑ L ):L∑выход\ =ẑ l U l .(4.39)l=1Релаксированный блок адаптивных вычислений проиллюстрирован на рис. 4.1.4.4.4Вероятностная модельРассмотрим дискриминативную модель с правдоподобием p(y|x, θ) целевой метки y приусловии объекта x и параметрах θ. Для упрощения нотации будем рассматривать один объект.Эта модель, в частности, может быть глубинной нейронной сетью для задачи классификации илирегрессии. Во многих случаях мы хотели бы, чтобы модель выполнялась как можно быстрей. Предположим, что в модели присутствуют K адаптивных блоков вычислений.
Обозначим соответствующие латентные переменные (число итераций вычислений в каждом блоке) через z = (z1 , . . . , zK ),а максимальное число итераций в блоке k через Lk .Чтобы получить штраф за число итераций, эквивалентный получаемому в методе АВВ, выберем априорное распределение в виде факторизованного усечённого геометрического распределения. Вспомним, что геометрическое распределение с вероятностью успеха γk имеет видGeometric(zk |γk ) = (1 − γk )zk −1 γk ,zk ∈ N.(4.40)Сначала заменим вероятность успеха γk на штраф за число итераций в логарифмическойшкале τk > 0:γk = 1 − exp(−τk ),τk = − log(1 − γk ),Geometric(zk |τk ) = (exp(−τk )zk −1 )(1 − exp(−τk )) = (exp(τk ) − 1) exp(−τk zk ),(4.41)zk ∈ N.