​编者按

Data Transfer Approaches to Improve Seq-to-Seq

Retrosynthesis 是2020年10月发表在Computer Science上的关于逆合成路线规划一篇文章。首次研究基于数据驱动的逆合成方法探究,将不基于模板和基于模板的逆合成进行比对,在预训练和微调过程中探究不同数据的增强方式对于逆合成中模型的影响大小,以供读者更好的理解文献。

This article explains the importance of data sets in the field of retrosynthesis. Because in addition to the issues that need to be considered in the model architecture itself, the number of available data sets (samples) and quality (less noisy, damaged samples) usually determine the final performance of the machine learning model. However, there are usually only a few large and high-quality supervised training data sets that are publicly available. Therefore, this paper mainly studies the impact of data transmission on the improved inverse synthesis model, and proposes three standard data transmission methods: joint training, self-training and pre-training plus fine-tuning. In addition, erroneous prediction results were checked.

It reveals that pre-training and fine-tuning the model can produce better predictions.

1.1 研究背景

预训练是指在微调之前用一些数据集来训练模型之后进行微调,这样做是为了对目标数据集进一步训练。在NLP领域的预训练的明显的特征是数据集的语料比较大和训练模型比较大,如BERT和GPT-2用大量的语料库(数据集)进行训练需要消化很多算力资源。这些预先训练过的模型有助于推动一些NLP研究和应用程序发展。

Self-training:首先用标记的目标数据集来训练一个基础模型,该数据集通常很小,但质量很高。然后,使用一个更大的数据集,包含未标记或有低质量的噪声标签将模型重新标记,用于增强小目标数据集,以获得更强的模型。这是在项目比赛中提高性能的基本技术之一。

因此Self-training[1]相比预训练的一个优点是,由于重新标记,Self-training不需要大的标记数据集,因此,Self-training被用于增强伪并行语料库。

在本文中,作者重点研究了数据传输方法在序列到序列的生成模型中的有效性。

1.2实验部分

1.2.1实验方法

逆合成是一个将产物x映射到适当的反应物y的问题。逆合成模型的样本是一对(x,y),其中x表示一个产物,y表示一组反应物。逆合成模型M是x和y之间的一个(随机)映射:通常表示为参数为的似然分布。其中似然值决定了模型的特征。

假设数据集D是一组反应样本,其中产物和反应物用smiles表示。数据集的第i个样本由一对进行索引,因此表示为D=。最大(对数)似然的目的是训练数据集来寻找优化目标函数的最好的参数。并且通过一个迭代参数更新算法,如随机梯度下降来最小化交叉熵损失。

1.2.2预训练加上微调

在联合训练和self-training中,都是通过对于将原始数据集和进行数据增强后的数据拼接起来得到新的数据集进行训练,计算出最终的最佳参数。这些连接的训练集的样本量可能会很大,从而导致训练收敛速度较慢。

预训练加微调方法通过使用增强数据集预先训练一个模型。这个预先训练过的模型被简单地作为初始模型加载到一个较小的目标数据集。然后在进行微调,效率就会很高,这样有利于扩展到多个目标数据集。

1.2.3 实验数据集

One of the target data sets used in this experiment is the USPTO-50K data set. This data set can be used as a standard benchmark for reverse synthesis research. The feature of this data set is that all samples are pre-divided into ten reaction categories, so the distribution of products and reactants is skewed. In addition, two enhanced data sets are used for data migration. Since these two data sets are not filtered according to the reaction category, the distribution of their compounds is significantly different from the USPTO-50K data set. One of them is called the USPTO-Full data set. The second enhanced data set is called the USPTO-MIT data set.

1.2.4 模型训练和评估

为了评估数据迁移方法[2]的效果,作者采用的方法是首先对模型进行更新,在seq-seq模型的架构基础上改成transformer架构。实验设置的参数为自我注意层数设置为3,所有层的潜在向量的维数设置为500。并且采用位置编码,并且token的最大数量(序列的长度)限制在200个,从而获取到基于USPTO-50K不同的数据迁移方式的Topn的结果,实验使用k=50的beam_size搜索来列出各自的排序预测。如图1所示。

图1 不同训练方式的Topn指标

1.2.4 实验结果

The author uses the USPTO-50K data set as the target data set, and the filtered USPTO-Full data set as the enhanced data set in this table.

Generally speaking, all data migration methods can improve Top-n. Among them, the pre-training plus fine-tuning method has achieved remarkable results. Because it reduces the number of experimental trials required. In the experiment, the author did not optimize the model itself, because the main goal was to confirm the effect of data migration. The author proposed that pre-training in the image domain is not as effective as self-training in improving generalization performance. The specific reason can be summarized as because there is no universal embedding representation for universal images. The result of this experiment is that pre-training plus fine-tuning is significantly better than self-training.

1.2.5 提升模型

此外,作者进行消融实验,用最佳数据迁移模型与逆合成的SotA模型进行比较。如图2所示,拿最好的预训练加微调模型(基于transformer)与文献中最新的SotA模型进行比较,并且,transformer模型在n=10和n=20处超过了已知的最佳Topn。

图2 各类模型的Topn指标

1.3 讨论与总结

[1] 使用较小的USPTO-MIT数据集来进行其他实验表明:增强数据集的样本量明显影响了转移模型的泛化性能。

[2] 预训练加微调提高了USPTO-50K的所有10个主要反应类的Top-n。增强数据集特别可以帮助预测困难的键/环形成反应。

[3] 人工检查错误的预测结果表明,有一些反应仍然难以进行合理的逆合成预测。

[4] 将数据迁移方法也可以应用于图到图的模型,USPTO-Full数据集可以迁移到USPTO-50K数据集,改变该数据集的反应类型的偏态分布。

