株式会社京都コンステラ・テクノロジーズ
CzeekS ver. 1.2
ユーザーマニュアル
【商標について】
本マニュアルに記載の社名、商品名等は各社の商標または登録商標である場合があります。ま
た、本マニュアルに記載のシステム名、製品名等には、商標表示を付記しておりません。
c
⃝2017
株式会社京都コンステラ・テクノロジーズ
本マニュアルに記載されている内容の無断転載・複製を禁じます。
更新履歴
ver. 1.2
• Dragon7
用の記述子計算スクリプトを追加しました。
•
ライセンスの認証方法を変更しました。
•
サブコマンド
“shrink”
を追加しました。
•
サブコマンド
“learn”
のオプション名を一部変更しました。
•
サブコマンド
“status”
で表示されるタンパク一覧に、負例化合物数も表示するように変更
しました。
目次
1
はじめに
1
2
CzeekS
のインストールと設定
3
2.1
アーカイブの展開とライセンスファイルの配置
. . . .
3
2.2
ライセンス認証
. . . .
4
2.3
環境変数の設定
. . . .
4
2.4
OpenBabel
の設定
. . . .
5
3
化合物スクリーニングとターゲット予測
6
3.1
CGBVS
モデル
. . . .
6
3.2
化合物スクリーニング(化合物の記述子計算からスコアリングまで)
. . . .
8
3.3
ターゲット予測
. . . .
10
3.4
構造類似度(
Tanimoto
係数)の計算
. . . .
11
4
CGBVS
モデルの作成と独自データの追加
13
4.1
モデル作成に必要なデータとフォーマット
. . . .
13
4.2
モデルファイル(
DB
ファイル)の作成
. . . .
14
4.3
データの追加
. . . .
15
4.4
機械学習
. . . .
15
4.5
その他
. . . .
16
5
cgbvs
コマンドレファレンス
18
1
はじめに
近年、ある1つの化合物がたった1つのタンパク質とのみ活性を有するという事は稀なことで
あるという考え方が常識になって来ています。このような化合物
-
タンパク質の複雑な関係の情報
を我々はケミカルゲノミクス情報と呼称しており、このような情報は
ChEMBL
等に代表される
化合物の生物活性のデータベースとして整備されつつあります。これらの情報を機械学習による
パターン認識によって未知化合物の活性を予測・スクリーニングする手法が
CGBVS
(
Chemical
Genomics-Based Virtual Screening
)です。
CzeekS
はこの
CGBVS
を行うためのツール群で、
以下の機能を提供しています。
•
化合物のスコア計算
• CGBVS
学習モデルの作成
•
学習モデルの管理機能
•
化合物のフィンガープリント(
MACCS
)の計算
•
ターゲット化合物との類似度計算
本マニュアルの
2
章では
CzeekS
のインストール方法について説明します。
3
章ではサンプル
データを使って化合物のスクリーニング方法について説明します。また、発展的な使用方法とし
て化合物の選択性の予測や、ターゲット予測についても説明します。
4
章ではサンプルデータを
使って学習モデルの構築方法について説明します。
5
章はコマンドのレファレンスです。
以下のような計算機環境において
CzeekS
の利用を想定しています。
CzeekS
は
OpenMP
によ
る並列計算に対応していますので、
CPU
コア数が多い方が効率よく計算することができます。ま
た、計算機は
1
台から
CzeekS
を利用することができます。
CPU
4
コア以上のマルチコアCPU (Intel, AMD)
メモリ
16Gb
以上HDD
10Gb
以上の空き容量OS
CentOS5.x or 6.x 64bit (Linux
カーネル2.6)
外部ツール
DRAGON6.0.38, Dragon7.0x
外部ライブラリ
OpenBabel 2.4.1
サンプルデータの機械学習に掛かる時間(
1
ノード)。
CPU
スレッド数 メモリ 計算時間Intel Xeon E5620
×2
16
24Gb
20h 10m
Intel Core i3 550
4
4Gb
66h 52m
AMD Phenom X6 1055T
6
8Gb
70h 40m
一つのタンパクに対して、1万個化合物のスクリーニング時間(
1
ノード)は下記となります。
予測モデルごとの計算時間CPU、スレッド数、メモリ Ion Nuclear
GPCR Kinase
Channel Receptor Protease Transporter Intel Xeon E5620× 2、
16スレッド、24GBメモリー 10m 14s 20m 29s 7m 23s 4m 38s 10m 2s 3m 23s
Intel Core i7-4790、
2
CzeekS
のインストールと設定
2.1
アーカイブの展開とライセンスファイルの配置
アーカイブファイル
“CzeekS ******.tgz”
を以下の様に
tar
コマンドで展開して下さい。いず
れのディレクトリで展開しても構いませんが、
/usr/local
の下や、
czeeks
等のユーザーを作成
し、
/home/czeeks
の下に展開することをお勧めします。尚、本マニュアルでは
/home/czeeks
下
にファイル展開したと仮定して説明を進めます。
$ tar x v z f C z e e k S _ * * * * * * . tgz C G B V S / C G B V S / e x e c / C G B V S / e x e c / p r o t e i n . lst C G B V S / e x e c /2 D _ 7 _ 9 1 0 _ s m i . drs C G B V S / e x e c / c g b v s C G B V S / e x e c / c a l c _ d r a g o n . sh C G B V S / e x e c /2 D _ 7 _ 9 1 0 _ s d f . drs C G B V S / e x e c / S V M l e a r n C G B V S / e x e c / m i n f o ...展開されるファイルは以下の通りです。添付のライセンスファイル
“czeeks license.dat
”を
/home/czeeks/CGBVS/exec
下に上書きコピーして下さい。
CGBVS/ example H3 mols.csv H3 mols.fp H3 mols.sdf H3 mols.smi H3 positive.csv gpcr.csv positive.csv sample mols.csv sample mols.fp sample mols.sdf sample mols.smi training mols.csv training mols.fp training mols.sdf training mols.smi exec 2D 7 910 sdf.drs 2D 7 910 smi.drs 2D 894 sdf.drt 2D 894 smi.drt SVMlearn calc FP MACCS calc dragon.sh calc dragon7.sh cgbvs czeeks license.dat minfo protein.lst gpcr sample.db サンプルデータ等を収めたディレクトリ ヒスタミンH3受容体のリガンドの記述子 ヒスタミンH3受容体のリガンドのフィンガープリント ヒスタミンH3受容体のリガンドのSDファイル ヒスタミンH3受容体のリガンドのSMILES ヒスタミンH3受容体のリガンドの正例データ GPCRの記述子ベクトル 正例のファイル テスト用化合物の記述子 学習用サンプル化合物のフィンガープリント テストよう化合物のSDFファイル テスト用化合物のSMILES 学習用サンプル化合物の記述子 学習用サンプル化合物のフィンガープリント 学習用サンプル化合物のSDファイル 学習用サンプル化合物のSMILES 実行ファイル等を収めたディレクトリ DRAGON7用のスクリプトファイル DRAGON7用のスクリプトファイル DRAGON6用のスクリプトファイル DRAGON6用のスクリプトファイル SVM学習実行ファイル MACCSフィンガープリント計算コマンド DRAGON6実行用スクリプト DRAGON7実行用スクリプト CGBVS実行ファイル 仮ライセンスファイル ライセンス情報を取得するコマンド タンパクリスト サンプルDBファイル2.2
ライセンス認証
本製品を使用するためにはライセンス認証が必要です。以下の手順で認証を行い、発行された
ライセンスファイルをインストールして下さい。
1.
計算機情報の確認
本製品の
CGBVS/exec
以下にある
minfo
コマンドでライセンス認証に必要な文字列(計
算機情報の
SHA1
ハッシュ値)を確認して下さい。発行されるライセンスファイルはこの
コマンドで文字列を確認した計算機上でのみ有効です。
2.
ライセンスファイルの発行
$ cd C G B V S / e x e c $ ./ m i n f o a 5 8 6 6 b 2 0 b 7 b 4 a 1 d a 0 a c 4 4 0 6 d c f 7 f 4 0 b 9 6 3 9 0 3 c 3 4 // ラ イ セ ン ス 認 証 に 必 要 な 文 字 列確認した文字列を弊社宛にメール等でお知らせください。ライセンスファイルを発行し
メールにて送付いたします。
3.
ライセンスファイルのインストール
弊社より受け取ったライセンスファイルを以下の
2
通りのいずれかの方法でインストール
して下さい。
(
a
)環境変数
CGBVS
に設定したディレクトリに”
czeeks license.dat
”という名前でライ
センスファイルを置く
(
b
)環境変数
CGBVS LICENSE
にフルパスでファイル名を設定す
par
両方設定されてい
る場合は
2
の方を優先します。
2.3
環境変数の設定
アーカイブファイルを展開し、ライセンスファイルを配置した後に、以下のように環境変数を
設定して、
.bashrc
ファイルにも以下の内容を記述して下さい。
$ e x p o r t C G B V S =/ h o m e / c z e e k s / C G B V S / e x e c $ e x p o r t P A T H = $ P A T H : $ C G B V S $ e x p o r t L D _ L I B R A R Y _ P A T H =/ usr / l o c a l / lib : $ L D _ L I B R A R Y _ P A T H $ e x p o r t D R A G O N 6 =/ usr / l o c a l / bin // D R A G O N 6が イ ン ス ト ー ル さ れ た パ ス$ e x p o r t D R A G O N 7 =/ usr / l o c a l / bin // DRAGON7の場合
環境変数
DRAGON6/DRAGON7
については、
DRAGON
の実行コマンドである
dragon6shell
もしくは
dragon7shell
の存在するディレクトリを指定してください。また、ライセンスファイル
czeeks license.dat
を
$
{CGBVS}
下以外の場所に配置したい場合は、環境変数
CGBVS LICENSE
2.4
OpenBabel
の設定
CzeekS
では化合物のフィンガープリント(
MACCS
)の計算(
calc FP MACCS
)や
SD
ファ
イルから
SMILES
の生成に
OpenBabel
を利用しています。インストールされていない場合は以
下の手順でインストールしてください。
1. cmake
のインストール
OpenBabel
のコンパイルには
cmake
が必要です。
cmake
がインストールされていない場
合はインストールしてください。例えば、スーパーユーザーになり
“yum install cmake”
でインストールすることができます。
2. OpenBabel
のコンパイルとインストール
OpenBabel
はフリーソフト(
GPL v2
)です。次の
URL
からダウンロードして下さい。
http://openbabel.org/wiki/Get Open Babel
本マニュアルで使用するバージョンは
2.4.1
です。ダウンロードしましたら次にコンパイ
ルします。アーカイブファイルを
tar
コマンドで展開すると、
openbabel-2.4.1
というディ
レクトリが作成されファイルが展開されます。現在のディレクトリを
openbabel-2.4.1
に
移して、以下の手順でコンパイルしてください。
$ m k d i r b u i l d // 適 当 な デ ィ レ ク ト リ を 作 成 $ cd b u i l d $ c m a k e ../ // c m a k eコ マ ン ド を 実 行 $ m a k e // O p e n B a b e lを コ ン パ イ ル $ su // ス ー パ ー ユ ー ザ ー に な り ま す # m a k e i n s t a l l // デ フ ォ ル ト の パ ス に イ ン ス ト ー ル上記の手順は
CzeekS
を使用する上で、
OpenBabel
の必要最低限のインストールとなります。
コンパイル時の詳細設定などは
OpenBabel
のマニュアル等を参照してください。
3
化合物スクリーニングとターゲット予測
3.1
CGBVS
モデル
CzeekS
にはサンプルのモデルファイルが添付されております。あくまでもサンプルなので、実
際のインシリコスクリーニングに用いること避けて下さい。
CzeekS
ではモデルファイルのファイ
ル名の拡張子は
.db
となり、以下では“
DB
ファイル”と呼ぶこともあります。このサンプルモデ
ルは公的データベースの
ChEMBL
に由来する
GPCR
のデータを使って構築しており、またモデ
ル構築に用いたデータも添付しています。これらのデータについては
4
章で解説します。
CGBVS
ではパターン認識の手法としてサポートベクターマシン(
SVM
)を用いています。
SVM
は正例と負例の2クラスを分類する方法で、機械学習するには正負両方のデータが必要で
す。しかしながら化合物
-
タンパク質ペアで活性有りという情報は潤沢に存在しても、化合物
-
タン
パク質ペアが実験的に活性無しと確認されている情報は公的データベース等には僅かしか在りま
せん。したがって、負例としての化合物
-
タンパク質ペアの相互作用情報を仮想的に生成して、機
械学習を行っております。仮想的負例は正例ペアをランダムに組み換えることにより生成されて
おります。ランダム性が入るため複数の負例セットで学習モデルを生成して化合物の予測スコア
を負例セットの数だけ算出し、最終的にそれらの平均値をスコアとしております。
CzeekS
で算出される
CGBVS
のスコアは
2
種類あります。
1
つは
SVM
の決定関数値の平均
値で、
-
∞ ∼ +∞
までの範囲をとります。もう一方はこの決定関数値をシグモイド関数で正規化
したものの平均値で、
0 1
までの範囲をとります。
CzeekS
では通常は後者の正規化した方のスコ
アを表示します。このスコアは、ターゲットのタンパク質に対して化合物が活性を持つ“確率値”
としての意味を持ちます。つまり、この値と活性値とは比例関係にはありませんのでご注意くだ
さい。
上記で説明した
CGBVS
モデルの情報を
“cgbvs status”
コマンドで確認することができます。
先ず以下のコマンドでサンプルモデルの
DB
ファイルを確認して下さい。
DB
ファイルに登録さ
れている化合物数やタンパク質数、学習したモデルについての情報が一覧表示されます。
$ c g b v s s t a t u s g p c r _ s a m p l e . db [ c o m p o u n d ] D r a g o n 6 v . 6 . 0 . 2 6 // 化 合 物 記 述 子 の 種 類 # of d a t a = 1 3 8 3 8 // 登 録 さ れ て い る 化 合 物 数 # of d e s c r i p t o r s = 894 // 化 合 物 記 述 子 の 次 元 数 [ p r o t e i n ] P R O F E A T 2 0 1 1 // タ ン パ ク 記 述 子 の 種 類 # of d a t a = 859 // 登 録 さ れ て い る タ ン パ ク 数 # of d e s c r i p t o r s = 1 0 8 0 // タ ン パ ク 記 述 子 の 次 元 数 [ f i n g e r p r i n t ]M A C C S // フ ィ ン ガ ー プ リ ン ト の 種 類 # of d a t a = 1 3 8 3 8 // 登 録 さ れ て い る 化 合 物 数 [ i n t e r a c t i o n s ] # of p o s i t i v e i n t e r a c t i o n s = 2 1 7 4 7 // 正 例 の 相 互 作 用 情 報 # of n e g a t i v e i n t e r a c t i o n s = 0 // 負 例 の 相 互 作 用 情 報 [ d e t a i l s of m o d e l s ] # of s a m p l e d p o s i t i v e i n t e r a c t i o n s = 2 1 7 6 1 // 機 械 学 習 に 使 用 し た 相 互 作 用 数 | id | nSV | dim | C | g a m m a | 5 - f o l d CV | | - - - -+ - - - -+ - - - -+ - - - -+ - - - -+ - - - -| | 1 | 3 2 8 6 5 | 444 | 3 . 0 0 0 0 | 0 . 0 0 3 0 | 8 9 . 3 3 0 5 | | 2 | 3 2 9 5 4 | 444 | 3 . 0 0 0 0 | 0 . 0 0 3 0 | 8 9 . 3 7 0 8 | | 3 | 3 3 0 1 6 | 444 | 3 . 0 0 0 0 | 0 . 0 0 3 0 | 8 9 . 4 6 7 7 | | 4 | 3 2 9 1 2 | 444 | 3 . 0 0 0 0 | 0 . 0 0 3 0 | 8 9 . 2 0 7 5 | | 5 | 3 2 8 8 4 | 444 | 3 . 0 0 0 0 | 0 . 0 0 3 0 | 8 9 . 4 6 0 0 |
最後の学習モデルの詳細についての表について、
id
はモデルの
id
番号で、この例では5つあり
ます。
nSV
はサポートベクターの数で、
C
、
gamma
は
SVM
のパラメータです。
accuracy
は各
モデルについて交差検定した時の判別の精度を示したものです。
上述の
“cgbvs status”
コマンドに
-p
オプションを付けると計算できるタンパク質の一覧表が出
力されます。
$ c g b v s s t a t u s - p g p c r _ s a m p l e . db p r o t e i n ID p o s i t i v e n e g a t i v e a c c e s s i o n n a m e 5 H T 1 A _ H U M A N 407 0 P 0 8 9 0 8 5 - h y d r o x y t r y p t a m i n e r e c e p t o r 1 A 5 H T 1 B _ H U M A N 207 0 P 2 8 2 2 2 5 - h y d r o x y t r y p t a m i n e r e c e p t o r 1 B 5 H T 1 D _ H U M A N 203 0 P 2 8 2 2 1 5 - h y d r o x y t r y p t a m i n e r e c e p t o r 1 D 5 H T 1 E _ H U M A N 74 0 P 2 8 5 6 6 5 - h y d r o x y t r y p t a m i n e r e c e p t o r 1 E 5 H T 1 F _ H U M A N 103 0 P 3 0 9 3 9 5 - h y d r o x y t r y p t a m i n e r e c e p t o r 1 F 5 H T 2 A _ H U M A N 388 0 P 2 8 2 2 3 5 - h y d r o x y t r y p t a m i n e r e c e p t o r 2 A 5 H T 2 B _ H U M A N 287 0 P 4 1 5 9 5 5 - h y d r o x y t r y p t a m i n e r e c e p t o r 2 B 5 H T 2 C _ H U M A N 422 0 P 2 8 3 3 5 5 - h y d r o x y t r y p t a m i n e r e c e p t o r 2 C 5 H T 4 R _ H U M A N 109 0 Q 1 3 6 3 9 5 - h y d r o x y t r y p t a m i n e r e c e p t o r 4 5 H T 5 A _ H U M A N 112 0 P 4 7 8 9 8 5 - h y d r o x y t r y p t a m i n e r e c e p t o r 5 A 5 H T 6 R _ H U M A N 252 0 P 5 0 4 0 6 5 - h y d r o x y t r y p t a m i n e r e c e p t o r 6 5 H T 7 R _ H U M A N 227 0 P 3 4 9 6 9 5 - h y d r o x y t r y p t a m i n e r e c e p t o r 7 A 4 _ H U M A N 100 0 P 0 5 0 6 7 A m y l o i d b e t a A4 p r o t e i n A A 1 R _ H U M A N 117 0 P 3 0 5 4 2 A d e n o s i n e r e c e p t o r A1 A A 2 A R _ H U M A N 123 0 P 2 9 2 7 4 A d e n o s i n e r e c e p t o r A2a A A 2 B R _ H U M A N 107 0 P 2 9 2 7 5 A d e n o s i n e r e c e p t o r A2b A A 3 R _ H U M A N 127 0 P 3 3 7 6 5 A d e n o s i n e r e c e p t o r A3 ...出力される表中の
protein ID
が結合予測計算時に使用するタンパク質の
ID
です。この
ID
と
accession
はタンパク質のデータベースである
UniProt(
http://www.uniprot.org/
)
で使用されて
いる
ID
です。また
positive
の列は
DB
ファイルに登録されているタンパク質ごとの活性化合物
数を表しており、
negative
の列は非活性化合物数を示しています。化合物構造の多様性にもより
ますが、一般的には化合物数が大きいほど予測精度も高くなる傾向があります。
3.2
化合物スクリーニング(化合物の記述子計算からスコアリングまで)
【化合物の記述子計算】
ターゲットとするタンパク質に対しての化合物の予測計算を始める前に、化合物構造(
SD
ファ
イル)から記述子を計算する必要があります。化合物記述子の種類は必ず
DB
ファイル中のもの
と一致させなければなりません。さらに記述子計算時の化合物の処理条件(脱塩や電荷中性化な
ど)も一致させる必要があります。
CzeekS
にサンプルとして添付しているファイルの記述子は
DRAGON6
をディレクトリ
exec
下のスクリプトファイルを用いて計算しており、化合物は脱塩・
電荷中性化を行っております。
SMILES
ファイルから
DRAGON6
で記述子を計算する場合は下の様なコマンドで実行できま
す。このコマンドでは計算された記述子が標準出力されます。
SMILES
ファイルを作成する場合
は
OpenBabel
を使って
SD
ファイルから
SMILES
ファイルに変換します。
$ b a b e l - i s d f s a m p l e _ m o l s . sdf - o s m i s a m p l e _ m o l s . smi // S M I L E Sフ ァ イ ル が 無 い 場 合 に 実 行 し ま す $ c a l c _ d r a g o n . sh s a m p l e _ m o l s . smi > o u t p u t . csv $ cat o u t p u t . csv Z I N C 0 0 0 7 4 6 3 8 , 3 1 5 . 3 2 0 , 8 . 5 2 2 , 2 4 . 9 5 2 , 3 8 . 1 0 9 , 2 5 . 0 9 1 ,… Z I N C 0 0 0 7 5 9 2 7 , 2 6 9 . 3 0 0 , 8 . 4 1 6 , 2 1 . 7 9 6 , 3 2 . 5 6 3 , 2 2 . 2 1 6 ,… Z I N C 0 0 4 9 2 9 1 0 , 3 0 0 . 3 9 0 , 7 . 1 5 2 , 2 5 . 9 2 8 , 4 2 . 1 3 8 , 2 7 . 2 2 8 ,… Z I N C 0 2 7 5 9 9 6 4 , 3 3 9 . 1 7 0 , 1 0 . 9 4 1 , 2 1 . 3 6 2 , 3 2 . 1 5 3 , 2 1 . 7 8 4 ,… Z I N C 0 3 5 1 8 1 3 4 , 2 6 4 . 3 6 0 , 6 . 7 7 8 , 2 2 . 9 2 8 , 3 9 . 1 3 8 , 2 4 . 2 2 8 ,… ... // フ ォ ー マ ッ ト は コ ン マ 区 切 り (C S V) に な り ま す記述子ファイルのフォーマットはコンマ区切りで、
“
(化合物
ID
)
,
(記述子
1
)
,
(記述子
2
)
,
…
”
のように
1
行に
1
化合物ずつ、化合物
ID
と記述子の数値を並べて記述して下さい。特に
calc dragon.sh
スクリプトを使わず計算する場合はフォーマットに注意して下さい。
【スコアリング】
化合物の記述子が用意できれば、
“cgbvs predict”
コマンドで予測計算が実行できます。
CzeekS
にはサンプル記述子ファイルとして
“sample mols.csv”
があり、上述のコマンドで実行した内容
と同一です。例えば、アドレナリン
β2
受容体に対するスコアの計算は以下のようなコマンドで実
行でき、結果は標準出力されます。
$ c g b v s p r e d i c t g p c r _ s a m p l e . db A D R B 2 _ H U M A N s a m p l e _ m o l s . csv c o m p o u n d A D R B 2 _ H U M A N Z I N C 0 0 0 7 4 6 3 8 0 . 3 0 9 6 4 1 6 7 Z I N C 0 0 0 7 5 9 2 7 0 . 0 8 3 8 4 5 7 2 Z I N C 0 0 4 9 2 9 1 0 0 . 9 7 1 3 0 4 6 9 Z I N C 0 2 7 5 9 9 6 4 0 . 1 1 6 9 2 7 9 2Z I N C 0 3 5 1 8 1 3 4 0 . 4 8 1 3 7 1 9 9 Z I N C 0 3 9 1 2 6 5 8 0 . 1 6 5 4 4 1 4 3 Z I N C 0 4 1 4 3 2 2 1 0 . 1 7 9 7 4 8 8 9 ...
このコマンドの引数
2
は
CGBVS
モデルの
DB
ファイルを指定します。引数
3
はターゲットの
タンパク
ID
を指定して、最後の引数
4
に化合物記述子のファイル名を指定します。ここで引数
3
にて指定できるタンパク
ID
は前述の”
cgbvs status p
”コマンドでご確認ください。尚、計算結
果をファイルにする場合はリダイレクトして下さい。
【複数タンパクについてスコアリング】
ターゲットタンパクを指定する引数
3
では、コンマ区切りで複数のタンパク
ID
を並べて指定す
ることによって複数のタンパクについてのスコアを計算することができます。タンパク
ID
数に
は特に上限は設けておりません。例えばβ
1
、β
2
受容体の両方のスコアを計算したい場合は以
下のようにコマンドを実行します。
$ c g b v s p r e d i c t g p c r _ s a m p l e . db A D R B 1 _ H U M A N , A D R B 2 _ H U M A N s a m p l e _ m o l s . csv c o m p o u n d A D R B 1 _ H U M A N A D R B 2 _ H U M A N Z I N C 0 0 0 7 4 6 3 8 0 . 0 2 8 9 0 3 0 0 0 . 3 0 9 6 4 1 6 7 Z I N C 0 0 0 7 5 9 2 7 0 . 0 5 5 1 8 1 6 4 0 . 0 8 3 8 4 5 7 2 Z I N C 0 0 4 9 2 9 1 0 0 . 9 4 3 1 5 2 0 8 0 . 9 7 1 3 0 4 6 9 Z I N C 0 2 7 5 9 9 6 4 0 . 0 9 2 1 3 1 9 6 0 . 1 1 6 9 2 7 9 2 Z I N C 0 3 5 1 8 1 3 4 0 . 2 4 2 4 5 8 6 3 0 . 4 8 1 3 7 1 9 9 Z I N C 0 3 9 1 2 6 5 8 0 . 1 6 1 9 5 9 4 9 0 . 1 6 5 4 4 1 4 3 Z I N C 0 4 1 4 3 2 2 1 0 . 1 4 4 7 5 8 4 4 0 . 1 7 9 7 4 8 8 9 ...この様に複数タンパクについてのスコアがタブ区切りで表示されます。複数タンパクを指定す
れば、化合物の選択性も考慮したスクリーニングも容易です。また、
%
記号をワイルドカードと
して利用することもできます。例えば、α受容体も含めた全てのアドレナリン受容体に対しての
スクリーニングは以下のようなコマンドで実行できます。
$ c g b v s p r e d i c t g p c r _ s a m p l e . db ADA % , ADR % s a m p l e _ m o l s . csv c o m p o u n d A D A 1 A _ H U M A N A D A 1 B _ H U M A N A D A 1 D _ H U M A N A D A 2 A _ H U M A N A D A 2 B _ H U M A N A D A 2 C _ H U M A N A D R B 1 _ H U M A N A D R B 2 _ H U M A N A D R B 3 _ H U M A N Z I N C 0 0 0 7 4 6 3 8 0 . 0 0 5 4 6 7 1 3 0 . 0 0 7 9 0 6 5 3 0 . 0 1 3 6 8 7 4 6 0 . 0 4 8 2 5 2 8 2 0 . 0 1 5 3 9 6 5 9 0 . 0 1 7 1 0 2 3 2 0 . 0 2 8 9 0 3 0 0 0 . 3 0 9 6 4 1 6 7 0 . 0 2 4 1 6 6 0 5 Z I N C 0 0 0 7 5 9 2 7 0 . 0 4 4 3 5 2 8 3 0 . 0 5 2 9 2 6 2 6 0 . 0 3 4 0 1 3 6 8 0 . 1 2 9 8 0 5 0 6 0 . 1 1 0 2 3 3 9 7 0 . 0 8 8 0 0 2 3 4 0 . 0 5 5 1 8 1 6 4 0 . 0 8 3 8 4 5 7 2 0 . 0 5 9 0 4 6 6 5 Z I N C 0 0 4 9 2 9 1 0 0 . 8 2 9 0 6 0 3 1 0 . 6 6 2 8 1 2 8 0 0 . 5 7 6 6 4 5 3 9 0 . 2 8 9 0 4 6 9 7 0 . 3 6 2 0 5 2 7 4 0 . 1 5 1 8 4 6 2 1 0 . 9 4 3 1 5 2 0 8 0 . 9 7 1 3 0 4 6 9 0 . 9 5 4 6 2 7 7 5 ...【表示形式】
“cgbvs predict”
のオプションで
CGBVS
スコアの表示内容を変更することができます。
-d
オ
プションをつけると正規化されたスコアではなく、
SVM
の決定関数の平均値を出力できます。
$ c g b v s p r e d i c t - d g p c r _ s a m p l e . db ADR % s a m p l e _ m o l s . csv c o m p o u n d A D R B 1 _ H U M A N A D R B 2 _ H U M A N A D R B 3 _ H U M A N Z I N C 0 0 0 7 4 6 3 8 - 0 . 8 5 2 5 6 7 5 6 - 0 . 2 2 0 8 7 1 9 4 - 0 . 9 2 1 1 9 7 6 0 Z I N C 0 0 0 7 5 9 2 7 - 0 . 6 8 5 3 2 7 0 4 - 0 . 5 9 0 1 4 3 0 0 - 0 . 6 7 1 3 4 7 5 2 Z I N C 0 0 4 9 2 9 1 0 0 . 6 8 1 5 1 9 5 6 0 . 8 6 1 2 9 1 9 9 0 . 7 2 8 6 0 4 7 0 Z I N C 0 2 7 5 9 9 6 4 - 0 . 5 5 4 3 8 4 2 2 - 0 . 5 0 3 7 4 6 1 7 - 0 . 5 5 6 5 8 8 3 0 Z I N C 0 3 5 1 8 1 3 4 - 0 . 3 3 1 4 8 5 1 9 - 0 . 0 3 0 6 3 2 6 0 - 0 . 3 1 7 6 9 7 5 2 Z I N C 0 3 9 1 2 6 5 8 - 0 . 4 0 0 1 2 5 0 9 - 0 . 3 9 4 1 5 5 5 3 - 0 . 4 1 0 6 1 8 2 4 Z I N C 0 4 1 4 3 2 2 1 - 0 . 4 4 0 5 5 9 9 8 - 0 . 3 7 6 6 4 8 5 2 - 0 . 7 3 2 3 3 2 4 1 ...また
-v
オプションで決定関数値と正規化スコアの両方を出力します。
$ c g b v s p r e d i c t - v g p c r _ s a m p l e . db ADR % s a m p l e _ m o l s . csv c o m p o u n d p r o t e i n p r o b a b i l i t y s c o r e Z I N C 0 0 0 7 4 6 3 8 A D R B 1 _ H U M A N 0 . 0 2 8 9 0 3 0 0 - 0 . 8 5 2 5 6 7 5 6 Z I N C 0 0 0 7 4 6 3 8 A D R B 2 _ H U M A N 0 . 3 0 9 6 4 1 6 7 - 0 . 2 2 0 8 7 1 9 4 Z I N C 0 0 0 7 4 6 3 8 A D R B 3 _ H U M A N 0 . 0 2 4 1 6 6 0 5 - 0 . 9 2 1 1 9 7 6 0 Z I N C 0 0 0 7 5 9 2 7 A D R B 1 _ H U M A N 0 . 0 5 5 1 8 1 6 4 - 0 . 6 8 5 3 2 7 0 4 Z I N C 0 0 0 7 5 9 2 7 A D R B 2 _ H U M A N 0 . 0 8 3 8 4 5 7 2 - 0 . 5 9 0 1 4 3 0 0 Z I N C 0 0 0 7 5 9 2 7 A D R B 3 _ H U M A N 0 . 0 5 9 0 4 6 6 5 - 0 . 6 7 1 3 4 7 5 2 Z I N C 0 0 4 9 2 9 1 0 A D R B 1 _ H U M A N 0 . 9 4 3 1 5 2 0 8 0 . 6 8 1 5 1 9 5 6 Z I N C 0 0 4 9 2 9 1 0 A D R B 2 _ H U M A N 0 . 9 7 1 3 0 4 6 9 0 . 8 6 1 2 9 1 9 9 Z I N C 0 0 4 9 2 9 1 0 A D R B 3 _ H U M A N 0 . 9 5 4 6 2 7 7 5 0 . 7 2 8 6 0 4 7 0 ...このように、
1
行に化合物
-
タンパク質ペアに対する
2
種のスコア値を表示する形式で表示され
ます。
3.3
ターゲット予測
(
CGBVS
におけるターゲット予測とは)
前節では
CGBVS
で複数タンパク質についてスコアを算出できることについて説明しました
が、この考え方を拡張して計算できる全てのタンパク質についてスコアを算出すれば化合物の
ターゲット探索にも応用することができます。
“cgbvs predict”
のターゲットを指定する引数に
“all”
を指定すれば、
DB
ファイルに登録され
ていて、学習されている化合物が
1
個以上ある全てのタンパクについてスコアを計算できます。
また、学習されている化合物が無いタンパクに対してもスコアを算出したい場合は
-a
オプション
をつけて下さい。(計算できるタンパクは
cgbvs status -p
で確認できます)たとえばサンプルの
“sample mols.csv”
中の
ZINC10454282
という
ID
の化合物について全スコアを計算する例は以
下のようになります。
$ g r e p Z I N C 1 0 4 5 4 2 8 2 s a m p l e _ m o l s . csv > t e s t . csv $ c g b v s p r e d i c t - v g p c r _ s a m p l e . db all t e s t . csv
c o m p o u n d p r o t e i n p r o b a b i l i t y s c o r e Z I N C 1 0 4 5 4 2 8 2 5 H T 1 A _ H U M A N 0 . 1 0 4 2 5 7 5 5 - 0 . 5 7 3 3 8 1 8 8 Z I N C 1 0 4 5 4 2 8 2 5 H T 1 B _ H U M A N 0 . 0 5 5 9 7 6 9 5 - 0 . 7 1 6 0 9 9 5 8 Z I N C 1 0 4 5 4 2 8 2 5 H T 1 D _ H U M A N 0 . 0 7 3 3 8 1 4 4 - 0 . 7 1 0 6 4 2 9 1 Z I N C 1 0 4 5 4 2 8 2 5 H T 1 E _ H U M A N 0 . 6 8 6 8 6 3 1 1 0 . 2 4 3 7 3 7 0 5 Z I N C 1 0 4 5 4 2 8 2 5 H T 1 F _ H U M A N 0 . 0 7 6 0 1 3 5 2 - 0 . 6 5 0 8 2 6 1 8 Z I N C 1 0 4 5 4 2 8 2 5 H T 2 A _ H U M A N 0 . 1 1 7 8 4 5 8 3 - 0 . 6 0 2 8 1 6 9 0 Z I N C 1 0 4 5 4 2 8 2 5 H T 2 B _ H U M A N 0 . 3 2 1 5 2 2 6 7 - 0 . 2 6 4 9 9 7 7 1 Z I N C 1 0 4 5 4 2 8 2 5 H T 2 C _ H U M A N 0 . 0 7 9 4 3 5 9 5 - 0 . 6 5 4 4 5 8 5 6 Z I N C 1 0 4 5 4 2 8 2 5 H T 4 R _ H U M A N 0 . 1 2 7 4 7 8 2 2 - 0 . 5 1 0 0 0 6 8 9 Z I N C 1 0 4 5 4 2 8 2 5 H T 5 A _ H U M A N 0 . 2 1 4 3 4 3 6 9 - 0 . 3 8 6 9 9 6 6 6 Z I N C 1 0 4 5 4 2 8 2 5 H T 6 R _ H U M A N 0 . 1 6 2 7 9 7 5 1 - 0 . 4 4 3 7 7 2 4 0 Z I N C 1 0 4 5 4 2 8 2 5 H T 7 R _ H U M A N 0 . 0 2 6 9 7 4 1 6 - 0 . 8 8 9 6 4 4 4 7 Z I N C 1 0 4 5 4 2 8 2 A 4 _ H U M A N 0 . 2 4 9 9 3 4 5 2 - 0 . 2 8 0 9 1 3 8 8 Z I N C 1 0 4 5 4 2 8 2 A A 1 R _ H U M A N 0 . 1 1 0 9 5 2 6 7 - 0 . 5 3 5 7 2 5 0 4 ...
この例では、
-v
オプションを付けて行方向にタンパク
ID
を並べて表示させています。出力を
リダイレクトしてスコア高い順にソートすれば確率の高いターゲットのリストが得られます。
$ c g b v s p r e d i c t - v g p c r _ s a m p l e . db all t e s t . csv > out $ s o r t - k3 - nr out | h e a d Z I N C 1 0 4 5 4 2 8 2 M T R 1 A _ H U M A N 0 . 9 2 2 3 1 9 8 2 0 . 6 2 1 2 5 6 3 6 Z I N C 1 0 4 5 4 2 8 2 T S H R _ H U M A N 0 . 9 0 1 0 6 2 7 6 0 . 6 1 0 3 2 9 4 8 Z I N C 1 0 4 5 4 2 8 2 G R M 2 _ H U M A N 0 . 8 1 7 1 8 0 2 4 0 . 3 5 8 2 5 2 9 5 Z I N C 1 0 4 5 4 2 8 2 M T R 1 B _ H U M A N 0 . 8 1 1 0 3 8 6 1 0 . 3 4 6 9 5 2 9 1 Z I N C 1 0 4 5 4 2 8 2 H R H 3 _ H U M A N 0 . 7 5 9 1 2 7 8 0 0 . 2 8 4 3 5 0 3 0 Z I N C 1 0 4 5 4 2 8 2 5 H T 1 E _ H U M A N 0 . 6 8 6 8 6 3 1 1 0 . 2 4 3 7 3 7 0 5 Z I N C 1 0 4 5 4 2 8 2 C C R 6 _ H U M A N 0 . 6 6 7 1 5 8 0 4 0 . 1 6 6 7 9 8 0 3 Z I N C 1 0 4 5 4 2 8 2 N P Y 2 R _ H U M A N 0 . 5 8 7 0 3 8 3 3 0 . 0 9 2 3 9 6 5 8 Z I N C 1 0 4 5 4 2 8 2 G R M 5 _ H U M A N 0 . 5 7 3 4 9 2 1 2 0 . 0 5 4 3 8 9 6 4 Z I N C 1 0 4 5 4 2 8 2 A R B K 1 _ H U M A N 0 . 5 5 1 8 0 1 9 8 0 . 0 3 9 2 5 5 0 7 ...先頭
2
行のタンパク
ID
の
MTR1A HUMAN
と
MTR1B HUMAN
は以下のようにして確認
できます。
$ c g b v s s t a t u s - p g p c r _ s a m p l e . db | g r e p - e " M T R 1 . . * " M T R 1 A _ H U M A N 102 0 P 4 8 0 3 9 M e l a t o n i n r e c e p t o r t y p e 1 A M T R 1 B _ H U M A N 101 0 P 4 9 2 8 6 M e l a t o n i n r e c e p t o r t y p e 1 B
3.4
構造類似度(
Tanimoto
係数)の計算
CzeekS
では化合物のフィンガープリントから、
Tanimoto
係数(
Similarity
)を計算すること
ができます。
Tanimoto
係数を計算する対象は、ターゲットとして指定したタンパク質と結合する
化合物群(
DB
ファイル中)です。複数の化合物との
Tanimoto
係数を計算し、最大値のものを表
示します。コマンド操作は”
cgbvs predict
”に
-s
オプションを付けて実行します。以下にその手
順について示します。
$ c a l c _ F P _ M A C C S s a m p l e _ m o l s . sdf t e s t . fp // フ ィ ン ガ ー プ リ ン ト 計 算 で す 。t e s t . fpとsample mols . f pは 同 一 の も の に な り ま す $ c g b v s p r e d i c t - s g p c r _ s a m p l e . db A D R B 2 _ H U M A N t e s t . fp c o m p o u n d A D R B 2 _ H U M A N Z I N C 0 0 0 7 4 6 3 8 0 . 5 5 7 3 7 7 0 5 Z I N C 0 0 0 7 5 9 2 7 0 . 4 8 5 7 1 4 2 9 Z I N C 0 0 4 9 2 9 1 0 0 . 7 1 4 2 8 5 7 1 Z I N C 0 2 7 5 9 9 6 4 0 . 5 8 1 0 8 1 0 8 Z I N C 0 3 5 1 8 1 3 4 0 . 5 6 6 6 6 6 6 7 Z I N C 0 3 9 1 2 6 5 8 0 . 7 2 0 0 0 0 0 0 Z I N C 0 4 1 4 3 2 2 1 0 . 7 2 9 7 2 9 7 3 Z I N C 0 5 7 6 6 6 9 9 0 . 5 4 3 8 5 9 6 5 Z I N C 1 0 0 0 6 6 0 3 0 . 7 1 6 4 1 7 9 1 ...フィンガープリントファイル
test.fp
の内容は以下のようになります。
$ h e a d s a m p l e _ m o l s . fp Z I N C 0 0 0 7 4 6 3 8 ,42 50 57 62 72 75 76 83 85 87 89 91 92 95… Z I N C 0 0 0 7 5 9 2 7 ,41 42 52 65 75 78 80 87 92 94 95 97 98 107 110… Z I N C 0 0 4 9 2 9 1 0 ,54 72 82 90 92 95 97 100 104 109 110 113 117 126… Z I N C 0 2 7 5 9 9 6 4 ,24 46 49 52 56 63 65 70 71 75 79 80 83 87 92 93… Z I N C 0 3 5 1 8 1 3 4 ,65 72 75 83 85 90 91 92 93 95 96 104 110 111 117… ...書式は、
1
列目に化合物
ID
を記述してコンマで区切り、
2
列目にフィンガープリントの内容を
記述します。フィンガープリント部分の書式は、
1
が立っているビットのビット番号(
n
桁ビット
列の左端を最下位
1
とし、右端を最上位
n
とする)をスペース区切りで記述してください。
4
CGBVS
モデルの作成と独自データの追加
4.1
モデル作成に必要なデータとフォーマット
CGBVS
の学習モデルの作成に必要な情報は以下の
3
点です。
1.
化合物の記述子情報
2.
タンパクの記述子情報
3.
化合物
-
タンパク質ペアの相互作用情報
上記
3
つの情報をコンマ区切り(
CSV
)のファイルとして用意しなければなりません。ファイ
ルの書式についてモデル作成用のサンプルデータを例に説明します。
先ずは化合物の記述子情報についてです。サンプルの
training mols.csv
を見てみます。
$ h e a d t r a i n i n g _ m o l s . csv 2 5 0 , 3 7 7 . 4 7 0 , 8 . 7 7 8 , 3 0 . 0 3 7 , 4 3 . 4 0 7 , 3 1 . 3 8 7 , 4 7 . 8 7 0 , 0 . 6 9 9 , 1 . 0 0 9 , 0 . 7 3 0 , . . . 1 5 8 4 8 2 , 6 3 7 . 8 5 0 , 7 . 0 8 7 , 5 5 . 6 9 0 , 8 9 . 9 3 4 , 5 8 . 7 6 8 , 1 0 1 . 4 2 7 , 0 . 6 1 9 , 0 . 9 9 9 , 0 . 6 5 3 , . . . 1 6 3 5 0 3 , 3 5 5 . 5 1 0 , 6 . 8 3 7 , 3 3 . 0 5 8 , 5 1 . 0 3 2 , 3 5 . 5 9 7 , 5 7 . 6 9 0 , 0 . 6 3 6 , 0 . 9 8 1 , 0 . 6 8 5 , . . . 1 6 6 7 3 9 , 4 1 6 . 5 6 0 , 7 . 4 3 9 , 3 7 . 3 5 4 , 5 5 . 2 4 3 , 3 9 . 6 3 7 , 6 2 . 1 4 5 , 0 . 6 6 7 , 0 . 9 8 6 , 0 . 7 0 8 , . . . 1 5 9 4 4 7 , 3 5 9 . 5 3 0 , 6 . 5 3 7 , 3 1 . 8 5 8 , 5 4 . 7 6 7 , 3 4 . 0 7 4 , 6 2 . 8 9 3 , 0 . 5 7 9 , 0 . 9 9 6 , 0 . 6 2 0 , . . . 7 1 3 9 , 4 0 0 . 9 3 0 , 8 . 0 1 9 , 3 3 . 8 5 3 , 4 9 . 6 9 1 , 3 5 . 9 3 8 , 5 5 . 3 0 2 , 0 . 6 7 7 , 0 . 9 9 4 , 0 . 7 1 9 , . . . 1 5 8 0 7 3 , 2 5 5 . 7 3 0 , 8 . 2 4 9 , 1 9 . 4 8 2 , 3 1 . 5 8 5 , 2 0 . 3 5 2 , 3 5 . 3 4 9 , 0 . 6 2 8 , 1 . 0 1 9 , 0 . 6 5 7 , . . . 1 6 2 1 3 0 , 5 6 0 . 7 2 0 , 8 . 7 6 1 , 4 3 . 7 8 2 , 6 4 . 7 7 4 , 4 5 . 9 9 5 , 7 1 . 3 6 8 , 0 . 6 8 4 , 1 . 0 1 2 , 0 . 7 1 9 , . . . 1 5 9 7 0 4 , 3 4 0 . 8 4 0 , 8 . 3 1 3 , 2 7 . 3 1 6 , 4 1 . 2 4 3 , 2 8 . 6 6 5 , 4 6 . 0 5 3 , 0 . 6 6 6 , 1 . 0 0 6 , 0 . 6 9 9 , . . . 1 5 9 5 3 3 , 3 5 9 . 5 3 0 , 6 . 5 3 7 , 3 1 . 8 5 8 , 5 4 . 7 6 7 , 3 4 . 0 7 4 , 6 2 . 8 9 3 , 0 . 5 7 9 , 0 . 9 9 6 , 0 . 6 2 0 , . . . ...3
章で化合物のスコアリングの時に用いた記述子ファイルと同一のフォーマットになります。
第
1
列目に化合物
ID
を記述して、続く
2
列目以降に数値を記述していく形になります。この例
は
training mols.smi
から
DRAGON6
を用いて計算した結果です。
次にタンパク質の記述子情報についてです。タンパク質についても化合物と同様の書式になり
ます。
gpcr.csv
というファイル名でサンプルを用意してあります。
$ h e a d g p c r . csv 5 H T 1 A _ H U M A N , 9 . 7 1 5 6 4 , 3 . 3 1 7 5 4 , 3 . 7 9 1 4 7 , 3 . 5 5 4 5 , 4 . 0 2 8 4 4 , . . . 5 H T 1 B _ H U M A N , 8 . 9 7 4 3 6 , 2 . 8 2 0 5 1 , 3 . 5 8 9 7 4 , 3 . 3 3 3 3 3 , 4 . 3 5 8 9 7 , . . . 5 H T 1 D _ H U M A N , 9 . 8 1 4 3 2 , 2 . 9 1 7 7 7 , 2 . 6 5 2 5 2 , 3 . 1 8 3 0 2 , 4 . 5 0 9 2 8 , . . . 5 H T 1 E _ H U M A N , 6 . 5 7 5 3 4 , 3 . 2 8 7 6 7 , 3 . 5 6 1 6 4 , 3 . 2 8 7 6 7 , 4 . 6 5 7 5 3 , . . . 5 H T 1 F _ H U M A N , 6 . 2 8 4 1 5 , 3 . 0 0 5 4 6 , 4 . 0 9 8 3 6 , 4 . 6 4 4 8 1 , 4 . 3 7 1 5 8 , . . . 5 H T 2 A _ H U M A N , 6 . 1 5 7 1 1 , 3 . 1 8 4 7 1 , 4 . 2 4 6 2 8 , 3 . 8 2 1 6 6 , 5 . 3 0 7 8 6 , . . . 5 H T 2 B _ H U M A N , 6 . 0 2 9 1 1 , 1 . 6 6 3 2 , 2 . 9 1 0 6 , 4 . 3 6 5 9 , 5 . 4 0 5 4 1 , . . . 5 H T 2 C _ H U M A N , 5 . 8 9 5 2 , 2 . 6 2 0 0 9 , 2 . 8 3 8 4 3 , 4 . 8 0 3 4 9 , 4 . 5 8 5 1 5 , . . . 5 H T 4 R _ H U M A N , 6 . 9 5 8 7 6 , 4 . 6 3 9 1 7 , 3 . 8 6 5 9 8 , 3 . 0 9 2 7 8 , 5 . 6 7 0 1 , . . . 5 H T 5 A _ H U M A N , 7 . 8 4 3 1 4 , 2 . 8 0 1 1 2 , 2 . 5 2 1 0 1 , 3 . 9 2 1 5 7 , 6 . 1 6 2 4 7 , . . . ...この例は
PROFEAT
(
http://bidd2.nus.edu.sg/cgi-bin/profeat2016/protein/profnew.cgi
)の
サービスを使って
FASTA
ファイルから計算した例です。計算方法などの詳しい情報は
PRO-FEAT
のページを参照して下さい。
CzeekS
では、タンパク質の
ID
として
UniProt
の
ID
を
採用しておりますので、特殊なタンパク質でない場合はなるべく「
* HUMAN
」で表現される
UniProtID
を用いて下さい。
最後に相互作用情報についてです。サンプルの
positive.csv
というファイルを見てみます。
$ h e a d p o s i t i v e . csv 1 0 0 0 0 2 9 , N P B W 1 _ H U M A N 1 0 0 0 1 2 3 , A R B K 1 _ H U M A N 100014 , C R F R 1 _ H U M A N 1 0 0 0 1 9 4 , F A K 2 _ H U M A N 1 0 0 0 9 4 8 , C C R 6 _ H U M A N 1 0 0 0 9 5 6 , N T R 1 _ H U M A N 1 0 0 1 0 9 8 , F A K 2 _ H U M A N 1 0 0 1 4 2 1 , O X 1 R _ H U M A N 100163 , P T A F R _ H U M A N 1 0 0 1 6 5 1 , A D R B 2 _ H U M A N ...このファイルの書式は、第
1
列に化合物
ID
を記述し、第
2
列にタンパク質
ID
を記述します。
このように化合物
-
タンパク質のペアを行方向に記述していきます。この例では
ChEMBL
データ
ベースにて、化合物
-
タンパク質の組み合わせで活性値が
30µM
以下のものからサンプリングして
おります。
4.2
モデルファイル(
DB
ファイル)の作成
前述したモデル作成に必要な
3
つのファイルが用意できれば
CGBVS
のモデルファイル(
DB
ファイル)を作成することができます。ここではサンプルファイル(
training mols.csv, gpcr.csv,
positive.csv
)を利用した例を紹介します。以下のようにコマンド操作して下さい。
$ c g b v s c r e a t e t r a i n i n g . db // 空 のD Bフ ァ イ ル の 作 成 $ c g b v s i m p o r t t r a i n i n g . db t r a i n i n g _ m o l s . csv c o m p o u n d // 化 合 物 記 述 子 の 登 録 i m p o r t t r a i n i n g _ m o l s . csv $ c g b v s i m p o r t t r a i n i n g . db g p c r . csv p r o t e i n // タ ン パ ク 質 記 述 子 の 登 録 i m p o r t g p c r . csv $ c g b v s i m p o r t t r a i n i n g . db p o s i t i v e . csv p o s i t i v e // 相 互 作 用 情 報 の 登 録 i m p o r t p o s i t i v e . csv先ず、空の
DB
ファイルを作成します。その後、3つのファイルを
DB
ファイルにインポート
(順不同)して下さい。尚、
“gbvs create”
てオプション指定することにより、
DB
ファイルの作
成と同時にファイルをインポートできます。ここまでの段階で
SVM
を用いて機械学習を行い、
CGBVS
モデルを構築することができます。機械学習については
4.4
を参照して下さい。
3.4
で説明したように、
CzeekS
では
DB
ファイルに登録してある化合物との構造類似度
(
Tanimoto
係数)を計算することができます。構造類似度を計算する際には、登録した化合物記
述子と同化合物のフィンガープリントが登録されていなければなりません。フィンガープリント
登録の操作は以下のようなコマンドとなります。
$ c g b v s i m p o r t t r a i n i n g . db t r a i n i n g _ m o l s . fp f i n g e r p r i n t i m p o r t t r a i n i n g _ m o l s . fpフィンガープリントファイルの書式や、
MACCS
の計算方法については
3-4
を参照して下さい。
4.3
データの追加
この節では既に存在する
DB
ファイルに別途データ(独自のアッセイデータ)を追加して、
CGBVS
モデルを更新する方法について説明します。用意すべき情報は基本的には
4-1
で述べた
3
種類です。尚、タンパク質の記述子情報については既に登録済みのものについては用意する必要
はありません。登録されているかどうかを確認するには
“gbvs status”
コマンドに
-p
オプション
を付けて実行して下さい。
-a
はリガンド数
0
のタンパク質も表示するオプションです。詳しくは
3-1
を参照して下さい。
データの追加方法は
“cgbvs add”
コマンドを使います。サンプルデータとしてヒスタミン
H3
受容体の化合物
100
個を
H3 mols.sdf
というファイルで用意してあります。これらを記述子計算
したファイルが
H3 mols.csv
です。また、相互作用情報ファイルは
H3 positive.csv
となります。
タンパク質の記述子は既に登録済みなので、追加の必要はありません。
$ c g b v s add t r a i n i n g . db H 3 _ m o l s . csv c o m p o u n d // 化 合 物 記 述 子 の 追 加 i m p o r t H 3 _ m o l s . csv $ c g b v s add t r a i n i n g . db H 3 _ p o s i t i v e . csv p o s i t i v e // 相 互 作 用 情 報 の 追 加 i m p o r t H 3 _ p o s i t i v e . csv4.4
機械学習
DB
ファイルにデータを登録あるいは追加した後に
SVM
による機械学習を行う必要がありま
す。機械学習は
“cgbvs learn”
コマンドで以下のように実行することができます。
$ c g b v s l e a r n - C 99% - P 99% - n - f t r a i n i n g . db 5 ... o u t p u t i n p u t _ 1 o u t p u t i n p u t _ 2 o u t p u t i n p u t _ 3 o u t p u t i n p u t _ 4 o u t p u t i n p u t _ 5 $ S V M l e a r n - c 3 - g 0 . 0 0 3 i n p u t _ 1 m o d e l _ 1itr nSV v K K T O b j e c t i v e 1 965 4 2 3 0 6 - 4 . 2 3 7 4 8 0 7 3 2 1 6 8 1 5 0 E +02 2 1 7 2 4 4 1 2 5 2 - 8 . 3 7 1 5 3 9 4 3 2 3 0 7 4 2 5 E +02 3 2 4 5 7 4 2 6 6 2 - 1 . 5 7 6 9 9 4 4 3 5 2 6 8 7 7 1 E +03 ...
上記の例は負例を
5
セット作成する場合で、負例セット数は最後の引数で指定します。この値
は通常
5
∼
10
程度を指定します。負例セットについては
3-1
を参照して下さい。また、オプショ
ンの
-c
と
-g
は
SVM
のパラメータです。
-c
で
SVM
のソフトマージンに関するパラメータ
C
を指
定します。
CzeekS
では
SVM
のカーネル関数としてガウス型の
RBF(Radial Basis Function)
関
数を用いております。
-g
は
RBF
関数のγの値を指定します。
上記コマンド例では
C=3
、
γ=0.003
として機械学習を実行していますが、
SVM
パラメータの
値によって予測精度が変化します。幾つかの
C
とγの組み合わせを探索して最適な値を設定して
ください。パラメータ探索の一例は次節で解説します。
4.5
その他
4-4
では機械学習の実行方法について解説しました。
5
セットの負例を作って計算する場合を例
にコマンド操作を示しましたが、この例では
5
回の機械学習を直列に実行します。複数の計算機
を有する場合は、これらの負例セットについて並列に計算することも可能です。ここでは、負例
セットごとに独立に(並列に)機械学習計算する方法についてコマンド操作を紹介します。まず
は以下のように
-f
オプションを付けて
SVM
へのインプットファイルを作成のみを行います。
$ c g b v s l e a r n - f t r a i n i n g . db 5 o u t p u t i n p u t _ 1 o u t p u t i n p u t _ 2 o u t p u t i n p u t _ 3 o u t p u t i n p u t _ 4 o u t p u t i n p u t _ 5次に、それぞれの計算機にて以下のように
SVM
の機械学習を実行します。
$ S V M l e a r n - c 3 - g 0 . 0 0 3 i n p u t _ 1 m o d e l _ 1 // 計 算 機1で 実 行 $ S V M l e a r n - c 3 - g 0 . 0 0 3 i n p u t _ 2 m o d e l _ 2 // 計 算 機2で 実 行 $ S V M l e a r n - c 3 - g 0 . 0 0 3 i n p u t _ 3 m o d e l _ 3 // 計 算 機3で 実 行 $ S V M l e a r n - c 3 - g 0 . 0 0 3 i n p u t _ 4 m o d e l _ 4 // 計 算 機4で 実 行 $ S V M l e a r n - c 3 - g 0 . 0 0 3 i n p u t _ 5 m o d e l _ 5 // 計 算 機5で 実 行上記コマンドが正常終了すれば、
model 1
∼
model 5
までの
5
つのファイルが作成されます。こ
れらを以下のコマンドにて
DB
ファイルに取り込んで下さい。
$ c g b v s a d d _ m o d e l t r a i n i n g . db m o d e l _ 1 1 // model 1をid=1と し て 取 り 込 む $ c g b v s a d d _ m o d e l t r a i n i n g . db m o d e l _ 2 2 // model 2をid=2と し て 取 り 込 む $ c g b v s a d d _ m o d e l t r a i n i n g . db m o d e l _ 3 3 // model 3をid=3と し て 取 り 込 む $ c g b v s a d d _ m o d e l t r a i n i n g . db m o d e l _ 4 4 // model 4をid=4と し て 取 り 込 む$ c g b v s a d d _ m o d e l t r a i n i n g . db m o d e l _ 5 5 // model 5をid=5と し て 取 り 込 む