Taiwan’s pioneering and highest deep learning meetup, launched on 2016/11/11 @ 83F, Taipei 101
AI是一條孤獨且充滿惶恐及未知的旅程,花俏絢麗的收費課程或活動絕非通往成功的捷徑。
衷心感謝當時來自不同單位的AI同好參與者實名分享的寶貴經驗;如欲移除資訊還請告知。
由 TonTon Huang Ph.D. 發起,及其當時任職公司(台灣雪豹科技)無償贊助場地及茶水點心。
YouTube | Facebook | 回 GitHub Pages | 網站 | Hugging Face Space
2018/04/13, Deep Generative Models @ Deep Learning Book Chapter 20
探索 RBM、DBN、DBM、VAE、GMMN 與自回歸模型等核心技術
深度生成模型的核心目標是表示多個變數的機率分佈。
這些模型可大致分為兩類:
RBM 是一種具有單個隱藏層的玻爾茲曼機,其特點是可見單元 (v) 和隱藏單元 (h) 之間有連接,但層內沒有連接 (二分圖結構)。其機率分佈由能量函數定義,機率與能量的負指數成正比。
通常使用基於 MCMC 採樣的近似最大概似方法,如對比散度 (CD) 和隨機最大概似 (SML / PCD)。訓練過程涉及最大化 log 概似,其梯度包含 Positive Phase (數據驅動) 和 Negative Phase (模型驅動)。Negative Phase 難以直接計算,需通過採樣近似。
DBN 是最早成功應用的深度非卷積生成模型之一。
是一個混合圖模型:頂部兩層之間的連接是無向的 (構成一個 RBM);所有其他層之間的連接是有向的,箭頭指向最接近數據的可見層。層內沒有連接。
DBN 中的精確推斷是難解的,原因包括有向層內的「解釋消除」效應以及頂部兩層無向連接的相互作用。
標準訓練採用貪婪逐層預訓練:首先訓練一個 RBM 建模輸入,然後將其隱藏層激活作為下一層 RBM 的輸入,重複此過程。訓練好的 DBN 權重常用於初始化 MLP 參數進行判別性微調。
DBM 是一種完全無向的深度生成模型,擁有多個潛變數層。每層內的單元與相鄰層單元條件獨立 (層內無連接)。
DBM 的層可組織成二分圖,使得塊吉布斯採樣可以高效進行。然而,從模型生成樣本相對困難,需在所有層使用 MCMC。推斷 $P(h|v)$ 難解,但相較 DBN 更容易使用變分近似 (如平均場近似) 處理。平均場推斷允許 DBM 捕獲自頂向下的反饋交互影響。
面臨難解的配分函數和難解的後驗分佈雙重挑戰。參數學習通常通過最大化對數概似的變分下界,使用 SML。貪婪逐層預訓練是一種常見且有效的方法,RBM 參數在組合成 DBM 前需調整 (如權重除以2)。
聯合訓練方法: 中心化 DBM (Centered DBM) 和多預測 DBM (MP-DBM) 提供了替代方案。
這類模型不直接建模能量或可視變數上的複雜機率分佈,而是訓練一個可微分的生成器網路。
編碼器將輸入映射到潛在空間中一個分佈的參數 (如高斯分佈的均值和標準差)。從此潛在分佈採樣一個潛在變數,解碼器將其映射回資料空間。
重參數化技巧 (Reparameterization Trick) 允許梯度通過採樣步驟反向傳播。
訓練目標是最大化證據下界 (ELBO),包含重構項和正則化項。
訓練目標是使生成器產生的樣本的矩 (統計量) 與真實數據樣本的矩盡可能匹配。通過最小化最大平均偏差 (MMD) 代價函數實現。
與 GAN 和 VAE 不同:GMMN 不需要判別器網路,也不需要編碼器/推斷網路。
批量大小對 MMD 的準確估計至關重要。
這是有向機率模型,沒有潛在隨機變數。使用機率的鏈式法則分解聯合機率 $P(x) = \prod P(x_i | x_{
優勢:避免維度災難,允許參數/特徵共享。NADE 是一種具體參數共享方案。RNADE 可擴展至實值數據。
對數概似 (Log Likelihood) 比較: 在 MNIST 等數據集上需小心,數據處理方式會極大影響結果,不同處理方式下的值不可直接比較。
視覺樣本檢查: 具有局限性。判斷主觀;難以發現模式崩潰 (Mode Collapse) 和過擬合;無法檢測低機率但重要的錯誤。
本章介紹的多種深度生成模型架構 (包括玻爾茲曼機、DBN、DBM、VAE、GAN (雖然GAN在本文檔CH20.md中未詳細展開,但屬於此類模型範疇)、自回歸模型等) 沒有一種是普適的最佳選擇。模型的選擇取決於具體的應用需求、數據特性和計算資源。