Nat. Rev. Chem. | 一份关于用机器学习研究化学问题的评估指导

今天为大家介绍的是来自Tiago Rodrigues团队的一篇论文。机器学习(ML)有望解决化学领域的重大挑战。尽管ML工作流程的适用性极广,但人们通常发现评估研究设计多种多样。目前评估技术和指标的异质性导致难以(或不可能)比较和评估新算法的相关性。最终,这可能延迟化学的大规模数字化,并使方法开发者、实验人员、审稿人和期刊编辑感到困惑。在这篇综述中,作者批判性地讨论了不同类型的基于ML的出版物的方法开发和评估指导原则。

9ac2401a9dbacd9e1476daeee2d9433b.png

科学发现加速的需求为机器学习(ML)的重新崛起敞开了大门。受算法、计算硬件、开源库、数据和存储容量的进步支持,ML工具现在能够识别几十年来专家直觉所遗漏的复杂模式。虽然ML工具没有被设想或期望作为专家直觉的完全替代品,但它们的性能至少与某些情况下的人类从业者相当。这种能力使得ML适合生产性使用,并且最重要的是,它们为科学和工程的一些重大挑战提供了可信的决策支持。化学科学也正在参与这场革命。理解ML的影响仍然很难。然而,它正在重塑药物发现、材料科学、纳米技术、环境科学等领域的基础和转化研究。进行ML研究时,必须考虑三个关键方面——数据、表示和算法——这些都需要详细报告和评估。所有这些组件都带有限制,表明该领域还需要进一步成熟。因此,不应该把ML算法当作灵丹妙药,并且有必要客观地评估这些计算工具。

数据集

在开发ML(机器学习)方法的大部分时间里,涉及到收集和整理相关信息以回答特定的研究问题。因此,与领域专家合作(或自己成为一个专家)来制定相关的研究问题是至关重要的。一个信息不足的社区可能不会意识到这一步骤的重要性和所需的时间,但他们可能容易意识到一个ML模型的价值只取决于其底层数据允许的程度。对于以前未见过的事件的准确预测以及合理研究假设的产生都依赖于先前的信息和数据模式。因此,作者强烈建议为这一数据准备阶段投入大量时间。相关的实验终点(例如,生物活性)通常不被直接建模,而是通过一个实验上更容易获取的实验代理来实现。这带来部分隐患,包括过度简化一个复杂的问题,以及选择的代理是否真正反映了实际的研究问题的假设。此外,在化学科学的实验和建模中,不确定性量化经常被忽视。不考虑实验误差可能导致其传播和不切实际的模型性能评估。随后导致ML的好处变得不清晰,尤其是当预测准确性相对于竞争模型只提高了几个百分点时。此外,数据范围(以及数据的分布)也是需要考虑的,特别是如果目标是创建一个回归模型。当数据高度聚集成簇,并且单个聚类具有不同的属性时,预测模型的性能可能看起来很高。然而,该模型只能区分现有的聚类,并且无法模拟所考虑的属性的内部聚集趋势。高比例的定性数据(例如,>10 μM或<0.1 μM)也很难包括在回归模型中。这些都是没有明确解决方案的突出问题,但重要的是要承认,根据手头的数据,可能会得到低分辨率和误导性的模型。

评价基准

97ed1f1d642b7eb86b20d91456fca2db.png

15a7e0db0c63bdc66d7e0c1006e9df7e.png
表 1

