深度學習與生成式模型

Main points

  • 闡述生成式模型的求解目標(聯合分佈),應用方式(判別、生成分佈的樣本)。
  • 闡釋深度學習與生成式模型的關係;
  • 調研深度學習在生成式模型方面的發展,分類闡述(求解方法);
  • 相較於傳統生成式模型,深度生成式模型的特點、優勢;

Outline:
1. 生成式模型的定義[wiki](joint probability distribution)
2. 生成式模型的使用(used:modeling data directly、as an intermediate step to forming a conditional probability density function )無監督、有監督
3. 生成式模型與判別式模型對比較;
4. Examples of generative models include:
5. 深度學習簡介(多層次抽象,特徵表示。。。)
6. 深度生成式模型(wikipedia)
The promise of deep learning is to discover rich, hierarchical models [2] that represent probability distributions over the kinds of data encountered in artificial intelligence applications, such as natural images, audio waveforms containing speech, and symbols in natural language corpora.【Generative Adversarial Nets】Deep generative models have had less of an impact, due to the difficulty of approximating many intractable probabilistic computations that arise in maximum likelihood estimation and related strategies, and due to difficulty of leveraging the benefits of piecewise linear units in the generative context.https://en.wikipedia.org/wiki/Generative_modelc
7. 深度學習模型的求解方法(蒙特卡洛採樣、變分推斷、對抗網絡)
8. 幾種經典生成式模型(DBN、AutoEncoder、對抗網絡、變分推斷網絡)介紹。闡釋深度學習在生成式模型的應用。

正文

1. 生成式模型

    機器學習方法可以分爲生成方法(generative approach)和判別方法(discriminative approach),所學到的模型分別稱爲生成式模型(generative model)和判別式模型(discriminative model)[1]。生成方法通過觀測數據學習樣本與標籤的聯合概率分佈P(X, Y),訓練好的模型能夠生成符合樣本分佈的新數據,它可以用於有監督學習和無監督學習。在有監督學習任務中,根據貝葉斯公式由聯合概率分佈P(X,Y)求出條件概率分佈P(Y|X),從而得到預測的模型,典型的模型有樸素貝葉斯、混合高斯模型和隱馬爾科夫模型等。無監督生成模型通過學習真實數據的本質特徵,從而刻畫出樣本數據的分佈特徵,生成與訓練樣本相似的新數據。生成模型的參數遠遠小於訓練數據的量,因此模型能夠發現並有效內化數據的本質,從而可以生成這些數據。生成式模型在無監督深度學習方面佔據主要位置,可以用於在沒有目標類標籤信息的情況下捕捉觀測到或可見數據的高階相關性。深度生成模型可以通過從網絡中採樣來有效生成樣本,例如受限玻爾茲曼機(Restricted Boltzmann Machine, RBM)、深度信念網絡(Deep Belief Network, DBN)、深度玻爾茲曼機(Deep Boltzmann Machine, DBM)和廣義除噪自編碼器(Generalized Denoising Autoencoders)。判別方法由數據直接學習決策函數f(X)或者條件概率分佈P(Y|X)作爲預測的模型,即判別模型。判別方法關心的是對給定的輸入X,應該預測什麼樣的輸出Y。典型的判別式模型包括k近鄰法、決策樹、支持向量機和提升方法等。

2. 深度生成式模型

    以高斯混合模型(GMM)、樸素貝葉斯(Naïve Bayes)爲代表的生成式模型採用淺層結構,這些結構在解決很多簡單的或者限制較多的問題上效果明顯,但是由於其建模和表示能力有限,在遇到一些更復雜的涉及自然信號(比如人類語言、自然圖像和視覺場景)的問題時就會遇到各種困難。
    深度學習(Deep Learning)是機器學習的子領域,它是一類通過多層表示來對數據之間的複雜關係進行建模的算法。高層的特徵和概念取決於低層概念,而且同一低層的概念有助於確定多個高層概念。深度學習的概念起源於對人工神經網絡的研究,其突破在於經驗性地緩解了深層神經網絡容易陷入局部最優的問題。2006年Hinton提出的深度學習開創性論文[2 3]介紹了一類叫作深度信念網絡(Deep Belief Network, DBN) 的深度產生式模型。DBN是由一組受限玻爾茲曼機(RBMs)堆疊而成的深度生成式網絡,它的核心部分是貪婪的、逐層學習的算法,這種算法可以最優化深度置信網絡的權重,使用配置好的深度置信網絡來初始化多層感知器的權重,常常會得到比隨機初始化的方法更好的結果。在深度神經網絡(Deep Neural Network,DNN)的高度非凸優化問題中,以無監督方式預訓練的生成式模型(DBN)可以提供良好的初始點,然後通過有監督的反向傳播算法微調權值,從而有效解決深度網絡的局部最優情況和欠擬合問題。這種生成式模型與判別式模型相結合的預訓練/微調策略,極大地推動了深度學習早期的發展。

3. 深度信念網絡(DBN)

    深度信念網絡(Deep Belief Network,DBN)是早期深度生成式模型的典型代表,它由多層神經元構成,這些神經元又分爲可見神經元和隱性神經元,可見單元用於接受輸入,隱單元用於提取特徵。網絡最頂上的兩層間的連接是無向的,組成聯合內存 (associative memory),較低的其他層之間有連接上下的有向連接。最底層代表了數據向量 (data vectors),每一個神經元代表數據向量的一維。DBN的組成元件是受限玻爾茲曼機(Restricted Boltzmann Machines ,RBM)。單個RBM由兩層網絡組成,一層叫做可見層 (visible layer),由可見單元 (visible units) 組成,用於輸入訓練數據;另一層叫做隱層 (Hidden layer),由隱單元 (hidden units) 組成,用作特徵檢測器 (feature detectors)。RBM既是一個生成模型,也是一個無監督模型,因爲它使用隱變量來描述輸入數據的分佈,而且這個過程沒有涉及數據的標籤信息。單層RBM網絡的學習目標是無監督地訓練網絡,使得可見層節點v的分佈p(v)最大可能地擬合輸入樣本所在樣本空間的真實分佈q(v)。通過計算可見向量p(v)的對數似然log p(v)的梯度來更新RBM的權值,這個計算過程涉及到了求解RBM模型所確定分佈上的期望。對於生成式模型概率推斷過程中遇到的計算某分佈下函數的期望、計算邊緣概率分佈等複雜問題,可以採用蒙特卡洛思想近似求解。DBN採用對比散度(Contrastive Divergence, CD-k)算法,利用Gibbs採樣的方法來估計RBM的對數似然梯度。多個RBM堆疊組成一個DBN,將隱單元的激活概率(activation probabilities)作爲下一層RBM的可見層輸入數據,從底向上逐層預訓練。DBN是一種生成模型,通過訓練其神經元間的權重,我們可以讓整個神經網絡按照最大概率來生成訓練數據。生成樣本時,使用訓練好的隨機隱單元狀態值,首先在網絡最頂兩層進行多次Gibbs採樣,生成該分佈下的採樣,然後向下傳播,得到每層的狀態和最終的樣本。
這裏寫圖片描述

Reference

[1] 李航.統計學習方法[M].北京:清華大學出版社,2012.
[2] G. Hinton, S. Osindero, and Y. The. A fast learning algorithm for deep belief nets. Neural Computation,18:1527-1554,2006.
[3] G. Hinton and R.Salakhutdinov. Reducing the dimensionality of data with neural networks.Science,313(5786):504-507,July 2006.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章