ゲノム統合データベースからの知識発見

数理科学特別講義
バイオインフォマティクスにおける
確率モデル
阿久津 達也
京都大学 化学研究所
バイオインフォマティクスセンター
講義内容 I (基礎編)
①
②
③
④
⑤
分子生物学の基本事項
バイオインフォマティクスに必要な確
率統計の基礎
配列アラインメントとスコア関数
隠れマルコフモデル
EMアルゴリズム
講義内容 II(応用編)
①
②
③
④
⑤
確率文脈自由文法とRNA二次構造予測
進化系統樹構成法
タンパク質立体構造予測
遺伝子ネットワーク推定
実習
実習内容
①
②
③
④
配列検索プログラム
マルチプルアラインメント
PSI-BLASTによる検索
立体構造予測
ゲノム研究と情報科学

ゲノム解析計画の急速な進展




情報解析の必要性



既に数十種の微生物の全塩基配列が決定
線虫(1000細胞)、しょうじょうばえも決定
ヒトも概要配列が公開済み
DNA配列⇔プログラムのオブジェクトコード
意味の解析が必要
DNA配列:A,C,G,Tの4文字からなる文字列

様々な情報技術が利用可能
遺伝子と蛋白質

遺伝情報の流れ


遺伝子


DNA配列中で直接的に
機能する部分
エキソン
転写制御領域
(プロモーターなど)

スプライシング
mRNA
GGU

アミノ酸(20種類)の鎖
GCA
翻訳
GGU → Gly
GCA → Ala
染色体全体(半数体)
遺伝情報の総体
タンパク質
エキソン
転写 ・
ゲノム


DNA⇒RNA⇒タンパク
エキソン
タンパク質
DNA
DNAとアミノ酸
DNAはA,C,G,Tの4文
字の並び

DNAは二重ラセン構
造⇒相補鎖

塩基:DNA1文字、
残基:アミノ酸1文字

DNA3文字がアミノ酸
1文字に対応
(アミノ酸は20種類)

コード表
2文字目
T
TTT
TTC
T
1
文
字
目
C
A
TTA
TTG
CTT
CTC
CTA
CTG
ATT
ATC
ATA
ATG
相補鎖
G
A C G T C G T C
T G C A G C A G
GTT
GTC
GTA
GTG
C
F
L
L
I
M
V
TCT
TCC
TCA
TCG
CCT
CCC
CCA
CCG
ACT
ACC
ACA
ACG
GCT
GCC
GCA
GCG
A
S
P
T
A
TAT
TAC
TAA
TAG
G
Y
stop
CAT
CAC
H
CAA
CAG
TGT
TGC
TGA
TGG
C
stop
W
Q
CGT
CGC
CGA
CGG
R
AAT
AAC
N
AGT
AGC
S
AAA
AAG
K
AGA
AGG
R
GAT
GAC
D
GAA
GAG
E
GGT
GGC
GGA
GGG
G
アミノ酸と蛋白質


アミノ酸:20種
類
蛋白質:アミノ酸
の鎖(短いもの
はペプチドと呼
ばれる)
アミノ酸
R
H
側鎖
OH
C
N
アミノ基
C
カルボシキル基
H
H
O
蛋白質
R
N
H
C
H
H
C
O
N
H
C
R
ペプチド結合
O
C
側鎖の例
Ala アラニン
Phe フェニル
アラニン
CH 3
CH
HC
Val バリン
H3 C
CH
C
CH 3
CH
O
CH
HC
Asp アスパラ
ギン酸
CH 2
O
C
-
His ヒス
チジン
Cys シス
テイン
HN
SH
+
NH
CH 2
CH 2
CH 2
Gly グリシン
H
アミノ酸コード表
Ala
Arg
Asn
Asp
Cys
Gln
Glu
Gly
His
Ile
A
R
N
D
C
Q
E
G
H
I
アラニン
アルギニン
アスパラギン
アスパラギン酸
システイン
グルタミン
グルタミン酸
グリシン
ヒスチジン
イソロイシン
Leu
Lys
Met
Phe
Pro
Ser
Thr
Trp
Tyr
Val
L ロイシン
K リシン
M メチオニン
F フェニルアラニン
P プロリン
S セリン
T トレオニン
W トリプトファン
Y チロシン
V バリン
バイオインフォマティクスにおけ
る確率統計

重要なのはデータからのモデル(もしくは
パラメータ)の推定



