Download - 配列および化合物データ解析のためのカーネル法
配列および化合物データ解析のためのカーネル法
阿久津達也京都大学 化学研究所
バイオインフォマティクスセンター
サポートベクターマシン
カーネル法の一つ、ニューラルネットワークと類似
1990 年代に、 Cortes と Vapnik が発明 トレーニングデータとして与えられた正例と負例
から、それらを分離する超平面を計算 機械学習、統計学、人工知能、パターン認識、バイ
オインフォマティクスなど様々な分野に応用 配列分類 タンパク質フォールド予測、二次構造構造 遺伝子発現データ解析 タンパク質相互作用予測 化合物の性質推定 c.f. Kernel Methods in Computational Biology, MIT Press,
2004
サポートベクターマシン
正例と負例を与えて、それらを最適(マージンを最大)に分離する超平面を学習
カーネルを適切に定義することにより超平面以外での分離が可能 margin
テストデータ
SVM によるテストデータの分類
学習データより超平面を学習 (SVM)
テストデータは、対応する点の超平面に対する位置(上下)で判定
テストデータとサポートベクター間のカーネル関数値の重み付き和でテストデータを類別
margin
テストデータ
ji xjjj
xiii KK
f
::
),(),(
)(
xxxx
x
カーネル サポートベクターマシン:基本的には超平面で分離 Φ(x) ( 特徴ベクトル):「非線形曲面⇒超平面」に写像 カーネル K(x,y)=φ(x) ・ φ(y) x と y の類似度が高い ⇔ K(x,y) が大
φ (x)
カーネルの例
線形カーネル: K(x,y) = x ・ y 多項式カーネル: K(x,y) = (x ・ y + c)d RBF カーネル: K(x,y) = exp (-||x - y||2 /2σ2 ) シグモイドカーネル(厳密にはカーネルではな
い): K(x,y) = tanh (κx ・ y - δ)
カーネルとなるための条件
カーネルの定義: K(x,y)=φ(x) ・ φ(y) Mercer 条件を満たす ⇒ カーネル
連続値の場合
離散値の場合 ( x1,x2,…,xn が入力データ )
0 zxzxzx ddffK )()(),(
が半正定値行列njijiK 1,)),((K xx
カーネルの作り方 データから特徴ベクトル (feature vector) を
作るのが一般的、かつ、 多くの場合に実用的 特徴ベクトル: 実数値の列 例えば、各化合物 x に対し、
Φ(x) = ( 分子量 , 容積 , 表面積 , logP,…)
とすれば、化合物 x,y に対するカーネルは
Φ(x) と Φ( y ) の単なる内積
アライメントカーネルによる構造予測
1. SCOP とスーパーファミリー予測2. 既存カーネル3. 配列解析手法(アライメン
ト、 HMM )4. 新カーネル5. 計算機実験結果6. 結論と課題
タンパク質立体構造予測
アミノ酸配列から、タンパク質の立体構造(3次元構造)をコンピュータにより推定
実験よりは、精度が悪い
だいたいの形がわかれば良いのであれば、 4 ~5割の予測率
T V A C L G F S L V V G G R D
タンパク質配列(アミノ酸配列)
コンピュータ
タンパク質立体構造
フォールド予測 (Fold Recognition)
精密な3次元構造ではなく、だいたいの形( fold) を予測
立体構造は数千種類程度の形に分類される、との予測(Chotia, 1992) に基づく
T V A C L G F S L V V G G R D
1000個のテンプレート構造
タンパク質配列(アミノ酸配列)
SCOP データベース
Class.1
Fold.1
Super Family.1
Family.1 Family.2mkkrltitlsesvlenlekmaremglsksam
isvalenykkgq
SCOP Root
ispqarafleevfrrkqslnskekeevakkcg
itplqvrvwfinkrmrs
Class.2
Fold.2
Super Family.2
Family.3
‥‥‥‥‥
‥‥‥‥‥
‥‥‥‥‥
タンパク質立体構造を形状を中心に、人手で、 階層的に、分類したデータベース
Super Family 予測
madqlteeqiaefkeafslfdkdgdgtittkelgtvmrslgqnpteaelqdminevdadg
ngtidfpefltmmark
タンパク質配列Super Family.1
Super Family.2
Super Family.3:
:
入力配列が SCOP のどのスーパーファミリーに属するかを予測
既存手法の主なターゲット
Class
Fold
Super Family
Family
HMM, PSI-BLAST, SVM
SW, BLAST, FASTA
Threading
Secondary Structure Prediction
タンパク質配列解析のための既存カーネル
HMM から特徴ベクトルを抽出 Fisher カーネル (Jaakkola et al., 2000) Marginalized カーネル (Tsuda et al., 2002)
配列から直接特徴ベクトルを抽出 Spectrum カーネル (Leslie et al., 2002) Mismatch カーネル (Leslie et al., 2003)
他の配列とのスコアを特徴ベクトルとして利用 SVM pairwise (Liao & Noble, 2002)
A C C C C T T A A G A A C G
0 1 0 1 0 1 1 ( ) C C T A A φ (x)
Spectrumカーネル
配列アライメント
バイオインフォマティクスの最重要技術の一つ
2個もしくは3個以上の配列の類似性判定に利用
文字間の最適な対応関係を求める(最適化問題)
配列長を同じにするように、ギャップ記号(挿入、欠失に対応)を挿入
A G L F S G L G Y
A G L G S V V G
A G L F G S L G Y
A G L G S V V G
スコア行列(置換行列) 残基間(アミノ酸文字間)の類似性を表す行列
PAM250, BLOSUM45 など
A R N D C Q E G H I L K M F P S T W Y V A R N D C Q E G H I L K M F P S T W Y V
5 -2 -1 -2 -1 -1 -1 0 -2 -1 -2 -1 -1 -3 -1 1 0 -3 -2 0
BLOSUM50 スコア行列(置換行列)の一部分
-2 7 -1 -2 -4 1 0 -3 0 -4 -3 3 -2 -3 -3 -1 -1 -3 -1 3 -1 -1 7 2 -2 0 0 0 1 -3 -4 0 -2 -4 -2 1 0 -4 -2 -3 -2 -2 2 8 -4 0 2 -1 -1 -4 -4 -1 -4 -5 -1 0 -1 -5 -3 -4 -1 -4 -2 -4 13 -3 -3 -3 -3 -2 -2 -3 -2 -2 -4 -1 -1 -5 -3 -1 -1 1 0 0 -3 7 2 -2 1 -3 -2 2 0 -4 -1 0 -1 -1 -1 -3
ペアワイズ・アライメント 配列が2個の場合でも可能なアライメントの個
数は指数オーダー しかし、スコア最大となるアライメント(最
適アライメント)は動的計画法により、 O(mn)時間で計算可能( m,n:入力配列の長さ)
AGCT, ACGCT
アライメント
入力配列
スコア
AGCT - ACGCT
AG - CT ACGCT ACGCT
- AGC - - T AC - - GCT
A - GCT
(同じ文字の時: 1、違う文字の時: -1、ギャップ1文字: - 1)
-3 1 3 -5
最適アライメント
動的計画法による大域アライメント (1)(Needleman-Wunsch アルゴリズム )
- 2 5 1 - 5 - 7
- 7
- 7
- 7
- 7 - 7 - 7 - 7
- 6 7 - 5 - 5
- 2 - 3 - 2 - 1
4 - 4 0 1
G K Y D
G
F
D
V
K G D Y
G D F V
アライメント スコア
5 - 7 +7 - 7 +4 = 2
D K G Y
G D F V - 7 - 7 - 1 +0 - 7 - 7 = - 29
K G Y
G D F V
D - 7 - 7 - 5 - 7 - 7 - 7 - 7 = - 47
入力文字列から格子状グラフを構成 アライメントと左上から右下へのパスが一対一対応 最長経路=最適アライメント
動的計画法による大域アライメント (2)
djiF
djiF
yxsjiF
jiF
idiFjdjF
ji
)1,(
),1(
),()1,1(
max),(
)0,(,),0(
G K
G
F
F(0,0) =0
F(1,0) =- d
F(2,0) =-2d
F(0,1) =-d
F(0,2) =-2d
F(i-1, j) F(i, j)
F(i-1, j-1) F(i, j- 1)
s(K,F) - d
- d
DP ( 動的計画法 ) による最長経路 ( スコア ) の計算
行列からの経路の復元は、F(m,n) から max で=となっているF(i,j) を逆にたどることに行う(トレースバック)
⇒ O(mn)時間
ローカルアライメント (1) (Smith-Waterman アルゴリズム )
配列の一部のみ共通部分があることが多い ⇒共通部分のみのアラインメント 配列検索において広く利用されている 例えば、 HEAWGEH と GAWED の場合、
A W G E A W - E というアライメントを計算
ローカルアライメント(2)
AWGE
AW - E
H E A G
G
A
E
W
W E H
0 0 0 0 0 0 0 0
0 0 0 0 0 1 0 0
0 0 0 1 0 0 0 0
0 0 0 0 1 0 0
0 0 1 0 1 0 2 1
2
0 0 0 0 0 0 1 1 D
実行例
(ギャップ-1、 置換-1、一致1)
djiF
djiF
yxsjiFjiF
ji
1),(
)1,(
)(1)1,(
0
max),(,動的計画法
の式
LA カーネル
SWアルゴリズムをカーネルとして利用したい ⇒ MAX 操作のためカーネルとならない 一方、ペア HMM はカーネルとなることが既知 本研究
SWアルゴリズムを模倣するペア HMM を構成 SWアルゴリズム: 最適なパスのみ LAカーネル:
全てのローカルアライメントの(重みつき)和 両者ともに時間計算量は O(mn) だが、 LAカーネルの方が数十倍、遅い
LA カーネルの定義(1)
文字(残基)ペアのスコア : Kaβ (x,y)
ギャップのスコア: Kgβ (x,y)
otherwise)),(exp(
1||or 1||if0),(
yxs
yxyxKa
)1()(,0)0(
)|)(||)(|(exp),(
nedngg
ygxgyxKa
ただし、
LA カーネルの定義(2)
カーネルの畳み込み (convolution)
ギャップなしブロックが n 個ある場合のスコア
LA カーネル
100
1
0)( ),(
Ka
n
gan KKKKKyxK ただし、
0
)( ),(),(i
iLA yxKyxK
yyyxxx
yxKyxKyxKK2121
2211,
2121 ),(),(),(
V F
Ka β
F L L D D R L - - V L L V - - E K L G A - -
T T
Kg β Kg β Kg β Ka β Ka β Ka β
LA カーネルと SW スコアの関係
),()),(ln(lim 1 yxSWyxKLA
π : ( ローカル )アライメント
S(x,y,π): アライメント π のスコア
Π :可能なアライメントの集合
),(
)),,(exp(),(yx
LA yxSyxK
)),,(exp(maxln
),,(max),(
),(
1
),(
yxS
yxSyxSW
yx
yx
定理
LA カーネルと SW スコア
SW スコア: 1 個の最適なアライメントのみを考慮 LA カーネル: すべての可能なアライメントを考慮
AWGE A - GE
HAWGEG
AGEHV
配列 x
配列 y
SWスコア
LAカーネル
AWGE A - GE
AWGE AG - E
HAWGE A -G - E
HAWGE - G A -G EHV -
π 1
π 2
π 3
π 4
S(x,y,π )=24
S(x,y,π )=19
S(x,y,π )=14
S(x,y,π )=5
SVM によるスーパーファミリー予測 (1)
madqlteeqiaefkeafslfdkdgdgtittkelgtvmrslgqnpteaelqdminevdadg
ngtidfpefltmmark
タンパク質配列
Super Family.1
Super Family.2
Super Family.3
各スーパーファミリーごとに SVM を作成 最も高いスコアを出した SVM に対応するファミリーを出力
SVM.1
SVM.2
SVM.3
SVM によるスーパーファミリー予測 (2)
margin
テストデータ
黄色の○ スーパーファミリーに所属するタンパク酸配列データ(正例)
赤い × スーパーファミリーに所属しないタンパク質配列データ(負例)
緑の□ どのスーパーファミリーに所属するかを予測したいタンパク質配列データ(テストデータ)
カーネル計算の並列化
LAカーネルの計算 1回あたり O(mn)時間( |x|=m, |y|=n ) 配列データの個数を N とし、配列の平均長を n⇒ 全部で O(N2n2) 時間 ⇒ 並列化が必要
),( yxKLA
x1 x2 x3 x4
x1
x2
x3
x4
CPU1
CPU2
CPU3
並列化
並列計算機の利用 LAカーネルの計算
1回あたり O(mn)時間だが大量の計算が必要 学習データ中のすべての配列ペアに対して計算 1CPUだと数十日を要する
並列計算機 SGI ORIGIN 3800 (R14000(500MHz) × 256CPU) PC クラスタ HPC (2.8GHz Xeom × 8CPU)
並列化 LSF (Load Sharing Facility) と script の組み合わせ 単純なデータ分割(分割されたデータごとに別 CPU
で計算) 半日程度でカーネル計算が終了
並列化手法は単純だが、非常に有効
提案手法の評価法
SVMの 学習
54 SCOP Super Families
トレーニング データ
SVMによる 予測
評価 (ROC,ROC50)
テスト データ
ROC による性能評価
カーブが上にあるほど良い性能
mRFP による性能評価
カーブが上にあるほど良い性能
結論
タンパク配列の個数(学習データ数)が少ないスーパーファミリーの予測
課題
タンパク質ホモロジー検出のための新たなカーネル
Smith-Waterman アルゴリズムとペア HMM の組み合わせ
ベンチマークテストにおいては最高クラスの性能
単純な並列化が非常に有効
グラフカーネルによる化合物の性質予測
グラフ・カーネル
グラフ G(V,E) 情報科学において幅広く利用されているデータ表現法
頂点と辺で構造を表す ( 点と線で構造を表す ) V: 頂点の集合 E: 辺の集合
バイオインフォマティクスにおいても幅広い利用 化学構造、遺伝子ネットワーク、代謝ネットワーク
グラフカーネル 二つのグラフ G1(V1,E1) 、 G2(V2,E2) 間の類似性の指標
G(V,E)
Marginalized カーネル
Tsuda らが 2002 年に提案 定義
h,h’: 隠れ変数群、 K’:カーネル 配列解析やRNA二次構造解析に応用
))',(),,((')|'()|(),('
hyhxKyhpxhpyxKhh
Marginalized グラフ・カーネル (1)
Kashima らが 2003年に提案
h: グラフ G1 におけるパス h’: グラフ G2 におけるパス l(h): パス h のラベル(原子名)の列 K’(x,y): ラベル列間のカーネル関数 (例: K’(x,y)=1 if x=y, otherwise 0 )
))'(),((')'()(),(*2'*
1
21hlhlKhphpGGK
VhVh
Marginalized グラフ・カーネル (2)
C O
Cl
H u1 u2
u3
u4
H
G1
H C O H v1
v4
v3
v2 H
v5 v6
G2
1))'(),(('
)OC,H,()'(),OC,H,()(
),,('),,,( 521321
hlhlK
hlhl
vvvhuuuh
0))'''(),''(('
)HC,O,C,H,()'''(
),,,,('''
)ClC,O,C,H,()''(
),,,,(''
12521
42321
hlhlK
hl
vvvvvh
hl
uuuuuh
Marginalized グラフ・カーネル (3)
C O
Cl
H
x
φ (x)
H 0.03 (
C 0.03
N 0.0
HC 0.02
HO 0.0
CH 0.01
HC H
0.002 )
Marginalized グラフ・カーネル (4)
C
O
Cl
H v1 v2
v3
v4
G1
0.9
END
START
0.25
0.3
0.3
0.9
0.3
0.9 0.1 0.1
0.1
0.1
0.25 0.25
0.25
1.03.09.03.025.0
),,,(
1.03.09.025.0
),,(
3242
321
vvvvp
vvvp
3.0)|()1(
3/1)|(
9.0)|()1(
0.1)|(
1.0)(25.0)(
230
23
120
12
0
vvpp
vvp
vvpp
vvp
vpvp
a
a
a
a
iqi
Marginalized グラフ・カーネル (5)
グラフカーネルの定義
h: グラフ G1 におけるパス h’: グラフ G2 におけるパス すべてのパスを考慮するので、そのまま実行
したのでは指数時間かかるが、工夫すると逆行列の計算に帰着できる
(|V1||V2|×|V1||V2| サイズの逆行列の計算 )
))'(),((')'()(),(*2'*
1
21hlhlKhphpGGK
VhVh
Marginalized グラフ・カーネル (6)
n
iiitsn
qavq
qt
qs
vvpvpvvp
upvupp
vpvup
vpvpvp
2111
)(
0
)|()(),,(
)()|()(1
)|(
)()()(
Marginalized グラフ・カーネル (7)
Cl H u1 u2 G1
G2
O K v1 v3 v2
H
G1× G2
v3 u2 ( , )
H,K H,O H,H u1 v1 ( , ) ( , ) u1 v2 ( , ) u1 v3
Cl,K Cl,O Cl,H ( , ) u2 v1 ( , ) u2 v2
)),(|),((),()),(),)(,((
)|()|()),(|),((
)()(),(
211112211
1)2(
1)1(
11
1)2(
1)1(
11
n
iiiiitsnn
iitiitiiiit
sss
vuvuvuvuvuvu
vvpuupvuvu
vpupvu
Marginalized グラフ・カーネル (8)
)())'(),((')'()(),(*)21(*
2'*1
21hhlhlKhphpGGK
VVhVhVh
VuVutt
VVVVvss
uu
v
,'
)21(
))|'((
))((
1
1
1
1
1||,*121
)(
)()(),(
ts
nts
nnhVhn
I
hGGK
)1/(11 2 xxx
1
1
||,
)()(*
nts
nhVh
h
Marginalized グラフ・カーネル⇒逆行列の計算
Marginalized グラフカーネルの問題点
パス(の集合)だけを用いて化学構造を表現 反応中心などの情報を十分に取り入れることが困難?
行列のサイズが大きく(化合物 x の原子数 ×化合物 y の原子数) 2 )なるため、逆行列の計算に時間がかかる すべてのトレーニングデータのペア(化合物のペ
ア)について、それぞれ、逆行列を計算することが必要
⇒ 構造情報 (Morgan Index) との組み合わせ により行列のサイズを減らす
Morgan インデックス
化学構造の一意名を計算機により計算するために1960年代に考案
CAS(Chemical Abstract Service) で利用 等価な原子に同じ番号(整数値)が与えられるよ
うな、各原子への番号づけを計算 簡単な繰り返し計算による番号づけ
等価で無い原子にも同じ番号がつく可能性(でも、低い)
⇒ Marginalized グラフカーネルにおいて、原子名とともに、モーガンインデックスを利用
原子名およびモーガンインデックスの両者が一致するパスのみを考慮
⇒ 部分構造に関する特徴も、ある程度、取り入れられる
Morgan インデックスの計算法
すべての原子に番号1を割り当てる すべての原子 x について以下を実行
x に結合している原子の番号を総和を、 x の番号とする
NO O1 1
3
22
2
23
22
2
NO O1 1
1
11
1
11
11
1
NO O3 3
5
45
4
57
65
5
1 3 7
31 7
計算機実験 MUTAG データを利用
標準的ベンチマークテストの一つ 化合物のサルモネラ菌の変異性への影響データ 125 個の正例、63個の負例を利用 各例 1 個のみをテストデータとし、他を学習デ
ータとしたテストを繰り返した ソフトウェア
SVMソフトとして、 GIST (http://microarray.cpmc.columbia.edu/gist)
を利用 他は C++ で記述
計算機実験の結果: 予測精度
他手法
Marginalizedカーネル +モーガン法
計算機実験の結果: 計算時間
結論 モーガンインデックスの利用により以下を達成
Marginalized カーネルと、同様の精度 数十倍以上、高速
他のインデックス手法の利用、開発 他手法との比較 大規模な計算機実験(現在、実行中)
並列処理が必要
今後の課題
参考文献 SVM およびカーネル一般
N. Cristianini & J. Shawe-Taylor: An Introduction to Support Vector Machines and Other Kernel-based Learning Methods, Cambridge Univ. Press, 2000.
バイオインフォマティクスにおけるカーネル Kernel Methods in Computational Biology, MIT Press, 2004.
Marginalized Kernel + Morgan Index P. Mahe, N. Ueda, T. Akutsu, J-L. Perret, J-P. Vert: Extensions of margi
nalized graph kernels, Proc. 21st Int. Conf. Machine Learning, 552-559, 2004.
LAカーネル H. Saigo, J-P Vert, N. Ueda, T. Akutsu: Protein homology detection usi
ng string alignment kernels, Bioinformatics, 20:1682-1689, 2004.