Mila唐建团队发布AI药物研发平台TorchDrug,Yoshua Bengio等指导

现代医学的发展使许多曾经的疑难杂症变得不再可怕,但需要正视的是,至今仍有很多种疾病未能找到对症的药物,且药物发现的过程一直是相对漫长和昂贵的。

Mila唐建团队发布AI药物研发平台TorchDrug,Yoshua Bengio等指导

近年来,人工智能在药物研发中的应用受到了越来越多的关注,利用这一领域的技术可以减少人工环节,加速新药研发的速度,缩短药物研发到使用的过程。

近日,Mila 唐建团队开源了机器学习药物研发平台 TorchDrug。TorchDrug 是一个专为药物研发设计的机器学习平台,涵盖从图机器学习(图神经网络、几何深度学习和知识图谱)、深度生成模型到强化学习的技术,它提供了一个全面而灵活的接口来支持 PyTorch 中药物发现模型的快速原型设计。

Mila唐建团队发布AI药物研发平台TorchDrug,Yoshua Bengio等指导

官网地址:http://torchdrug.ai/

唐建教授表示,药物发现的未来依赖于丰富开源社区的培育。「我们希望这个平台能成为未来机器学习药物发现主要的开源平台,并促进这一方面的进展。」唐建说道。

该平台包含四项关键功能,分别为:

平台功能详解

TorchDrug 是一个基于 PyTorch 的机器学习工具箱,具有如下功能:

基于张量的图

图是 TorchDrug 中的基本数据结构,可以被视为张量框架中图形处理库(例如 NetworkX)的泛化,同时具备 GPU 加速和自动微分的特性。


import torchdrug as td
from torchdrug import data
edge_list = [[0, 1], [1, 2], [2, 3], [3, 4], [4, 5], [5, 0]]
graph = data.Graph(edge_list, num_node=6)
graph.visualize()
Mila唐建团队发布AI药物研发平台TorchDrug,Yoshua Bengio等指导


药物发现中的一个图的具体实例是分子,它可能具有额外的化学约束和特征。例如,我们可以从 SMILES 字符串构造一个分子(SMILES 简称分子线性输入规范,是一种用 ASCII 字符串明确描述分子结构的规范)。


mol = data.Molecule.from_smiles("C1=CC=CC=C1")
mol.visualize()
print(mol.node_feature.shape)
print(mol.edge_feature.shape)
Mila唐建团队发布AI药物研发平台TorchDrug,Yoshua Bengio等指导


torch.Size([6, 69])
torch.Size([12, 19])


也可以将一组任意图进行批处理,以最大限度地提高硬件利用率。它们也可以使用. cpu() 和. cuda() 方法在 CPU 和 GPU 之间传输。


mols = data.PackedMolecule.from_smiles(["CCSCCSP(=S)(OC)OC", "CCOC(=O)N", "N(Nc1ccccc1)c2ccccc2", "NC(=O)c1cccnc1"])
mols.visualize()
mols = mols.cuda()
print(mols)


Mila唐建团队发布AI药物研发平台TorchDrug,Yoshua Bengio等指导


PackedMolecule(batch_size=4, num_nodes=[12, 6, 14, 9], num_edges=[22, 10, 30, 18], device='cuda:0')


就像原始的 PyTorch 张量一样,图支持广泛的索引操作。典型用途包括 node masking, edge masking or graph masking。以下示例显示了如何选择至少包含一个碳的边,更多图形操作可参考注释。


node_in, node_out, bond_type = mols.edge_list.t()
edge_mask = (mols.atom_type[node_in] == td.CARBON) | (mols.atom_type[node_out] == td.CARBON)
mols = mols.edge_mask(edge_mask)
mols.visualize()


分子分类器

TorchDrug 提供了大量热门的用于药物发现和图表示学习的数据集和模型,帮助用户尽可能少地编写和调试示例代码。以下图的 ClinTox 数据集为例,该数据集预测的是一个分子在临床试验中是否有毒,以及它是否被 FDA 批准。

Mila唐建团队发布AI药物研发平台TorchDrug,Yoshua Bengio等指导


分层接口

TorchDrug 具有分层接口,涵盖从低级数据结构及运算、中间层、模型到其他高级任务。利用低级别的搭建模块,用户也可以轻松地在自定义任何层级的模块。

Mila唐建团队发布AI药物研发平台TorchDrug,Yoshua Bengio等指导


目前,层次共分为 4 个级别:

研发团队

这一平台的项目负责人为加拿大蒙特利尔学习算法研究所(Mila)助理教授唐建,其研究领域包括图表示学习、图神经网络、药物发现及知识图谱。唐建 2014 年毕业于北京大学信息科学技术学院并获得博士学位,2014-2016 年任职微软亚洲研究院副研究员,2016-2017 年为密歇根大学和卡内基梅隆大学的联合培养博士后,曾获 2014 年机器学习顶级会议 ICML 的最佳论文。唐建是图表示学习领域的代表性学者,他所提出的网络表示学习算法 LINE 被广泛应用,其他代表工作还包括 RotatE 等。

Mila 实验室是由深度学习先驱 Yoshua Bengio 教授领导的人工智能实验室https://mila.quebec/),主要从事深度学习、强化学习、优化算法等人工智能领域的基础研究以及在不同领域的应用。TorchDrug 整个项目由博士生朱兆成、刘圣超、史晨策、张作柏、瞿锰以及多位来自清华大学、北京大学和上海交通大学的实习生共同完成。

Mila唐建团队发布AI药物研发平台TorchDrug,Yoshua Bengio等指导

同时,本项目也得到了 Yoshua Bengio 等十余位人工智能、生物学领域学者的指导:

Mila唐建团队发布AI药物研发平台TorchDrug,Yoshua Bengio等指导

此前,唐建等人在 AAAI 2021 中详细介绍了「人工智能与药物研发」的相关内容,感兴趣的读者可以阅读:https://deepgraphlearning.github.io/DrugTutorial_AAAI2021/

并将近期在 KDD2021 中继续介绍「人工智能与药物研发」的相关研究进展:

https://deepgraphlearning.github.io/DrugTutorial_KDD2021/

展开阅读全文

页面更新:2024-04-26

标签:药物   张量   神经网络   平台   数据结构   人工智能   模块   深度   模型   分子   团队   机器   领域   发现   数据   用户   唐建

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top