情報生命科学特別講義III (11) RNA二次構造予測

Slides:



Advertisements
Similar presentations
生物情報ソフトウェア特論 (3)近似文字列マッチング 阿久津 達也 京都大学 化学研究所 バイオインフォマティクスセンター.
Advertisements

奈良女子大集中講義 バイオインフォマティクス (3) 配列アラインメント
動的計画法を用いたアラインメント  小菅孝史.
情報生命科学特別講義III (5)配列アラインメント
阿久津 達也 京都大学 化学研究所 バイオインフォマティクスセンター
基本情報技術概論 I 演習(第5回) 埼玉大学 理工学研究科 堀山 貴史
情報生命科学特別講義III (1) 文字列マッチング
アルゴリズムイントロダクション第2章 主にソートに関して
近似アルゴリズム 第10章 終了時刻最小化スケジューリング
情報生命科学特別講義III (8)木構造の比較: 順序木
奈良女子大集中講義 バイオインフォマティクス (8) タンパク質立体構造予測
分子生物情報学 動的計画法に基づく配列比較法 (ペアワイズアライメント法)
奈良女子大集中講義 バイオインフォマティクス (6) モチーフ発見・隠れマルコフモデル
集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(3) + 数理談話会 木構造および画像データの文法圧縮
2009/10/9 良いアルゴリズムとは 第2講: 平成21年10月9日 (金) 4限 E252教室 コンピュータアルゴリズム.
阿久津 達也 京都大学 化学研究所 バイオインフォマティクスセンター
「データ学習アルゴリズム」 第2章 学習と統計的推測 報告者 佐々木 稔 2003年5月21日 2.1 データと学習
岩井 儀雄 コンピュータ基礎演習  ー探索、整列ー 岩井 儀雄
宇野 毅明 国立情報学研究所 2002年3月 東北大大学院 情報科学研究科ワークショップ
京都大学 化学研究所 バイオインフォマティクスセンター
集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(5) 木構造データ間の編集距離
京都大学 化学研究所 バイオインフォマティクスセンター
情報生命科学特別講義III (7)進化系統樹推定
情報工学総合演習 D-I 近似アルゴリズム 埼玉大学 理工学研究科 山田 敏規、 橋口 博樹、 堀山 貴史
生物情報ソフトウェア特論 (1) 文字列マッチング・データ構造
k 個のミスマッチを許した点集合マッチング・アルゴリズム
生物情報ソフトウェア特論 (8) RNA二次構造予測
生物情報ソフトウェア特論 (3)近似文字列マッチング
情報生命科学特別講義III (4)近似文字列マッチング
集中講義(九州大学数理学研究院) バイオ構造データに対する数理モデルと アルゴリズム(4) ブーリアンネットワーク
生命情報学基礎論 (5) タンパク質立体構造予測
生命情報学入門 配列のつなぎ合わせと再編成
阿久津 達也 京都大学 化学研究所 バイオインフォマティクスセンター
情報生命科学特別講義III (2)文字列データ構造
九州大学大学院 情報学専攻特別講義 (9) ブーリアンネットワークの 解析と制御
奈良女子大集中講義 バイオインフォマティクス (9) 相互作用推定
定兼邦彦 今井浩 東京大学理学系研究科 情報科学専攻
情報生命科学特別講義III (12) タンパク質立体構造の比較と予測
阿久津 達也 京都大学 化学研究所 バイオインフォマティクスセンター
第14章 モデルの結合 修士2年 山川佳洋.
情報工学概論 (アルゴリズムとデータ構造)
阿久津 達也 京都大学 化学研究所 バイオインフォマティクスセンター
九州大学大学院 情報学専攻特別講義 (3) 配列解析
分子生物情報学(2) 配列のマルチプルアライメント法
情報生命科学特別講義III (13) 固定パラメータアルゴリズムと 部分k木
プログラミング 4 整列アルゴリズム.
分子生物情報学(3) 確率モデル(隠れマルコフモデル)に 基づく配列解析
阿久津 達也 京都大学 化学研究所 バイオインフォマティクスセンター
サポートベクターマシンを用いた タンパク質スレッディングの ためのスコア関数の学習 情報科学科4年 81025G 蓬来祐一郎.
九州大学大学院 情報学専攻特別講義 (2) 配列アラインメント
九州大学大学院 情報学専攻特別講義 (4) RNA二次構造予測
九州大学大学院 情報学専攻特別講義 (6) 固定パラメータアルゴリズムと 部分k木
生物情報ソフトウェア特論 (2)たたみ込みとハッシュに 基づくマッチング
B03 量子論理回路の 最適化に関する研究 西野哲朗,垂井淳,太田和夫,國廣昇 電気通信大学 情報通信工学科.
データ構造とアルゴリズム (第5回) 静岡大学工学部 安藤和敏
文法と言語 ー文脈自由文法とLR構文解析ー
生物情報ソフトウェア特論 (8) RNA二次構造予測
第16章 動的計画法 アルゴリズムイントロダクション.
Max Cut and the Smallest Eigenvalue 論文紹介
九州大学大学院 情報学専攻特別講義 (8) ニューラルネットワークの 離散モデル
奈良女子大集中講義 バイオインフォマティクス (7) 進化系統樹
情報生命科学特別講義III (14) グラフの比較と列挙
4.プッシュダウンオートマトンと 文脈自由文法の等価性
生命情報学特論 (6) 固定パラメータアルゴリズムと 部分k木
生物情報ソフトウェア特論 (4)配列解析II
阿久津 達也 京都大学 化学研究所 バイオインフォマティクスセンター
情報生命科学特別講義III (3)たたみ込みとハッシュに 基づくマッチング
生物情報ソフトウェア特論 (10)固定パラメータアルゴリズムと 部分k木
集中講義(東京大学)「化学システム工学特論第3」 バイオインフォマティクス的手法による化合物の性質予測(1) バイオインフォマティクス概観
分子生物情報学(0) バイオインフォマティクス
Presentation transcript:

