第3回 - 京都大学

Download Report

Transcript 第3回 - 京都大学

集中講義(東京大学)「化学システム工学特論第3」
バイオインフォマティクス的手法による
化合物の性質予測(3)
配列アライメント
阿久津 達也
京都大学 化学研究所
バイオインフォマティクスセンター
内容


配列アライメントとは?
ペアワイズ・アライメント





配列検索の実用プログラム
マルチプル・アライメント




大域アライメント
局所アライメント
アフィンギャップコスト
SPスコア
多次元DP
実用的アライメント法
配列モチーフ
配列アライメント




バイオインフォマティクスの
最重要技術の一つ
2個もしくは3個以上の配列
の類似性の判定に利用
文字間の最適な対応関係を
求める(最適化問題)
配列長を同じにするように、
ギャップ記号(挿入、欠失に
対応)を挿入
A
L
G
F
G
S
L
Y
A
L
G
G
V
S
V
G
A
L
G
F
G
S
L
A
L
G
S
V
G
V
G
Y
G
G
スコア行列(置換行列)

残基間(アミノ酸文字間)の類似性を表す行列

PAM250, BLOSUM45 など
A
A
R
N
D
C
Q
E
G
H
I
L
K
M
F
P
S
T
W
Y
V
R
N
D
C
Q
E
5 -2 -1 -2 - 1 -1 -1
-2
7 - 1 -2 -4
G
P
S
T
Y
V
0 -2 - 1 -2 -1 -1 -3 - 1
H
I
L
K
M
F
1
0 -3 -2
W
0
3
1
0 -3
0 -4 -3
3 - 2 -3 -3 -1 -1 - 3 -1
-1 -1
7
2 -2
0
0
1 -3 -4
0 - 2 -4 -2
-2 -2
2
8 -4
0
2 - 1 -1 -4 -4 -1 - 4 -5 -1
0
1
0 - 4 -2 -3
0 -1 - 5 -3 -4
-1 -4 - 2 -4 13 -3 -3 - 3 -3 -2 -2 -3 - 2 -2 -4 -1 -1 - 5 -3 -1
-1
1
0
0 -3
7
2 -2
1 -3 -2
2
0 -4 -1
B LO S U M 5 0 ス コ ア 行 列
(置 換 行 列 )の 一 部 分
0 -1 - 1 -1 -3
スコア行列の導出


基本的には頻度の比の対数をスコアとする
BLOSUM行列




既存のスコア行列を用いて多くの配列のアライメントを求め、
ギャップ無しの領域(ブロック)を集める
残基がL%以上一致しているものを同一クラスタに集める
同じクラスタ内で残基aが残基bにアラインされる頻度Aabを
計算
qa=∑b Aab / ∑cd Acd, pab=Aab / ∑cd Acd を求め、
s
(a,b)=log(pab/qaqb) としたのち、スケーリングし近傍の整数
値に丸める
ペアワイズ・アライメント


配列が2個の場合でも可能なアラインメントの個数は
指数オーダー
しかし、スコア最大となるアライメント(最適アライメン
ト)は動的計画法により、O(mn)時間で計算可能
(m,n:入力配列の長さ)
入力配列
A G C T, AC G C T
イメント
ア ラ イ メント
AGCT AC G C T
スコア
-3
最 適 アラ
AG - CT
AC G C T
1
A - GCT
AC G C T
- AGC - - T
AC - - G C T
3
-5
( 同 じ 文 字 の 時 : 1、 違 う文 字 の 時 : -1 、ギ ャ ッ プ 1 文 字 : - 1)
ギャップペナルティ


ギ ャ ッ プ ( g =3 )
線形コスト -gd
 g: ギャップ長
A L G
L Y G
A V G V S D L
G
 d: ギャップペナルティ
 この図の例では、コスト= -3d
アフィンギャップコスト –d – e(g-1)
 d: ギャップ開始ペナルティ
 e: ギャップ伸張ペナルティ
 この図の例では、コスト= -d - 2e
 よく利用されるペナルティ (d,e)=(12,2),(11,1)
動的計画法による大域アライメント(1)
(Needleman-Wunschアルゴリズム)



入力文字列から格子状グラフを構成
アライメントと左上から右下へのパスが一対一対応
最長経路=最適アライメント
G
G
F
5
K
-2
Y
D
-5
1
ア ラ イメント
-7
G K Y
-5
-5
7
-6
-7
G
D
F V D
G K Y D
V
D
-1
-2
-3
-2
1
0
-4
4
-7
-7
-7
-7
スコア
-7
G
-7 +4 = 2
-7 -7 -1 +0
-7 -7 = -29
G F V D
-7 -7 -5 -7
G K Y D
-7
5 -7 +7
F V D
-7 -7 -7 = -47
動的計画法による大域アライメント(2)
F (0 ,0 )
G
F (1 ,0 )
=-d
K
F (2 ,0 )
= -2 d
DP (動的計画法)による
最長経路(スコア)の計算
F ( 0 , j )   jd ,
=0
G
F ( i -1 , j -1 )
F (0 ,1 )
=-d
F (i, j- 1 )
F ( i , 0 )   id
 F ( i  1, j  1)  s ( x i , y j )

