來學偉
(三門峽職業(yè)技術(shù)學院 信息傳媒學院,河南 三門峽 472000)
許多概率模型是很難訓練的,其原因是很難進行推斷。在深度學習中,我們通常有一個可見變量v的集合和一個隱變量h的集合。推斷的挑戰(zhàn)往往在于計算p(h|v)或者計算在分布p(h|v)下期望的困難性。而這樣的操作在一些任務比如最大似然學習中往往又是必需的[1]。
為了構(gòu)造這樣一個優(yōu)化問題,假設(shè)我們有一個包含可見變量v和隱變量h的概率模型。我們希望計算觀察數(shù)據(jù)的概率對數(shù)logp(v;θ)。有時候如果邊緣化消去h的操作很費時的話,我們通常很難計算logp(v;θ)。作為替代,我們可以計算一個logp(v;θ)的下界L(v,θ,q)。這個下界叫作證據(jù)下界(Evidence Lower Bound,ELBO)。這個下界的另一個常用名字是負變分自由能(Variational Free Energy)。具體地,這個證據(jù)下界是這樣定義的:
L(v,θ,q) =logp(v;θ)?DKL(q(h|v)||p(h|v;θ)) (1)在這里q是關(guān)于h的一個任意概率分布。
因為logp(v)和L(v,θ,q)之間的距離是由KL散度來衡量的。因為KL散度總是非負的,我們可以發(fā)現(xiàn)L小于等于所求的概率的對數(shù)。當且僅當q完全相等于p(h|v)時取到等號。
令人吃驚的是,對某些分布q,L可以被化得更簡單。通過簡單的代數(shù)運算我們可以把L重寫成一個更加簡單的形式:
這也給出了證據(jù)下界的標準定義:
對于一個較好的選擇q來說,L是容易計算的。對任意選擇q來說,L提供了一個似然函數(shù)的下界。越好的近似q的分布q(h|v)得到的下界就越緊,換句話說,就是與logp(v)更加接近。當q(h|v) =p(h|v)時,這個近似是完美的,也意味著L(v,θ,q)=logp(v;θ)。
第一個最大化下界L的算法是期望最大化(Expectation Maximiza-tion,EM)算法,在隱變量模型中,這是一個非常熱門的訓練算法。在這里我們描述Neal and Hinton所提出的EM算法。EM并不是一個近似推斷算法,但是是一種能夠?qū)W到近似后驗的算法[2]。
EM算法包含了交替進行兩步運算直到收斂的過程:
E步(Expectation step):令θ(0)表示在這一步開始時參數(shù)的初始值。令q(h(i)|v) =p(h(i)|v(i);θ(0))對任何我們想要訓練的(對所有的或者minibatch數(shù)據(jù)均成立)索引為i的訓練樣本v(i)。通過這個定義,我們認為q在當前的參數(shù)θ(0)下定義。如果我們改變θ,那么p(h|v;θ)將會相應的變化,但是q(h|v)還是不變并且等于p(h|v;θ(0))。
M步(Maximization step):使用選擇的優(yōu)化算法完全地或者部分地最大化關(guān)于θ的
這可以被看作通過坐標上升算法來最大化L。在第一步中,我們更新q來最大化L,而另一步中,我們更新θ來最大化L。
我們通常使用推斷(inference)這個術(shù)語來指代給定一些其他變量的情況下計算某些變量的概率分布的過程。當訓練帶有隱變量的概率模型時,我們通常關(guān)注于計算p(h|v)。在推斷中另一個選擇是計算一個最有可能的隱變量的值來代替在其完整分布上的抽樣。在隱變量模型中,這意味著計算:
主持人:為清理政府部門和國有大企業(yè)拖欠民營企業(yè)賬款,國務院常務會議決定抓緊開展專項清欠行動,國辦牽頭督辦,有關(guān)部門各負其責,審計部門要介入,對欠款“限時清零”。 清欠行動有何意義?推進過程中可能會遇到哪些難點?如何克服推進?
這被稱作是最大后驗(Maximum A Posteriori)推斷,簡稱MAP推斷。
MAP推斷并不是一種近似推斷,它只是精確地計算了最有可能的一個h*。然而,如果我們希望能夠最大化L(v,h,q),那么我們可以把最大后驗推斷看成是輸出一個q的學習過程。在這種情況下,我們可以將最大后驗推斷看成是近似推斷,因為它并不能提供一個最優(yōu)的q。
我們通過限定q分布屬于某個分布族,能夠使得最大后驗推斷成為一種形式的近似推斷。具體地說,我們令q分布滿足一個Dirac分布:
這也意味著我們可以通過μ來完全控制q。通過將L中不隨μ變化的項丟棄,剩下的是一個優(yōu)化問題:
這等價于最大后驗推斷問題:
因此,我們能夠解釋一種類似于EM算法的學習算法,其中我們輪流迭代兩步,一步是用最大后驗推斷估計出h*,另一步是更新θ來增大logp(h*,v)。從EM算法角度看,這也是一種形式的對L的坐標上升,EM算法的坐標上升中,交替迭代的時候通過推斷來優(yōu)化L關(guān)于q以及通過參數(shù)更新來優(yōu)化L關(guān)于θ。整體上說,這個算法的正確性可以得到保證,因為L是logp(v)的下界。在MAP推斷中,這個保證是無效的,因為這個界會無限地松,由于Dirac分布的熵的微分趨近于負無窮。然而,人為加入一些μ的噪聲會使得這個界又有了意義。
MAP推斷作為特征提取器以及一種學習機制被廣泛地應用在了深度學習中。在稀疏編碼模型中,它起到了關(guān)鍵作用[3-4]。
可見的節(jié)點是由一個線性變化加上噪音生成的:
計算或者表達p(h|v)太過困難。每一對hi,hj變量都是v的母節(jié)點。這也意味著當v可觀察時,圖模型包含了連接hi和hj的一條活躍路徑。因此,p(h|v)中所有的隱藏單元都包含在了一個巨大的團中。如果模型是高斯,那么這些關(guān)系可以通過協(xié)方差矩陣來高效地建模。然而稀疏型先驗使得模型并不是高斯[5]。
如果我們將訓練集中所有的h向量拼在一起并且記為H,并將所有的v向量拼起來組成矩陣Y,那么稀疏編碼問題意味著最小化:
為了避免如極端小的H和極端大的W這樣的病態(tài)的解,許多稀疏編碼的應用包含了權(quán)值衰減或者對H列范數(shù)的限制[6]。
我們可以通過交替迭代最小化J分別關(guān)于H和W的方式來最小化J。兩個子問題都是凸的。事實上,關(guān)于W的最小化問題就是一個線性回歸問題。然而關(guān)于這兩個變量同時最小化J的問題并不是凸的。
本文提出一種基于逐層加速策略來加速深度學習中關(guān)于均值推斷過程,縮短均值推斷的時間,提高深度學習的學習效果,通過建立一個簡單的識別模型,避免均值推斷的過程中不能更改權(quán)值的缺陷,采用逐層的加速策略,利用深度學習得到的權(quán)值來調(diào)整識別模型每一層的識別權(quán)值,使得識別模型上的每一層的預測權(quán)值能更加逼近相應的每一層的均值[7]。從而加速了學習過程和獲得更加符合數(shù)據(jù)特征的學習模型,進而提高在分類數(shù)據(jù)集上的準確性以及縮短分類的時間。