ゲノム配列・遺伝子多型解析論 第6回(2003年11月10日) 確率文脈自由文法とRNA 浅井 潔 変形文法 変形文法の定義 • 有限個の記号 – 非終端記号(抽象的な概念) – 終端記号(観測される文字列) • 書き換え規則(生成規則) – α→β の形 – 左辺は少なくとも1つの非終端記号を含む – 書き換えは、右辺が終端記号だけになるまで続く • 文法による配列の構文解析 – 配列の位置を文法の非終端記号に割り当てるこ と – 書き換えの文字列の系列を導出と呼ぶ チョムスキー階層 句構造文法 文脈依存文法 文脈自由文法 正規文法 チョムスキー階層 • W: 非終端記号 α,β,γ: 任意の記号列 • 正規文法 (Regular Grammar; RG) – W1 → aW2 と W3 → a • 文脈自由文法 (Context Free Grammar; CFG) – W→β、左辺はちょうど1個の非終端記号 – A->BC, D->a • 文脈依存文法 (Context Dependent Grammar) – α1Wα2 →α1βα2 • 句構造文法 (Phrase Structure Grammar) – α1Wα2 → γ 正規文法 • 生成規則の形 – W → aW –W→a – W → ε (空文字列) • 配列を左から右に発生 • 離れた位置の終端記号の相関を記述できな い • 一次配列のモデル 例:奇数正規文法 • S 開始非終端記号 • S → aT | bS • T → aS | bT | ε 有限状態オートマトン Finite State Automaton; FSA • • • • 正規文法に対応する構文解析オートマトン 有限個の状態からなる 状態は状態遷移によって互いに結合 入力文字列から一度に1記号ずつ読む – 記号が受理されると新しい状態に遷移する – 記号が棄却されたとき停止し、文字列を棄却する • 正規文法と比較すると – 状態 (FSA) ⇔ 非終端記号(正規文法) – 状態遷移 (FSA) ⇔ 生成規則(正規文法) 決定性オートマトンと 非決定性オートマトン • 決定性オートマトン – 任意の状態において、特定の入力記号を受理す る状態遷移は1個以下 – 構文解析は非常に効率的(高速) – BLASTに使われている • 任意の非決定性オートマトンは決定性オート マトンに変換可能 • grep, sed, awk, vi等のテキスト検索プログラ ムは効率的な非決定性オートマトンを使って いる PROSITE • PROSITEのエントリは、モチーフの配列パ ターンを正規表現で表現したもの • アラインメントに対するスコアと違い、 PROSITEパターンは一致するか、しないか の二者択一 • PROSITEは、正規文法の生物学への応用 正規文法で表現できないこと • 回文言語 – aa, bb, abba, ababa のような、逆から読んでも同一な 文字列すべてを含む言語 • 複写言語 – aa,bb,abab, aabaab のような、同一の2個の部分からな る文字列すべてを含む言語 • 正規文法は、その言語の一部として、回文や複写 文の文字列を発生できる • 正規文法では回文だけを発生することはできないか ら、正しい回文とそうでない文字列を区別できない 回文言語と複写言語 正規言語 a b a a a b (正規文法) 回文言語 a a b b a a (文脈自由文法) 複写言語 a a b a a b ???? 文脈自由文法 Context Free Grammar; CFG • 文字列の生成の仕方 – 正規文法: 左側から右側へ – 文脈自由文法: 外側から内側へ • 回文言語は文脈自由文法によって扱われる – 文脈自由文法は入れ子の位置の相関を表現 – 回文言語を生成するCFGの例 S →aSa | bSb | aa | bb 導出 S → aSa → aaSaa → aabSbaa → aabaabaa • RNAの二次構造は、回文言語の一種 RNA2次構造 • 1本鎖RNA上の互いに相補的な領域同士が 結合し、2次構造をつくる 配列 GUAAGUGCGCUCCGCUGA 2次構造 A G UCGC C U C G U A AGUG C G RNAステムループのCFG seq.1 A G G A C A A C U G seq.2 C G U C G A A A G C seq.3 C A G A U xC C xU G xG C A G G A A A C U G seq.1 G C U G C A A A G C seq.2 G C U G C A A C U G seq.3 X • seq.1とseq.2は異なった配列だが、同じ塩基対のパ ターンを持っているので同一の二次構造をとる • seq.3は、前半はseq.2、後半はseq.1と同一だが、 似た構造をとることができない。 構文解析木 (parsing tree) • • • • • 文脈自由文法の構文解析のエレガントな表現 構文解析木の根は開始非終端記号S 葉は配列中の終端記号 内部の節は非終端記号 部分木 – 内部の節を根とする構文解析木の断片 – 配列の連続した断片を導出する • CFGの構文解析アルゴリズムは、より大きな部分 配列に対する最適な構文解析木を再帰的に構築 して全体に対する構文解析木を構築する 文脈自由文法の構文解析木 • 2次構造は文脈自由文法によって表現できる 構文解析木 文法規則 P→aWu | uWa | cWg | gWc L→aW | uW | cW | gW W→P | L P P P L P,L,Wは非終端記号 a,c,g,uは終端記号 L G U G C C C A C プッシュダウン・オートマトン • CFGはプッシュダウン・オートマトンで構文解 析できる • 有限状態オートマトンでは、現在の状態を保 持する以外のメモリはいらなかったが、プッ シュダウン・オートマトンでは、プッシュダウ ン・スタックという記号に関する有限のメモリ が必要 文脈依存文法 Context Dependent Grammar • • • • α1Wα2 →α1βα2 複写言語は文脈依存文法を必要とする 線形有界オートマトンで構文解析できる 多項式時間の構文解析アルゴリズムは知ら れていない 句構造文法 • 生成規則の両辺が任意の記号の組み合わ せ • 構文解析オートマトンはチューリング機械 • 文字列が句構造文法から導出できるかどう かを有限時間で決定することが保証されたア ルゴリズムは存在しない • 可能な導出の数が無限に増加する可能性が あるので、チューリング機械は停止する保証 がなく、実用性はない 確率文法 変形文法と確率文法 • チョムスキー階層のどの文法も、生成規則に 確率を付与することにより、確率文法となる HMMは確率正規文法である • HMMは通常ムーア機械として記述される – 遷移にかかわりなく、状態から記号を出力 • 確率正規文法はミーリー機械 – 非終端記号への遷移から記号を出力 • ムーア機械とミーリー機械は互いに変換可能 • アラインメント、スコア付け、学習のアルゴリ ズムは同一 確率文脈自由文法 • 2種類の確率 – Prob(v →yz) • vからyとzへの遷移確率:tv(y,z) – Prob(v →a) • vにてaを出力する確率:ev(a) • 学習アルゴリズム – 期待値最大化(EM)パラメータ推定法 • HMMのBaum-Welch法に相当する • forward-backwardアルゴリズムに相当する内側・外側アルゴリ ズム – 最適アラインメント推定法(CYKアルゴリズム) • Viterbiアルゴリズムに相当する最尤推定 2次構造と文脈自由文法 • 2次構造は文脈自由文法によって表現できる 構文解析木 文法規則 P→aWu | uWa | cWg | gWc L→aW | uW | cW | gW W→P | L P P P L P,L,Wは非終端記号 a,c,g,uは終端記号 L G U G C C C A C 内側アルゴリズム • 配列の区間[i, j]が、vを根 とする部分木によって生 成される確率α(i, j, v)を 与える • [i, j]の幅を大きくしながら、 再帰的に求めていく • 配列尤度 P(x|θ)=α(1,L,1) M M j −1 v y z 1 L i k k+1 j Prob(v → yz ) α (i, j , v) = ∑∑∑ α (i, k , y )α (k + 1, j , z )tv ( y, z ) y =1 z =1 k =i 外側アルゴリズム • 配列の区間[i, j]を除く 領域に対応する部分木 の根yから、区間[i, j]に 対応するvに遷移する 確率β(i, j, v)を与える • [i, j]の幅を小さくしなが ら、再帰的に求めていく • 事前にαを求めておく 必要がある y v z 1 L i k j j+1 あるいは y v z 1 L k j-1 i j SCFGの構文解析 CYKアルゴリズム 最適のアラインメントは、プッシュダウンスタックを用 いて(i, j, v)をプッシュ、ポップし、ポインタτ(i, j, v) を用いてトレースバックする パラメータ再推定 • SCFGのパラメータ – 生成規則v→yzの確率 tv(y,z) (遷移確率) • α、β、元のtv(y,z) – 生成規則v→aの確率 ev(a) (出力確率) • α、β、元のev(a) – HMMのγに相当するSCFGのγ γ i , j (v ) = α v (i, j ) β v (i, j ) P( x) 配列の区間[i, j]がvを根とする 部分木から生成された確率 RNA2次構造の文法規則 • ギャップ(挿入・欠失)なし – P→xWy – L→xW – R→Wx – B→SS – S→W – E→ε ペアワイズ出力 左側出力 右側出力 枝分かれ 開始 終了 • WはP,L,R,B,S,Eのどれか • x,yはa,c,g,u(リボ核酸)のどれか 2次構造とアラインメント 2次構造の表現 アラインメント
© Copyright 2024 ExpyDoc