F ( i , j )  max 
F ( i  1, j )  d

F ( i , j  1)  d

s (K ,F )
F
-d
F (0 ,2 )
= -2 d
-d
F ( i -1 , j )
F (i, j)
⇒ O(mn)時間
行列からの経路の復元は、
F(m,n)からmaxで=となっている
F(i,j)を逆にたどることに行う
(トレースバック)
動的計画法による大域アライメント(3)
0
G
G - 7 K- 1 4 Y- 2 1 D
5
5
-7
F
-5
-21
D
-28
-5
-1
5
-4
0
-16
-7
-6
-3
-2
-9
-7
3
4
-8
-7
-7
-2
-2
-4
-7
-16
7
-2
1
1
-9
0
-9
-7
-5
-2
-2
-14
V
-2
-28
-7
2
-7
局所アライメント(1)
(Smith-Watermanアルゴリズム)




配列の一部のみ共通部分があることが多い
⇒共通部分のみのアライメント
x1x2 … xm, y1y2 … yn を入力とする時、スコアが最大とな
る部分列ペア xixi+1 … xk, yjyj+1 … yh を計算
例えば、HEAWGEH と GAWED の場合、
AWGE
A W -E
というアライメントを計算
大域アライメントを繰り返すとO(m3n3)時間
⇒Smith-WatermanアルゴリズムならO(mn)時間
局所アライメント(2)
動的計画法
の式
0

 F ( i  1, j  1)  s ( x
F ( i , j )  max 
 F ( i  1, j )  d
 F ( i , j  1)  d

,
y
)
(最大のF(i,j)から
トレースバック)
局所アライメント(3)

局所アライメントの正当性の証明(下図)

局所アライメントの定義:x1x2 … xm, y1y2 … yn を入力とする時、
スコアが最大となる部分列ペア xixi+1 … xk, yjyj+1 … yh を計算
0

 F ( i  1, j  1)  s ( x
F ( i , j )  max 
 F ( i  1, j )  d
 F ( i , j  1)  d

0
max F ( i , j )}
0
0
(一 部 の 辺 は
省略)
,
y
)
アフィンギャップコストによる
アライメント
 F ( i  1, j )  d
Ix ( i , j )  max 
 Ix ( i  1, j )  e
 F ( i , j  1)  d
Iy ( i , j )  max 
 Iy ( i , j  1)  e
 F ( i  1, j  1)  s ( x , y )

F ( i , j )  max 
Ix ( i , j )

Iy ( i , j )



三種類の行列を用いる動的
計画法によりO(mn)時間
Smith-Watermanアルゴリ
ズムとの組み合わせが広く
利用されている
Ix ( i , j )
Iy ( i , j )
F (i, j)
配列検索の実用プログラム(1)
O(mn):mは数百だが、nは数GBにもなる
⇒実用的アルゴリズムの開発
 FASTA:短い配列(アミノ酸の場合、1,2文字、DNAの
場合、4-6文字)の完全一致をもとに対角線を検索し、
さらにそれを両側に伸長し、最後にDPを利用。
 BLAST:固定長(アミノ酸では3, DNAでは11)の全て
の類似単語のリストを生成し、ある閾値以上の単語
ペアを探し、それをもとに両側に伸長させる。ギャッ
プは入らない。伸長の際に統計的有意性を利用。

配列検索の実用プログラム(2)
FASTA
BLAST
Q u e ry
・・・ A A F D M F D A D G G ・・・
A
C
A
T
G
A
C
類似ワード
G
A
MFD
MFE
MFN
T
MYD
MYE
MYN
・・・
G
A
Q u e ry
T
( k tu p = 2 )
・・・ A A F D M F D A D G G ・・・
・・・ E A F S M F E K D G D ・・・
D a ta ba se
配列検索の実用プログラム(3)


SSEARCH: 局所アラインメント(SmithWatermanアルゴリズム)をそのまま実行
PSI-BLAST: ギャップを扱えるように拡張
したBLASTを繰り返し実行。「BLASTで見
つかった配列からプロファイルを作り、そ
れをもとに検索」という作業を繰り返す。
マルチプルアライメント:意味




3本以上の配列が与えられた時、全ての配列の長さが
同じになるようにギャップを挿入
進化的、構造的に相同な残基(塩基)ができるだけ同じ
カラムに並ぶようにする
通常はスコアを用いて、最適化問題として定式化
理想的なアライメント
同一残基から派生した残基が同一カラムに並ぶ
 構造的に重なり合う残基が同一カラムに並ぶ
⇒構造的に重なり合わない場所を無理に重ね合わせるのは、あ
まり意味がない

