基于概率的和弦識(shí)別方法——隱馬爾可夫模型

什么是HMM

假設(shè)我手里有三個(gè)不同的骰子。第一個(gè)骰子是我們平常見的骰子(稱這個(gè)骰子為D6)失乾,6個(gè)面常熙,每個(gè)面(1,2碱茁,3裸卫,4,5纽竣,6)出現(xiàn)的概率是1/6墓贿。第二個(gè)骰子是個(gè)四面體(稱這個(gè)骰子為D4),每個(gè)面(1,2募壕,3调炬,4)出現(xiàn)的概率是1/4。第三個(gè)骰子有八個(gè)面(稱這個(gè)骰子為D8)舱馅,每個(gè)面(1缰泡,2,3代嗤,4棘钞,5,6干毅,7宜猜,8)出現(xiàn)的概率是1/8。


假設(shè)我們開始擲骰子硝逢,我們先從三個(gè)骰子里挑一個(gè)姨拥,挑到每一個(gè)骰子的概率都是1/3。然后我們擲骰子渠鸽,得到一個(gè)數(shù)字叫乌,1,2徽缚,3憨奸,4,5凿试,6排宰,7,8中的一個(gè)那婉。不停的重復(fù)上述過程板甘,我們會(huì)得到一串?dāng)?shù)字,每個(gè)數(shù)字都是1吧恃,2虾啦,3麻诀,4痕寓,5,6蝇闭,7呻率,8中的一個(gè)。例如我們可能得到這么一串?dāng)?shù)字(擲骰子10次):1 6 3 5 2 7 3 5 2 4這串?dāng)?shù)字叫做可見狀態(tài)鏈呻引。但是在隱馬爾可夫模型中礼仗,我們不僅僅有這么一串可見狀態(tài)鏈,還有一串隱含狀態(tài)鏈。在這個(gè)例子里元践,這串隱含狀態(tài)鏈就是你用的骰子的序列韭脊。比如,隱含狀態(tài)鏈有可能是:D6 D8 D8 D6 D4 D8 D6 D6 D4 D8单旁。

一般來說沪羔,HMM中說到的隱馬爾可夫鏈其實(shí)是指隱含狀態(tài)鏈。隱含狀態(tài)(骰子)之間存在轉(zhuǎn)換概率(transition probability)象浑,可見狀態(tài)之間沒有轉(zhuǎn)換概率蔫饰,但是隱含狀態(tài)和可見狀態(tài)之間有一個(gè)概率叫做輸出概率(emission probability)。就我們的例子來說愉豺,六面骰(D6)產(chǎn)生1的輸出概率是1/6篓吁。產(chǎn)生2,3蚪拦,4杖剪,5,6的概率也都是1/6驰贷。

隱馬爾可夫模型狀態(tài)圖

其實(shí)對(duì)于我們上述的HMM來說摘盆,如果提前知道所有隱含狀態(tài)之間的轉(zhuǎn)換概率和所有隱含狀態(tài)到所有可見狀態(tài)之間的輸出概率,做模擬是相當(dāng)容易的饱苟。但是應(yīng)用HMM模型時(shí)候呢孩擂,往往是缺失了一部分信息的,有時(shí)候你知道骰子有幾種箱熬,每種骰子是什么类垦,但是不知道擲出來的骰子序列;有時(shí)候你只是看到了很多次擲骰子的結(jié)果城须,剩下的什么都不知道蚤认。如果應(yīng)用算法去估計(jì)這些缺失的信息,就成了一個(gè)很重要的問題糕伐。這些算法我會(huì)在下面詳細(xì)講砰琢。

和HMM模型相關(guān)的算法主要分為三類,分別解決三種問題:
1)知道骰子有幾種(隱含狀態(tài)數(shù)量)良瞧,每種骰子是什么(轉(zhuǎn)換概率)陪汽,根據(jù)擲骰子擲出的結(jié)果(可見狀態(tài)鏈),我想知道每次擲出來的都是哪種骰子(隱含狀態(tài)鏈)褥蚯。
這個(gè)問題呢挚冤,在語音識(shí)別領(lǐng)域呢,叫做解碼問題赞庶。這個(gè)問題其實(shí)有兩種解法训挡,會(huì)給出兩個(gè)不同的答案澳骤。每個(gè)答案都對(duì),只不過這些答案的意義不一樣澜薄。這里只給出第一種解法为肮。這種解法叫做求最大似然狀態(tài)路徑,說通俗點(diǎn)呢肤京,就是我求一串骰子序列弥锄,這串骰子序列產(chǎn)生觀測結(jié)果的概率最大。

