420 likes | 663 Views
タンパク質情報データベースとその応用に関する研究の調査. 2004/01/20 システム生命科学府 システム生命科学専攻 博士 1 年 牧之内研究室 稲田 稔. 発表概要. はじめに 論文紹介 タンパク質データベースの試作検索機能について An Efficient Index-based Protein Structure Database Searching Method Towards Index-based Similarity Search for Protein Structure Databases 発表者の研究と紹介論文との関連について.
E N D
タンパク質情報データベースとその応用に関する研究の調査タンパク質情報データベースとその応用に関する研究の調査 2004/01/20 システム生命科学府 システム生命科学専攻 博士1年 牧之内研究室 稲田 稔
発表概要 • はじめに • 論文紹介 • タンパク質データベースの試作検索機能について • An Efficient Index-based Protein Structure Database Searching Method • Towards Index-based Similarity Search for Protein Structure Databases • 発表者の研究と紹介論文との関連について
Protein Data Bank(PDB)[4] • タンパク質を中心とする生体高分子構造情報の集積地 • 登録されているデータの種類 • タンパク質(Protein),核酸(DNA,RNA,DNA/RNA Hybrid),炭水化物(Carbohydrate) • エントリ数:23914(2004/01/14) • 情報をファイルとして得ることができる PDB Webページ(http://www.rcsb.org/pdb/)
PDBから得られるデータ • タンパク質を構成するアミノ酸の種類 • タンパク質を構成する各原子の3次元座標 • タンパク質に含まれる二次構造の種類とその位置 • ヘリックス, シート, ターン • これらの情報がテキスト形式のファイルに保持されている シート ヘリックス ATOM 1 N VAL A 1 17.822 -2.943 3.462 1.00 75.35 1THB 155 ATOM 2 CA VAL A 1 19.069 -2.456 2.765 1.00 77.27 1THB 156 ... ATOM 1032 CA SER A 138 20.160 2.790 16.759 1.00 23.47 1THB1186 ATOM 1033 C SER A 138 20.860 2.775 18.169 1.00 22.59 1THB1187 PDB ファイル内容(一部)
紹介する論文 • [1]タンパク質データベースの試作検索機能について • タンパク質構造データを用いたオブジェクトデータベース作成について, その内容を発表者のものと比較 • [2]An Efficient Index-based Protein Structure Database Searching Method • [3]Towards Index-based Similarity Search for Protein Structure Databases • タンパク質構造データからの構造特徴の抽出とその比較手法に注目
タンパク質データベースの試作検索機能について[1]タンパク質データベースの試作検索機能について[1] • PDBから得られるファイルを元にクラスを設計し, オブジェクトデータベースを作成 • タンパク質を複合オブジェクトとして表現しているので, タンパク質の構造とデータベース上の表現が類似し, スキーマの理解が容易 • メソッドの記述が可能 • GUIの作成 • 検索性能向上のための仮想クラス作成
データベーススキーマ • 本論文でのデータベースのスキーマは下図のようになっている • 全クラスはProteinsクラスのサブクラス • 酵素かそうでないかで2つのサブクラスに分けている • 酵素であるものについては, さらに酵素番号(EC Number)のサブクラスに分類している proteins enzyme noenzyme EC_2 EC_4 EC_6 EC_1 EC_3 EC_5 EC_others
Residue Atom Helix Sheet Turn Loop Chain オブジェクト構造 • PDBの1エントリを複数のオブジェクトで表現する • Chainオブジェクト - 鎖(Chain) • Helix, Turn, Loop, Sheetオブジェクト - 各二次構造 • Residueオブジェクト - Chainに含まれるアミノ酸残基 • Atomオブジェクト - 各アミノ酸残基を構成する原子 proteins
GUI – Protein Browser • データベースに対して検索を行うことのできるGUI, Protein Browserを作成した • Object SQLを直接記述する代わりに, いくつかの検索条件を入力するだけで検索ができる • 検索履歴の保持 Protein Browser 画面
仮想クラス • 検索の性能を上げるため, 頻度の高い検索に対して仮想クラスを作成した • 仮想クラスとは • 例えば「採取源がヒトであるタンパク質を求める」という検索を頻繁に行うのであれば, 前もって「採取源がヒトであるタンパク質」の検索を行っておき, その結果を保持するクラスを作成しておく. これを仮想クラスという • 関係データベースにおけるビューと類似 • これにより頻繁に行われる検索の性能向上 proteins noenzyme enzyme 仮想クラス ・・・ EC_2 EC_others EC_1
問題点 • スキーマについて • 残基系列(配列)に対する検索について 各Chain内のResidueクラスのインスタンスを参照するため効率が悪い • Chainクラスの属性値としてResidueクラスとは独立に配列を保持する • Atomクラスのインスタンスの数が膨大になるため, これらのインスタンスを同時に扱うような処理のときは性能が大きく低下する恐れがある • Atomクラスが持つべきデータを圧縮した形で格納し, 必要時に展開する • 仮想クラスについて • 前もって検索結果を保持するので, データベース更新時にはそのつど仮想クラスも更新しなければならない • 仮想クラスはユーザが陽に指定する必要がある • そのほか • PDBファイルからの自動変換が困難 • 同一の対象物をあらわす複数のオブジェクトが存在する可能性 • 同義語の辞書
An Efficient Index-based Protein Structure Database Searching Method[2] • タンパク質構造データのうち, ポリペプチド鎖を形成するCα原子の座標のみを取り出し, 各Cα原子間の距離を計算してDistance Matrixを作成する • Distance Matrixを用いることにより回転を考慮しなくてもよい • Distance Matrixから二次構造(Secondary Structure Element, SSE)に関する部分を取り出し, それをさらにn×nの固定サイズ行列(Contact pattern)に分割する • Contact patternから数種類の特徴量を取り出し, インデックスを作成する
C-terminal 6 Cα 7 Cα Cα d13 1 5 Cα d12 Cα Cα 2 3 Cα 4 Distance Matrix • タンパク質構造データからCα原子の座標のみを取り出す • 各Cα原子間の距離dijを計算する • dij: i番目のCα原子とj番目のCα原子の距離 • 計算した各dijをij要素とする行列を作る N-terminal Distance Matrix
Contact pattern • Distance Matrix中でSSEに相当する部分を部分行列として扱う • ポリペプチド鎖中2~4をヘリックス部分, 6,7をシート部分とすると, 下図A部分がヘリックスに, B部分がシートに対応する • C,D部分(二次構造同士の対応部分)のことをContact patternという • 全体の構造内でのSSE部分の位置関係を見る Contact pattern
Cutting Fixed-size Matrices and Extracting Properties • SSEの長さは可変なので, Contact patternの大きさもまちまちになる • インデックス作成には向かない • Contact patternをいくつかのn×nの固定サイズ部分行列によって表し, 各行列から以下のような情報(特徴量)を取り出す • 行列の全要素の合計値(Grand sum) • 種別(Contact pattern type) • HH:Helix-Helix, HE:Helix-Sheet, EE:Sheet-Sheet • 元Contact patternの行, 列の数 • SSE(Contact pattern)の並びの行, 列番号 • その部分行列がContact patternのどの行, 列から始まるか Contact pattern 2×2部分行列
Building inverted file index • 先の手順で抽出した特徴量のインデックスを作成する • index term(i,j) • インデックスに格納されている見出し語. grand sumとContact pattern typeの組 • Posting list entry(a,b) • インデックスに格納されているPDB id, contact pattern size, ordinal contact pattern no., relative positionの組 inverted file indexの例
Searching a Protein Structure • 今までの手順で抽出した特徴を用いて, 類似構造検索を行う • 以下の6つの値を組み合わせて類似度を比較する • Grand sum distance • Contact pattern area deviation • Contact pattern aspect ratio deviation • Contact pattern ordinal number deviation • Fixed-size matrix relative position distance • Fixed-size matrix count deviation • 以下 • iはquery index term ,jはdatabase index term • aはquery posing list entry, bはdatabase posing list entry • Qはquery protein structure, Pはdatabase protein structure とする
Searching a Protein Structure • Grand sum distance • n×n行列の全要素の和の差の絶対値 • Contact pattern area deviation • query entryに対するdatabase entryのContact patternの行×列の値の比
Searching a Protein Structure • Contact pattern aspect ratio deviation • Contact patternの大きさの比較 Vx = min • Contact pattern ordinal number deviation • あるContact patternが構造中のどのあたりに存在するかの比較
Searching a Protein Structure • Fixed-size matrix relative position distance • L1はManhattan Distance Function • Fixed-size matrix count deviation • 構造データ中に存在するn×n固定サイズ行列の数の差の絶対値の比
Searching a Protein Structure • 各値に対して閾値を決める • この閾値を用いて, index termの一致, posting list entryの一致, protein structureの一致を判定する • TGSum=10, TArea=0.37, TAratio=0.2, TOrdinal=0.3, TPos=7, TFMCount=1.1
Searching a Protein Structure • 次の式が真となるときのみ, 2つのindex term i,jは一致していると判定される • 次の式が真となるときのみ, 2つのposing list entry a,bは一致していると判定される • 2つのprotein structure Q,Pについて, その類似度S(P,Q)は以下の式で与えられる
Searching a Protein Structure • Fixed-size matrix count weight WFMCount(Q,P) if otherwise 0 • Term weight WTerm(i) N:データベース中のタンパク質の数 fi:index term iに含まれるタンパク質の数 • 残りのWeight(WGSum, WArea, WARatio, WOrdinal)は, それぞれDGSum, DArea, DARatio, DOrdinalをそれぞれの閾値から引いたものを閾値で割った値
Performance & Accuracy • 以上のように定義した類似検索方法(筆者らはProtDexと名づけた)と一般的な類似検索法DALIを比較した • Performance • ある1つの構造についてデータベースを検索するのに, ProtDexの方がDALIよりも平均16倍高速だった • Accuracy • SCOP[5]で同じファミリに属するタンパク質の検索 • テストした3つの場合のうち2つはDALIよりも同じCoverageで高いSensitivityを保った • Sensitivity: 検索結果のうち, 条件に合致したものの割合 • Coverage: 検索した部分のデータベース全体に占める割合
Towards Index-based Similarity Search for Protein Structure Databases • 構造特徴抽出 • タンパク質構造データからSSE部分の構造のみを取り出し, 各SSEについて近傍集合(Triplet)を作成する • 作成した各TripletについてFeature vectorを抽出 • 類似性比較 • Triplet pair graph作成 • Large weight connection component(LWCC) • p-valueによる最終候補生成
構造特徴抽出手順 • SSE approximation • 構造データからSSEに関するもののみを取り出す • Triplet construction • 各SSEについてTripletを作成する • Feature vector extraction • 2.で作成したTripletからFeature Vectorを作成する • Multi-dimensional index structure construction • 3.で作成したFeature Vectorのインデックスを作成する
1. SSE approximation • あるタンパク質構造データaについて • aに含まれるSSE Sa = {S1, S2, ... , Sna} • あるSSE Siを構成する残基 RSi = {ri,1, ri,2, ... , ri,ζi} • RSiを2つに分ける • 2つに分けたそれぞれの重心を, そのSSEを代表する点とする
2. Triplet construction • Tripletとは • SSEの近傍集合のこと • 作成手順 • ある1つのSSEの重心から一定の閾値tln以内に重心のあるSSEのうち近いものをn個選ぶ • ここではtln=50Å, n=4 (筆者が経験的に設定) • あるひとつのSSE siに対してV={v1, v2, v3, v4}が決まる • siとVから2つ選んだ vi, vj (vi, vj ∈V)の組 {si, vi, vj}をTripletという
3. Feature vector extraction • 先の手順で作成された各TripletについてFeature Vectorを抽出する • <si, sj, sk>をTripletとする • Tripletに含まれる各SSEを3等分する • 中心の部分をそのSSEを代表する部分とする • Triplet中のある2つのSSE<si, sj>について, 以下の値を計算する • minij: siとsjの間の最小距離 • maxij: siとsjの間の最大距離 • θij: siとsjの間の角度 • minij, maxij, θijの3つをsiとsjに関するFeature Vectorとする • ある1つのTripletについてのFeature Vectorは9つの値を持つ
S3 S2 <S1,S2,S3>,<S1,S2,S4>,<S1,S2,S5>,<S1,S3,S4>,<S1,S3,S5>, <S1,S4,S5> S1 S6 S4 S5 θ23 S3 Feature Vector(S1,S2,S3)= {(min12, max12, θ12), (min13, max13, θ13), (min23, max23, θ23)} S2 θ13 θ12 S1
類似性比較手順 • 類似Triplet検索 • Triplet pair graph作成 • p-value計算
類似Triplet検索 • 2つのTriplet tq = {q1, q2, q3}, td ={p1, p2, p3}について • [minqi,qj - Δ(qi, qj), maxqi,qj + Δ(qi, qj)] と [minpi,pj, maxpi,pj]が重なり, かつ θijがγij±Δ(θ) に含まれるかどうかを判定 • Δ(qi, qj) = 0.2×(maxqi,qj - minqi,qj) (i,j=1,2,3) • Δ(θ) = 10° • 判定結果が真となったら, length(pi)/length(qi) を計算し, これが0.5~2の範囲にあれば, 2つのTripletは類似と判定される • TRIPLET-PAIRS-SCOREの計算 • TRIPLET-PAIRS-SCORE(tq,td) = 1 - [(データベース中でtqと類似と判断されたTripletの数)/(データベース中の全Tripletの数)] • 次段階(Triplet pairs graph作成)で用いる
Triplet pair graph作成 • 先のようにして選ばれた類似Triplet pairに対してTriplet pair graphを作る • TをTriplet pairの集合とする • Triplet pair graph, TPG(T) = (V, E) • V: 頂点集合, vi ∈ V if vi ∈ T • E: 辺集合, eij=(vi,vj) ∈ E if vi and vj have two common SSE pairs • 頂点viの重みはTRIPLET-PAIRS-SCORE(vi,vj) • 2つのTriplet pair間で同じAlignmentがあるとき, それらの頂点間に辺を引く
Large Weight Connected Component(LWCC) • 先のようにして作成したTPGについて, アラインメントされているペアごとの重みの和をとる • ノード間を結ぶスコアの和が最も大きいものがLWCCとなる
Evaluating seeds • 今までの方法で見つけたQueryタンパク質と類似の構造をseedと呼ぶ • 各seedについてp-valueを算出し, その値の高いもののみを最終アラインメントの対象にする • P-value • ある2つの構造が一致したときに, その一致が予測できるものかどうか 予測されない一致の場合は低い値になる • ある2つのSSEが一定の距離d以内にあってアラインメントされる確率を, アラインメントされているすべてのSSE pairについて行い, その和をとったもの
Experimental Evaluation • あるQueryタンパク質について, SCOP[5]で同じファミリに属するものの検索 • VASTによって類似検索(アラインメント)を行った結果と, 筆者らが作成したインデックスによって候補を選定した上でVASTによるアラインメントを行った場合を比較した • 精度については同等, 速度は最大で3倍程度高速 精度比較 速度比較
参考文献[2],[3]の論文について 考察 • どちらもタンパク質の三次元構造の比較を二次構造のレベルに落として行っている • 構造データの三次元構造(原子座標)同士を直接比較するよりはるかに手間が少ない • 二次構造レベルでもタンパク質構造の比較が可能 • どちらの手法もタンパク質構造の回転を考慮する必要がない • 三次元構造の比較を二次構造のレベルで行っても精度に問題はないことがわかった
発表者の研究との関連 • 「タンパク質構造情報を中心とした統合生命科学情報オブジェクトデータベースの開発」 • PDBのデータを元に, オブジェクトDBMSを用いたオブジェクトデータベースの作成 • 論文[1]のシステムとの比較 • スキーマ設計について • [1]のシステムでは酵素種別によるクラス分けを行っているが, 発表者のシステムでは行っていない • 発表者のシステムはPDBのデータをすべてそのまま格納し, これを軸に他データベースも統合することを目的としている • 酵素分類は酵素分類データベース(Enzyme[6])のデータを統合することにより行うことができる(予定) • 検索性能の再評価
1..n 1 1 1..n 1..n PDBData MODEL Monomer ATOM 1 1 1 0..n HELIX 1..n 0..n 1 SHEET Strand 0..n TURN 1 0..n SSBOND 0..n HYDBND 0..n CYSPEP 1 0..n LINK 0..n SLTBRG proteins Chain Residue Atom 論文[1]のシステムのオブジェクト構成 Helix Turn Loop Sheet 発表者のシステムのオブジェクト構成
発表者の研究との関連 • 「タンパク質データの特徴抽出と分類」 • 先のデータベースに蓄えられたタンパク質データから, 何らかの方法で特徴(量)を抽出し, その特徴(量)によってデータを分類 • 構造からの特徴抽出も必要
参考文献 [1] 吉田正宏, 米田真治, 中西通雄, 橋本昭洋, "タンパク質データベースの試作検索機能について", 情報処理学会研究報告「データベースシステム」No.099-008, pp.53-60, 1994 [2] Zeyar Aung, Wei Fu, Kian-Lee Tan, "An Efficient Index-based Protein Structure Database Searching Method", 8th International Conference on Database Systems for Advanced Applications (DASFAA '03), pp.311-318, 2003 [3] Orhan Camoglu, Tamer Kahveci, Ambuj K. Singh, "Towards Index-based Similarity Search for Protein Structure Databases", 2nd IEEE Computer Society Bioinformatics Conference (CSB 2003), pp.148-158, 2003
参考文献 [4] H.M. Berman, J. Westbrook, Z. Feng, G. Gilliland, T.N. Bhat, H. Weissig, I.N. Shindyalov, P.E. Bourne, “The Protein Data Bank”, Nucleic Acids Research 28, pp. 235-242, 2000 [5] Murzin A. G., Brenner S. E., Hubbard T., Chothia C, “SCOP: a structural classification of proteins database for the investigation of sequences and structures”, J. Mol. Biol. 247, pp.536-540, 1995 [6] Bairoch A, “The ENZYME database in 2000”, Nucleic Acids Research 28, pp.304-305, 2000