ウェブサイト| NeurIPS 2024 AIDrugX 論文| Nature Chemical Biology 2022 論文| NeurIPS 2021 論文|長い紙|スラック| TDC メーリング リスト| TDC ドキュメント|貢献ガイドライン
人工知能は治療科学を再構築しようとしています。 Therapeutics Data Commons は、治療法や発見の段階全体にわたって人工知能の機能にアクセスし、評価するための調整された取り組みです。 AI 手法の開発をサポートし、どの AI 手法が創薬アプリケーションに最適であるか、またその理由についての基礎を確立することを目的としています。
分野を超えた研究者は、TDC をさまざまなアプリケーションに使用できます。 TDC の AI 解決可能なタスク、AI 対応データセット、厳選されたベンチマークは、生化学科学者と AI 科学者の間の出会いの場として機能します。 TDC はアルゴリズムと科学の進歩を促進し、機械学習手法の開発、検証、生物医学および臨床実装への移行を加速します。
TDC はオープンサイエンスの取り組みです。コミュニティからの貢献を歓迎します。
[1] Velez-Arce、Huang、Li、Lin、他、TDC-2: Multimodal Foundation for Therapeutic Science、bioRxiv、2024 [論文]
[2] Huang、Fu、Gao 他、治療科学のための人工知能財団、Nature Chemical Biology、2022 [論文]
[3] Huang、Fu、Gao 他、Therapeutics Data Commons: Machine Learning Datasets and Tasks for Drug Discovery and Development、NeurIPS 2021 [論文] [ポスター]
[4] Huang et al.、治療学データコモンズにおける分子機械学習のベンチマーク、ELLIS ML4Molecules 2021 [論文] [スライド]
[5] Huang et al.、Therapeutics Data Commons: Machine Learning Datasets and Tasks for Drug Discovery and Development、Baylearn 2021 [スライド] [ポスター]
[6] Huang、Fu、Gao 他、Therapeutics Data Commons、NSF-Harvard Symposium on Drugs for Future Pandemics 2020 [#futuretx20] [スライド] [ビデオ]
[7] TDC ユーザー グループ ミートアップ、2022 年 1 月[アジェンダ]
[8] Zitnik、癌ゲノムとエピゲノムを翻訳するための機械学習セッション、AACR 年次総会 2022、2022 年 4 月
[9] Zitnik、ネットワーク生物学のためのフューショット学習、バイオインフォマティクスにおけるデータマイニングに関する KDD ワークショップの基調講演
[10] Zitnik、創薬および開発のための実用的な機械学習、Broad Institute、モデル、推論およびアルゴリズム セミナー、2021 年
[11] Zitnik、生物医学データのためのグラフ ニューラル ネットワーク、計算生物学における機械学習、2020
[12] Zitnik、新型コロナウイルスの薬物再利用の機会を特定するためのグラフ ニューラル ネットワーク、MIT AI Cures、2020
TDC の最新アップデートについては、こちらをご覧ください。
pip
の使用TDC のコア環境依存関係をインストールするには、 pip
を使用します。
pip install PyTDC
注: TDC はベータ版です。ローカル コピーを定期的に更新してください。
pip install PyTDC --upgrade
コア データ ローダーは軽量で、外部パッケージへの依存性が最小限に抑えられています。
numpy, pandas, tqdm, scikit-learn, fuzzywuzzy, seaborn
TDC を使い始めるためのチュートリアルを提供しています。
名前 | 説明 |
---|---|
101 | TDC データローダーの紹介 |
102 | TDC データ関数の導入 |
103.1 | TDC 低分子データセットをウォークスルーする |
103.2 | TDC Biologics データセットをウォークスルーする |
104 | 15 行のコードで 21 個の ADME ML 予測子を生成 |
105 | 分子生成オラクル |
106 | ベンチマークの提出 |
DGL | DGL GNN ユーザー グループ ミーティングでデモが披露されました |
U1.1 | 第 1 回 TDC ユーザー グループ ミートアップでデモが披露されました |
U1.2 | 第 1 回 TDC ユーザー グループ ミートアップでデモが披露されました |
201 | TDC-2 リソースとマルチモーダル シングルセル API |
202 | TDC-2 リソースと PrimeKG |
203 | TDC-2 リソースと外部 API |
204 | TDC-2 モデルハブ |
205 | TDC-2 分子特性崖予測タスク |
TDC には独自の 3 層の階層構造があり、私たちの知る限り、これは治療のための機械学習を体系的に組織化する最初の試みです。私たちは TDC を 3 つの異なる問題に分類します。問題ごとに、学習タスクのコレクションが提供されます。最後に、タスクごとに一連のデータセットを提供します。
第 1 層では、大規模な治療タスクを観察した後、機械学習が科学の進歩を促進できる 3 つの主要な領域 (つまり、問題)、つまり単一インスタンスの予測、複数インスタンスの予測、および生成を分類して抽象化します。
single_pred
: 個々の生物医学的実体に与えられた特性の予測。multi_pred
: 複数の生物医学的エンティティが与えられた場合の特性の予測。generation
: 新しい望ましい生物医学的実体の生成。TDC 構造の 2 番目の層は学習タスクに編成されています。これらのタスクを改善すると、個別化された併用療法の特定、新しいクラスの抗体の設計、疾患診断の改善、新興疾患の新しい治療法の発見など、多くの応用が可能になります。
最後に、TDC の 3 番目の層では、各タスクが複数のデータセットを介してインスタンス化されます。データセットごとに、トレーニング、検証、およびテストセットにいくつかの分割を提供し、次の段階への移行に必要な理解と一般化のタイプ(たとえば、まったく見たことのない化合物に一般化するモデルの能力や、多剤療法に対する患者の反応をきめ細かく解決するモデルの能力)をシミュレートします。生産と臨床実装。
TDC は、初心者と専門家の両方が Python で機械学習モデルを作成できるよう、直感的で高レベルの API を備えたワークフローのコレクションを提供します。 TDC のモジュール化された「問題 -- 学習タスク -- データセット」構造 (上記を参照) を構築して、任意の学習タスクとデータセットにアクセスするための 3 層 API を提供します。この階層的な API 設計により、新しいタスクやデータセットを簡単に組み込むことができます。
具体的な例として、単一インスタンス予測問題の ADME 治療学習タスクから HIA データセットを取得するには、次のようにします。
from tdc . single_pred import ADME
data = ADME ( name = 'HIA_Hou' )
# split into train/val/test with scaffold split methods
split = data . get_split ( method = 'scaffold' )
# get the entire data in the various formats
data . get_data ( format = 'df' )
次のようにして、タスクに属するすべてのデータセットを確認できます。
from tdc . utils import retrieve_dataset_names
retrieve_dataset_names ( 'ADME' )
TDC Web サイトですべての治療タスクとデータセットをご覧ください。
トレーニング/検証/テスト データセットの分割を取得するには、次のように入力します。
data = X ( name = Y )
data . get_split ( seed = 42 )
# {'train': df_train, 'val': df_val, 'test': df_test}
関数の分割方法、ランダム シード、および分割分数を指定するには、たとえばdata.get_split(method = 'scaffold', seed = 1, frac = [0.7, 0.1, 0.2])
を使用します。詳細はデータ分割ページをご確認ください。
Web サイトのモデル評価ページで説明されているように、TDC のタスクに対してさまざまな評価指標が提供されます。たとえば、指標 ROC-AUC を使用するには、次のように入力します。
from tdc import Evaluator
evaluator = Evaluator ( name = 'ROC-AUC' )
score = evaluator ( y_true , y_pred )
TDC は、ラベル変換、データ バランシング、PyG/DGL グラフへのデータのペアリング、ネガティブ サンプリング、データベース クエリなどを含む多数のデータ処理機能を提供します。関数の使用方法については、TDC Web サイトのデータ処理ページを参照してください。
分子生成タスクについては、目標指向学習と分散学習の両方に 10 以上のオラクルを提供します。各オラクルの詳しい使い方は、Webサイトのオラクルページをご覧ください。たとえば、GSK3Beta オラクルを取得したいとします。
from tdc import Oracle
oracle = Oracle ( name = 'GSK3B' )
oracle ([ 'CC(C)(C)....'
'C[C@@H]1....' ,
'CCNC(=O)....' ,
'C[C@@H]1....' ])
# [0.03, 0.02, 0.0, 0.1]
TDC のすべてのデータセットはベンチマークであり、データ分割とパフォーマンス評価メトリクスとともに、そのトレーニング/検証とテスト セットを提供します。特定のベンチマークのリーダーボードに参加するには、次の手順に従います。
TDC ベンチマーク データ ローダーを使用してベンチマークを取得します。
トレーニング セットや検証セットを使用してモデルをトレーニングします。
TDC モデル エバリュエーターを使用して、テスト セットでのモデルのパフォーマンスを計算します。
テスト セットのパフォーマンスを TDC リーダーボードに送信します。
多くのデータセットが治療テーマを共有しているため、ベンチマークを意味のある定義されたグループに編成し、これをベンチマーク グループと呼びます。ベンチマーク グループ内のデータセットとタスクは慎重に厳選され、テーマを中心にまとめられています (たとえば、TDC には、ADMET プロパティの ML 予測をサポートするベンチマーク グループが含まれています)。すべてのベンチマーク グループは複数のベンチマークで構成されていますが、各ベンチマークの結果を個別に提出することができます。ベンチマークにアクセスするためのコード フレームワークは次のとおりです。
from tdc import BenchmarkGroup
group = BenchmarkGroup ( name = 'ADMET_Group' , path = 'data/' )
predictions_list = []
for seed in [ 1 , 2 , 3 , 4 , 5 ]:
benchmark = group . get ( 'Caco2_Wang' )
# all benchmark names in a benchmark group are stored in group.dataset_names
predictions = {}
name = benchmark [ 'name' ]
train_val , test = benchmark [ 'train_val' ], benchmark [ 'test' ]
train , valid = group . get_train_valid_split ( benchmark = name , split_type = 'default' , seed = seed )
# --------------------------------------------- #
# Train your model using train, valid, test #
# Save test prediction in y_pred_test variable #
# --------------------------------------------- #
predictions [ name ] = y_pred_test
predictions_list . append ( predictions )
results = group . evaluate_many ( predictions_list )
# {'caco2_wang': [6.328, 0.101]}
詳細については、こちらをご覧ください。
Therapeutics Data Commons が役立つと思われる場合は、NeurIPS'24 AIDrugX 論文、NeurIPS 論文、および Nature Chemical Biology 論文を引用してください。
@inproceedings{
velez-arce2024signals,
title={Signals in the Cells: Multimodal and Contextualized Machine Learning Foundations for Therapeutics},
author={Alejandro Velez-Arce and Kexin Huang and Michelle M Li and Xiang Lin and Wenhao Gao and Bradley Pentelute and Tianfan Fu and Manolis Kellis and Marinka Zitnik},
booktitle={NeurIPS 2024 Workshop on AI for New Drug Modalities},
year={2024},
url={https://openreview.net/forum?id=kL8dlYp6IM}
}
@article{Huang2021tdc,
title={Therapeutics Data Commons: Machine Learning Datasets and Tasks for Drug Discovery and Development},
author={Huang, Kexin and Fu, Tianfan and Gao, Wenhao and Zhao, Yue and Roohani, Yusuf and Leskovec, Jure and Coley,
Connor W and Xiao, Cao and Sun, Jimeng and Zitnik, Marinka},
journal={Proceedings of Neural Information Processing Systems, NeurIPS Datasets and Benchmarks},
year={2021}
}
@article{Huang2022artificial,
title={Artificial intelligence foundation for therapeutic science},
author={Huang, Kexin and Fu, Tianfan and Gao, Wenhao and Zhao, Yue and Roohani, Yusuf and Leskovec, Jure and Coley,
Connor W and Xiao, Cao and Sun, Jimeng and Zitnik, Marinka},
journal={Nature Chemical Biology},
year={2022}
}
TDC は、他のオープンソース プロジェクトの上に構築されています。さらに、研究でこれらのデータセット/関数を使用した場合は、元の著作物を引用してください。関数/データセットの元の論文は Web サイトで見つけることができます。
TDC はコミュニティ主導のオープンサイエンス イニシアチブです。参加するには、Slack ワークスペースに参加し、投稿ガイドをチェックしてください。
[email protected] までご連絡いただくか、GitHub の問題を開いてください。
多くの TDC データセットは、次の永続識別子 https://doi.org/10.7910/DVN/21LKWG を使用して Harvard Dataverse でホストされています。 Dataverse がメンテナンス中の場合、TDC データセットを取得できません。そんなことはめったに起こりません。 Dataverse の Web サイトでステータスを確認してください。
TDC コードベースは、MIT ライセンスに基づいてライセンスされています。個々のデータセットの使用については、Web サイト上のデータセット ライセンスを参照してください。