AIバインド
AI-Bind は、これまでに見たことのないタンパク質やリガンドに対する解釈可能な結合予測を提供する深層学習パイプラインです。 AI-Bind は、大規模な化学ライブラリを迅速にスクリーニングし、タンパク質とリガンドのペアを検証に優先させることで、計算コストのかかる自動ドッキング シミュレーションをガイドすることができます。このパイプラインは、タンパク質のアミノ酸配列やリガンドの異性体 SMILE などの単純な化学的特徴を入力として必要とします。これは、利用可能な 3D タンパク質構造の欠如に伴う制限を克服するのに役立ちます。
プレプリントは https://arxiv.org/abs/2112.13168 で入手できます。
AI バインドを行う理由
タンパク質-リガンド結合の予測における既存の ML モデルの欠点
これまでに見たことのないタンパク質やリガンドの結合を予測することに私たちは興味を持ち、既存の機械学習モデル (DeepPurpose など) のテスト パフォーマンスを 3 つのコンポーネントに分割することにしました。
(a) 形質導入テスト: テスト データセットのタンパク質とリガンドの両方がトレーニング データに存在する場合、
(b) 半帰納的テスト: テスト データセットのリガンドのみがトレーニング データに存在する場合、および
(c) 帰納的テスト: テスト データセットのタンパク質とリガンドの両方がトレーニング データに存在しない場合。
機械学習モデルがタンパク質とリガンドの構造的特徴から結合をどの程度学習したかを評価するための信頼できる指標は、帰納的テストのパフォーマンスだけであることがわかりました。モデルの大部分は主に、トレーニングで使用されるタンパク質-リガンド相互作用ネットワーク内の目に見えないリンクの予測に関連する変換テストのパフォーマンスを示していることに注意してください。私たちは、分子構造を完全に無視し、次数情報を使用して結合予測を行う、より単純なアルゴリズム (つまり、ネットワーク構成モデル) に匹敵する変換パフォーマンスを ML モデルがどのように達成するかを調査します。
AI-Bind は何を提供しますか?
AI-Bind パイプラインは、ネットワーク由来のネガをトレーニング データに含め、分子埋め込みの教師なし事前トレーニングを導入することで、帰納的テストのパフォーマンスを最大化します。パイプラインは、VecNet、VAENet、Siamese モデルという 3 つの異なるニューラル アーキテクチャを通じて検証されます。 AI-Bind で最もパフォーマンスの高いアーキテクチャは VecNet で、Mol2vec と ProtVec を使用してそれぞれタンパク質とリガンドを埋め込みます。これらの埋め込みはデコーダー (多層パーセプトロン) に供給され、結合確率を予測します。
AI バインドの解釈可能性とアクティブな結合部位の特定
私たちは、タンパク質構造の特定の構成要素 (アミノ酸トリグラム) を変異させて、結合予測に最も影響を与える領域を認識し、それらを潜在的な結合部位として特定します。以下では、自動ドッキング シミュレーションの結果を視覚化し、リガンドが結合するアミノ酸残基に予測部位をマッピングすることにより、AI-Bind が予測したヒトタンパク質 TRIM59 上の活性結合部位を検証します。 AI-Bind の予測された結合サイトは、ユーザーが自動ドッキング シミュレーションに最適なグリッドを作成できるようにガイドし、シミュレーション時間をさらに短縮します。
AI-Bind のセットアップとタンパク質-リガンド結合の予測 (エンドユーザー向けガイドライン)
AI-Bind のハードウェア セットアップ
Intel Broadwell CPU と NVIDIA Tesla T4 GPU を搭載した Google Cloud Platform 上のサーバーを介してすべてのモデルをトレーニングし、テストしました。 AI-Bind で使用される Python のバージョンは 3.6.6 です。使用したCUDAのバージョンは9.0です。
Docker の使用
AI-Bind の実行にはこの Docker を使用してください: https://hub.docker.com/r/omairs/foodome2
要件ファイルの使用
AI-Bind に必要なすべての Python モジュールと対応するバージョンは、requirements.txt にリストされています。
pip install -r required.txt を使用して、関連パッケージをインストールします。
AI-Bind で使用される rdkit バージョン: '2017.09.1' (インストールについては、こちらのドキュメントを確認してください: https://www.rdkit.org/docs/Install.html、コマンド: conda install -c rdkit rdkit)
VecNet-User-Frontend.ipynb ノートブックと、AIBind フォルダー内の 3 つのファイル (AIBind.py、 init .py、および import_modules.py) が同じフォルダーにあることを確認します。
データ ファイルをダウンロードして /data に保存します。ダウンロードリンク: https://zenodo.org/record/7226641
Docker を使用した代替インストール
- 「Predictions.dockerfile」という名前の Docker ファイルをダウンロードします。
- ターミナルで、dockerfile のあるディレクトリに移動し、 docker build -t aibindpred -f ./Predictions.dockerfile ./ を実行します。
- イメージをコンテナとして実行するには: docker run -it --gpus all --name aibindpredcontainer -p 8888:8888 aibindpred コンテナ内で git リポジトリのクローンを作成するか、コンテナの実行中にローカル ボリュームをアタッチできます。 docker run -it --gpus all --name aibindpredcontainer -p 8888:8888 -v ./local_directory:/homeアイバインドプレド
- コンテナー内で追加のシェルを実行するには、 docker exec -it aibindpredcontainer /bin/bash を実行します。
- コンテナ内で Jupyter ノートブック インスタンスを実行するには、次を実行します。 jupyter Notebook --ip=0.0.0.0 --port=8888 --allow-root 上記の手順により、必要なパッケージがすべてインストールされ、AI を使用してバインディング予測を実行する環境が作成されます。バインド。
フロントエンドからの予測の実行
- データ ファイルを、列「InChiKey」、「SMILE」、「target_aa_code」を使用してデータフレーム形式に整理します。このデータフレームを .csv ファイルに保存します。
- VecNet-User-Frontend.ipynb というタイトルのノートブックを実行して、バインディング予測を行います。予測された結合確率は、列ヘッダー「平均予測」の下に表示されます。
コードとデータ
データファイル
すべてのデータ ファイルはここから入手できます: https://zenodo.org/record/7226641
- /data/sars-busters-consolidated/Database ファイル:DrugBank、BindingDB、および DTC (Drug Target Commons) から得られたタンパク質-リガンド結合データが含まれています。
- /data/sars-busters-consolidated/chemicals: 埋め込みを使用した AI-Bind のトレーニングとテストに使用されるリガンドが含まれています。
- /data/sars-busters-consolidated/GitData/DeepPurpose および構成モデル: Transformer-CNN (DeepPurpose) および Duplex 構成モデルの 5 分割相互検証に関連するトレーニング テスト データ。
- /data/sars-busters-consolidated/GitData/interactions: AI-Bind ニューラル ネットワークのトレーニングに使用されるネットワーク派生のネガ データセットが含まれています。
- /data/sars-busters-consolidated/GitData: トレーニング済みの VecNet モデル、新型コロナウイルス感染症 (COVID-19) に関連するウイルスおよびヒトのタンパク質の結合予測、自動ドッキング シミュレーションの結果の概要が含まれています。
- /data/sars-busters-consolidated/master_files: AI-Bind のテストで使用される絶対ネガティブ (非結合) タンパク質-リガンドのペアが含まれます。
- /data/sars-busters-consolidated/targets: AI-Bind のトレーニングとテストに使用されるタンパク質と、関連する埋め込みが含まれています。
- /data/sars-busters-consolidated/interactions:DrugBank、NCFD (食品データベースの天然化合物)、BindingDB、および DTC に由来するポジティブ (結合) タンパク質-リガンドのペアが含まれています。
- /data/sars-busters-consolidated/Auto Docking: すべてのファイルと、新型コロナウイルス感染症 (COVID-19) 関連のウイルスおよびヒトタンパク質に対する AI-Bind の検証結果が含まれています。
- /data/sars-busters-consolidated/Binding Probability Profile Validation: 自動ドッキング シミュレーションからの活性な結合部位を視覚化するファイルが含まれています。
- /data/sars-busters/Mol2vec: 事前トレーニングされた Mol2vec モデルと ProtVec モデルはここから入手できます。
- /data/sars-busters-consolidated/s4pred: TRIM59 の二次構造を予測するためのコードとファイルが含まれています。
コード
ここでは、AI-Bind で使用される Jupyter Notebook、Python モジュール、MATLAB スクリプトについて説明します。
AIバインド
- AIBind.py: AI-Bind の Python クラスが含まれています。すべてのニューラル アーキテクチャ (VecNet、VAENet、Siamese Model) が含まれます。
- import_modules.py: AI-Bind を実行するために必要なすべての Python モジュールが含まれています。
構成-モデル-5倍
- 構成モデル - Cross-Validation.ipynb: DeepPurpose で使用される BindingDB データに対する二重構成モデルの 5 分割相互検証パフォーマンスを計算します。
- configuration_bipartite.m: 二重構成モデルの MATLAB 実装が含まれます。
- runscriptposneg.m: リガンドとタンパク質の次数配列を使用して二重構成モデルを実行します。出力ファイル summat10.csv および summat01.csv は、構成モデルのパフォーマンスの計算に使用されます。
DeepPurpose-5倍
- Deep Purpose - Final DataSet - Unseen Targets.ipynb: ネットワーク由来のネガを使用して、DeepPurpose で目に見えないターゲットに対して 5 重交差検証 (半帰納テスト) を実行します。
- Deep Purpose - Final DataSet - Unseen Nodes.ipynb: ネットワーク由来のネガを使用して、DeepPurpose で目に見えないノードに対して 5 分割相互検証 (帰納的テスト) を実行します。
モルトランス
- example_inductive_AI_Bind_data.py: AI-Bind のトレーニングに使用されるネットワーク由来のネガティブ サンプルを使用して、MolTrans で帰納的テストを実行します。
- example_inductive_BindingDB.py: MolTrans の論文で使用されている BindingDB データを使用して、MolTrans で帰納的テストを実行します。
- example_semi_inductive.py: このスクリプトは、MolTrans で半誘導テストを実行するために使用できます。
- example_transductive.py: このスクリプトは、MolTrans でトランスダクティブ テストを実行するために使用できます。
深い目的と構成モデル
- DeepPurpose Rerun - Transformer CNN.ipynb: ベンチマーク BindingDB データを使用して DeepPurpose をトレーニングおよびテストします。ここでは、化学構造のランダムなシャッフルや DeepPurpose のパフォーマンスの次数分析など、DeepPurpose に関する複数の実験が実行されました。
- DeepPurpose data.ipynb の構成モデル: DeepPurpose で使用される BindingDB データセットの二重構成モデルのパフォーマンスを調査します。
アイゲンスポーク
- Eigen Spokes Analysis.ipynb - ここでは、結合された隣接行列 (行と列の両方にリガンドとターゲットを含む正方隣接行列) に対して、EigenSpokes 分析を実行します。
ショートカットの出現
- Without_and_with_constant_fluctuations_p_bind=0.16.ipynb: BindingDB 内のタンパク質サンプルに基づいて、おもちゃの一部分ネットワーク上で構成モデルを作成して実行します。ここでは、度数と解離定数の関連性に関連する 2 つのシナリオ (変動なし、および解離定数値を一定に変動する) を検討します。
- With_varying_fluctuations.ipynb: BindingDB 内のタンパク質サンプルに基づいて、おもちゃの一部分ネットワーク上で構成モデルを作成して実行します。ここで、解離定数値の変動は BindingDB データと同様の傾向に従います。
設計された機能
- 工学的特徴の理解.ipynb: 工学的特徴 (リガンドとタンパク質分子を表す単純な特徴) の説明可能性を調査します。
- VecNet エンジニアリング機能 - Mol2vec および Protvec の重要な寸法.ipynb: タンパク質-リガンド結合の観点から、Mol2vec および ProtVec 埋め込みの最も重要な寸法を特定します。
- VecNet Engineered features Concat Original features.ipynb: 元のタンパク質とリガンドの埋め込みを連結した後の VecNet のパフォーマンスを調べます。
- VecNet Engineered features.ipynb: Mol2vec および ProtVec 埋め込みを VecNet アーキテクチャの単純なエンジニアリング機能に置き換え、そのパフォーマンスを調査します。
活性結合部位の特定
- VecNet-Protein-Trigrams-Study-GitHub.ipynb: タンパク質のアミノ酸トリグラムを変異させ、VecNet 予測の変動を観察します。このプロセスは、アミノ酸配列上の潜在的な活性結合部位を特定するのに役立ちます。
ランダム入力テスト
- VecNet-Unseen_Nodes-RANDOM.ipynb: リガンドとタンパク質の埋め込みがガウス ランダム入力に置き換えられる、目に見えないノードで VecNet を実行します (帰納的テスト)。
- VecNet-Unseen_Nodes-T-RANDOM-Only.ipynb: タンパク質の埋め込みがガウスランダム入力に置き換えられる、目に見えないノードで VecNet を実行します (帰納的テスト)。
- VecNet-Unseen_Targets-RANDOM.ipynb: 目に見えないターゲットで VecNet を実行します (半誘導テスト)。リガンドとタンパク質の埋め込みはガウス ランダム入力に置き換えられます。
- VecNet-Unseen_Targets-T-RANDOM-Only.ipynb: タンパク質の埋め込みがガウスランダム入力に置き換えられる、目に見えないターゲットで VecNet を実行します (半誘導テスト)。
シャム
- Siamese_Unseen_Nodes.ipynb: ここでは、ネットワーク由来のネガティブ データセットを作成し、目に見えないノードに対して 5 分割相互検証 (帰納的テスト) を実行します。
- Siamese_Unseen_Targets.ipynb: ここでは、目に見えないターゲットに対して 5 分割相互検証 (半帰納的テスト) を実行します。
VAEネット
- VAENet-Unseen_Nodes.ipynb: ネットワーク由来のネガティブを作成し、ここで目に見えないノードに対して 5 分割相互検証 (帰納的テスト) を実行します。
- VAENet-Unseen_Targets.ipynb: ここでは、目に見えないターゲットに対して 5 分割相互検証 (半帰納的テスト) を実行します。
検証
- SARS-CoV-2 予測分析 VecNet.ipynb: 新型コロナウイルス感染症 (COVID-19) に関連する SARS-CoV-2 ウイルスタンパク質およびヒトタンパク質に関して VecNet によって行われた上位 100 件と下位 100 件の予測の自動ドッキング検証。
- Binding_Probability_Profile_Golden_Standar_Validation.py: ゴールドスタンダードのタンパク質結合データを使用した AI-Bind 由来の結合位置の検証。
ベクネット
- VecNet-Unseen_Nodes.ipynb: ネットワーク由来のネガを作成し、目に見えないノードで 5 分割交差検証 (帰納的テスト) を実行し、SARS-CoV-2 ウイルス タンパク質と COVID-19 に関連するヒト タンパク質の予測を行います。
- VecNet-Unseen_Targets.ipynb: ここでは、目に見えないターゲットに対して 5 分割相互検証 (半帰納的テスト) を実行します。
外部リソース
- Autodock Vina を使用した自動ドッキングについて学ぶ: https://www.youtube.com/watch?v=BLbXkhqbebs
- PyMOL を使用して活性結合部位を視覚化する方法を学びます: https://www.youtube.com/watch?v=mBlMI82JRfI
AI-バインドを引用
AI-Bind が研究に役立つと思われる場合は、次の引用を追加してください。
@article{Chatterjee2023,
doi = {10.1038/s41467-023-37572-z},
url = {https://doi.org/10.1038/s41467-023-37572-z},
year = {2023},
month = apr,
publisher = {Springer Science and Business Media {LLC}},
volume = {14},
number = {1},
author = {Ayan Chatterjee and Robin Walters and Zohair Shafi and Omair Shafi Ahmed and Michael Sebek and Deisy Gysi and Rose Yu and Tina Eliassi-Rad and Albert-L{'{a}}szl{'{o}} Barab{'{a}}si and Giulia Menichetti},
title = {Improving the generalizability of protein-ligand binding predictions with {AI}-Bind},
journal = {Nature Communications}
}