290 likes | 1.12k Views
配列解析アルゴリズム特論 配列アライメント I. 阿久津 達也. 京都大学 化学研究所 バイオインフォマティクスセンター. 講義内容 . 講義予定 11月5日 配列アライメント I( 担当:阿久津) Smith-waterman アルゴリズム Hash 法を用いた高速検索 Gibbs サンプリング 11月12日 配列アライメント II( 担当:山口) マルチプルアライメント, E-Value PSI-BLAST 11月19日 QTL 解析(担当:中谷) 糖尿病モデル動物等での解析例等を用いた解説 11月26日 機械モデルと学習手法(担当:馬見塚)
E N D
配列解析アルゴリズム特論配列アライメントI配列解析アルゴリズム特論配列アライメントI 阿久津 達也 京都大学 化学研究所 バイオインフォマティクスセンター
講義内容 • 講義予定 • 11月5日 配列アライメントI(担当:阿久津) • Smith-waterman アルゴリズム • Hash法を用いた高速検索 • Gibbsサンプリング • 11月12日 配列アライメントII(担当:山口) • マルチプルアライメント,E-Value • PSI-BLAST • 11月19日 QTL解析(担当:中谷) • 糖尿病モデル動物等での解析例等を用いた解説 • 11月26日 機械モデルと学習手法(担当:馬見塚) • HMM、有限混合モデル、EMアルゴリズムなど • 12月3日 文字列照合アルゴリズム(担当:坂内) • 文字列照合アルゴリズム、索引構造、最適パターン探索
配列アライメント • バイオインフォマティクスの最重要技術の一つ • 2個もしくは3個以上の配列の類似性の判定に利用 • 文字間の最適な対応関係を求める(最適化問題) • 配列長を同じにするように、ギャップ記号(挿入、欠失に対応)を挿入
スコア行列(置換行列) • 残基間(アミノ酸文字間)の類似性を表す行列 • PAM250, BLOSUM45 など
スコア行列の導出 • 基本的には頻度の比の対数をスコアとする • 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:入力配列の長さ)
ギャップペナルティ • 線形コスト-gd • g:ギャップ長 • d:ギャップペナルティ • この図の例では、ペナルティ= -3d • アフィンギャップコスト–d – e(g-1) • d:ギャップ開始ペナルティ • e:ギャップ伸張ペナルティ • この図の例では、ペナルティ= -d - 2e • よく利用されるペナルティ (d,e)=(12,2),(11,1)
動的計画法による大域アライメント(1)(Needleman-Wunschアルゴリズム)動的計画法による大域アライメント(1)(Needleman-Wunschアルゴリズム) • 入力文字列から格子状グラフを構成 • アライメントと左上から右下へのパスが一対一対応 • 最長経路=最適アライメント
動的計画法による大域アライメント(2) DP (動的計画法)による 最長経路(スコア)の計算 行列からの経路の復元は、 F(m,n)からmaxで=となっている F(i,j)を逆にたどることに行う (トレースバック)
局所アライメント(1)(Smith-Watermanアルゴリズム)局所アライメント(1)(Smith-Watermanアルゴリズム) • 配列の一部のみ共通部分があることが多い ⇒共通部分のみのアラインメント • x1x2 … xm, y1y2 … yn を入力とする時、スコアが最大となる部分列ペア xixi+1 … xk, yjyj+1 … yhを計算 • 例えば、HEAWGEH と GAWED の場合、 A W G E A W -E というアライメントを計算 • 大域アライメントを繰り返すとO(m3n3)時間 ⇒Smith-WatermanアルゴリズムならO(mn)時間
局所アライメント(2) 動的計画法 の式 (最大のF(i,j)から トレースバック)
局所アライメント(3) • 局所アライメントの正当性の証明(下図) • 局所アライメントの定義:x1x2 … xm, y1y2 … yn を入力とする時、スコアが最大となる部分列ペア xixi+1 … xk, yjyj+1 … yhを計算
アフィンギャップコストによるアライメント • 三種類の行列を用いる動的計画法によりO(mn)時間 • Smith-Watermanアルゴリズムとの組み合わせが広く利用されている
任意ギャップコストによるアライメント • 動的計画法(右式)により、O(n 3 )時間 (ただし、m=O(n)とする)
ギャップコストと計算時間の関係 ギャップコストが凸の時: O(n2α(n))時間 ただし、α(n)は アッカーマン関数の逆関数(実用的には定数と同じ)
ペアワイズ・アライメントの計算量に関するその他の結果ペアワイズ・アライメントの計算量に関するその他の結果 • 線形領域アライメント • スコア計算だけなら簡単 • トレースバックが難しい • しかし、分割統治法によりO(n)領域が可能(右図) • O(n2)時間の改善は可能か? ⇒O(n2/logn)が可能 • s(xi,yj)が疎(O(n)程度)な場合(Sparse DP) ⇒O(n logn)程度で可能
配列検索の実用プログラム(1) • O(mn):mは数百だが、nは数GBにもなる ⇒実用的アルゴリズムの開発 • FASTA:短い配列(アミノ酸の場合、1,2文字、DNAの場合、4-6文字)の完全一致をもとに対角線を検索し、さらにそれを両側に伸長し、最後にDPを利用。 • BLAST:固定長(アミノ酸では3, DNAでは11)の全ての類似単語のリストを生成し、ある閾値以上の単語ペアを探し、それをもとに両側に伸長させる。ギャップは入らない。伸長の際に統計的有意性を利用。 • BLAST,PSI-BLASTの詳細はおそらく次回に説明。
BLAT(The Blast-Like Alignment Tool)[Genome Res. 12:656] • BLAST: データベース配列を検索 • BLAT: 質問配列を検索 • データベース配列のインデックスをメモリ上に配置⇒高速化 • ただし、前処理が必要
BLATの確率解析:1ヒット完全一致 • 以下の二つを解析 • (I) 相同領域を見逃さない確率 • (II) 相同でない領域のワードがヒットする個数の期待値 • 記号の定義 • K: ワード長(5-20程度) • M: 相同領域中の塩基の一致率(>90%) • H: 相同領域の長さ(50-200) • G: データベース配列(ゲノム配列)の長さ(3Gbase) • Q: 質問配列の長さ • A: 塩基の種類(4)
BLATの確率解析:1ヒット近似一致 • 各ワード内で1文字までのミスマッチを許す • (I) 相同領域を見逃さない確率 • (II) 相同でない領域のワードがヒットする個数の期待値 • 解析法は基本的に1ヒット完全一致の場合と同じ • MK、(1/A)K を右図のように置き換える • 計算時間が難点
BLATの確率解析:Nヒット完全一致 (DNA配列解析:K=11,N=2を利用)
PatternHunter[Bioinformatics, 18:440] • PatternHunter • BLASTの精度かつMegaBlastの高速性を主張 • 連続した文字をseedとせず、飛び飛びの文字をseedとする • 111010010100110111で1の位置のみを考慮
局所マルチプルアライメント(Local Multiple Alignment) • 複数配列と長さLが与えられた時、スコア最大となるように各配列から長さLの部分列を抽出 • モチーフ(共通の性質を持つ遺伝子などに共通の部分パターン)抽出などに有用
相対エントロピースコアのもとでの局所マルチプルアライメント相対エントロピースコアのもとでの局所マルチプルアライメント • 相対エントロピースコアの定義 • fj(a): (モチーフ領域の)j列目におけるaの出現頻度 • p(a): aの出現頻度(背景確率) • L:モチーフ領域の長さ • 実用的アルゴリズム • Gibbsサンプリング, EM • NP困難
Gibbs サンプリング • 各配列xjからランダムに部分配列tjを選ぶ • 1個の配列xiをランダムに選ぶ • xiの部分列ti’を に比例する確率で選ぶ • tiをti’でおきかえる • ステップ2-4を十分な回数だけ繰り返す ( ti[j]:部分列tiのj列目の文字)
講義のまとめ(配列アライメントI) • 動的計画法によるペアワイズアライメント • 大域アライメント • 局所アライメント(Smith-Watermanアルゴリズム) • アフィンギャップコストを用いたアライメント • 線形領域アライメント • 高速配列検索アルゴリズム • BLAT と PatternHunter • 局所マルチプルアライメント(Gibbsサンプリング)