Machine-Learning

為什麼期望最大化對混合模型很重要?

  • February 17, 2017

有很多文獻強調混合模型的期望最大化方法(高斯混合、隱馬爾可夫模型等)。

為什麼 EM 很重要?EM 只是一種進行優化的方法,並未廣泛用作基於梯度的方法(梯度體面法或牛頓/準牛頓法)或此處討論的其他無梯度方法。此外,EM 還存在局部極小值問題。

是不是因為流程很直觀,可以很容易地變成代碼?或者還有什麼其他原因?

原則上,EM 和標準優化方法都可以用於擬合混合分佈。與 EM 一樣,凸優化求解器將收斂到局部最優值。但是,存在多種優化算法以在存在多個局部最優時尋求更好的解決方案。據我所知,具有最佳收斂速度的算法將取決於問題。

EM 的一個好處是它在每次迭代中自然地為混合分佈生成有效參數。相反,標準優化算法需要施加約束。例如,假設您正在擬合高斯混合模型。標準的非線性規劃方法需要將協方差矩陣約束為半正定,並將混合分量權重約束為非負且總和為 1。

為了在高維問題上獲得良好的性能,非線性規劃求解器通常需要利用梯度。所以,你必須要么推導出梯度,要么用自動微分計算它。如果梯度沒有標準形式,約束函數也需要梯度。Newton 方法和相關方法(例如信任域方法)也需要 Hessian。如果梯度不可用,則可以使用有限差分或無導數方法,但隨著參數數量的增加,性能往往會變差。相反,EM 不需要梯度。

EM 在概念上是直觀的,這是一個很大的優點。這通常也適用於標準優化方法。實現細節很多,但總體概念很簡單。通常可以使用標準優化求解器將這些細節抽像出來。在這些情況下,用戶只需要提供目標函數、約束和梯度,並有足夠的工作知識來選擇一個非常適合該問題的求解器。但是,如果用戶必須考慮或實現優化算法的低級細節,則肯定需要專業知識。

EM 算法的另一個好處是它可以在某些數據值丟失的情況下使用。

也感興趣(包括評論):

引用自:https://stats.stackexchange.com/questions/262538

comments powered by Disqus