持续对开发基准测试和考虑不确定性问题的兴趣表明,这个领域的研究者正致力于寻找适当的解决方案,以考虑比较研究中的误差估计。例如,SAMPL盲测挑战和Kaggle竞赛等,提供了一种比较不同工具在与化学和/或药物开发相关的高质量数据上的准确性的可行方法。在过去的十年中,该领域已经开发了几个公开的基准数据集,用于评估机器学习方法的性能。作者鼓励使用这样的资源作为开发机器学习工具的催化剂,但要注意,即使是高质量的基准数据集也有其局限性,它们的使用可能不反映机器学习模型在现实世界中的性能(Table 1)。具体来说,基准测试不能详细描述机器学习模型的一般效用,因为有几个不可避免的隐患,如任务设计、范围、数据脱离上下文和社区误用等。这些重要的方面限制了使用基准测试进行绝对模型评估。例如,MOSES基准测试(https://github.com/molecularsets/moses)是为了评估生成模型如何与训练数据的分布相匹配。然而,微小的变化可以显著增加一组分子的多样性,同时仍与训练数据的分布相匹配。尽管有许多研究报告表明DUD-E数据集不适用机器学习,但仍有许多作者继续将其用作机器学习基准。作者不鼓励这种误用,因为DUD-E最初是为了评估分子对接方法的性能而开发的,而不是机器学习。

回顾性分析

fca14332f8e10a483487478c4f63edfb.png
图 1

79b59cce56b2d64292f0cab223bdc5d2.png
表 2

回顾性评估研究是易于获取、低成本的,并且应该成为标准实践。我们需要挑战预测性机器学习的潜在效用,这是在未参与模型构建的数据上进行的(外部测试数据)——但其输出是已知的(图1)。为此,可以根据可用的训练集以有意义的方式进行交叉验证。它们最终作为一个工具来估计通过性能指标(表2)的不确定性。为了更好地确定机器学习模型的应用领域,作者还建议报告训练集中模型化属性的分布。例如,训练集中分子的属性分布可能不同于未来遇到的分子的分布——这被称为数据偏移或应用领域问题。因此,回顾性研究可以作为评估机器学习模型性能的基线。在有监督学习中,训练数据经常被分为k个折叠以进行交叉验证。折叠的数量通常为5或10,每次都有一个折叠会被迭代地留出来,以找到合适的超参数。除此之外,时间分割方案已被报告为更现实地评估药物发现努力中的前瞻性预测性,因此当有时间戳数据可用时,可能更受欢迎。交叉验证仍然是模型未来应用的最合适的替代品。然而,它假定实验决策随时间保持不变,并忽略了模型在决策制定中的影响。虽然推荐对训练数据进行划分以构建模型,但外部或评估数据集,也对评估模型在未见数据上的效用很有用。在某些情况下,可能存在数据可用性约束,不允许为此目的留出大部分数据。作者建议计算一系列的指标,而不仅仅是一个用户偏好的指标,并作为一个整体仔细审查它们,考虑到它们的互补信息(表2)。

与其他工具对比

5281cec0ba1013421ce368fef51bfb20.png
图 2

新兴技术被目标受众广泛采纳,部分原因是它们具有稳健的性能,并且能展示出相对于更成熟的方法的竞争优势。因此,作者建议与社区普遍采用的、为相同目的而开发的既有工具进行比较。如果声称某方法在性能上优越,这应当通过统计手段支持,并对多次比较进行p值修正。另外,对于大样本量而言,即使效果很小,也可能统计显著,但这并不意味着在实践中它具有重要意义。因此,应始终将效果大小与统计显著性一起报告,因为统计显著性不总是意味着它在实际中有重要性。

在做生物实验时,我们通常会进行正面和负面的对照测试,以更准确地判断结果。机器学习(ML)领域可以采用类似的方法,来确认算法所捕捉到的数据模式是否真实有效。至少,作者建议与平均数值和过去的类别分布进行比较。重复控制计算可以帮助我们判断机器学习的方法是否有效。简而言之,当我们发现某种模式时,通过对照计算可以验证这个模式是否真实。如果在随机化对照测试中,机器学习模型的表现降低了,那说明这个模式可能是真实的,如图2a。但如果模型在随机测试中的表现过于优秀,那么这个模型在真实应用中可能不怎么样。例如,最近在预测化学反应的研究中,有些模型的预测结果与随机数或简单模型相同,这说明这些模型捕获的模式可能是由于实验设计的问题,而不是真实有效的。对照计算可以帮助我们确认哪些特征是真实有效的,哪些可能只是随机的或者假的。再例如,有些机器学习模型用于预测药物传递,但通过一种称为Y-shuffling的方法(图2b),人们发现某些特征可能并不真实有效。总的来说,我们需要确保模型在学习过程中使用的特征是真实有效的,否则模型的表现可能会受到影响。

简单的机器学习模型在某些情况下也能为化学问题提供有效的解决方案。为了确认简单和优化的机器学习基线的可行性,应该使用相同的训练数据来计算它们,从而在上下文中进行有意义的比较。最终,这些比较可以证明所实施的算法性能优于计算成本更低、可能更易于解释的方法。但并非总是这样。多元线性回归在不同的环境中具有很高的价值,而强制实施“正则化”(如lasso、弹性网、贝叶斯回归等)可以提供同样合理的简单统计模型。在其他情况下,基线需要更复杂才能提供有意义的基准。总的来说,建议进行并行比较和后续的统计分析。这些研究旨在强化任何给定方法在接近实际世界的情境中(例如新材料的发现)的实用性。

前瞻性评估

尽管回顾性评估为测试机器学习工作流的潜在效用提供了重要手段,但在前瞻的实际应用中观察到的性能往往低于预期。这些不尽如人意的表现可能是因为在模型适用性领域外部署了模型。例如,由于启发式方法或训练数据的限制,算法可能没有完全理解某些微妙的模式。前瞻性研究不是评估机器学习模型,而是评估整个过程,包括数据准备、特征化、超参数和实验选择流程。

随着机器学习工具努力加速新发现的步伐,作者主张应实施一套扩展性的建议,以吸引湿实验室的研究者参与这个数字化化学时代。作者认识到,在长时间的评估活动中吸引湿实验室研究者并不是一件易事。然而,如果机器学习的评估协议更好地协同,并管理与之相关的期望,机器学习可能会成为发现科学的更为核心的部分。机器人的自动化和人-机循环配置的可能性在这里都有重要的作用。这些自动化和人-机策略将促进高质量数据的获取,并实现一定程度的前瞻性部署和信任。但是,实验设计掌握在人的手中(即使只是“实验设计的设计”),所以专家的输入和合适的人-机交互仍然是关键。作者认为,前瞻性的例子必须是多样的,如涵盖不同的应用场景和搜索空间区域。它们还应该在保持当前的科学研究兴趣的同时,挑战和探索机器学习工具的不同方面。首先,前瞻性的例子应该精心设计,以提供对过程的有意义的评估,并得出结论关于在回顾性评估中可能被忽略,但在生产部署中仍然相关的能力和局限性。在药物发现的前瞻性评估通常需要多次复制,包括使用正交的检测技术。例如,单一浓度的初筛可能作为生物活性的粗略评估是合适的。然后必须使用不同的配体结合技术(例如,表面等离子共振、放射配体替代测定和饱和传递差异核磁共振)和功能性测定(例如,评估细胞活性)将其扩展到完整的剂量-反应曲线。

参考资料

Bender, A., Schneider, N., Segler, M. et al. Evaluation guidelines for machine learning tools in the chemical sciences. Nat Rev Chem 6, 428–442 (2022). 

https://doi.org/10.1038/s41570-022-00391-9

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/210315.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

redisson分布式锁

一、分布式锁 java里面的锁机制针对的是同一个jvm进程进行共享资源的共享加锁&#xff0c;但在分布式系统中&#xff0c;一般一个服务都会部署多个节点&#xff0c;这种情况下就需要有单独的中间件来承担多节点间加锁的责任。 二、使用案例 // 1. 获取锁对象RLock lock redi…

一篇带你串通数据结构

文章目录 导论数据结构的定义数据结构在计算机科学中的重要性为什么学习数据结构很重要 1、基本概念1.1、数据、数据元素和数据项的概念1.2、数据对象与数据结构的关系1.3、逻辑结构与物理结构 2、线性结构2.1、数组2.2、链表2.3、栈2.4、队列 3、非线性结构3.1、树3.2、图 4、…

在oracle中的scn技术

SCN可以说是Oracle中一个很基础的部分&#xff0c;但同时它也是一个很重要的。它是系统中维持数据的一致性和顺序恢复的重要标志&#xff0c;是数据库非常重要的一种数据结构。 转载&#xff1a;深入剖析 - Oracle SCN机制详细解读 - 知乎 (zhihu.com)https://zhuanlan.zhihu.…

【LeetCode】135. 分发糖果

135. 分发糖果 文章目录 一、贪心1.1 贪心 二、多语言解法 参考图解 先按「左规则」得到下图&#xff1a; 再按「右规则」处理后如下图&#xff1a; 最终&#xff0c;取 max&#xff08;左规则&#xff0c;右规则&#xff09;&#xff0c;才能同时满足左规则和右规…

【slab/0x40 UAF】TPCTF2023 - core 一题多解

前言 这题据说比赛被非惨了&#xff0c;但是笔者比较菜&#xff0c;比赛的时候没有正规做出来并且也没有发现非预期&#xff0c;乐。其实比赛的时候一直在纠结为啥 free obj 没有 freelist&#xff0c;哎&#xff0c;陷进去了&#xff0c;我的 Root 宝贝。 笔者赛后用两种【常…

linux特殊权限_suid_chattr_umask

3.3 特殊权限 如果一个文件很重要&#xff0c;需要依赖特殊权限避免其被删除。 由于特殊权限会拥有一些“特权”&#xff0c;因而用户若无特殊需要&#xff0c;不应该去打开这些权限&#xff0c;避免安全方面出现严重漏洞&#xff0c;甚至摧毁系统。3个权限是对了执行文件或目…

CAPL语言 自动化测试

CAPL语言 自动化测试 CAPL&#xff08;CAN Access Programming Language&#xff09;是一种专为CAN&#xff08;Controller Area Network&#xff09;网络开发的编程语言。这种语言主要用于汽车行业&#xff0c;尤其是在自动化测试和网络通信方面。以下是关于其在自动化测试中…

【带头学C++】----- 九、类和对象 ---- 9.2 构造函数

目录 9.2 构造函数 9.2.1 构造函数的概述 9.2.2 构造函数定义方法&#xff08;初始化构造函数&#xff09; 9.2.3 提供构造函数的影响 9.2 构造函数 以下是一些C引入构造函数的原因&#xff1a; 初始化对象&#xff1a;构造函数允许在创建对象时立即初始化该对象的成员变量…

C#常用运算符的优先级

前言 运算符在C#编程语言中扮演着重要的角色&#xff0c;用于执行各种计算和操作。了解运算符的优先级是编写高效和正确代码的关键。本文将深入探讨C#中38个常用运算符的优先级划分和理解&#xff0c;并提供详细的说明和示例&#xff0c;以帮助读者更好地理解运算符的使用。 目…

sql语句排除相同元素

数据库表如图所示&#xff0c;重复的&#xff0c;我只要登录用户名下的车位号并且不重复 使用下面这种语句就会呈现下面那张图 public List<CarplaceNumber> getAllCarplaceNumberList(String substring1) throws SQLException {QueryRunner r new QueryRunner(DataSou…

超大规模集成电路设计----学习框架(一)

本文仅供学习&#xff0c;不作任何商业用途&#xff0c;严禁转载。绝大部分资料来自----数字集成电路——电路、系统与设计(第二版)及中国科学院段成华教授PPT 超大规模集成电路设计----学习框架&#xff08;一&#xff09; 这门课在学什么&#xff1f;这门课该怎么学&#xf…

Windows启动nacos操作文档

Windows启动nacos操作文档 1、新建数据库nacos_config 2、导入nacos\conf\nacos-mysql.sql文件 /******************************************/ /* 数据库全名 nacos_config */ /* 表名称 config_info */ /******************************************/ CREATE T…

(数据结构)顺序表的查找

静态分配代码&#xff1a; #include<stdio.h> #include<stdlib.h> #define MAX 100 typedef struct LinkList {int data[MAX];int lenth; }Link; //初始化 void CreateList(Link* L) {L->lenth 0;for (int i 0; i < MAX; i){L->data[i] 0;} } //插入 …

C++动态内存管理new,delete

C动态内存管理new&#xff0c;delete 1.C/C内存分布2.C语言中的内存管理方式3.C中的内存管理方式new&#xff0c;delete3.1C中的内置类型new&#xff0c;delete3.2new&#xff0c;delete操作自定义类型3.3 new和delete匹配 4. operator new与operator delete函数4.1new和delete…

FISCO-BCOS 在ARM系统架构搭建节点(国密版)

问题&#xff1a; 使用 fisco-bcos v2.9.1 搭建一个节点&#xff0c;批量上链1000条数据&#xff0c;在上链200条-400条数据之间节点会出现异常&#xff0c;导致后面数据不能上链。 系统环境 操作系统&#xff1a;统信 查看系统构架 ld -version rootuos-PC:/# ld -version …

深入探索网络协议:揭开互联网运作的奥秘(建议收藏)

随着如今数字化时代的到来&#xff0c;互联网已经成为我们日常生活中不可或缺的一部分。然而&#xff0c;我们是否曾好奇过互联网是如何运作的&#xff1f;它是如何将我们与世界连接起来的&#xff1f;答案就在网络协议中&#xff0c;这是互联网背后的语言。 网络协议的作用和功…

网站更换IP的四大注意事项

1.对网站当中的数据进行备份 网站更换IP时可以将页面的数据库文件和站点文件通过下载工具在本地完成备份。 2.更换解析域名 从站点域名管理后台当中更换域名地址&#xff0c;改为新的IP地址。 3.确保IP安全 在用户更换IP前一定要确定IP是否安全&#xff0c;一旦IP存在不良…

python系统调用执行ping命令无法检测到超时情况(破案了:ping命令-W参数单位为s,我写了个1000)

文章目录 问题描述破案了&#xff1a;ping命令-W参数单位为s&#xff0c;我写了个1000。。。,,ԾㅂԾ,, 问题描述 我用了系统调用去执行ping&#xff0c;一开始用os.system()&#xff0c;有问题&#xff0c;后面用subprocess问题还是存在&#xff0c;后来我把这个改了&#xff…

CookieSession Redis 到JWT会话管理历史

单应用时期&#xff0c;通常使用 Cookies 和 Session 进行会话管理。 用户登录后&#xff0c;服务器创建一个唯一的会话标识符&#xff08;Session ID&#xff09;&#xff0c;将其存储在浏览器的 Cookies 中&#xff0c;并在服务端维护一个关联该标识符的会话对象。 这种方…

Woocommerce Private Store私人商店秘密商城插件,适合批发商店,会员制俱乐部

点击访问原文Woocommerce Private Store私人商店秘密商城插件&#xff0c;适合批发商店&#xff0c;会员制俱乐部 - 易服客工作室 WooCommerce Private Store插件是使 WooCommerce 私有的简单方法。密码保护您的整个 WooCommerce 商店并使其隐藏。 非常适合批发商店、会员制俱…