マルチプルアライメント:定式化

3本以上の配列が与えられた時、長さが同じで、かつ、スコアが最適とな
るように各配列にギャップを挿入したもの
HBA_HUM AN
HBB_HUM AN
MYG_PHY CA
GLB5_PE TMA
LGB2_LU PLU
GLB1_GL YDI

VGAHA GEY
VNVDE V
VEADV AGH
VYSTY ETA
FNANI PKH
IAGAD NGAGV
HBA_HUM AN
HBB_HUM AN
MYG_PHY CA
GLB5_PE TMA
LGB2_LU PLU
GLB1_GL YDI
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
SP(Sum of Pairs)スコア

S(mi)=∑k<l s(mik,mil)
k
 mi

= i列, k行目の文字
問題点


S ( m1 )  s ( L , I)  s ( L , V )  s ( I, V )
S ( m 2 )  s ( D , )  s ( D , )  s (  , )
S ( m 3 )  s ( D , )  s ( D , E )  s (  , E )
確率的な正当性が無い
同一カラムに a,b,c が並んだ
場合、log(pabc/qaqbqc) とすべ
きだが、SPスコアでは
log(pab/qaqb)+ log(pbc/qbqc)+
log(pac/qaqc)
L
D
D
I
V
E
m1 m2 m3
多次元DPによる
マルチプルアライメント

N個の配列に対するマルチ
プルアライメント


N次元DPによりO(2NnN)時間
(各配列の長さはO(n)を仮定)
例:N=3
F ( i , j , k )  max
 F ( i  1, j  1, k  1)  S ( 1 , 2 , 3 )
xi x j xk

 F ( i , j  1, k  1)  S (  , 2 , 3 )
x j xk

1
3

F ( i  1, j , k  1)  S ( x i ,  , x k )

1
2

 F ( i  1, j  1, k )  S ( x i , x j ,  )

3
 F ( i , j , k  1)  S (  ,  , x k )

2
 F ( i , j  1, k )  S (  , x j ,  )

1
 F ( i  1, j , k )  S ( x ,  ,  )
i

(i,j,k-1 )
(i,j-1 ,k)
(i-1 ,j,k) (i,j,k)
マルチプルアライメントの計算手法

分枝限定法






10配列程度なら最適解が計算可能
シミュレーテッドアニーリング
遺伝的アルゴリズム
逐次改善法
HMMによるアライメント
プログレッシブアライメント


CLUSTAL-W(最も広く利用されているソフト)で採用
逐次改善法との組み合わせが、より有効
実用的マルチプルアライメント法

ヒューリスティックアルゴリズム
の開発



S TE P 1
N次元DPは(N=4ですら)
非実用的
一般にはNP困難
プログレッシブアライメント
1.
2.

入力配列
近隣結合法などを用いて 案内
木を作る
類似度が高い節点から低い節
点へという順番で、配列対配列、
配列対プロファイル、プロファイ
ル対プロファイルのアラインメン
トを順次計算
逐次改善法

「配列を一本取り除いては、アラ
インメントしなおす」を繰り返す
S TE P 2
③
①
②
プログレッシブアライメント
A
A
-
C
C
C
C
ACCGA AC - GAT
ACCGA
C - GA
- - GA
C AGA
GA - A
T
T
T
CCAGAT
CGA - AT
ACGAT
CCAGAT
CGAAT
プロファイル-プロファイル・アライメント

各列を1文字のように扱うことにより、DPにより計算
ACCGA AC - GAT
CCAGAT
CGA - AT
P rofile v s. P rofile
ACC - GA AC - - GAT
- CC AGAT
- CGA - AT
S e q u n c e v s. P rofile
ACCGA
CCAGAT
CGA - AT
ACC - GA - CC AGAT
- CGA - AT
S c ore for
c olu m n p a ir
A
A
C
G
S c ore for
c olu m n p a ir
C
C
G
逐次改善法

「配列を一本取り除いては、アラインメントしなおす」
を繰り返す
配列モチーフ

似た性質を持つタンパク質配列な
どが持つ共通文字列パターン
 ロイシンジッパー(DNA結合)


L-x(6)-L-x(6)-L-x(6)-L
ATP/GTP結合部位


Z inc Finge r
[AG]-x(4)-G-K-[ST]
Cys-His Zinc Finger(DNA結
合)

C-x(2,4)-C-x(3)-[LIVMFYWC]x(8)-H-x(3,5)-H
C ys
H is
Zn
C ys
H is
講義のまとめ(配列アライメント
I)

動的計画法によるペアワイズアライメント




マルチプルアライメント




大域アライメント
局所アライメント(Smith-Watermanアルゴリズム)
アフィンギャップコストを用いたアライメント
多次元DP
プログレッシブアライメント
配列モチーフ
参考文献

阿久津、浅井、矢田訳:バイオインフォマティクス –確率モ
デルによる遺伝子配列解析、医学出版、2001