最尤法
ベイズ推定
最大事後確率推定(MAP)
最尤推定

P(D|θ) (尤度)


最尤法


モデルパラメータ θ のもとでのデータ D の出現確
率
P(D|θ) を最大化する θ を選ぶ
例




コインを5回投げて、表が3回出た後、裏が2回出た
p(表)=a, p(裏)=1-a とするとP(D|θ)=a3(1-a)2
a=3/5の時、 P(D|θ) は最大
一般に表が出る頻度を f とすると a=f で尤度は最大
ベイズ推定とMAP推定

ベイズ推定:尤度とモデル(パラメータ)の事前確
率から、ベイズの定理により、事後確率を推定
P( D | θ ) P(θ )
P(θ | D) 
P( D)
ただし、 P( D)   P( D | θ' ) P(θ' ) ( θが連続値の時)
θ'

最大事後確率(MAP)推定


P(D|θ)P(θ)を最大化するθを計算
P(θ)が一様分布なら最尤推定と同じ
不正サイコロのベイズ推定

公正サイコロと不正サイコロ




公正:P(i|公正)=1/6
不正:P(6|不正)=1/2,P(i|不正)=1/10 for i≠6
P(公正)=0.99, P(不正)=0.01
6が3回続けて出た場合の事後確率
P(666| 不正) P(不正)
P(不正 | 666) 
P(666)
(0.5)3 (0.01)

 0.21
3
1 3
(0.5) (0.01)  ( 6 ) (0.99)
アラインメント




バイオインフォマティクスの
最重要技術
2個もしくは3個以上の配列
の類似性の判定に利用
文字間の最適な対応関係を
求める(最適化問題)
2個の配列長を同じにする
ように、ギャップ記号(挿入、
欠失に対応)を挿入
A L G F G S L Y G
A L G G V S V G
A L G F G
A L G
S L Y G
G V S V
G
スコア行列(置換行列)

残基間(アミノ酸文字間)の類似性を表す行列

PAM250, BLOSUM45 など
A
A
R
N
D
C
Q
E
G
H
I
L
K
M
F
P
S
T
W
Y
V
5
-2
-1
-2
-1
-1
T
W
Y
V
-2 -1 -2 -1 -1 -1 0 -2 -1 -2 -1 -1 -3 -1 1 0
7 -1 -2 -4 1 0 -3 0 -4 -3 3 -2 -3 -3 -1 -1
-1 7 2 -2 0 0 0 1 -3 -4 0 -2 -4 -2 1 0
-2 2 8 -4 0 2 -1 -1 -4 -4 -1 -4 -5 -1 0 -1
-4 -2 -4 13 -3 -3 -3 -3 -2 -2 -3 -2 -2 -4 -1 -1
1 0 0 -3 7 2 -2 1 -3 -2 2 0 -4 -1 0 -1
R
N
D
C
Q
E
G
H
I
L
K
M
F
P
-3
-3
-4
-5
-5
-1
-2
-1
-2
-3
-3
-1
0
3
-3
-4
-1
-3
BLOSUM50 スコア行列
(置換行列)の一部分
S
ギャップ無しアラインメントのスコア
i xi yi
P ( x, y | M )
S  log
 log
P ( x, y | R )
i q xi  i q yi
p
px y
 log 
qx q y
i
i
i
i





i
x1 x2
y1 y2
 p 
ab 
 i s ( xi , y ) 但し , s(a, b)  log
q q 
i
 a b
スコア:P(x,y|M)とP(x,y|R)の対数オッズ比
P(x,y|R): ランダムモデルRにおいて、配列x,yが独立に生起する確率
qa:文字aのRにおける出現確率
P(x,y|M): 一致モデルMにおいて、配列x,yが生起する確率
pab :文字ペアa,bのMにおける出現確率
xn
yn
ギャップペナルティ

線形スコア


A L G
L Y G
A V G V S D L
アファインギャップスコア


γ(g)=-gd
(gはギャップの長さ、
dは定数)
ギャップ (g =3)
γ(g)=-d-e(g-1) (d:ギャップ開始ペナルティ,
e:ギャップ伸長ペナルティ)
ギャップの確率的解釈


P(gap)=f(g)Πqxi γ(g)=log(f(g))
ギャップ長の確率の対数
G
ペアワイズ・アラインメント