参考文献

[1].   Semih Cant¨urk, Aman Singh, Patrick St-Amant, and Jason Behrmann. Machine-learning driven drug repurposing for COVID-19. arXiv, 2020.

[2].  Wengong Jin, Connor W Coley, Regina Barzilay, and Tommi Jaakkola. Predicting Organic Reaction Outcomes with Weisfeiler-Lehman Network. In Proceedings of the Advances in Neural Information Processing Systems 30 (NIPS), pp. 1–10, 2017.

Computer Science | Retrosynthesis:关于逆合成路线规划相关推荐

  1. GNN-Retro 逆合成路线规划

    逆向综合规划在该领域发挥着重要作用有机化学的一个分支,它可以生成一条合成路线针对目标产品.合成路线是从可用分子开始的一系列反应.这个 合成材料生产中最具挑战性的问题路由是候选反应的大搜索空间.估计匹配 ...

  2. 毕业倒计时 — 科班仔Java后端的点滴与学习路线规划

    毕业倒计时 - 科班仔Java后端的点滴与学习路线规划 文章目录 毕业倒计时 - 科班仔Java后端的点滴与学习路线规划 一.前言 二.选好方向-"站在风口上,猪都能上天" 三.学 ...

  3. 计算机科学(Computer Science)到底学什么?

    计算机科学(Computer Science)到底学什么? 很多在校的CS学生入学一两年了,还不知道CS到底是什么,也很疑惑CS到底能学到什么? 看到身边很多读专科或者三本院校的学生,已经会很多的技术 ...

  4. 计算机科学速成课 Crash Course Computer Science 笔记(摘要形式)

    Crash Course Computer Science总共40节课,架构式地详细介绍了计算机从底层到顶层的构造和新的技术,一节课十分钟左右,可让小白在很短时间内产生对计算机的总体理解 本文是听课后 ...

  5. 【转载】计算机科研路线规划及投稿方法

    根据多年的经验,以下计算机EI源刊可以说是百发百中(只要有工作量,并不需要什么创新性均可录用): Journal of Computers (JCP, ISSN 1796-203X), Journal ...

  6. 计算机科学速成课】[40集全/精校] - Crash Course Computer Science

    计算机科学速成课][40集全/精校] - Crash Course Computer Science Transistor have two electrodes separated by a mat ...

  7. 计算机科学 生物技术,计算机科学(Computer Science)简介

    原标题:计算机科学(Computer Science)简介 计算机科学(Computer Science,缩写CS)是系统性研究信息与计算的理论基础,以及它们在计算机系统中如何实现与应用的实用技术的学 ...

  8. python调用百度地图画轨迹图_[python]百度地图API,正/逆地理编码,路线规划接口的调用,实现输出出行的距离和......

    [Python] 纯文本查看 复制代码''' 文件名:L17.py 作者:小饭团 创建时间:2019年1月11日15:17:03 文件描述:调用Web服务API接口,百度地图路线规划 正/逆地理编码 ...

  9. Synchronization (computer science)

    过程同步.数据同步. In computer science, synchronization refers to one of two distinct but related concepts: ...

  10. 达特茅斯计算机专业师资力量如何,达特茅斯学院计算机科学computer science专业排名第126~150名(2020THE泰晤士高等教育世界大学排名)...

    2020年THE泰晤士高等教育世界大学计算机科学computer science专业排名公布,达特茅斯学院计算机科学专业排名第126~150位,达特茅斯学院计算机科学专业实力怎么样呢?下面美英港新留学 ...

最新文章

  1. $.when()方法翻译
  2. 取代Python多进程!伯克利开源分布式框架Ray
  3. java修改字节码技术,Javassist修改class,ASM修改class
  4. selenium java 参数化_Java+selenium 自动化测试【03】-- 数据驱动之参数化
  5. 前端的请求最大线程数是多少啊_面试官:创建多少个线程合适,我该怎么说?...
  6. Codeforces #471
  7. Java并发——Synchronized及其实现原理
  8. [翻译] SSKeychain
  9. Overture打谱软件免费安装下载版介绍
  10. 基于STM32的有方科技(银而达)N58模块与OneNet平台互联
  11. 行列转换的SQL语句
  12. 怎样在养殖订阅号文章中添加一键拨号功能
  13. torch.cuda.amp.GradScaler(enabled=CFG.apex)是什么意思?
  14. 跳一跳改分php源码,小游戏“跳一跳”居然可改分,微信小程序现漏洞
  15. SAP R3 功能详解 - 财务管理
  16. 在Windows下使用Python编程
  17. 随机数生成器RandomNumberGenerator
  18. 网络虚拟化——SR-IOV
  19. [Java]使用ArrayList类来把54张扑克牌发给3位玩家各17张,剩下3张是底牌
  20. 手用计算机怎么弄声音,手把手教你电脑声音太小怎么处理

热门文章

  1. 小菜叫你玩破解和逆向(1)
  2. 用二分法求下面方程在(-10,10)之间的根:2x^3-4x^2+3x-6=0
  3. JavaScript高级程序设计之表单基础
  4. STM32的Flash地址空间的数据读取
  5. javascript与css压缩工具
  6. 今日凌晨Vue3 beta版震撼发布,竟然公开支持脚手架项目!
  7. 3D帧间匹配-----剔除动态障碍物
  8. Android中Home键的监听和拦截
  9. 伊利诺伊大学在线计算机硕士,UIUC伊利诺伊大学厄巴纳香槟分校计算机科学硕士MSc in Computer Science...
  10. 计算机用户授权原则,涉密信息系统严格设定用户权限,按照什么密级防护和什么授权管理的原则...