KL散度:
KL散度 (Kullback-Leibler Divergence)
KL散度是資訊理論中的一個重要概念,用於衡量兩個機率分佈之間的差異。它評估分佈 \(P\) 在多大程度上與分佈 \(Q\) 不一致。
定義
離散分佈下的公式:
\[D_{\text{KL}}(P \| Q) = \sum_{x} P(x) \log \frac{P(x)}{Q(x)}
\]
連續分佈下的公式:
\[D_{\text{KL}}(P \| Q) = \int P(x) \log \frac{P(x)}{Q(x)} dx
\]
公式解釋
- \(P(x)\):真實分佈或目標分佈(資料生成分佈)。
- \(Q(x)\):近似分佈或模型分佈(假設的分佈)。
- \(\log \frac{P(x)}{Q(x)}\):對 \(Q(x)\) 偏離 \(P(x)\) 的“懲罰”。
性質
-
非負性:
\[D_{\text{KL}}(P \| Q) \geq 0 \]且當且僅當 \(P(x) = Q(x)\) 對所有 \(x\) 成立時取零。
-
方向性:
\[D_{\text{KL}}(P \| Q) \neq D_{\text{KL}}(Q \| P) \]
直觀理解
KL散度衡量使用分佈 \(Q\) 來近似分佈 \(P\) 所需的額外資訊量。例如:
- 如果 \(Q\) 非常接近 \(P\),額外成本(KL散度)會很小。
- 如果 \(Q\) 與 \(P\) 偏差較大,KL散度值會增大。
應用場景
-
機器學習:
- 用於最大似然估計,最佳化模型分佈 \(Q\) 以最小化 KL散度。
- 變分推斷中,衡量變分分佈與目標後驗分佈的差異。
-
自然語言處理:
- 評估兩個文字分佈的相似性。
-
資訊理論:
- 度量兩個信源之間的資訊量差異。
-
機率分佈對比:
- 分析實驗資料分佈 \(P\) 和模型預測分佈 \(Q\) 的差異。
與交叉熵的關係
KL散度可以透過交叉熵和熵來表達:
\[D_{\text{KL}}(P \| Q) = H(P, Q) - H(P)
\]
其中:
- \(H(P, Q)\):交叉熵。
- \(H(P)\):熵。
總結
KL散度是一種衡量機率分佈差異的重要工具,但由於其不對稱性限制,有時會結合對稱度量(如 JS散度)使用。