配列が2個の場合でも可能なアラインメントの個数は
指数オーダー
しかし、スコア最大となるアラインメント(最適アライン
メント)は動的計画法により、O(mn)時間で計算可能
(m,n:入力配列の長さ)
入力配列
AGCT, ACGCT
アラインメント
AGCT ACGCT
スコア -3
AG - CT
ACGCT
1
最適アラ
インメント
A - GCT
ACGCT
3
- AGC - - T
AC - - GCT
-5
(同じ文字の時1、違う文字の時-1,ギャップ1文字-1)
動的計画法による最適アラインメント
DP (動的計画法)による
最長経路の計算
最長経路計算による最適アライメント
G
G
F
V
D
5
K
-2
Y
-5
D
1
F (0, j )   jd , F (i,0)  id
-7
GK Y
G
 F (i  1, j  1)  s ( xi , y j )

F (i, j )  max
F (i  1, j )  d

F (i, j  1)  d

-5
-5
7
-1
-2
-2
-2
-7
1
0
-4
4
-7
-7
-7
-7
-7
-6
-7
D
F V D
行列からの経路の復元は、
F(m,n)からmaxで=となっている
F(i,j)を逆にたどることに行う
(トレースバック)
局所アラインメント

H
G
A
W
E
D
0

 F (i  1, j  1)  s( , y )
xi j

F (i, j )  max
F (i  1, j )  d

F (i, j  1)  d


配列の一部のみに
共通部分があること
が多い
⇒共通部分のみの
アラインメント
E
A
W
G
E
H
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
0
2
1
0
0
0
0
1
0
1
0
2
1
0
0
0
0
0
0
1
1
AWGE
AW - E
(スコア:ギャップ-1、
置換-1、一致1)
配列検索の実用プログラム(1)
O(mn):mは数百だが、nは数GBにもなる
⇒実用的アルゴリズムの開発
 FASTA:短い配列(アミノ酸の場合、1,2文字、
DNAの場合、4-6文字)の完全一致をもとに対角
線を検索し、さらにそれを両側に伸長し、最後に
DPを利用
 BLAST:固定長(アミノ酸では3, DNAでは11)の全
ての類似単語のリストを生成し、ある閾値以上の
単語ペアを探し、それをもとに両側に伸長させる。
ギャップは入らない。

配列検索の実用プログラム(2)


SSEARCH: 局所アラインメント(SmithWatermanアルゴリズム)をそのまま実行
PSI-BLAST: ギャップを扱えるように拡張
したBLASTを繰り返し実行。「BLASTで見
つかった配列からプロファイルを作り、そ
れをもとに検索」という作業を繰り返す。
スコアのベイズ論的解釈




P(M|x,y)をベイズの定理に基づき導出
P(M):2個の配列に関連性がある事前確率
P(R)=1-P(M):ランダムモデルの事前確率
以下の式より尤度比にオッズ比を掛け合わせたものを
0と比較すべきであることがわかる
P ( x, y | M ) P ( M )
P ( x, y )
P ( x, y | M ) P ( M )

