日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

浅尝马尔科夫模型

發布時間:2023/12/10 编程问答 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 浅尝马尔科夫模型 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

馬爾科夫模型(Markov Model)又是一個我之前經常聽到但從未弄明白的模型。下面我們試著來增進對它的理解。
本文將討論在離散情況下使用馬爾科夫模型的統計決策方法。
貝葉斯決策的基本思想是根據一定的概率模型得到樣本屬于某類的后驗概率,然后根據后驗概率的大小進行決策。
問題描述:基因組上CpG相對富集的區域被稱作CpG島,接下來我們要從給定的一定DNA序列,判斷它是否來自CpG島,這屬于一個兩分類問題。
DNA序列每個位置上的核苷酸都可以被當作一個有四種可能取值的離散隨機變量x={A,T,G,C}x=\{A, T, G, C\}x={A,T,G,C}
在上述問題中我們要考慮連續位置上出現的CpG雙核苷酸,可以用馬爾科夫模型來表示這種相鄰位置之間的依賴關系。如果第iii時刻上的取值依賴于且僅依賴于第i?1i-1i?1時刻的取值,即P(xi∣xi?1,xi?2,...,x1)=P(xi∣xi?1)P(x_i|x_{i-1},x_{i-2},...,x_1)=P(x_i|x_{i-1})P(xi?xi?1?,xi?2?,...,x1?)=P(xi?xi?1?),則把這個串稱作一個一階馬爾科夫鏈(模型)。
馬爾可夫鏈可以用條件概率模型來描述。我們把在前一時刻某取值下當前時刻取值的條件概率稱作轉移概率(Transition Probability),記為ast=P(xi=t∣xi?1=s)a_{st}=P(x_i=t|x_{i-1}=s)ast?=P(xi?=txi?1?=s)
對一個長度為LLL的序列,我們觀察到這個序列的概率是:P(x)=P(x1,x2,...,xL)=P(x1)∏i=1naxi?1xiP(x)=P(x_1,x_2,...,x_L)=P(x_1)\prod_{i=1}^na_{x_{i-1}x_i}P(x)=P(x1?,x2?,...,xL?)=P(x1?)i=1n?axi?1?xi??
對于DNA序列來說,每一位置的取值有四種,我們把它們稱作四種狀態,轉移概率就是一個4?44*44?4的矩陣,稱作轉移概率矩陣或狀態轉移矩陣,如下圖。

如果知道兩類(CpG島與非CpG島)的狀態轉移矩陣,那么對于一個序列樣本,我們就可以用上述公式分別計算每一類模型下觀察到該特定序列的可能性或似然度P(x∣wi)P(x|w_i)P(xwi?),用同樣的類別似然比(或對數似然比)來進行類別判斷。
那么怎樣去確定馬爾科夫狀態轉移矩陣(離散概率模型)呢?
首先收集充分的、有代表性的一些CpG島序列的片段和一些非CpG島序列的片段,用它們構成兩類訓練樣本。在每一類樣本中,統計在所有位置上出現A、T、C、G的次數,再統計在每個A、T、C、G后面出現A、T、C、G次數,然后用ast+=cst+∑t‘cst‘+a_{st}^+=\frac{c_{st}^+}{\sum_{t^`}c_{st^`}^+}ast+?=t?cst+?cst+??ast?=cst?∑t‘cst‘?a_{st}^-=\frac{c_{st}^-}{\sum_{t^`}c_{st^`}^-}ast??=t?cst??cst???來分別估計兩類的狀態轉移概率。以下給出了在某個數據集上估計的CpG島與非CpG島狀態轉移矩陣的一個例子。

對于任意一段待判別的DNA序列,可以根據狀態轉移矩陣計算它屬于CpG島的似然比,再通過與一定的閾值比較進行判別。
在實際應用中,人們經常通過統計所有訓練樣本的似然比取值的分布來確定閾值。選用不同的閾值來做決策就好導致不同的錯誤情況,人們可以從直方圖上確定滿意的閾值,或者通過變動不同閾值畫出ROC曲線來決定閾值選擇。

咦,馬爾科夫模型的應用就是這么簡單?

隱馬爾可夫模型

隱馬爾可夫模型(hidden Markov model, HMM)是另一種常用的概率模型。在該模型中,觀測是依據一定的概率由某些不可見的內部狀態(隱狀態)決定,而這些狀態之間服從某種馬爾科夫模型。以下為一個典型的HMM示意圖:

其中yiy_iyi?是觀測到的數據,它的取值根據條件概率fi(yi∣zi)f_i(y_i|z_i)fi?(yi?zi?)由隱狀態ziz_izi?決定,這一概率稱作發射概率(emission probability)。同時,隱狀態ziz_izi?滿足馬爾科夫轉移概率ast=P(zi+1=t∣zi=s)a_{st}=P(z_{i+1}=t|z_i=s)ast?=P(zi+1?=tzi?=s)

應用隱馬爾可夫模型
當訓練樣本中的觀測數據和相應的隱狀態都已知時,可以根據上文給出的一般馬爾科夫模型下狀態轉移矩陣的估計方法來估計發射概率fi(yi∣zi)f_i(y_i|z_i)fi?(yi?zi?)和轉移概率asta_{st}ast?。然而,與一般馬爾科夫模型的決策過程不同,在未知數據上應用隱馬爾可夫模型進行統計決策時,需要對各個觀測數據點所對應的隱狀態進行判斷。
通過已經標注的訓練樣本,可以估計發射概率fi(yi∣zi)f_i(y_i|z_i)fi?(yi?zi?)和轉移概率asta_{st}ast?。對于待分析的序列{y1,...,yn}\{y_1,...,y_n\}{y1?,...,yn?},希望通過最大化概率(即似然度)P(y_1,…,y_n|z_1,…,z_n)來求得各個位置的隱狀態{z^1,...,z^n}\{\hat{z}_1,...,\hat{z}_n\}{z^1?,...,z^n?},相應的解稱為“最大似然路徑”。
怎樣求解呢?白話文版:從第一個位置開始,計算各類隱狀態的最大概率,接下來依次計算在當前基礎下接下來的每個位置的最大概率。

:如無特殊說明,以上大部分內容為摘選自張學工所著《模式識別》。

總結

以上是生活随笔為你收集整理的浅尝马尔科夫模型的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。