馬爾可夫鏈與 HMM
馬爾可夫鏈對我來說很有意義,我可以用它們來模擬現實生活問題中的概率狀態變化。然後是 HMM。據說 HMM 比 MC 更適合模擬許多問題。然而,人們提到的問題在理解上有些複雜,比如語音處理。所以我的問題是你能描述一個 HMM 比 MC 更適合的“真實而簡單”的問題嗎?並解釋為什麼?謝謝
語音識別並不像你想像的那麼複雜。
首先,想像一下創建一個進行文本識別的馬爾可夫鏈 (MC)。您的程序讀取一堆(完美,沒有錯誤)文本併計算狀態(單詞)和狀態變化(下一個單詞)。聽起來你已經搞定了。您現在可以生成文本,或者給定一些文本,使用 MC 的狀態和轉移概率預測下一個單詞。
現在想像一下,您想將 MC 用於語音。您只需讓人們閱讀與您的 MC 相似的文本,然後您就準備好了,對吧?嗯……除了他們會以不同的方式發音:書面文字說“土豆”的地方,你實際上會聽到“po-TAY-toh”和“po-TAH-toh”和“pu-TAY” -to”等。反之亦然:文本“ate”和“eight”代表兩種不同的狀態,但(通常)發音相同。
您的算法不再看到基本狀態(單詞),而是看到每個單詞發音的概率分佈。你原來的 MC 隱藏在發音後面,現在你的模型需要是兩層的。
因此,您可以讓很多人大聲朗讀您用於原始訓練的文本,您可以獲得每個單詞的發音分佈,然後將您的原始模型與發音模型結合起來,您就有了一個隱馬爾可夫模型 (嗯)。
大多數現實世界的問題都是這樣的,因為現實世界往往是嘈雜的。您實際上不會知道某物處於什麼狀態。相反,您將獲得每種狀態的各種指標:有時針對不同狀態的相同指標(“ate”和“eight”),有時針對同一狀態的不同指標(“pu-TAY-toe”和“pah-tah-TOE”)。因此,HMM 更適合解決實際問題。
[兩個旁注:1)實際的語音識別工作在音素級別,而不是單詞級別,2)我相信 HMM 是語音識別的王者,但最近被深度神經網絡取代。]