炼数成金 门户 商业智能 人工智能 查看内容

将图卷积神经网络用于解码分子生成

2020-11-11 17:14| 发布者: 炼数成金_小数| 查看: 13982| 评论: 0|原作者: 张玮玮|来自: PaperWeekly

摘要: 药物发现和材料科学的一个基本问题是设计具有优化化学性质的任意分子。由于分子本质上是组合在一起的,化学结构中的任何小扰动都可能导致所需分子性质的大变化。因此,这是一个极具挑战性的数学和计算问题。此外,随 ...

论文标题:
A Two-Step Graph Convolutional Decoder for Molecule Generation

论文链接:
https://arxiv.org/abs/1906.03412

引言
1.1 论文动机
药物发现和材料科学的一个基本问题是设计具有优化化学性质的任意分子。由于分子本质上是组合在一起的,化学结构中的任何小扰动都可能导致所需分子性质的大变化。因此,这是一个极具挑战性的数学和计算问题。

此外,随着原子和键的组合排列数量的不断增加,有效分子的空间也越来越大。目前,大多数药物都是经过化学和药理学专家多年的反复试验而制作的。最近机器学习深度学习的进展开辟了一个新的研究方向,有望学习这些分子空间来优化分子生成,减少实验流程。

1.2 论文工作
论文提出了一个分子生成自动编码器框架。分子图首先被编码成一个连续的潜在表示 ,然后再被解码回一个分子。编码过程很简单,但解码过程仍然具有挑战性。

在本工作中,我们介绍了一个简单的两步译码过程。在第一步,一个完全连接的神经网络使用潜在的向量  生成一个分子式,例如二氧化碳(一个碳和两个氧原子)。

在第二步中,图形卷积神经网络使用相同的潜在向量  在第一步中产生的原子之间建立键(例如,将在碳和每个氧之间建立一个双键)。这个两步过程,首先生成一袋原子,然后组装,允许开发一个高效的分子自动编码器。

本文方法

图1表示自动编码器框架。在本节中,详细介绍系统的各个部分:

2.1 分子编码器




2.4 位置编码

当 GCN 处理此图时,碳原子上的特征将无法彼此区分(以及连接碳和氧的 3 条边上的特征)。为了弥补这一对称性问题,我们引入了一些位置特征,允许将同一类型的原子嵌入到不同的向量中,从而区分同一类型的原子。

最后,输入和输出分子之间不需要匹配,因为使用了相同的原子顺序。

2.6 束搜索
由于潜在的原子价破坏,所提出的一次性解码器可能不能产生化学上有效的分子。我们使用波束搜索技术来产生一个有效分子。波束搜索的定义如下。我们从一条随机的边开始。


实验
3.1 数据集
本文使用的 ZINC 分子数据集,该数据集有 250k 类药物分子,有 38 个重原子(氢原子除外)。数据集最初是用 smile 编码的,并使用开源的化学信息学软件包 Rdkit2 来获得规范的 smile 表示。

3.2 分子重构

表 2 给出了结果表示,我们的系统不只是简单地记忆训练集,它还能够生成 100% 的新的有效分子。此外,所有的新分子都是不同的,因为新颖性度量是 100%(生成数据集中分子的百分)。图2展示了一些生成的分子。

3.3 性质优化
第二个任务是生产具有理想化学性质的新分子。本文选择目标性质为辛醇-水分配系数(logP),由合成可达性(SA)评分和长循环次数惩罚。为了进行分子优化,我们训练我们的 VAE 同时自动编码训练分子和目标化学性质。


利用梯度上升法对潜在空间的化学性质进行优化,然后对分子进行解码并计算目标性质。本文对训练集中属性值排名前 100 的分子进行了优化。表 3 报告了我们的模型和文献中排名前 3 的分子。

第三个任务是生成具有优化化学性质的新分子,同时约束原始分子和生成分子之间的分子相似性。在表4中报告了性能的改进和原始分子与生成分子之间的分子相似性。图4给出了约束优化的分子与分子距离。


总结
针对分子生成任务,本文引入了一种简单有效的 VAE 模型。解码器可以一次性生成分子式和键结构。据我们所知,这也是束搜索首次用于改进分子生成任务,beam 搜索可以高度并行化,就像自然语言处理系统一样,总体而言,本文提出的技术更容易实现。

声明:文章收集于网络,版权归原作者所有,为传播信息而发,如有侵权,请联系小编删除,谢谢!

欢迎加入本站公开兴趣群
商业智能与数据分析群
兴趣范围包括:各种让数据产生价值的办法,实际应用案例分享与讨论,分析工具,ETL工具,数据仓库,数据挖掘工具,报表系统等全方位知识
QQ群:81035754

鲜花

握手

雷人

路过

鸡蛋

相关阅读

最新评论

热门频道

  • 大数据
  • 商业智能
  • 量化投资
  • 科学探索
  • 创业

 

GMT+8, 2020-12-5 13:06 , Processed in 0.118863 second(s), 25 queries .