P ( x, y | M ) P ( M )  P ( x, y | R ) P ( R )
P ( x, y | M ) P ( M ) / P ( x, y | R ) P ( R )

 σ (S ' )
1  P ( x, y | M ) P ( M ) / P ( x, y | R ) P ( R )
σ(x)
P ( M | x, y ) 
1.0
0.5
0
x
 P ( x, y | M ) 
 P( M ) 
  log
, σ ( x)  e x
但し、 S '  log
1 e
 P ( x, y | R ) 
 P( R) 
-4
-2
0
2
ロジスティック関数
4
x
スコア行列の導出


基本的には頻度の比の対数をスコアとする
BLOSUM行列




既存のスコア行列を用いて多くの配列のアラインメ
ントを求め、ギャップ無しの領域(ブロック)を集める
残基がL%以上一致しているものを同一クラスタに
集める
同じクラスタ内で残基aが残基bにアラインされる頻
度Aabを計算
qa=∑b Aab / ∑cd Acd, pab=Aab / ∑cd Acd を求め、
s
(a,b)=log(pab/qaqb) としたのち、スケーリングし近傍
の整数値に丸める
マルチプルアラインメント

3本以上の配列が与えられた時、長さが同じで、かつ、スコアが最適とな
るように各配列にギャップを挿入したもの
HBA_HUMAN
HBB_HUMAN
MYG_PHYCA
GLB5_PETMA
LGB2_LUPLU
GLB1_GLYDI

VGAHAGEY
VNVDEV
VEADVAGH
VYSTYETA
FNANIPKH
IAGADNGAGV
HBA_HUMAN
HBB_HUMAN
MYG_PHYCA
GLB5_PETMA
LGB2_LUPLU
GLB1_GLYDI
V
V
V
V
F
I
G
E
Y
N
A
A
A
S
A
G
A
D
H
N
D
T
N
N
A
V
V
Y
I
G
G
D
A
E
P
A
E
E
G
T
K
G
スコアづけ (全体スコアは基本的に各列のスコアの和:∑S(mi))
 最小エントロピースコア


S(mi) = -∑cia log pia
SPスコア(Sum-of-Pairs)

S(mi)=∑k<l s(mik,mil)
(cia= i列におけるaの出現回数,
pia = i列におけるaの生起確率)
(mik = i列, k行目の文字)
Y
V
H
A
H
V
多次元DPによる
マルチプルアラインメント

N個の配列に対するマルチ
プルアラインメント


N次元DPによりO(2NnN)時間
(各配列の長さはO(n)を仮定)
(i,j,k-1)
例:N=3
 F (i  1, j  1, k  1)  S ( 1 , 2 , 3 )
xi x j x k

 F (i, j  1, k  1)  S (, 2 , 3 )
x j xk

 F (i  1, j , k  1)  S ( 1 ,, 3 )
xi x k

1
2

F (i, j , k )  max  F (i  1, j  1, k )  S ( xi , x j ,)

3
 F (i, j , k  1)  S (,, xk )

2
 F (i, j  1, k )  S (, x j ,)

 F (i  1, j , k )  S ( x1i ,,)

(i,j-1,k)
(i-1,j,k) (i,j,k)
実用的マルチプルアラインメント法

ヒューリスティックアルゴリズム
の開発



STEP 1
N次元DPは(N=4ですら)
非実用的
一般にはNP困難
プログレッシブアラインメント
1.
2.

入力配列
近隣結合法などを用いて 案内
木を作る
類似度が高い節点から低い節
点へという順番で、配列対配列、
配列対プロファイル、プロファイ
ル対プロファイルのアラインメン
トを順次計算
逐次改善法

「配列を一本取り除いては、アラ
インメントしなおす」を繰り返す
STEP 2
③
①
②
マルチプルアラインメントの
近似アルゴリズム(1)


スコアに三角不等
式を仮定し、最小
化問題として定義
アルゴリズム
1.
2.
∑k≠iS(xk,xi)が最小と
なるxkを求める
S(xk,xi)をもとに
ギャップを適切に挿
入し、マルチプルア
ラインメントA を構
成
x1
x2
STAR-1
STAR-2
STAR-3
STAR-4
x3
ACGT
A-GT
A-CGT
AACGT
ACG-T
A-GGT
x4
A-CG-T
A--G-T
AACG-T
A--GGT
マルチプルアラインメントの
近似アルゴリズム(2)

定理


A のSPスコア ≦
(2-2/N)・最適解の
SPスコア
図1
x1
x2
x3
x4
証明


N・Starのスコア ≦
2・最適解のスコア
(図1でNスターにより、各辺
を2回ずつカバー)
A のスコア ≦
(N-1)・Starのスコア
(図2でx1に接続しない辺の
スコアの合計はスター(N-2)
個分以下)
図2
三角不等式
x1
x2
xk
xi
x3
x4
xj
局所マルチプルアラインメント
(Local Multiple Alignment)


複数配列と長さLが与えられた時、スコア最大と
なるように各配列から長さLの部分列を抽出
モチーフ(共通の性質を持つ遺伝子などに共通
の部分パターン)抽出などに有用
Sequence 1
Sequence 2
Sequence 3
A A T C G G T
A A T C C G T
A T T C G G A
相対エントロピースコアのもとでの
局所マルチプルアラインメント

相対エントロピースコアの定義





fj(a): (モチーフ領域の)j列目におけるaの出現頻度
p(a): aの出現頻度(事前確率)
L: モチーフ領域の長さ
f j (a)
L
score   j 1a f j (a) log
p(a)
実用的アルゴリズム
 Gibbsサンプリング, EM
NP困難
Gibbs サンプリング
1.
2.
各配列xjからランダム
に部分配列tjを選ぶ
1個の配列xiをランダム
に選ぶ
3.
4.
5.
Step 1
x1
t1
x2
x3
t2
t3
f j (t 'i[ j])

j 1 p(t 'i[ j ])
L
xiの部分列ti’を
に比例する確率で選ぶ
ti をti’ でおきかえる
ステップ2-4を十分な回
数だけ繰り返す
( ti[j]: 部分列ti のj列目の文字 )
Step 2-3
Probabilistic Search
x2
t2’
Step 4
x1
x2
x3
t1
t2’
t3
隠れマルコフモデル(HMM)


HMM=有限オートマトン+確率
定義



出力記号集合Σ
状態集合
S={1,2,…n}
遷移確率(k→l)
0.4
0.3
akl

1
出力確率
ek(b)

(開始状態=
終了状態= 0)
2
0.5
0.5
A: 0.2
B: 0.8
0.6
3
0.7
A: 0.1
B: 0.9
A: 0.7
B: 0.3
HMMにおける基本アルゴリズム

Viterbiアルゴリズム




BABBBAB
出力記号列から状
態列を推定
Parsing(構文解析)
Baum-Welchアルゴ
リズム
(EMアルゴリズム)

0.4
出力記号列からパ
ラメータを推定
Learning(学習)
2
0.3
1
0.5
0.5
0.6
A: 0.2
B: 0.8
0.7
A: 0.1
B: 0.9
A: 0.7
B: 0.3
3
2312131
2
1
0.4
0.3
3
BABBBAB
ABBABBAAB
BBBABBABAB
BAABBBBA
2
1
0.5 0.7
0.5
A: 0.2
B: 0.8
0.6
3
A: 0.1
B: 0.9
A: 0.7
B: 0.3
時々いかさまをするカジノ





サイコロの出目だけが観測可能、どちらのサイコロを振っているか
は観測不可能
サイコロの出目から、どちらのサイコロを振っているかを推定
6,2,6,6,3,6,6,6,
4,6,5,3,6,6,1,2
0.95
0.9
→不正サイコロ
6,1,5,3,2,4,6,3,
1: 1/6
0.05
1: 1/10
2,2,5,4,1,6,3,4
2: 1/6
2: 1/10
3: 1/6
3: 1/10
→公正サイコロ
4: 1/6
4: 1/10
5: 1/6
5: 1/10
6,6,3,6,5,6,6,1,
0.1
6: 1/6
6: 1/2
5,4,2,3,6,1,5,2
→途中で公正サイ
不正サイコロ
公正サイコロ
コロに交換
Viterbi アルゴリズム(1)



観測列(出力配列データ) x=x1…xLと状態列π=π1…πLが与えられた時、
その同時確率は
P(x,π)=a0 π1Πeπi (xi)aπiπi+1 但し、πL+1=0
xが与えられた時の、最も尤もらしい状態列は π*=argmaxπ P(x,π)
例:どちらのサイコロがいつ使われたかを推定
0.95
x1=4
公
0.05
不
0.9
0.5
0.1
公
x2=3
0.95
公
0.05
0
不
0.95
公
0.05
0.1
0.5
x3=2
0
0.1
0.9
不
0.9
不
max P( x1 x2 x3 , π)  P( x1 x2 x3 , 公公公 )  0.5  16  0.95  16  0.95  16
π
Viterbiアルゴリズム(2)


xから、π*=argmaxπ P(x,π) を計算
そのためにはx1…xiを出力し状態kに至る確率最
大の状態列の確率 vk(i) を計算
v (i)  max
k

π
i 1
a0π1  eπ j( x j)a π j π j 1
j 1
vk(i)は以下の式に基づき動的計画法で計算
v (i  1)  e ( x
l
l
)
i 1
max (v
k
k
(i ) a kl )
Viterbiアルゴリズム(3)
0.95
i-1
i
i+1
4
6
1
公
0.05
0.1
公
v
公
公
0.05
不
0.95
公
0.05
0.1
不
0.9
0.95
0.1
0.9
不
0.9
不
(i  1)  max{e公 (1)  0.95 v公 (i), e公 (1)  0.1 v不 (i) }
EM(Expectation Maximization)
アルゴリズム

「欠けているデータ」のある場合の最尤推定のた
めの一般的アルゴリズム
x : 観測データ、 y : 欠けているデータ、
θ : パラメータ集合
目標: log P( x|θ )  log  P( x,y|θ ) の最大化
y


最大化は困難であるので、反復により尤度を単調
増加させる(θtよりθt+1を計算)
HMMの場合、「欠けているデータ」は状態列
EMアルゴリズムの導出
log P( x | θ)  log P( x, y | θ)  log P( y | x, θ)
両辺にP( y | x, θ t )をかけて yについての和をとり、
log P( x | θ)   P( y | x, θ t ) log P( x, y | θ)   P( y | x,θ t ) log P( y | x, θ)
y
y
右辺第1項を Q(θ | θ t )とおくと、
log P( x | θ)  log P( x | θ t ) 
P ( y | x, θ t )
Q(θ | θ )  Q(θ | θ )   P( y | x, θ ) log
P ( y | x, θ )
y
t
t
t
t
最後の項は相対エント ロピーで常に正なので 、
log P( x | θ)  log P( x | θ t )  Q(θ | θ t )  Q(θ t | θ t )
よって、 θ t 1  arg maxQ(θ | θ t ) とすれば尤度は増大
θ
EMアルゴリズムの一般形
1.
2.
3.
4.
初期パラメータ Θ0 を決定。t=0とする。
Q(θ|θt)=∑P(y|x, θt) log P(x,y|θ) を計算。
Q(θ|θt)を最大化するθ*を計算し、 θt+1 =
θ* とする。t=t+1とする。
Qが増大しなくなるまで、2,3を繰り返す。
前向きアルゴリズム
配列xの生成確率
P(x)=∑P(x,π) を計
算
 Viterbiアルゴリズ
ムと類似
 fk(i)=P(x1…xi,πi=k)
をDPにより計算

f 0 (0)  1, f k (0)  0
f l (i )  el ( xi ) f k (i  1) akl
k
P ( x )  k f k ( L ) a k 0
1 a11
2
3
a21
a31
1
2
3
f 1 (i )  e1 ( xi )
( f 1 (i  1) a11 
f 2 (i  1) a 21 
f 3 (i  1) a 31)
後向きアルゴリズム
bk(i)=
P(xi+1…xL|πi=k)
をDPにより計算
 P(πi=k|x) =
fk(i)bk(i)/P(x)
b ( L)  a
b (i)   a kl e ( x )b (i  1)

k0
k
k
i 1
l
l
k
P( x)  k a0l el ( x1) bl (1)
1
2
3
a11 1 b (i) 
a12
(a e ( x ) b (i  1) 
2
a e ( x ) b (i  1) 
a13
3 a e ( x ) b (i  1))
1
1
i 1
1
12
2
i 1
2
13
3
i 1
3
11
HMMに対するEMアルゴリズム
(Baum-Welchアルゴリズム)
j
x : j番目の配列
Akl: a
E k (b) : 文字bが状態kから現れる回数の期待 値
が使われる回数の期待 値
kl
Akl
Ek

j
(b) 
1
P( x
j

)
i
f (i) akl el ( xi 1) bl (i  1)
1
 P(
j
j
j
k

i|
j
j
b
j
f (i) bk (i )
x ) x 
j
j
k
j
パラメータの更新式
aˆ  A
A
kl
kl
l'
kl '
(b)
E
eˆ (b)   (b' )
E
k
k
b'
k
Baum-WelchのEMによる解釈
M
P ( x, π | θ )  
k 1
b
E k ( b ,π )
e (b)
k
M
M
Akl ( π ) および
 akl
k  0 l 1
Q(θ | θ t )   P (π | x, θ t ) log P ( x, π | θ ) より、
π
M M
M

Q (θ | θ )   P (π | x, θ )    E k (b, π ) log ek (b)   Akl (π ) log a kl 
π
k  0 l 1
 k 1 b

t
t
M
M
M
  E k (b) log ek (b)   Akl log a kl
k 1 b
ここで
k  0 l 1
 p log q は q  p の時、最大より、
(b)
E
A
(
b
)

,

e
a
(
b
'
)
E
A
i
i
i
i
i
k
kl
kl
k
k
b'
l'
kl
プロファイルHMM(1)


配列をアラインメントするためのHMM
一致状態(M)、欠失状態(D)、挿入状態(I)を持つ
D
D
D
I
I
I
I
BEGIN
M
M
M
END
プロファイルHMM(2)
マルチプル
アラインメント
プロファイル
HMM
M M ・ ・ ・ M
D
D
D
I
I
I
I
BEGIN
M
M
M
こうもり A G - - - C
ラット
A -A G -C
ネコ
A G -A A -
ハエ
--A A A C
ヤギ
A G ---C
END