情報生命科学特別講義III (11) RNA二次構造予測 阿久津 達也 京都大学 化学研究所 バイオインフォマティクスセンター

講義予定 第1回: 文字列マッチング 第2回: 文字列データ構造 第3回: たたみ込みとハッシュに基づくマッチング 第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] 出力: 以下を満たし、スコア 二次構造 U G C 塩基対 二次構造 二次構造でない 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} も塩基対に含まれる場合がある

RNA二次構造の二種類の表現

RNA二次構造の例 RNA配列

Nussinovアルゴリズム

予測アルゴリズム(Nussinovアルゴリズム) 入力配列: a=a[1]…a[n] 動的計画法 初期化 メインループ 最適解(= -塩基対の個数)

アルゴリズムの説明 メインループ

Nussinovアルゴリズムの解析 定理: 上記アルゴリズムは O(n3) 時間で最適解を計算 略証: テーブル W(i,j) のサイズはO(n2)。1個のテーブル要素の計算にO(n)時間(最後の行)。

RNA二次構造予測と 確率文脈自由文法

RNA二次構造予測と確率文脈自由文法 (1) 確率文脈自由文法(SCFG): 導出確率が最大となる構文解析木を計算 ⇒ 確率の代わりにスコアを用いる 文法表現としては X→aYu, X→XY などではなく、S→aSu, S→SS などが正式 RNAの場合はスコアは1ではなく、-1に置き換えることが必要

RNA二次構造予測と確率文脈自由文法 (2) スコア最大(≒確率最大)の構文解析木 ⇔ 最適二次構造 実際、NussinovアルゴリズムはCYKアルゴリズム(文脈自由文法の構文解析アルゴリズム)に類似

Valiantアルゴリズムの利用 [Akutsu: J. Comb. Opt. 1999] [Zakov et al.: Alg. Mol. Biol. 2011]

二次構造予測の計算量の改良 文脈自由文法の構文解析 高速行列乗算に基づくRNA二次構造予測 高速行列乗算に基づく 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行列の乗算の計算量

Valiantアルゴリズムの概略(4) メインルーチン: 下図のとおり 時間計算量:

二次構造予測の 平均計算時間の改良 [Wexler et al.:J. Comp. Biol. 2007]

最悪の時間計算量の O(n3) からの本質的改良は極めて困難 高速行列乗算は実用的でない 平均計算時間の改良: アイデア 最悪の時間計算量の O(n3) からの本質的改良は極めて困難 高速行列乗算は実用的でない Nussinovアルゴリズムや他の動的計画法アルゴリズムは平均的にも O(n3) 時間かかる ⇒ 平均計算時間の改良 [Wexler et al.:J. Comp. Biol. 2007] ブランチループの計算がボトルネックとなっていた Valiant 型のアルゴリズムでは行列乗算により改良 アイデア: 必要な k のみをチェックすることにより改良

詳細なエネルギーモデル(1) W(i,j): 部分配列 a[i..j] に対する最適解 V(i,j): a[i]とa[j]が塩基対として結合する場合の最適解

詳細なエネルギーモデル(2) 前述のモデルを j≧i+4 の場合のみを考えて簡略化 定理: 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 の候補とする

アルゴリズム 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 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] のどのペアも塩基対をなさない場合

単純擬似ノットに対する動的計画法(2) WL(i,j,k) 計算の説明 より複雑な擬似ノットつき二次構造の予測 木接合文法に基づく方法 [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二次構造予測 擬似ノットつき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]