Statistical Programming

意訳:Finding Hidden Messages in DNA (Bioinformatics I): Week1

本日はバイオインフォマティクスの知識を深めるために、CourseraのFinding Hidden Messages in DNA (Bioinformatics I)を要約します。

見た動画はweek1の2つ。

https://class.coursera.org/hiddenmessages-007/lecture/9 

https://class.coursera.org/hiddenmessages-007/lecture/11

どちらの動画もDNAの複製に関することで、問題設定としては、

Input: ゲノム配列の中の複製が関わる箇所(500塩基), Output: DNA複製開始位置(数~十数塩基)

言い換えると、環状のDNAからDNAの複製が開始される位置を把握するにはどうしたらいいかというもの(ただしゲノム配列の中の複製が関わる区間がどのあたりなのかはあらかじめわかっていると仮定する)。これに対しては我々エンジニアはなるほど、じゃあアルゴリズムを考えようかと思いがちだがこれでは問題が曖昧すぎて実際お手上げ状態。一方バイオロジストであればDNAを切っていき、DNAの複製が行われなくなることを確認すればDNAの複製が開始された位置を把握できる。エンジニアがバイオの分野に参入するには適切な問題設定や修正ということが、私達が普段直面する問題よりも遥かに重要なのかも。ではどうするかというと、そのゲノム配列には必ず複製開始位置を知らせる隠されたメッセージが含まれているので、そのメッセージを探すようにしようというもの。問題設定を以下のようにしてみる。

Input: 複製に関わるゲノム配列の一部, Output: 頻繁に出現する、長さkの文字列を抜き出す(通称k-mer)

 これでエンジニアもこの問題を対処できるようになりました。エンジニア的にはこれで満足だけど、これはバイオの問題なので必ずバイオロジストの視点からこの問題設定が適切かどうか確認する必要がある。これも当たり前ではありますが、非常に重要なことっぽい。で、バイオロジストに伺ったところ、この問題設定で大丈夫とのこと。実際、DNAの複製はDNAポリメラーゼによって行われるが、その複製を開始するのはDnaAタンパクであり、DnaA boxと呼ばれる9塩基程度の短い箇所へDnaAは結合するらしい。上の問題設定で得られる解から私たちはDnaA boxの候補を見つけ出すことができたということになる。

ここで一つ注意点として、DNAは2対の鎖状になっており逆相補鎖(A-T, C-Gに対応)が存在するので、例えばATCとTAGを同列のものとして扱うこともできる。なので先程の問題のOutputが複数ある場合にその候補をさらに絞ることが出来る。

Output = [ ATCATCATC, TAGTAGTAG, ..., ... ]

 

上記のようなOutputの場合他の候補よりも逆相補鎖が存在する候補のほうが可能性が高い。これで全て解決かというとそうではない。今まではめちゃ長いゲノム配列の一部のoriC(オリジンとも言われる)という、複製開始の区間の中からDnaA box候補を探す、ということをしていた。先程まではそのoriCの位置が既知であると仮定していた。なのでそもそもoriCどこよという話。ではどうするかというと、ゲノム配列を多数の窓に区分けし、先ほどのDnaA box検索をそれぞれの窓に対して行う。多数の頻出文字列が存在する窓はoriCである可能性が高いというわけだ。その窓の大きさをL、文字列の出現回数をtとする。その群れのことを(L-t)-clumpと呼ぶ。

Input: ゲノム配列, Output: (L, t)-clumpを形成する全てのk-mers 

それでは実際のゲノムに対してこのアルゴリズムを適用するとどうなるか。9-mers、(500, 3)-clumpが1904個ほどヒット。これは何を意味するかというと、窓枠500の中で3回出現する塩基9個の文字列が1904個存在するということ。つらい笑

さてどうするか。次回へ続く。