Py学习  »  机器学习算法

中国科学技术大学李震宇团队JCIM | 对比不同机器学习模型预测分子电离能

ACS美国化学会 • 2 年前 • 242 次点击  

英文原题:

Predict Ionization Energy of Molecules Using Conventional and Graph-Based Machine Learning Models



通讯作者: 李震宇,中国科学技术大学

作者:Yufeng Liu and Zhenyu Li*


背景介绍


通过机器学习方法构建结构性质关系是近年来化学信息学中热门的课题,大量的工作展示了机器学习在预测能量以及反应活性等方向的应用。在这些应用中,可供选择的机器学习方法有很多,对不同的方法进行对比与测试,从而针对具体的应用构造高性能的机器学习模型因此具有重要意义。电离能是有机分子的一项重要性质,然而目前文献中还没有准确而可泛化的模型来预测电离能。


文章亮点

2023年1月22日,中国科学技术大学李震宇教授团队在化学信息学和人工智能研究领域的国际权威学术期刊 Journal of Chemical Information and Modeling (JCIM) 上发表了题为 “Predict Ionization Energy of Molecules Using Conventional and Graph-Based Machine Learning Models” 的研究论文。他们在机器学习预测定量结构性质的常用训练集 Freesolv 和 Lipophilicity 的基础上,通过数据挖掘构建了电离能训练集,在此基础上系统性地训练了14种机器学习模型,发现 AttentiveFP 图网络模型给出最好的性能。该研究为机器学习模型的选取提供了有益的指导,同时给出了一个高性能的电离能预测模型。


该工作通过数据挖掘获取了2598组数据,其中2147个有机分子数据被用来构建训练集。其中烃类化合物(烷烃,烯烃,炔烃和芳香烃)占有主要地位。除了常规的有机物,数据库中还含有87个自由基的记录。这给接下来的模型预测电离能提出了挑战。



作者从有机分子的 SMILES 结构式出发,利用 Mordred 和 PaDEL 软件构造无需进行电子结构计算和结构优化就能获得的结构指纹和描述符。在此基础上可以对传统的机器学习模型进行训练。研究表明,在描述符中加入一个判断是否为自由基的描述符后,可以提高模型的精度。简单的SVR方法给出八个传统模型中的最高性能,而 kNN 模型的精度相对较差。



即使在传统模型中加入自由基描述符用来区分自由基和非自由基,传统模型对于自由基的预测能力提升仍然有限。与之形成对比的是,由图网络构成的模型依赖基于原子特征和成键类型,这些模型相对于使用分子描述符和分子片段指纹的模型,在描述局部化学环境上更加的精确。这一个特性使得图网络模型在预测自由基的电离能时更具优势。对不同图网络模型的测试表明,AttentiveFP 具有较好的电离能预测性能,R2高达0.877,而 NF 模型预测精度较差。



扫描二维码阅读英文原文

J. Chem. Inf. Model. 2023, 63, 3, 806–814

Publication Date: Jan. 22, 2023

https://doi.org/10.1021/acs.jcim.2c01321

Copyright © 2023 American Chemical Society

IF 2021: 6.162

Citaions 2021: 30,162

CiteScore 2021:7.7

The Journal of Chemical Information and Modeling publishes papers reporting new methodology and/or important applications in the fields of chemical informatics and molecular modeling.Astute chemists, computer scientists, and information specialists look to this monthly’s insightful research studies, programming innovations, and software reviews to keep current with advances in this integral, multidisciplinary field.
  • 主编Kenneth M. Merz Jr.(Michigan State University)

  • 副主编

点击“阅读原文”

你“在看”我吗?

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/155365