カーネル法のバイオインフォマティクスへの応用
Download
Report
Transcript カーネル法のバイオインフォマティクスへの応用
配列および化合物データ解析
のためのカーネル法
阿久津達也
京都大学 化学研究所
バイオインフォマティクスセンター
サポートベクターマシン
カーネル法の一つ、ニューラルネットワークと類似
1990年代に、Cortes と Vapnik が発明
トレーニングデータとして与えられた正例と負例から、
それらを分離する超平面を計算
機械学習、統計学、人工知能、パターン認識、バイオ
インフォマティクスなど様々な分野に応用
配列分類
タンパク質フォールド予測、二次構造構造
遺伝子発現データ解析
タンパク質相互作用予測
化合物の性質推定
c.f. Kernel Methods in Computational Biology, MIT Press,
2004
サポートベクターマシン
正例と負例を与
えて、それらを最
適(マージンを最
大)に分離する超
平面を学習
カーネルを適切に
定義することによ
り超平面以外で
の分離が可能
テス トデー タ
m argin
SVMによるテストデータの分類
学習データより超平面
を学習(SVM)
テストデータは、対応す
る点の超平面に対する
位置(上下)で判定
テス トデー タ
テストデータとサポート
ベクター間のカーネル関
数値の重み付き和でテ
ストデータを類別
m argin
f (x )
i: x i
i
K ( x ,x i )
j:x j
j
K (x , x j )
カーネル
サポートベクターマシン:基本的には超平面で分離
Φ(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条件を満たす ⇒ カーネル
連続値の場合
K (x , z ) f (x ) f (z )dx dz 0
離散値の場合 ( x1,x2,…,xn が入力データ)
K ( K ( x i , x j ))
n
i , j 1
が半正定値行列
カーネルの作り方
データから特徴ベクトル(feature vector)を
作るのが一般的、かつ、
多くの場合に実用的
特徴ベクトル: 実数値の列
例えば、各化合物 x に対し、
Φ(x) = (分子量, 容積, 表面積, logP,…)
とすれば、化合物 x,y に対するカーネルは
Φ(x) と Φ(y) の単なる内積
アライメントカーネルによる構造予測
1.
2.
3.
4.
5.
6.
SCOPとスーパーファミリー予測
既存カーネル
配列解析手法(アライメント、HMM)
新カーネル
計算機実験結果
結論と課題
タンパク質立体構造予測
アミノ酸配列から、
タンパク質の立体
構造(3次元構造)
をコンピュータによ
り推定
実験よりは、精度が
悪い
だいたいの形がわ
かれば良いのであ
れば、4~5割の予
測率
タ ン パ ク質 配 列 (ア ミ ノ酸 配 列 )
T
C
A
V
F
G
L
G
G
V
R
L
S
V
D
コンピュー タ
タンパ ク質
立体構造
フォールド予測 (Fold Recognition)
タ ン パ ク質 配 列 (ア ミ ノ酸 配 列 )
精密な3次元構造
ではなく、だいたい
の形(fold)を予測
立体構造は数千
種類程度の形に分
類される、との予
測(Chotia, 1992)
に基づく
T
C
A
V
F
G
L
G
G
V
R
L
1 000 個 の テ ン プ レー ト 構 造
S
V
D
SCOPデータベース
タンパク質立体構造を形状を中心に、人手で、
階層的に、分類したデータベース
SCOP
Root
‥‥‥‥‥
Class.1 Class.2
‥‥‥‥‥
Fold.1 Fold.2
Super
Super
Family.1 Family.2
Family.1
‥‥‥‥‥
Family.2
mkkrltitlsesvlenlekmaremglsksam
ispqarafleevfrrkqslnskekeevakkcg
isvalenykkgq
itplqvrvwfinkrmrs
Family.3
Super Family 予測
入力配列が SCOP のどのスーパーファミリー
に属するかを予測
Super Family.1
タンパク質配列
madqlteeqiaefkeafslfdkdgdgtittkel
gtvmrslgqnpteaelqdminevdadg
Super Family.2
ngtidfpefltmmark
:
:
Super Family.3
既存手法の主なターゲット
Class
Secondary Structure Prediction
Fold
Threading
Super
Family
HMM, PSI-BLAST, SVM
Family
SW, BLAST, FASTA
タンパク質配列解析のための既存カーネル
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)
S p ectrum カ ー ネ ル
A A
ACCT A
( 0
φ (x)
A C
A G
CC
CG
CT
T A
1
0
1
0
1
1
)
配列アライメント
バイオインフォマティクス
の最重要技術の一つ
2個もしくは3個以上の配
列の類似性判定に利用
文字間の最適な対応関
係を求める(最適化問題)
配列長を同じにするよう
に、ギャップ記号(挿入、
欠失に対応)を挿入
A
L
G
F
G
S
L
Y
A
L
G
G
V
S
V
G
A
L
G
F
G
S
L
A
L
G
S
V
G
V
G
Y
G
G
スコア行列(置換行列)
残基間(アミノ酸文字間)の類似性を表す行列
PAM250, BLOSUM45 など
A
A
R
N
D
C
Q
E
G
H
I
L
K
M
F
P
S
T
W
Y
V
R
N
D
C
Q
E
5 -2 -1 -2 - 1 -1 -1
-2
7 - 1 -2 -4
G
P
S
T
Y
V
0 -2 - 1 -2 -1 -1 -3 - 1
H
I
L
K
M
F
1
0 -3 -2
W
0
3
1
0 -3
0 -4 -3
3 - 2 -3 -3 -1 -1 - 3 -1
-1 -1
7
2 -2
0
0
1 -3 -4
0 - 2 -4 -2
-2 -2
2
8 -4
0
2 - 1 -1 -4 -4 -1 - 4 -5 -1
0
1
0 - 4 -2 -3
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
B LO S U M 5 0 ス コ ア 行 列
(置 換 行 列 )の 一 部 分
0 -1 - 1 -1 -3
ペアワイズ・アライメント
配列が2個の場合でも可能なアライメントの個数は
指数オーダー
しかし、スコア最大となるアライメント(最適アライメ
ント)は動的計画法により、O(mn)時間で計算可能
(m,n:入力配列の長さ)
入力配列
A G C T, AC G C T
イメント
ア ラ イ メント
AGCT AC G C T
スコア
-3
最 適 アラ
AG - CT
AC G C T
1
A - GCT
AC G C T
- AGC - - T
AC - - G C T
3
-5
( 同 じ 文 字 の 時 : 1、 違 う文 字 の 時 : -1 、ギ ャ ッ プ 1 文 字 : - 1)
動的計画法による大域アライメント(1)
(Needleman-Wunschアルゴリズム)
入力文字列から格子状グラフを構成
アライメントと左上から右下へのパスが一対一対応
最長経路=最適アライメント
G
G
F
5
K
-2
Y
D
-5
1
ア ラ イメント
-7
G K Y
-5
-5
7
-6
-7
G
D
F V D
G K Y D
V
D
-1
-2
-3
-2
1
0
-4
4
-7
-7
-7
-7
スコア
-7
G
-7 +4 = 2
-7 -7 -1 +0
-7 -7 = -29
G F V D
-7 -7 -5 -7
G K Y D
-7
5 -7 +7
F V D
-7 -7 -7 = -47
動的計画法による大域アライメント(2)
F (0 ,0 )
G
F (1 ,0 )
=-d
K
F (2 ,0 )
= -2 d
DP (動的計画法)による
最長経路(スコア)の計算
F ( 0 , j ) jd ,
=0
G
F ( i -1 , j -1 )
F (0 ,1 )
=-d
F (i, j- 1 )
F ( i , 0 ) id
F ( i 1, j 1) s ( x i , y j )
F ( i , j ) max
F ( i 1, j ) d
F ( i , j 1) d
s (K ,F )
F
-d
F (0 ,2 )
= -2 d
-d
F ( i -1 , j )
F (i, j)
⇒ O(mn)時間
行列からの経路の復元は、
F(m,n)からmaxで=となっている
F(i,j)を逆にたどることに行う
(トレースバック)
ローカルアライメント(1)
(Smith-Watermanアルゴリズム)
配列の一部のみ共通部分があることが多い
⇒共通部分のみのアラインメント
配列検索において広く利用されている
例えば、HEAWGEH と GAWED の場合、
AWGE
A W -E
というアライメントを計算
ローカルアライメント(2)
動的計画法
の式
0
F ( i 1, j 1) s ( x i , y j )
F ( i , j ) max
F ( i 1, j ) d
F ( i , j 1) d
LAカーネル
SWアルゴリズムをカーネルとして利用したい
⇒ MAX 操作のためカーネルとならない
一方、ペアHMMはカーネルとなることが既知
本研究
SWアルゴリズムを模倣するペアHMMを構成
SWアルゴリズム: 最適なパスのみ
LAカーネル:
全てのローカルアライメントの(重みつき)和
両者ともに時間計算量はO(mn)だが、LAカーネルの
方が数十倍、遅い
LAカーネルの定義(1)
文字(残基)ペアのスコア: Kaβ (x,y)
if | x | 1 or | y | 1
0
K a ( x, y )
exp( s ( x , y )) otherwise
ギャップのスコア: Kgβ (x,y)
K a ( x , y ) exp ( g (| x |) g (| y |) )
ただし、
g ( 0 ) 0 , g ( n ) d e ( n 1)
LAカーネルの定義(2)
カーネルの畳み込み(convolution)
K 1 K 2 ( x, y )
K1(x , y )K 2 (x , y )
x x x, y y y
ギャップなしブロックが n 個ある場合のスコア
K ( n ) ( x , y ) K 0 K a K g
n 1
Ka K0
ただし、
K
0
1
LAカーネル
K LA ( x , y )
i0
K (i) ( x, y )
F V - - E K L G A V - - T
F L L D D R L - - V L L T
β
Ka
β
Kg
β
Ka
β
Kg
β
β
β
Ka Kg Ka
LAカーネルとSWスコアの関係
π:(ローカル)アラ
イメント
S(x,y,π): アライメン
トπのスコア
Π:可能なアライメ
ントの集合
SW ( x , y ) max
( x , y )
1
S ( x, y, )
ln max exp( S ( x , y , ))
( x , y )
K LA ( x , y )
exp(
S ( x , y , ))
( x , y )
定理
lim
1
ln( K LA ( x , y )) SW ( x , y )
LAカーネルとSWスコア
SWスコア: 1個の最適なアライメントのみを考慮
LAカーネル: すべての可能なアライメントを考慮
配列 x
H A W G EG
配列 y
AGEH V
LAカ ー ネ ル
π1
AWGE
A - GE
S (x,y, π )= 2 4
π2
AWGE
AG - E
S (x,y, π )= 1 9
π3
HAWGE
A -G -E
S (x,y, π )= 1 4
π4
HAWGE - G
A - G EH V -
S (x,y, π )= 5
SWス コア
AWGE
A - GE
SVMによるスーパーファミリー予測 (1)
各スーパーファミリーごとにSVMを作成
最も高いスコアを出したSVMに対応するファミリーを出力
Super Family.1
SVM.1
Super Family.2
SVM.2
Super Family.3
SVM.3
タンパク質配列
madqlteeqiaefkeafslfdkdgdgtittkel
gtvmrslgqnpteaelqdminevdadg
ngtidfpefltmmark
SVMによるスーパーファミリー予測 (2)
黄色の○
テス トデー タ
赤い×
スーパーファミリーに所
属するタンパク酸配列
データ(正例)
スーパーファミリーに所
属しないタンパク質配列
データ(負例)
緑の□
どのスーパーファミリーに
所属するかを予測したい
タンパク質配列データ(テ
ストデータ)
m argin
カーネル計算の並列化
LAカーネルの計算
x1 x2 x3 x 4
x1
x2
x3
x4
K LA ( x , y )
1回あたりO(mn)時間(|x|=m, |y|=n)
配列データの個数を N とし、配列の平均長を n
⇒ 全部で O(N2n2) 時間 ⇒ 並列化が必要
並列化
CPU1
CPU2
CPU3
並列計算機の利用
LAカーネルの計算
1回あたりO(mn)時間だが大量の計算が必要
並列計算機
SGI ORIGIN 3800 (R14000(500MHz) × 256CPU)
PCクラスタ HPC (2.8GHz Xeom × 8CPU)
並列化
学習データ中のすべての配列ペアに対して計算
1CPUだと数十日を要する
LSF (Load Sharing Facility) と script の組み合わせ
単純なデータ分割(分割されたデータごとに別CPUで計算)
半日程度でカーネル計算が終了
並列化手法は単純だが、非常に有効
提案手法の評価法
ROCによる性能評価
カーブが
上にある
ほど良い
性能
mRFPによる性能評価
カーブが
上にある
ほど良い
性能
結論
タンパク質ホモロジー検出のための新たなカーネル
Smith-WatermanアルゴリズムとペアHMMの組み合わせ
ベンチマークテストにおいては最高クラスの性能
単純な並列化が非常に有効
課題
タンパク配列の個数(学習データ数)が少ないスー
パーファミリーの予測
グラフカーネルによる化合物の
性質予測
グラフ・カーネル
グラフ
情報科学において幅広く利用されているデータ表現法
頂点と辺で構造を表す(点と線で構造を表す)
V: 頂点の集合
E: 辺の集合
バイオインフォマティクスにおいても幅広い利用
G(V,E)
化学構造、遺伝子ネットワーク、代謝ネットワーク
グラフカーネル
二つのグラフ G1(V1,E1) 、G2(V2,E2) 間の類似性の指標
G(V,E)
Marginalized カーネル
Tsudaらが2002年に提案
定義
K ( x , y ) p ( h | x ) p ( h '| y ) K ' (( x , h ), ( y , h ' ))
h h'
h,h’: 隠れ変数群、K’:カーネル
配列解析やRNA二次構造解析に応用
Marginalized グラフ・カーネル(1)
Kashimaらが2003年に提案
K (G1 , G 2 )
p ( h ) p ( h ' ) K ' (l ( h ), l ( h ' ))
*
*
hV1 h 'V 2
h: グラフ G1 におけるパス
h’: グラフ G2 におけるパス
l(h): パス h のラベル(原子名)の列
K’(x,y): ラベル列間のカーネル関数
(例: K’(x,y)=1 if x=y, otherwise 0
)
Marginalized グラフ・カーネル(2)
u3
G1
u1
u2
H
C
O
G2
u4
Cl
v1
H
h ( u 1 , u 2 , u 3 ), h ' ( v1 , v 2 , v 5 )
l ( h ) ( H, C, O ), l ( h ' ) ( H, C, O )
K ' ( l ( h ), l ( h ' )) 1
H
v2
v4
v3
v5
C
O
v6
H
H
h ' ' (u1 , u 2 , u 3 , u 2 , u 4 )
l ( h ' ' ) ( H, C, O, C, Cl )
h ' ' ' ( v1 , v 2 , v 5 , v 2 , v1 )
l ( h ' ' ' ) ( H, C, O, C, H )
K ' ( l ( h ' ' ), l ( h ' ' ' )) 0
Marginalized グラフ・カーネル(3)
x
H
O
C
φ (x)
Cl
H
( 0.03
H
H
H
C
C
C
N
C
O
H
H
0.03
0.0
0.02
0.0
0.01
0.002
)
Marginalized グラフ・カーネル(4)
p ( v1 , v 2 , v 3 )
0 . 25 0 . 9 0 . 3 0 . 1
G1
p (v2 , v4 , v2 , v3 )
0 . 25 0 . 3 0 . 9 0 . 3 0 . 1
p 0 ( v i ) 0 . 25
p q ( v i ) 0 .1
START
0 .2 5
p a (v3 | v 2 ) 1 / 3
(1 p 0 ) p a ( v 3 | v 2 ) 0 . 3
0 .2 5
O
0 .3
v1
H
0 .3
v2
C
0 .3
0 .9
0 .1
v3
0 .9
0 .9
p a ( v 2 | v1 ) 1 . 0
(1 p 0 ) p a ( v 2 | v1 ) 0 . 9
0 .2 5
0 .2 5
0 .1
v4
Cl
0 .1
EN D
0 .1
Marginalized グラフ・カーネル(5)
グラフカーネルの定義
K (G1 , G 2 )
p ( h ) p ( h ' ) K ' (l ( h ), l ( h ' ))
*
*
hV1 h 'V 2
h: グラフ G1 におけるパス
h’: グラフ G2 におけるパス
すべてのパスを考慮するので、そのまま実行した
のでは指数時間かかるが、工夫すると逆行列の
計算に帰着できる
(|V1||V2|×|V1||V2|サイズの逆行列の計算)
Marginalized グラフ・カーネル(6)
p s (v ) p0 (v ) p q (v )
p t (u | v )
1 p q (v )
p q (v)
p a (u | v ) p q (u )
n
p ( v1 , , v n ) p s ( v1 ) p t ( v i | v i 1 )
i2
Marginalized グラフ・カーネル(7)
s ( u 1 , v1 ) p s ( u 1 ) p s ( v1 )
(1 )
(2)
t (( u i , v i ) | ( u i 1 , v i 1 )) p t ( u i | u i 1 ) p t ( v i | v i 1 )
(1 )
(2)
n
(( u 1 , v1 )( u 2 , v 2 ) ( u n , v n )) s ( u 1 , v1 ) t (( u i , v i ) | ( u i 1 , v i 1 ) )
i2
G 1 u1
H
G 1× G 2 ( u 1 , v1 ) ( u 1 , v2 ) ( u 1 , v3 )
H ,K
H ,O
H ,H
Cl
u2
G2
v1
v2
v3
K
O
H
C l,K
C l,O
C l,H
( u 2 , v1 ) ( u 2 , v2 ) ( u 2 , v3 )
Marginalized グラフ・カーネル(8)
K (G1 , G 2 )
p ( h ) p ( h ' ) K ' (l ( h ), l ( h ' ))
*
*
hV1 h 'V 2
s ( s ( v )) vV
(V V V )
1
2
t ( t ( u ' | u )) u 'V , u V
h (V1 V 2 )
(h)
*
(h ) s ( t )
n 1
*
hV , | h | n
n 1
K ( G1 , G 2 )
( h ) s ( t ) 1
*
n 1 hV , | h | n
n 1
2
1
1
x
x
1 /( 1 x )
s ( I t ) 1
1
Marginalized グラフ・カーネル⇒逆行列の計算
Marginalized グラフカーネルの問題点
パス(の集合)だけを用いて化学構造を表現
反応中心などの情報を十分に取り入れることが困
難?
行列のサイズが大きく(化合物xの原子数×化
合物yの原子数)2)なるため、逆行列の計算に
時間がかかる
すべてのトレーニングデータのペア(化合物のペア)
について、それぞれ、逆行列を計算することが必要
⇒ 構造情報(Morgan Index)との組み合わせ
により行列のサイズを減らす
Morganインデックス
化学構造の一意名を計算機により計算するために
1960年代に考案
CAS(Chemical Abstract Service)で利用
等価な原子に同じ番号(整数値)が与えられるような、
各原子への番号づけを計算
簡単な繰り返し計算による番号づけ
等価で無い原子にも同じ番号がつく可能性(でも、低い)
⇒ Marginalized グラフカーネルにおいて、原子名ととも
に、モーガンインデックスを利用
原子名およびモーガンインデックスの両者が一致するパス
のみを考慮
⇒ 部分構造に関する特徴も、ある程度、取り入れられる
Morganインデックスの計算法
すべての原子に番号1を割り当てる
すべての原子 x について以下を実行
x に結合している原子の番号を総和を、x の番号とする
1
2
1
1
1
1
1
1
1
1
N
O
1
2
2
1
4
3
2
2
3
2
2
1
5
4
3
7
5
5
7
5
6
7
1
1
N
1
3
N
3
O
O
3
O
O
5
O
計算機実験
MUTAG データを利用
標準的ベンチマークテストの一つ
化合物のサルモネラ菌の変異性への影響データ
125個の正例、63個の負例を利用
各例1個のみをテストデータとし、他を学習データと
したテストを繰り返した
ソフトウェア
SVMソフトとして、GIST
(http://microarray.cpmc.columbia.edu/gist)
を利用
他は C++ で記述
計算機実験の結果: 予測精度
Marginalized
カーネル
+
モーガン法
他手法
計算機実験の結果: 計算時間
結論
モーガンインデックスの利用により以下を達成
Marginalizedカーネルと、同様の精度
数十倍以上、高速
今後の課題
他のインデックス手法の利用、開発
他手法との比較
大規模な計算機実験(現在、実行中)
並列処理が必要
参考文献
SVMおよびカーネル一般
バイオインフォマティクスにおけるカーネル
Kernel Methods in Computational Biology, MIT Press, 2004.
Marginalized Kernel + Morgan Index
N. Cristianini & J. Shawe-Taylor: An Introduction to Support Vector
Machines and Other Kernel-based Learning Methods, Cambridge Univ.
Press, 2000.
P. Mahe, N. Ueda, T. Akutsu, J-L. Perret, J-P. Vert: Extensions of
marginalized graph kernels, Proc. 21st Int. Conf. Machine Learning,
552-559, 2004.
LAカーネル
H. Saigo, J-P Vert, N. Ueda, T. Akutsu: Protein homology detection
using string alignment kernels, Bioinformatics, 20:1682-1689, 2004.