Deep Learning 101

Taiwan’s pioneering and highest deep learning meetup, launched on 2016/11/11 @ 83F, Taipei 101

AI是一條孤獨且充滿惶恐及未知的旅程,花俏絢麗的收費課程或活動絕非通往成功的捷徑。
衷心感謝當時來自不同單位的AI同好參與者實名分享的寶貴經驗;如欲移除資訊還請告知。
TonTon Huang Ph.D. 發起,及其當時任職公司(台灣雪豹科技)無償贊助場地及茶水點心。

Deep Learning 101 Buy Me A Coffee

YouTube | Facebook | 回 GitHub Pages | 網站 | Hugging Face Space

017/10/27, Structured Probabilistic Models @ Deep Learning Book Chapter 16

結構化機率模型與圖模型

深度學習中的依賴關係建模、推斷與挑戰

核心概念與定義 Core Concepts & Definitions

結構化機率模型 (Structured Probabilistic Model),也稱 圖模型 (Graphical Model),其核心思想是使用圖 (graph) 來描述機率分佈中多個隨機變數之間的直接相互作用

圖中的節點代表隨機變數,而邊則表示這些變數之間的直接依賴或相互作用。圖模型之所以得名,是因為其結構是由圖來定義和可視化的。

非結構化建模的挑戰與結構化模型的優勢 Challenges & Advantages

非結構化機率建模在處理高維數據時面臨嚴重的計算挑戰,即維度災難 (Curse of Dimensionality)

維度災難體現 Manifestations of Curse of Dimensionality

  • 內存開銷巨大: 儲存完整的聯合機率分佈表需要指數級的記憶體。
  • 統計效率低下: 參數數量龐大,需要指數級增長的訓練數據量。
  • 運行時間成本高昂: 計算推斷任務和從分佈中採樣的計算量呈指數級增長。

結構化機率模型通過顯式描述變數子集間(通常是稀疏的)相互作用,用較少參數對複雜依賴關係建模,顯著降低表示、學習和推斷的成本。其他優勢包括:允許融入先驗知識、提供模組化和可解釋性、為開發高效算法提供基礎。

圖模型的種類與表示 Types of Graphical Models

有向圖模型 (貝氏網路) Directed Models (Bayesian Networks)

使用有向無環圖 (DAG) 表示變數間的條件依賴關係或因果關係。

聯合機率分佈分解為: $p(x) = \prod_i p(x_i | \text{Pa}_G(x_i))$。

優勢:大大減少了所需的參數數量和計算複雜度

無向圖模型 (馬可夫隨機場) Undirected Models (Markov Networks)

使用無向圖表示變數間的對稱相互作用或關聯,不指定因果方向。適合描述變數間依賴是對稱的情況。

團 (Clique): 圖中任意兩節點間都有邊連接的節點子集。

因子 (Factor) / 勢函數 $\phi(C)$: 定義在圖的團 C 上的非負函數。

聯合機率定義 (未歸一化): $\tilde{p}(x) = \prod_{C \in G} \phi(C)$。

配分函數 (Partition Function) $Z$: $Z = \sum_x \tilde{p}(x)$。其計算通常很困難,是精確學習和推斷的主要挑戰

基於能量的模型 (EBM) Energy-Based Models

一種無向圖模型框架,未歸一化機率與能量函數 $E(x)$ 的負指數成正比: $\tilde{p}(x) = \exp(-E(x))$。

學習目標是調整 $E(x)$,使期望狀態能量低,非期望狀態能量高

例子:玻爾茲曼機 (Boltzmann Machine)、專家乘積 (Product of Experts)。

因子圖 Factor Graphs

一種二分圖,通過顯式引入因子節點更精確表示因式分解結構,有助於消息傳遞算法。

條件獨立性判斷 Conditional Independence

  • 無向模型中的分離 (Separation): 在給定集合 S 時,若 A 到 B 的所有路徑被 S 中節點阻斷,則 A 和 B 在給定 S 時條件獨立。
  • 有向模型中的 d-分離 (d-Separation): 判斷條件獨立性時考慮邊方向和「對撞」結構 (collider / V-結構 $i \rightarrow m \leftarrow j$)。
  • 對撞節點特殊規則: 對撞節點 $m$ 若未被觀察,則路徑阻斷;若 $m$ 或其後代被觀察,路徑則暢通,可能使原本獨立的父節點變得相關。

圖模型間的轉換 Model Conversion

  • 有向到無向 (Moralization): 處理「不道德結構」,連接共同子節點的父節點並去掉箭頭。
  • 無向到有向: 通常更複雜,需定向邊而不引入新的有向圖獨立性。

從圖模型中採樣 Sampling from Models

  • 有向模型: 通常使用原始採樣 (Ancestral Sampling)
  • 無向模型: 通常使用近似採樣,如 Gibbs 採樣 (Gibbs Sampling) (一種 MCMC 方法)。

學習依賴關係與潛變數 Learning Dependencies & Latent Variables

潛變數 (Hidden Variables) $h$: 模型中未觀察到的變數,用於建模可見變數 $v$ 間的複雜依賴關係、學習抽象表示或簡化計算。

結構學習 (Structure Learning): 從數據中學習圖模型的圖結構。深度學習通常不直接學習稀疏連接,而是使用固定結構和正則化等間接方式。

推斷與近似推斷 Inference & Approximation

推斷 (Inference): 計算未觀察變數(特別是潛變數 $h$)在給定觀察變數 $v$ 下的後驗機率分佈 $p(h|v)$ 或其期望值。

精確推斷 (Exact Inference): 對於許多複雜模型是難以處理的 (intractable) (#P-hard),因計算歸一化常數(分母 $p(v)$)需對所有潛變數配置進行指數級求和或積分。

近似推斷 (Approximate Inference): 當精確推斷不可行時使用,旨在尋找後驗分佈的良好近似,例如置信傳播 (Belief Propagation)、變分推斷 (Variational Inference)。

實例:受限玻爾茲曼機 (RBM) Example: Restricted Boltzmann Machine

結構 (Structure): 一種無向圖模型 (EBM),有一層可見單元 $v$ 和一層隱藏單元 $h$,形成二分圖結構(層內無連接)。

能量函數 (Energy Function): 通常為 $E(v,h) = -b^T v - c^T h - v^T W h$。

計算優勢 (源於二分圖結構) Computational Advantages (from Bipartite Structure)

  • 條件獨立性: 給定一層($v$ 或 $h$),另一層的單元是條件獨立的。
  • 高效 Gibbs 採樣: 可並行對一層單元進行塊 Gibbs 採樣。
  • 易於計算的梯度

RBM 用於學習數據的表示 $E_{h \sim p(h|v)}[h]$。早期曾用於深度學習模型的預訓練或初始化,但目前較少使用。