2)還是知道骰子有幾種(隱含狀態(tài)數(shù)量)蟆沫,每種骰子是什么(轉(zhuǎn)換概率)籽暇,根據(jù)擲骰子擲出的結(jié)果(可見狀態(tài)鏈),我想知道擲出這個(gè)結(jié)果的概率饭庞。
看似這個(gè)問題意義不大戒悠,因?yàn)槟銛S出來的結(jié)果很多時(shí)候都對(duì)應(yīng)了一個(gè)比較大的概率。問這個(gè)問題的目的呢舟山,其實(shí)是檢測觀察到的結(jié)果和已知的模型是否吻合绸狐。如果很多次結(jié)果都對(duì)應(yīng)了比較小的概率,那么就說明我們已知的模型很有可能是錯(cuò)的累盗,有人偷偷把我們的骰子給換了寒矿。

3)知道骰子有幾種(隱含狀態(tài)數(shù)量),不知道每種骰子是什么(轉(zhuǎn)換概率)若债,觀測到很多次擲骰子的結(jié)果(可見狀態(tài)鏈)符相,我想調(diào)節(jié)每種骰子是什么(轉(zhuǎn)換概率)來讓出現(xiàn)這種結(jié)果的概率最大。
這個(gè)問題很重要蠢琳,因?yàn)檫@是最常見的情況啊终。很多時(shí)候我們只有可見結(jié)果,不知道HMM模型里的參數(shù)傲须,我們需要從可見結(jié)果得到出這些參數(shù)蓝牲,使這個(gè)模型是一個(gè)最優(yōu)的模型,這是建模的一個(gè)必要步驟泰讽。

正式定義

好了直觀的理解完成了例衍,我們來給出音隱馬爾可夫模型的基本定義
我們將上述直觀的理解抽象表達(dá)一下:

  • 基本元素
    隱馬爾可夫模型可以用5個(gè)基本元素來描述,包括兩個(gè)狀態(tài)集和三個(gè)狀態(tài)矩陣
    1)隱含狀態(tài)S
    例如S = [S1, S2, S3]
    2)可觀測狀態(tài)集O
    例如O = [O1, O2, O3, O4, O5]
    (注意:隱含狀態(tài)集S不一定需要和可觀測狀態(tài)集O的數(shù)目一致)
    3)初始狀態(tài)概率矩陣π
    表示隱含狀態(tài)S在初始狀態(tài)時(shí)的概率矩陣已卸,例如π = [P(S1), P(S2), P(S3)] = [P1, P2, P3]
    4)隱含狀態(tài)轉(zhuǎn)移概率矩陣A
    表示各個(gè)隱含狀態(tài)之間的狀態(tài)轉(zhuǎn)移概率佛玄,aij表達(dá)t時(shí)刻為Si的狀態(tài),在t+1時(shí)刻變換為Sj的概率咬最。
    隱含狀態(tài)轉(zhuǎn)移矩陣

    5)觀測狀態(tài)轉(zhuǎn)移概率矩陣B
    觀測狀態(tài)轉(zhuǎn)移矩陣

    令N表示隱含狀態(tài)數(shù)目翎嫡,M表示可觀測狀態(tài)數(shù)目,則

Bij = P(Oi | Sj)永乌,1<=i<=N, 1<=j<=M

表示著在t時(shí)刻惑申,隱含狀態(tài)為Sj的情況下,可觀察狀態(tài)為Oi的概率翅雏,也就是我們上述的輸出概率圈驼。

總結(jié):一般來說,我們可以使用一個(gè)三元組來表示隱馬爾可夫模型

λ = (π, A, B)

一旦確定了這個(gè)隱馬爾可夫模型望几,我們就可以使用它來解決各種各樣的問題了绩脆。根據(jù)上述說法,我們知道隱馬爾可夫模型可以解決的問題有三類橄抹,前兩類實(shí)際上是一個(gè)模式識(shí)別問題:解碼和評(píng)估靴迫,后一類是模型學(xué)習(xí)問題。

相關(guān)算法

  • viterbi算法
  • 前向算法
  • EM

如何使用隱馬爾可夫模型進(jìn)行和弦識(shí)別

