張鈸、朱軍團隊最新論文:深度隱式模型+概率圖模型=Graphical-GAN
雷鋒網 AI 科技評論按:近日張鈸院士和朱軍教授團隊在 arXiv 上貼出一篇論文《Graphical Generative Adversarial Networks》,論文提出了一種 Graphical-GAN 模型框架,該模型綜合了深度隱式模型(Deep Implicit Model)和概率圖模型(Probabilistic Graphical Models)的優點,能夠利用數據的基本結構來進一步提升生成網路的表現。
一、深度隱式模型和概率圖模型
在談論這個模型之前,雷鋒網先簡單介紹一下深度隱式模型和概率圖模型。
研究機器學習的同學應該對生成模型都不陌生,它是指一系列用於隨機生成可觀測數據的模型。換句話說就是,假設在一個連續的或離散的高維空間 X 中,存在一個變數 X 服從一個未知分布 P_data (X )。我們根據一些可觀測 的樣本 x(1),x(2),··· ,x(N) 來估計這個未知分布。生成模型就是建立一個分布模 型 P_model (X ) 來近似未知的數據分布 P_data (X ),並可以用這個模型來生成一些 樣本,使得「生成」樣本和「真實」樣本儘可能地相似。但在實際中,觀測到的樣本往往只是真實樣本的一部分變數,叫做可觀測變數。除了可觀測變數外,還有一些變數是不可觀測的,叫做隱藏變數 (Latent Variables),或隱變數。假設隱變數 Z 是另外一個相對低維的空間 Z 中的變 量,完整的生成式模式應該是建模 P_model(X,Z)。根據鏈式法則 P_model(X,Z) =P_model (Z )P_model (X |Z ),生成式模式可以轉換為對兩個分布的建模:一個是觀測變數 X 的條件分布 P_model (X |Z ),另一個是隱變數的先驗分布 P_model (Z )。
生成模型有兩種,一種是 prescribed 模型,一種是 Implicit 模型。本文提到的深度隱式模型,即為後者與深度學習的結合,就是利用神經網路的方式來隱式地建模條件分布 p(x | z)。而其中所謂的隱式建模,是指並不對條件分布 p ( x | z ) 本身進行建模,而是建模生成過程,即學習一個映射函數 g : z x。神經網路的輸入為隱變數 z,輸出為觀測變數 x。本質上來說,GAN 也是深度隱式模型的一種形式,這裡就不再詳細敘述。
據本篇論文作者表示,目前已知的深度隱式模型能夠生成相當真實的圖像,但是沒有能夠很好地利用數據中的基本結構,例如圖像的離散語義信息、視頻幀之間的連續性等。
另一方面,在概率論和統計學中,概率圖模型是指一種用圖結構來描述多元隨機 變數之間條件獨立關係的概率模型。圖,是由節點和節點之間的邊組成。在概率圖模型中,每一個節點都表示 一個隨機變數 (或一組隨機變數),邊表示這些隨機變數之間的概率依賴關係。
常見的概率圖模型可以分為兩類:有向圖模型和無向圖模型。前者也叫 做貝葉斯網路,為有向非循環圖,邊的方向代表了因果關係。本篇文章所採用的即貝葉斯網路。無向圖模型也叫 做馬爾可夫隨機場,每條邊代表來兩個變數之間有概率依賴關係,但是並不表明 任何因果關係。對於一個非全連接的圖模型,都可以根據條件獨立性將聯合概 率分布進行因子分解,表示為一組局部的條件概率分布的乘積。下面為貝葉斯網路的嚴格定義:
在機器學習中,很多機器學習模型都可以看作是概率模型,也即將學習任務歸結於計算輸入和輸出之間的條件概率分 布。概率圖模型顯然可以表示數據中結構,但是它的缺點是隨著節點數的增加,演算法將會變得非常複雜,因此它無法處理圖像這類複雜的數據。
二、Graphical-GAN
Graphical-GAN,如上面所說,結合了深度隱式模型和概率圖模型兩者的優點。具體來說,作者在 Graphical-GAN 中使用貝葉斯網路來表示變數間的結構;另一方面,用深度隱似然函數來為複雜數據建模。
表示成數學形式,隱式模型中的條件分布可寫為:
其中X、Z如上所說為可觀測變數和隱變數,而G表示關聯有向無環圖(也即貝葉斯網路)。由於貝葉斯網路的局部結構性質,分布可以進一步分解為:
這裡的 Pa_G(x)(x 包含可觀測變數和隱變數)即為前面貝葉斯定義中的 x_pi_k,表示了關聯圖 G 中 x_j 的父節點。當給定依賴性結構的情況下,變數之間的依賴函數就可以參數化為深度神經網路,進而來擬合複雜的數據。這種結合了圖的深度隱式模型,作者將之稱為圖生成對抗網路(Graphical-GAN)。
由於模型本身是高度非線性的,這導致計算後驗概率 p(z|*) 難以計算。為了解決這個問題,作者採用一個神經網路來近似計算,這在統計中稱做推理網路;換句話說就是,利用一個神經網路來估計 p(z|x; θ) 的近似分布 q(z|x; φ),這裡φ是網路參數。這裡的細節類似於上面的過程,在此就不再展開。
剩下的工作就是同時學習生成模型和識別模型中的參數,讓 p 和 q 儘可能地相似。作者提出兩種基於散度最小化的演算法,一種為全局演算法,一種為局部演算法。如圖所示:
在全局演算法中直接忽略數據中的結構信息,去最小化 p(X , Z) 和 q(X , Z) 之間的散度。最小化問題就變成了:
寫成 GAN 的形式就是:
另一方面,局部演算法考慮數據中的結構信息,將前面 P_G(X,Z) 簡化寫為
這裡,A 為前面 (x | Pa_G(x)) 或(z | Pa_G(z))的縮寫,F_G 是相應的因子集合。於是這裡的最小化問題以 GAN 的形式寫出即為:
三、兩個案例
在實際中,涉及到結構化數據,有兩種常見的典型案例,上面的圖例中也有提到。一種情況是,數據集由具有離散屬性或類的圖像組成,例如 MNIST(數字)、SVHN(彩色背景數字)、CIFAR10(自然)、CelebA(人臉)等數據集;一種情況是具有時間依賴性的圖像序列組成的數據集,例如 Moving MNIST、3D chairs 等。
作者根據 Graphical-GAN,針對這兩類數據集設計了兩個模型 GMGAN 和 SSGAN,從而來生成有意義的樣本。
1、離散特性的數據集
模型:GMGAN
結果:以 MNIST 數據集為例。GAN-G 和 GMVAE 為對照模型。GMGAN-G 和 GMGAN-L 分別代表全局演算法模型和局部演算法模型。k 表示固定混合度。
如果通過生成樣本不容易看出哪個更優的話,也可以通過下表數據來對比:
可以看出
a. GMGAN 演算法生成樣本的表現媲美(甚至優於)於其他模型;
b. 局部演算法優於全局演算法,原因在於它利用了數據中的結構信息。
2、連續特性的數據集
模型:SSGAN
結果:在上面的實驗中,由於 MNIST 樣本的生成已經相對成熟,各模型的差距或許還不能充分體現出來。下面我們來看在 Moving MNIST(也即數字隨著時間運動)數據集和 3D chairs 數據集上的實驗結果。
上圖顯示了當時間 T 設為 16 時,幾個模型生成的樣本。其他幾個模型在這種數據集上的結果是不忍直視的。
同樣的表現也體現在 3D Chairs 的生成上,這裡設置 T=31。從這些樣本的結果可以看出 Graphical-GAN 在利用數據結構後的優異表現。
四、結論和未來研究
雷鋒網總結:這篇論文提出了 Graphical-GAN 的模型框架,基於該框架所構建的模型能夠利用結構化數據中的結構信息,從而進一步提高生成樣本的質量。在文章中,作者針對離散結構和時間結構分別用兩個實例驗證了這個模型框架的有效性和優越性。作者表示,本文所使用的代碼隨後將在Github 上分享。
文章中,作者也提到在未來的研究中可能將對 Graphical-GAN 做以下方面的擴展:1)在模型結構方面,將學習演算法和推理演算法廣義化;2)在模型驗證方面,將使用具有更複雜結構的實例(例如樹)來做;3)在實用方面,嘗試對結構化數據使用半監督學習的方法。
參考資料:
[1]Chongxuan Li, Max Welling, Jun Zhu, Bo Zhang, Graphical Generative Adversarial Networks, arXiv:1804.03429
[2]Shakir Mohamed, Balaji Lakshminarayanan, Learning in Implicit Generative Models, arXiv:1610.03483
[3]邱錫鵬,神經網路與深度學習
[4]Bayesian network, Wikipedia_en
※VR力反饋手套公司Dexta獲數千萬元融資,CEO稱從產品開賣就盈利
※汽車金融三國殺:互聯網規則下「熊來了」的故事
TAG:雷鋒網 |