網站| NeurIPS 2024 AIDrugX 論文|自然化學生物學 2022 論文| NeurIPS 2021 論文|長紙|鬆弛| TDC 郵件清單| TDC 文件|貢獻指南
人工智慧有望重塑治療科學。治療數據共享是一項協調計劃,旨在跨治療模式和發現階段存取和評估人工智慧能力。它支援人工智慧方法的開發,旨在為哪些人工智慧方法最適合藥物發現應用及其原因奠定基礎。
跨學科的研究人員可以將 TDC 用於眾多應用。 TDC 中人工智慧可解決的任務、人工智慧就緒的資料集和策劃的基準是生化和人工智慧科學家之間的交匯點。 TDC 促進演算法和科學進步,並加速機器學習方法的開發、驗證以及向生物醫學和臨床實施的過渡。
TDC 是一項開放科學倡議。我們歡迎社區的貢獻。
[1] Velez-Arce、Huang、Li、Lin 等人,TDC-2:治療科學多模式基金會,bioRxiv,2024 [論文]
[2] Huang,Fu,Gao,等,治療科學人工智慧基金會,自然化學生物學,2022 [論文]
[3] Huang、Fu、Gao 等,治療資料共享:藥物發現和開發的機器學習資料集和任務,NeurIPS 2021 [論文] [海報]
[4] Huang 等人,治療資料共享中的分子機器學習基準,ELLIS ML4Molecules 2021 [論文] [幻燈片]
[5] Huang 等人,治療資料共享:藥物發現和開發的機器學習資料集和任務,Baylearn 2021 [幻燈片] [海報]
[6] Huang、Fu、Gao 等人,治療數據共享,NSF-哈佛大學 2020 年未來大流行藥物研討會[#futuretx20] [幻燈片] [影片]
[7] TDC 使用者小組聚會,2022 年 1 月[議程]
[8] Zitnik,機器學習翻譯癌症基因組和表觀基因組會議,AACR 2022 年年會,2022 年 4 月
[9] Zitnik,網路生物學的少樣本學習,KDD 生物資訊學資料探勘研討會的主題演講
[10] Zitnik,用於藥物發現和開發的可行機器學習,布羅德研究所,模型、推理和演算法研討會,2021 年
[11] Zitnik,生物醫學資料的圖神經網絡,計算生物學中的機器學習,2020
[12] Zitnik,用於識別 COVID-19 藥物再利用機會的圖神經網絡,麻省理工學院 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 GNN 使用者小組會議上展示的演示 |
U1.1 | 首次 TDC 用戶組聚會上展示的演示 |
U1.2 | 首次 TDC 用戶組聚會上展示的演示 |
201 | TDC-2 資源和多模式單細胞 API |
第202章 | TDC-2 資源和 PrimeKG |
203 | TDC-2 資源和外部 API |
204 | TDC-2 模型輪轂 |
205 | TDC-2分子性質懸崖預測任務 |
TDC 具有獨特的三層層次結構,據我們所知,這是系統地組織機器學習用於治療的首次嘗試。我們將 TDC 分為三個不同的問題。對於每個問題,我們提供了一系列學習任務。最後,對於每個任務,我們提供一系列資料集。
在第一層,在觀察大量治療任務後,我們對機器學習可以促進科學進步的三個主要領域(即問題)進行分類和抽象,即單一實例預測、多實例預測和生成:
single_pred
:給定單一生物醫學實體的屬性預測。multi_pred
:給定多個生物醫學實體的屬性預測。generation
:新的理想生物醫學實體的產生。TDC 結構中的第二層被組織成學習任務。這些任務的改進可以帶來許多應用,包括識別個人化組合療法、設計新型抗體、改善疾病診斷以及尋找新出現疾病的新療法。
最後,在 TDC 的第三層,每個任務都透過多個資料集實例化。對於每個資料集,我們提供了幾個訓練集、驗證集和測試集,以模擬過渡到所需的理解和泛化類型(例如,模型泛化到完全未見過的化合物或精細解析患者對多種療法的反應的能力)。
TDC 提供了一系列具有直覺、進階 API 的工作流程,供初學者和專家使用 Python 建立機器學習模型。在 TDC 中建立模組化的「問題 - 學習任務 - 資料集」結構(見上文),我們提供了一個三層 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 網站上查看所有治療任務和資料集!
若要檢索訓練/驗證/測試資料集拆分,您可以輸入
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])
指定函數的分割方法、隨機種子和分割分數。檢查資料拆分頁面以了解詳細資訊。
我們為 TDC 中的任務提供了各種評估指標,如網站上的模型評估頁面所述。例如,要使用指標 ROC-AUC,您可以鍵入
from tdc import Evaluator
evaluator = Evaluator ( name = 'ROC-AUC' )
score = evaluator ( y_true , y_pred )
TDC提供了大量的資料處理功能,包括標籤轉換、資料平衡、資料與PyG/DGL圖配對、負採樣、資料庫查詢等。有關功能的使用,請參閱 TDC 網站上的資料處理頁面。
對於分子生成任務,我們為目標導向和分散式學習提供了 10 多個預言機。各個預言機的詳細使用方法請查看網站上的預言機頁面。例如,我們要檢索 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 建立在其他開源專案之上。此外,如果您在研究中使用了這些資料集/函數,請引用原始作品。您可以在網站上找到該函數/資料集的原始論文。
TDC 是一項由社區驅動的開放科學倡議。要參與其中,請加入我們的 Slack Workspace 並查看貢獻指南!
請透過 [email protected] 與我們聯絡或開啟 GitHub 問題。
許多 TDC 資料集託管在Harvard Dataverse 上,具有以下持久標識符 https://doi.org/10.7910/DVN/21LKWG。當Dataverse維護時,無法擷取TDC資料集。這種情況很少發生;請在Dataverse網站上查看狀態。
TDC 程式碼庫根據 MIT 許可證獲得許可。個別資料集的使用請參閱網站上的資料集許可。