Expectation-Maximization
EM,有直觀的解釋嗎?
EM 程序對於外行來說似乎或多或少是黑魔法。使用監督數據估計 HMM(例如)的參數。然後解碼未標記的數據,使用向前向後“計數”事件,就好像數據被或多或少地標記了一樣。為什麼這會使模型更好?我確實對數學有所了解,但我一直希望對它有某種心理圖景。
只是為了節省一些輸入,調用觀察到的數據, 缺失數據(例如 HMM 的隱藏狀態),以及我們試圖找到的參數向量(例如過渡/排放概率)。
直觀的解釋是,我們基本上是在作弊,假裝一會兒我們知道所以我們可以找到 Z 的條件分佈,這反過來又可以讓我們找到 MLE(暫時忽略我們基本上是在循環論證的事實),然後承認我們作弊,為我們提供新的、更好的價值,然後從頭再來,直到我們不再作弊。
從技術上講,通過假裝我們知道真正的價值,我們可以假裝我們對條件分佈有所了解,這讓我們可以改進我們的估計,我們現在假裝它是真正的價值所以我們可以假裝我們對條件分佈有所了解,這讓我們可以改進我們的估計,其中…等等。
從技術上講,如果我們知道,我們可以最大化並有正確的答案。問題是我們不知道,以及任何估計必須依賴它。但是如果我們想找到最好的估計(或分佈),那麼我們需要知道和. 如果我們在分析上想要唯一的最大化器,我們就陷入了先有雞還是先有蛋的境地。
我們的“出局”是——對於任何估計(稱它為) – 我們可以找到的分佈,因此我們可以最大化我們的預期聯合對數似然,關於條件分佈. 這個條件分佈基本上告訴我們如何取決於當前值給定,並讓我們知道如何更改增加我們兩者的可能性和同時對於特定值(我們稱之為)。一旦我們選擇了一個新的,我們有不同的條件分佈因此必須重新計算期望值。