王 浩,王寶麗,安曉丹
(1. 太原師范學院 計算機系,山西 晉中 030619;2. 運城學院 數(shù)學與信息技術學院,山西 運城 044000)
作為一門交叉學科,人工智能不僅融合了腦認知科學、心理學等社會科學研究成果,而且離不開數(shù)學、統(tǒng)計學、信息科學、計算機科學等諸多學科的支持。其中,統(tǒng)計理論及統(tǒng)計應用方法在人工智能中發(fā)揮著不可或缺的作用[1,2]。近年來,深度學習作為人工智能的核心技術,已經(jīng)廣泛應用在各個領域,如計算機視覺[3]、自然語言處理[4]、網(wǎng)絡數(shù)據(jù)挖掘[5]等。深度學習作為機器學習的一個工具,其依然滿足機器學習的基本范式,而統(tǒng)計學習理論是機器學習的理論基礎[6]。一方面,統(tǒng)計分布是決策樹學習算法的核心支撐理論,用于控制分支屬性的選擇及分支節(jié)點作為葉子節(jié)點的終止條件[7]。另一方面,機器學習的泛化誤差、逼近能力等基本理論的分析,都需要依賴嚴格的概率統(tǒng)計分析,這表明概率統(tǒng)計分析對于機器學習的發(fā)展起到了重要的理論支撐作用。
深度學習近年來已經(jīng)成為人工智能和機器學習領域最熱門的研究方向,其在很多工程上的預測精度已經(jīng)超越了人類。但是,深度學習的理論研究并沒有引起大家的重視,深度學習的相關理論仍然沒有完善,這嚴重限制了深度學習的進一步發(fā)展。因此,為了更好地理解深度學習,尤其是深度生成模型背后的機理,我們將從概率統(tǒng)計分析的角度對變分自編碼器(variational auto-encoder,VAE)[8]和生成對抗網(wǎng)絡(Generative Adversarial Networks,GAN)分別進行數(shù)學機理分析。
變分自編碼器作為自編碼器(auto-encoder,AE)的變體,其在隱空間引入了概率統(tǒng)計分布后,解決了自編碼器無法生成新數(shù)據(jù)的缺陷。目前,變分自編碼器已成為生成任務中主流的生成工具。接下來我們從概率統(tǒng)計的角度分析自編碼器的缺陷以及變分自編碼器背后的機理。
自編碼器屬于無監(jiān)督式的深度學習模型,模型架構如圖1所示。主要由編碼器(Encoder)和解碼器(Decoder)兩部分組成。編碼器模塊主要負責將輸入數(shù)據(jù)x通過映射函數(shù)f轉變?yōu)殡[變量z:
z=f(x)
其中l(wèi)oss為重構損失。
圖1 自編碼器模型架構示意圖
根據(jù)以上分析,可知編碼器的本質是特征降維的過程,解碼器的本質是特征重構的過程。也就是自編碼器可以將一個數(shù)據(jù)降維到隱空間后再重構回其本身。同時,從自編碼器的優(yōu)化目標可以看出,自編碼器只是對重構損失進行了約束,并沒有對隱空間的性質進行約束,僅僅是得到了輸入數(shù)據(jù)對應的具體隱變量。因此,模型經(jīng)過訓練后,只能確保訓練集中的數(shù)據(jù)點能夠從隱空間無誤差地重構回本身,而這也意味著模型出現(xiàn)了過擬合現(xiàn)象,導致自編碼器對于訓練集之外的數(shù)據(jù)點無法進行有效解碼,即無法生成新的數(shù)據(jù)。
圖2 變分自編碼器模型架構示意圖
根據(jù)貝葉斯公式,在訓練階段我們需要利用觀測變量對隱空間的概率分布進行更新學習,即:
=Eq(z|x)logp(x)
=Eq(z|x)logp(x,z)-Eq(z|x)logp(z|x)
=KL(q(z|x)‖p(z|x))+ELBO
ELBO=-KL(q(z|x)‖p(z|x))+Eq(z|x)logpq(x|z),由于KL(q(z|x)‖p(x|z))≥0,因此可以得到:
=-KL(q(z|x)‖p(z))+Eq(z|x)logp(x|z)
最小化KL(q(z|x)‖p(z))也就是讓概率分布q(z|x)和p(z)之間的距離最小化,為了方便計算,變分自編碼器假設q(z|x)和p(z)均為正態(tài)分布,其中,q(z|x)~N(μ,σ2),p(z)~N(0,I)。可以得到:
KL(N(μ,σ2)‖N(0,1))
與自編碼器的優(yōu)化目標不同,變分自編碼器的優(yōu)化目標(損失函數(shù))由兩部分組成:
正則化損失也正是變分自編碼器與自編碼器的本質區(qū)別,即變分推斷的引入。變分自編碼器最初的目的是對自編碼器進行改進從而可以用于生成數(shù)據(jù),因此需要學習出隱空間的概率分布p,得到隱空間的概率分布后,即可在隱空間隨機進行采樣其他變量送入解碼器,從而生成新的數(shù)據(jù)。但是,直接去求解后驗概率來計算隱空間的概率分布計算量很大,實際中很難直接求解,因此變分自編碼器引入變分推斷的思想,通過學習易于求解的概率分布q,同時保證概率分布p和q的距離最小化,這樣就可以用概率分布q來近似概率分布p。本質上來說,變分推斷解決的問題可以歸結為概率統(tǒng)計機器學習問題,很多生成模型的背后機理都用到了變分推斷。也正是變分推斷的引入,即概率統(tǒng)計分析的引入,才使得傳統(tǒng)深度學習模型自編碼器能夠成功應用于生成問題,這也意味著概率統(tǒng)計分析對于深度學習的發(fā)展起到了至關重要的作用。
生成對抗網(wǎng)絡是深度學習領域最熱門的研究方向之一,是目前最成功的生成模型,已經(jīng)成功應用于實際應用中,特別是在計算機視覺領域掀起了研究熱潮,研究學者們相繼提出了StyleGAN、DCGAN、CycleGAN等生成模型用于特定任務。接下來我們將從概率統(tǒng)計的角度分析生成對抗網(wǎng)絡背后的數(shù)學機理。
生成對抗網(wǎng)絡屬于無監(jiān)督模型,主要由生成器和判別器兩部分組成,模型架構如圖3所示。生成對抗網(wǎng)絡本質上是一種零和博弈思想的體現(xiàn),其將數(shù)據(jù)生成任務看作生成器和判別器兩個模塊之間的對抗博弈,即生成器根據(jù)輸入的噪聲(通過正態(tài)分布采樣或者均勻分布采樣得到)來生成新樣本,而判別器用來判別樣本是真實觀測的還是由生成器生成的新樣本。生成器的目的是生成盡可能逼近真實樣本的新樣本,而判別器則試圖正確區(qū)分出真實樣本和生成的新樣本,這也正是對抗思想的體現(xiàn),生成器和判別器正是在對抗迭代訓練中彼此提高自己的性能,當判別器區(qū)分不出真實樣本和生成的樣本時,此時生成器即可生成完美的新樣本。
圖3 生成對抗網(wǎng)絡的模型架構示意圖
上述GAN的思想可以用一個優(yōu)化目標來形式化描述:
其中pdata代表觀測真實數(shù)據(jù)的概率分布,p(z)表示輸入的噪聲分布,θg和θd分別表示生成器和判別器的參數(shù)。Gθg(z)表示生成器生成的新樣本。Dθd(x)表示判別器的輸出,為[0,1]之間的概率,1表示輸入數(shù)據(jù)為真實樣本,0表示輸入數(shù)據(jù)為生成樣本。
具體地,生成器Gθg(z)希望最小化目標函數(shù),使得Dθd(Gθg(z))盡量接近于1,即使得其生成的樣本盡可能逼近真實樣本,即
而判別器Dθd(x)希望最大化目標函數(shù),使得Dθd(x)接近于1,而Dθd(Gθg(z))接近于0,即:
從概率統(tǒng)計的角度分析,生成對抗網(wǎng)絡的本質是利用生成器和判別器進行迭代對抗訓練,學習一個從隨機噪聲分布p(z)到真實數(shù)據(jù)分布pdata的映射函數(shù),然后從噪聲分布p(z)中隨機采樣新的噪聲輸入該映射函數(shù)即可生成得到新的樣本。
深度學習雖然在各個應用領域都取得了巨大的成功甚至超過了人類專家水平,然而,理論部分的欠缺嚴重限制了深度學習的進一步發(fā)展。文章從概率統(tǒng)計的角度,對深度生成模型變分自編碼器和生成對抗網(wǎng)絡背后的數(shù)學機理進行了系統(tǒng)的理論分析,為深度生成模型的進一步發(fā)展提供了理論支撐。