Upload
armand
View
64
Download
0
Embed Size (px)
DESCRIPTION
情報生命科学特別講義 III ( 11 ) RNA 二次構造予測. 阿久津 達也 京都大学 化学研究所 バイオインフォマティクスセンター. 講義予定. 第1回 : 文字列マッチング 第2回: 文字列データ構造 第3回: たたみ込みとハッシュに基づくマッチング 第4回: 近似文字列マッチング 第5回 : 配列アラインメント 第6回: 配列解析 第7回 : 進化系統樹推定 第8回 : 木構造の比較:順序木 第9回 : 木構造の比較:無順序木 第10回 : 文法圧縮 第11回 : RNA 二次構造予測 - PowerPoint PPT Presentation
Citation preview
情報生命科学特別講義 III
( 11 ) RNA 二次構造予測
阿久津 達也
京都大学 化学研究所バイオインフォマティクスセンター
講義予定 第1回 : 文字列マッチング 第2回: 文字列データ構造 第3回: たたみ込みとハッシュに基づくマッチング 第4回: 近似文字列マッチング 第5回: 配列アラインメント 第6回: 配列解析 第7回: 進化系統樹推定 第8回: 木構造の比較:順序木 第9回: 木構造の比較:無順序木 第10回: 文法圧縮 第11回: RNA 二次構造予測 第12回: タンパク質立体構造の予測と比較 第13回: 固定パラメータアルゴリズムと部分 k 木 第14回: グラフの比較と列挙 第15回: まとめ
RNA 二次構造予測
RNA 二次構造予測RNA 二次構造予測(基本版)入力: RNA 配列 a=a[1]…a[n]出力: 以下を満たし、スコア Σ(i,j)∈M μ(a[i],a[j]) が最小となる塩基対 の集合 M={(i,j)|1≤i+1<j≤n,{a[i],a[j]}∈B}(a[i],a[j]) ,(a[h],a[k]) ∈M となる i ≤h ≤j ≤k が存在しない 塩基対: B={{a,u},{g,c} } スコア関数(最も単純なもの)
μ(a[i],a[j])= -1 if {a[i],a[j]} ∈B μ(a[i],a[j])= 0 otherwise
スコアが最小でないものも二次構造とよび、最小のものを最適二次構造とよぶこともある
{g,u} も塩基対に含まれる場合がある
A U G C
塩基対
A G A G C U
A G A G C U
二次構造
二次構造でない
RNA 二次構造の二種類の表現
RNA 二次構造の例RNA 配列
Nussinov アルゴリズム
予測アルゴリズム( Nussinov アルゴリズム) 入力配列: a=a[1]…a[n]
動的計画法
}),1(),({min
])[],[()1,1(
)1,(
),1(
min),(
1jkWkiW
jaiajiW
jiW
jiW
jiW
jki
0)1,(,0),( iiWiiW初期化
メインループ
最適解(= -塩基対の個数)
),1( nW
それ以外の時
の時,0
}}CG,{},UA,{{,,1),(
yxyx
の最適解の値部分配列 ][]1[]...1[][),( jajaiaiajiW
アルゴリズムの説明
}),1(),({min
])[],[()1,1(
)1,(
),1(
min),(
1jkWkiW
jaiajiW
jiW
jiW
jiW
jki
メインループ
の最適解の値部分配列 ][]1[]...1[][),( jajaiaiajiW
Nussinov アルゴリズムの解析
定理: 上記アルゴリズムは O(n3) 時間で最適解を計算略証: テーブル W(i,j) のサイズは O(n2) 。 1 個のテーブル要素の計算に O(n) 時間(最後の行)。
}),1(),({min
])[],[()1,1(
)1,(
),1(
min),(
1jkWkiW
jaiajiW
jiW
jiW
jiW
jki
RNA 二次構造予測と確率文脈自由文法
RNA 二次構造予測と確率文脈自由文法 (1)
rule score score for X
X→ε X→ a X→u X→ g X→ c X→YZ X→ a Y u X→ u Y a X→ g Y c X→ c Y g
0 0 0 0 0 0 1 1 1 1
0 0 0 0 0
score(X)+score(Y) score(Y)+1 score(Y)+1 score(Y)+1 score(Y)+1
文法表現としては X→aYu, X→XY などではなく、 S→aSu, S→SS などが正式RNA の場合はスコアは1ではなく、-1に置き換えることが必要
確率文脈自由文法( SCFG ): 導出確率が最大となる構文解析木を計算 ⇒ 確率の代わりにスコアを用いる
RNA 二次構造予測と確率文脈自由文法 (2) スコア最大(≒確率最大)の構文解析木 ⇔ 最適二次構造 実際、 Nussinov アルゴリズムは CYK アルゴリズム(文
脈自由文法の構文解析アルゴリズム)に類似
Valiant アルゴリズムの利用
[Akutsu: J. Comb. Opt. 1999] [Zakov et al.: Alg. Mol. Biol. 2011]
二次構造予測の計算量の改良 文脈自由文法の構文解析
高速行列乗算に基づく Valiant アルゴリズムを用いれば O(nω) 時間 O(nω) は n×n の行列乗算にかかる計算時間
高速行列乗算に基づく RNA 二次構造予測 基本的に Valiant アルゴリズムを適用
しかし、行列乗算の基本演算を (+,×) から (max,+) に変える必要 (max,+) の行列演算は、ほんの少し O(n3) より良くなるだけ
O(n3((log log n)/(log n))1/2) 時間 [Akutsu: J. Comb. Opt. 1999]
O(n3(log3(log n))/log n) 時間 [Zakov et al.: Alg. Mol. Biol. 2011]
SCFG の内側アルゴリズム [Akutsu: J.Comb.Opt. 1999] 、外側アルゴリズム[Zakov et al.:Alg. Mol. Boil. 2011] は (+,×) 演算で済むので O(nω) 時間で可能
Four-Russian アルゴリズムに基づく RNA 二次構造予測 O(n3/log n) 時間 [Frid, Gusfield: Proc. WABI 2009]
ω は二十数年ぶりに 2.3737 から 2.3736 へ、さらに、 2.327 へ改善された [Wiliianms: Proc. STOC 2012]
Valiant アルゴリズムの概略(1) 基本的に分割統治 W(i,j)=Σk W(i,k)×W(k+1,j) の計算(青のベクトルと赤
の ベクトルの乗算)を 高速化 行列乗算を適用する ため、複数の W(i,j)
の計算をまとめて 実行 左下三角は計算不要
Valiant アルゴリズムの概略(2)基本戦略白と黄が計算済みとして、青を計算(青は一部計算済み)
ピンクの部分の行列積を計算後、青と加算(⇒結果は緑) 緑と黄色からなる行列を作り、再帰計算により青を計算
(左下の白は不要なのですべて0として OK )
高速乗算
再帰計算
Valiant アルゴリズムの概略(3)
時間計算量T2(n)= T2(n/2)+ 2T3(3n/4)+ T4(n)+ O(n2)T3(n)= M(n/3)+ T2(2n/3)+ O(n2)T4(n)= 2M(n/4)+ T2(n/2)+ O(n2)⇒T2(n)= 4T2(n/2)+ 4M(n/4)+ O(n2)
M(n) は n×n 行列の乗算の計算量 )(
2)4/(4)log()(log
0
)2(22
nO
nMnnOnTn
k
k
メインルーチン: 下図のとおり時間計算量:
Valiant アルゴリズムの概略(4)
)(
)()(22)()()(
)()()2/(2)(
22
log
02
2
22
nO
nOnTnTnOnT
nOnTnTnTn
k
k
二次構造予測の平均計算時間の改良
[Wexler et al.:J. Comp. Biol. 2007]
平均計算時間の改良: アイデア 最悪の時間計算量の O(n3) からの本質的改良は極めて困難
高速行列乗算は実用的でない Nussinov アルゴリズムや他の動的計画法アルゴ
リズムは平均的にも O(n3) 時間かかる⇒ 平均計算時間の改良 [Wexler et al.:J. Comp. Biol. 2007]
ブランチループの計算がボトルネックとなっていた Valiant 型のアルゴリズムでは行列乗算により改良 アイデア: 必要な k のみをチェックすることにより
改良 }),1(),({min jkWkiWjki
詳細なエネルギーモデル(1) W(i,j): 部分配列 a[i..j] に対する最適解 V(i,j): a[i] と a[j] が塩基対として結合する場合の最適解
bjkWkiWjiVM
jiVjijiebijiVBI
jiVMjiVBIjiVjiesjiehjiV
jkWkiWjiWjiWjiVjiW
jki
jjii
jki
)1,1(),1(min),(
)','(}',',,(min),(
),(),,(),1,1(),(),,(min),(
}),1(),({min),1,(),,1(),,(min),(
1
''
詳細なエネルギーモデル(2) 前述のモデルを j≧i+4 の場合のみを考えて簡略化
),1('),('min),,('min),('
4),(),('
4),('),(
jkWkiWjiVjiW
ijjiVjiV
ijjiWjiW
jki
),1('),('min),,('min),(' jkWkiVjiVjiW
jki
定理 : V’(i,j)≧V’(i,k)+W’(k+1,j) がある k (i < k < j) について 成立すれば、すべての j’>j について V’(i,j)+W’(j+1,j’) ≧ V’(i,k)+W’(k+1,j’) が成立
必要な k のみの計算定理 : V’(i,j)≧V’(i,k)+W’(k+1,j) がある k (i < k < j) について 成立すれば、すべての j’>j について V’(i,j)+W’(j+1,j’) ≧ V’(i,k)+W’(k+1,j’) が成立
V’(i,j’) の計算においては、 V’(i,j)≦V’(i,k)+W’(k+1,j) (i < k < j)
が成立する j について計算すれば良い ( j’>j )
アイデア:塩基対を作ることによりエネルギーが減る場所のみを k の候補とする
アルゴリズム
}{
);,('),('
)),('),('(
;),1('),('min),('
{};
1
oldCandidateFprocedure
jLL
jiVjiW
jiWjiV
jkWkiVjiW
nij
L
ni
Lk
thenif
dotofor
dotofor V’(i,j)<W’(i,j) とな
る j のみを以降で は k の候補とし
て採用 ψ(n): 長さ n の配
列に対する L の大きさの最大値の期待値
定理 : CandidateFold は平均的に O(n2 ψ(n)) 時間で動作
妥当な現実的な仮定( polymer-zeta property )のもとでψ(n) は定数になることが知られている
⇒ RNA 二次構造予測は平均的に O(n2) 時間で実行可能
単純擬似ノットつき二次構造の予測
[Akutsu: Disc. Appl. Math. 2000]
擬似ノット擬似ノットi ≤h ≤j ≤k を満たす塩基対ペア (a[i],a[j]) ,(a[h],a[k]) ∈M
単純擬似ノット: 下の図に示される擬似ノット(定義は省略)
A G A G C U
単純擬似ノットに対する動的計画法 (1)もとの W(i,j) に加え、3種類のテーブルを用いるWL(i,j,k): a[i] と a[j] が塩基対をなす場合 WR(i,j,k): a[j] と a[k] が塩基対をなす場合 WM(i,j,k): a[i] , a[j], a[k] のどのペアも塩基対をなさない場合
)1,,(),,1,(
),,1,(),,,1(
)1,,(),,1,(),,,1(
min),,(
)1,1,(
)1,1,(
)1,1,(
min])[],[(),,(
),1,1(
),1,1(
),1,1(
min])[],[(),,(
kjiWkjiW
kjiWkjiW
kjiWkjiWkjiW
kjiW
kjiW
kjiW
kjiW
kajakjiW
kjiW
kjiW
kjiW
jaiakjiW
RR
LL
MMM
M
R
M
L
R
R
M
L
L
),1(),(min
])[],[()1,1(
)1,(
),1(
),(
min),(
jkWkiW
jaiajiW
jiW
jiW
jiW
jiW
jki
pseudo
),,(),,,(),,,(min),(00
00 kjiWkjiWkjiWkiW RMLkkjii
pseudo
1,other allfor 0
),,1(),,1(),,1(
allfor ])1[],[(),,(
allfor ])[],[(),,(
000
0
jkjk
kjiWkjiWkjiW
jjajakjiW
jijaiajjiW
LLL
R
L
単純擬似ノットに対する動的計画法(2)WL(i,j,k) 計算の説明
),1,1(
),1,1(
),1,1(
min])[],[(),,(
kjiW
kjiW
kjiW
jaiakjiW
R
M
L
L
より複雑な擬似ノットつき二次構造の予測木接合文法 に基づく方法 [Uemura et al.: Theoret. Comp. Sci. 1999]
O(n4) 時間、 O(n5) 時間(再帰的構造を含む場合)PKNOTS アルゴリズム [Rivas, Eddy: J. Mol. Biol. 1999]
擬似ノットを組み合わせた構造にも対応、 O(n6) 時間平面的擬似ノット: NP困難 [Akutsu: Disc. Appl. Math. 2000]
まとめ RNA 二次構造予測
動的計画法により O(n3) 時間 Valiant アルゴリズムなどの利用により少しだけ改善 Polymer-zeta property を仮定すると、平均的に O(n2) 時間
擬似ノットつき RNA 二次構造予測 計算量は対象とする擬似ノットの複雑さに依存
補足 Valiant アルゴリズムは、 RNA アラインメント・構造同時予
測問題や結合 RNA 二次構造予測問題にも適用可 [Zakov et al.: Alg. Mol. Biol. 2011]
擬似ノットなし RNA 二次構造予測の(クリークによる)下限は Ω(nω-ε) 時間 [Abboud et al.: FOCS 2015] 。現状では上限 とのギャップ。
⇒ 肯定的に解決された (O(n2.8…) time) [Bringmann et al.: FOCS 2016]