《Chord Segmentation and Recognition using EM-Trained Hidden Markov Models》這篇論文中楼誓,使用每個(gè)和弦對(duì)應(yīng)一個(gè)隱藏狀態(tài)(隱藏狀態(tài)數(shù)量已知)玉锌,每一幀的PCP譜圖作為可見狀態(tài)(可見狀態(tài)鏈),我們采用EM算法訓(xùn)練模型疟羹。在得到HMM之后之后主守,我們就可以采用viterbi方法求出概率最大的隱藏序列(最大似然路徑),并對(duì)齊到每個(gè)時(shí)間幀上榄融。最后参淫,闡述一種基于旋轉(zhuǎn)PCP的加權(quán)平均算法來處理原始的PCP,這種方法計(jì)算所有音級(jí)的加權(quán)平均值(通過標(biāo)注和弦出現(xiàn)的頻率進(jìn)行加權(quán))愧杯,然后將加權(quán)平均PCP向量解旋回到它們的原始位置涎才,并為每個(gè)和弦構(gòu)建新的,正則化的模型的位置力九。


image.png

之后《A System for Acoustic Chord Transcription and Key Extrac- tion from Audio Using Hidden Markov Models Trained on Synthe- sized Audio》和《Acoustic Chord Transcription and Key Extraction from Audio Using Key-Dependent HMMs Trained on Synthesized Audio》這兩篇論文根據(jù)和弦的基音區(qū)分方法憔维,定義 24 個(gè)基音,為每個(gè)基音建立一個(gè) HMM畏邢,構(gòu)造 Key-Dependent HMM 模型. 對(duì)于輸入的音樂信號(hào)业扒,系統(tǒng)利用 Viterbi 解碼在 24 個(gè)模型中選擇一個(gè)最大可能的基調(diào)模型,從而確定輸入音樂的基調(diào)舒萎,并從對(duì)應(yīng)于這個(gè)基調(diào)模型的最優(yōu)狀態(tài)路徑來得到和弦序列.


搬運(yùn):https://www.zhihu.com/question/20962240/answer/33438846

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末程储,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子臂寝,更是在濱河造成了極大的恐慌章鲤,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,884評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件咆贬,死亡現(xiàn)場離奇詭異败徊,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)掏缎,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,347評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門皱蹦,熙熙樓的掌柜王于貴愁眉苦臉地迎上來煤杀,“玉大人,你說我怎么就攤上這事沪哺∩蜃裕” “怎么了?”我有些...
    開封第一講書人閱讀 157,435評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵辜妓,是天一觀的道長枯途。 經(jīng)常有香客問我,道長籍滴,這世上最難降的妖魔是什么酪夷? 我笑而不...
    開封第一講書人閱讀 56,509評(píng)論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮孽惰,結(jié)果婚禮上晚岭,老公的妹妹穿的比我還像新娘。我一直安慰自己灰瞻,他們只是感情好腥例,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,611評(píng)論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著酝润,像睡著了一般燎竖。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上要销,一...
    開封第一講書人閱讀 49,837評(píng)論 1 290
  • 那天构回,我揣著相機(jī)與錄音,去河邊找鬼疏咐。 笑死纤掸,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的浑塞。 我是一名探鬼主播借跪,決...
    沈念sama閱讀 38,987評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼酌壕!你這毒婦竟也來了掏愁?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,730評(píng)論 0 267
  • 序言:老撾萬榮一對(duì)情侶失蹤卵牍,失蹤者是張志新(化名)和其女友劉穎果港,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體糊昙,經(jīng)...
    沈念sama閱讀 44,194評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡辛掠,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,525評(píng)論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了释牺。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片萝衩。...
    茶點(diǎn)故事閱讀 38,664評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡回挽,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出欠气,到底是詐尸還是另有隱情厅各,我是刑警寧澤镜撩,帶...
    沈念sama閱讀 34,334評(píng)論 4 330
  • 正文 年R本政府宣布预柒,位于F島的核電站,受9級(jí)特大地震影響袁梗,放射性物質(zhì)發(fā)生泄漏宜鸯。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,944評(píng)論 3 313
  • 文/蒙蒙 一遮怜、第九天 我趴在偏房一處隱蔽的房頂上張望淋袖。 院中可真熱鬧,春花似錦锯梁、人聲如沸即碗。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,764評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽剥懒。三九已至,卻和暖如春合敦,著一層夾襖步出監(jiān)牢的瞬間初橘,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,997評(píng)論 1 266
  • 我被黑心中介騙來泰國打工充岛, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留保檐,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,389評(píng)論 2 360
  • 正文 我出身青樓崔梗,卻偏偏與公主長得像夜只,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子蒜魄,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,554評(píng)論 2 349

推薦閱讀更多精彩內(nèi)容