EM 算法用於高斯混合模型和主成分分析 – Stanford CS229 第 10 講 (2026年春季)
高斯混合模型的 EM 算法
EM 算法提供了一種原則性的方法,通過迭代構建對數似然的下界並將其最大化來擬合高斯混合模型。
E 步:透過詹森不等式構建下界
E 步構建一個在當前參數處緊貼且在其他地方低於真實對數似然的代理函數。對每個數據點,我們在潛在變數 Z 上引入一個分布 Q。將對數似然寫成 Q 的期望並對對數函數(凹函數)應用詹森不等式,即可得到一個下界。當 Q 被選為後驗 P(Z|X,θ) 時,該下界變得緊貼,即給定當前參數猜測的每個成分的條件概率。此選擇使代理函數在當前 θ 處與真實似然相接觸,並保證最大化代理函數不會降低真實似然。
M 步:更新均值、協方差和混合比例
給定 E 步的責任度,M 步最大化期望完全資料對數似然,這簡化為高斯的加權最大似然估計。
- 成分 j 的均值更新為數據點的責任度加權平均。
- 成分 j 的協方差更新為以新均值為中心的責任度加權二階中心矩。
- 混合比例 π_j 更新為成分 j 的平均責任度(以確保它們的總和為一,通常透過拉格朗日乘數實現)。 這些更新是通過將代理函數的導數設為零來獲得的。
與 K‑均值的關聯及單調收斂
高斯混合模型的 EM 算法推廣了 K‑均值:K‑均值使用硬分配且僅更新均值,而 EM 使用軟責任度並同時估計協方差和混合權重。由於代理函數在當前參數處緊貼且為凹函數,每次 EM 迭代都會增加(或保持不變)真實對數似然,從而保證單調收斂到局部最大值或鞍點。
主成分分析(PCA)
PCA 尋找在已中心化數據中捕捉最大方差的正交方向,提供低維表示。
中心化、縮放及方差最大化視角
首先,通過減去均值將數據中心化,使得第一主成分描述原點周圍的擴散方向。可選地,將每個特徵縮放至單位方差,以防止原始尺度較大的特徵在方差準則上主導。中心化後,PCA 求一個單位向量 u,使得投射數據的方差最大化,等價於最小化垂直殘差平方和。
特徵分解解釋及成分選擇
最大化問題化簡為經驗協方差矩陣(XᵀX/(n‑1))的特徵值問題。特徵向量即為主成分;對應的特徵值等於各成分解釋的方差。特徵值按遞減順序排列,因此第一個特徵向量給出最大方向的方差,第二個特徵向量給出下一個正交方向的最大剩餘方差,以此類推。將數據投射到前 k 個特徵向量上,可得到保留最多方差的 k 維表示。
實際注意事項及 PCA 失效的情況
PCA 假設感興趣的方向對應於協方差矩陣中間隔良好的特徵值。若特徵值接近,估計的特徵向量可能不穩定,導致在新數據上得到不同的成分。該方法也不處理缺失值;必須事先填補或捨棄缺失數據。最後,只有當目標是保存方差時,PCA 才適合;若預測信號位於低方向方差中,PCA 可能會捨棄有用的資訊。