最近IBM和伯尔尼大学的研究人员利用基于自注意力机制的深度神经网络实现了对化学反应的分类,该项成果发布于Nature Machine Intelligence杂志上。
化学反应的分类对化学家们有很高的价值,比如利用同类反应的相似成份推测最佳反应条件等。近年来,一些机器学习方法被用于化学反应的分类,但是都存在一定的局限。IBM和伯尔尼大学的研究人员提出使用BERT(Bidirectional Encoder Representations from Transformers)模型,该模型不同于由专家们根据经验编写大量规则的传统分类方法,而是通过化学反应方程式文本便能实现化学反应分类的预测。研究者在13.2万个化学反应上进行了测试,最高可达98.2%的分类精度,而传统方法仅为41%。此外,该模型使用注意力机制,相较于传统方式能更好的捕捉到对反应分类起关键作用的成份,该项工作有望开辟有机合成领域新的未来。
BERT模型基于“自注意力”机制,可以利用大规模的文本数据学习语言特征,研究者们首先将化学反应式转换为SMILES格式,相当于对化学反应式进行了语言描述,图1为两个化学反应式及其对应的SMILES 表示:
图1 化学反应式案例及其对应的SMILES representation
然后利用BERT模型进行语言学习,即经过若干个Tranformer神经网络结构,得到名为RXNFP的向量,然后基于此向量进行化学反应分类,具体过程如图2。
图2 BERT模型用于化学反应分类
BERT模型的注意力机制可以发现进行分类的关键作用成份,如图3,格图的纵轴对应BERT模型的不同层,横轴对应每一个反应成份,颜色越深表示不同层对某个成份的关注度越高。
图3 注意力权重解读
基于BERT模型,化学反应可以表示成一个固定维度的向量,研究者将不同化学反应描绘在一张图上,如图4,从图中可以观察到不同化学反应之间的关系。
图4 化学反应的向量可视化,不同颜色代表不同的化学反应,左下图为预训练网络结果,中间图为训练后的网络所得结果