ChemLLM:化学领域的大模型

news2025/1/12 21:01:11

人工智能咨询培训老师叶梓 转载标明出处

在化学这一特定学科的应用上,一直缺乏专门的对话模型。化学数据和科学知识通常存储在结构化的数据库中,这给直接使用这些数据训练语言模型带来了挑战。为了解决这一问题,来自上海人工智能实验室的研究团队及其合作者们开发了一种基于模板的指令构建方法,将结构化知识转化为适合语言模型训练的自然对话形式。

ChemLLM 的开发,填补了化学领域对话模型的空白。它不仅在化学任务上表现出色,如分子属性预测、分子生成和实验方案设计等,还在数学和物理等相关领域展现了出色的适应性。ChemLLM 在化学核心任务上超越了 GPT-3.5,并在其中两个任务上超越了 GPT-4。

开发化学领域大型语言模型(ChemLLM)所面临的挑战以及解决方案

ChemLLM 的开发过程中,研究团队面临了将化学领域的结构化数据转化为自然语言以供语言模型训练的挑战。为了应对这一挑战,他们创造了 ChemData,这是一个合成的化学指令调整数据集,它构成了训练 ChemLLM 的基础。

ChemData 和 ChemBench 的数据信息

ChemData 的构建开始于对原始数据的广泛收集。研究团队从多个在线资源和数据库中聚合化学数据,这些数据覆盖了化学领域的广泛知识,包括分子结构、化学反应、化学属性等。这些原始数据为创建一个全面的数据集提供了基础。

为了将这些结构化数据转化为自然语言格式,研究者们采用了一种基于模板的方法。这种方法首先创建了一个“种子模板”,这是一个基础的问答对,它根据特定任务的需求来设计。然后利用大型语言模型(如 GPT-4)生成多样化的问题和答案对,这些变体在语义上保持一致,但在表达上有所不同,从而增加了模型处理不同指令的能力。

种子模板的设计非常关键,因为它需要能够灵活地适应不同的化学概念和任务。例如,在分子属性预测任务中,模板可能需要包含分子的名称、结构和预期的属性。在化学反应预测任务中,模板则需要能够描述反应物、反应条件和预期的产物。为了实现这一点,研究者们采用了一种动态的模板生成策略,通过在模板中嵌入变量,使得模板能够在不同的化学情境中重复使用。

变量替换是模板构建方法中的一个关键步骤。这些变量代表了化学数据中的不同组成部分,如分子的SMILES表示、IUPAC名称或化学式。在生成问答对时,这些变量会被实际的化学数据所替换。例如,一个关于分子属性预测的模板可能包含如下结构:“[分子名称]的[属性]是什么?”在实际应用中,[分子名称]和[属性]会被相应的化学数据替换,生成具体的问题和答案。

为了确保生成的问答对覆盖广泛的化学概念和任务,研究者们采用了一种迭代和多样化的策略。首先,他们利用大型语言模型(如GPT-4)基于种子模板生成一系列的问答对。这些问答对在语义上保持一致,但在表达上有所不同,从而增加了模型处理不同指令的能力。这种方法不仅提高了数据的多样性,也使得模型能够更好地理解和生成化学相关的对话。

研究者们还引入了“扮演剧作家”策略来创建多轮对话场景。这种方法通过模拟专家之间的深入讨论,生成逻辑严密的对话流。在这个过程中,模型不仅要学会如何预测反应产物,还要能够就反应条件和产率等进行深入分析和讨论。这种多轮对话的构建不仅增强了模型的上下文理解和推理能力,也使得模型能够更自然地参与到化学领域的对话中。

在开发 ChemLLM 的过程中,研究者们面临的一个关键问题是如何在保持语言模型通用对话能力的同时,赋予其专业的化学知识和应用能力。为了解决这个问题,研究团队设计了一个创新的两阶段指令调整管道,这一方法不仅成功地提升了 ChemLLM 在化学领域的专业能力,也为其他科学领域的语言模型训练提供了新的思路。

两阶段指令调整管道

第一阶段:通用语料库训练 两阶段训练的初始阶段侧重于使用通用语料库来增强模型的语言理解能力。在这一阶段,模型被暴露于多种类型的文本和对话中,这些文本不仅包括日常会话,还涵盖了科学、技术、工程和数学(STEM)等多个领域。通过这种广泛的训练,模型学习到了丰富的语言结构、对话模式和背景知识,为其后续的化学领域专业化训练打下了坚实的基础。

第二阶段:化学领域知识训练 在模型经过通用语料库训练之后,第二阶段的重点是利用 ChemData 数据集对模型进行化学领域的专门训练。ChemData 数据集包含了大量的化学指令数据,这些数据通过模板合成方法生成,涵盖了化学名称转换、分子属性预测、分子生成、分子标题、反应条件预测、反应产物预测等多种化学任务。在这一阶段,模型通过这些专业的化学数据进一步学习化学概念、术语和逻辑,从而获得了处理化学问题的能力。

评估方法采用了专门的工具,如ChemBench、MMLU和GSM8K。ChemBench专注于化学领域的专业任务,通过设置与化学概念、属性和反应相关的具体问题来测试模型。MMLU是一个多任务语言理解评估,覆盖广泛的学科,用以检验模型的通用语言能力。GSM8K则专注于测试模型的数学推理能力。评估过程中,模型的输出会根据预设的评分标准进行打分,这些标准可能包括准确性、响应的相关性以及逻辑一致性。模型的输出处理方式,如答案的解析和比较,也是评估过程中不可或缺的一部分,确保了评估结果的客观性和可靠性。评估包含三个层次的任务,分别是:

名称转换:测试模型在不同化学标识符间转换的能力,如SMILES字符串、IUPAC名称和化学式。

分子标题:评估模型预测分子特性的能力,例如分子的溶解度或血脑屏障的穿透性。

化学反应预测:测试模型预测化学反应结果的能力,这需要模型综合化学原理、反应动力学和分析思维。

这些任务从基础到高级逐步评估了化学语言模型对化学领域的理解。通过与其他大型语言模型(包括GPT-3.5和GPT-4)的比较,ChemLLM在所有评估任务上都展现出了卓越的性能。

不同大模型(LLMs)在ChemBench基准测试上的性能表现
大模型(LLMs)在通用评估任务上的性能表现

通用语言能力评估(MMLU和GSM8K): 尽管ChemLLM专注于化学领域,但其在通用对话和逻辑推理方面的能力也同样重要。为了评估这一点,研究者们使用了MMLU(Massive Multitask Language Understanding)基准测试,它涵盖了57个不同学科的主题,以及GSM8K,这是一个测试语言模型数学能力的测试集。ChemLLM在多个领域,包括大学级别的物理和数学部分,都展现出了强大的性能,特别是在形式逻辑部分,与其他模型相比,ChemLLM的性能提升显著。

多语言能力评估: ChemLLM的多语言能力是通过Chinese ChemQA和Chinese M&H ChemTest两个数据集来评估的。这些数据集测试了模型在中文环境下理解和生成化学内容的能力。ChemLLM在这些评估中取得了令人称赞的准确性,证明了其作为多语言工具在化学领域的实用性。

定性结果: 除了定量评估外,ChemLLM还经过了一系列定性测试,包括化学相关的自然语言处理任务,如文本翻译、化学信息学编程和创作化学诗歌等。这些测试结果突出了模型在不同自然语言处理环境中对化学知识细腻理解和创造性应用的能力。

伦理定性测试: 认识到在部署化学语言模型时伦理考量的重要性,研究者们引入了伦理定性测试。这一测试模块评估了模型在六个敏感领域(包括化学武器、化学和药品安全、实验室安全、精神活性物质和受控化学物质以及科学和技术中的更广泛伦理困境)中的人类价值观一致性。这种方法衡量了模型在技术理解和对伦理影响的敏感性,以解决未来由大型语言模型驱动的化学研究中固有的潜在风险和争议。

通过这些综合评估,显示了ChemLLM不仅在化学领域内表现出色,而且在伦理和多语言能力方面也具备高度的适应性和责任感。这些评估结果为ChemLLM的进一步开发和应用提供了坚实的基础,并为科学语言模型的评估提供了宝贵的参考。

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

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

RabbitMQ高级篇(如何保证消息的可靠性、如何确保业务的幂等性、延迟消息的概念、延迟消息的应用)

文章目录 1. 消息丢失的情况2. 生产者的可靠性2.1 生产者重连2.2 生产者确认2.3 生产者确认机制的代码实现2.4 如何看待和处理生产者的确认信息 3. 消息代理(RabbitMQ)的可靠性3.1 数据持久化3.2 LazyQueue( 3.12 版本后所有队列都是 Lazy Qu…

《七日世界》游玩感想

《七日世界》是一款最近新出的引人入胜的游戏,它以独特的故事情节和精美的画面设计吸引了许多玩家的关注。在这款游戏中,玩家需要在七天的时间里探索一个神秘的幽灵世界,解开其中的谜题,救出被困的灵魂。 首先,让我来聊…

1996-2023年上市公司绿色并购数据(含原始数据+处理代码+计算结果)

1996-2023年上市公司绿色并购数据(含原始数据处理代码计算结果) 1、时间:1996-2023年 2、指标:股票代码、首次公告日期、年份、买方、卖方、标的方、交易概述、标的物名称、标的物说明、买方经营范围、卖方经营范围、标的方经营…

28.jdk源码阅读之CopyOnWriteArraySet

1. 写在前面 CopyOnWriteArraySet 是 Java 中一个线程安全的 Set 实现,它的底层是基于 CopyOnWriteArrayList 实现的。这种数据结构在并发编程中非常有用,因为它在写操作时会创建一个新的数组副本,从而避免了并发修改问题。不知道大家对它的底…

angular入门基础教程(五)父子组件的数据通信

组件之间的通信是我们业务开发中少不了的,先了解下父子组件的通信 父组件传数据给子组件 前面,我们学会会动态属性的绑定,所以在父组件中给子组件绑定属性,在子组件中就可以使用这个属性了。 父组件中声明然后赋值 export class AppCompon…

C语言 | Leetcode C语言题解之第304题二维区域和检索-矩阵不可变

题目: 题解: typedef struct {int** sums;int sumsSize; } NumMatrix;NumMatrix* numMatrixCreate(int** matrix, int matrixSize, int* matrixColSize) {NumMatrix* ret malloc(sizeof(NumMatrix));ret->sums malloc(sizeof(int*) * (matrixSize …

图论:721. 账户合并(并查集扩展)

文章目录 1、题目链接2、题目描述3、并查集思路3.1、按秩合并3.2、常用并查集代码 4、题目解析 1、题目链接 721. 账户合并 2、题目描述 3、并查集思路 并查集可以在很短的时间内合并不同的集合。它的思想为,一开始将不同单元单独作为一个结点,然后按…

【Qt】修改窗口的标题和图标

以下操作仅对顶层 widget(独⽴窗口),有效。 修改窗口的标题 一.windowTitle属性 1.概念 是一种在用户界面中显示窗口的标题的属性。它可以用来设置窗口的标题栏文本。 2.API API说明windowTitle()获取到控件的窗⼝标题.setWindowTitle(const QString& title)设置控件的…

线性回归和逻辑回归揭示数据的隐藏模式:理论与实践全解析

机器学习之线性回归和逻辑回归 1. 简介1.1 机器学习概述1.2 监督学习的定义与重要性1.3 线性回归和逻辑回归在监督学习中的作用1.3.1 线性回归1.3.2 逻辑回归 2. 线性回归(Linear Regression)2.1 定义与目标2.1.1 回归问题的定义2.1.2 预测连续目标变量 …

Redis持久化之RDB和AOF详解

持久化是确保 Redis 数据在服务器重启或崩溃时不丢失的关键功能。由于 Redis 是基于内存的数据库,如果不进行持久化,所有数据都存在于内存中,一旦服务器进程退出,内存中的数据就会丢失。持久化机制可以将 Redis 的数据库状态保存到…

Qt 学习第三天:加一个按钮

本章心得&#xff1a; 这个章节有点像写前端的味道了&#xff0c;设置按钮大小&#xff0c;按钮位置&#xff0c;窗口大小......代码全在widget.cpp上写的 #include "widget.h" #include "ui_widget.h" #include <QPushButton>Widget::Widget(QWid…

C++初级学习:⼊⻔基础

本文内容&#xff1a; 1.C参考⽂档&#xff1a;2.C第一个程序3.命名空间3.1namespace的价值3.2namespace的定义3.3命名空间的使用 4.C输⼊&输出5.缺省参数6.函数重载 1.C参考⽂档&#xff1a; https://legacy.cplusplus.com/reference/ https://zh.cppreference.com/w/cp…

实战:Zookeeper 简介和单点部署ZooKeeper

Zookeeper 简介 ZooKeeper是一个开源的分布式协调服务&#xff0c;它是Apache软件基金会下的一个项目&#xff0c;旨在解决分布式系统中的协调和管理问题。以下是ZooKeeper的详细简介&#xff1a; 一、基本定义 ZooKeeper是一个分布式的、开放源码的分布式应用程序协调服务&a…

添加索引导致微服务异常

一、现象 某app部分功能不可用&#xff0c;提示“连接服务器超时&#xff0c;请稍后尝试”。 二、分析 1、分析发现数据库存在大量的TM争用。 2、继续分析发现存在TM行锁的阻塞会话主要是以下几个&#xff1a; 3、查看其阻塞源头是1940 4、而1940进程在这个时间段是在跑新增索…

逆矩阵、秩

在数学的广阔天地中&#xff0c;线性代数扮演着至关重要的角色。它不仅是现代科学和工程学的基石&#xff0c;也是理解复杂数据结构的关键。本文将深入探讨线性代数中的几个核心概念&#xff1a;逆矩阵、秩、列空间和零空间&#xff0c;通过详细的解释和丰富的实例&#xff0c;…

(2024,LoRA压缩和多LoRA快速切换,联合对角化,重构误差)先压缩再提供服务:以极低的开销为数千个 LoRA提供服务

Compress then Serve: Serving Thousands of LoRA Adapters with Little Overhead 公和众与号&#xff1a;EDPJ&#xff08;进 Q 交流群&#xff1a;922230617 或加 VX&#xff1a;CV_EDPJ 进 V 交流群&#xff09; 目录 0. 摘要 1. 简介 3. 基于秩的 LoRA 压缩 3.1 期望特…

ubuntu安装tar安装 nginx最新版本

一、需要先安装依赖 apt install gcc libpcre3 libpcre3-dev zlib1g zlib1g-dev openssl libssl-dev 二、上传安装包 并解压 下载地址 nginx news tar xvf nginx-1.25.2.tar.gz 进入nginx cd nginx-1.25.2 三、编译 ./configure --prefix=/usr/local/nginx --with-htt…

数组模拟单调栈--C++

本题的计算量较大&#xff0c;用暴力算法会超时&#xff0c;的用别的方法&#xff0c;我们假设在左边找第一个比它小的数&#xff0c;那么在左边出现一次的数如果比右边大了&#xff0c;那么就不会在出现了&#xff0c;我们将它删除掉就可以了&#xff0c;用这个方法我们可以的…

算力QoS技术革新:OrionX引领AI行业资源管理新趋势

01 前言 在当今数字化时代&#xff0c;人工智能&#xff08;AI&#xff09;已成为各行业发展的关键推动力。然而&#xff0c;随着AI技术的蓬勃发展&#xff0c;行业对计算资源的需求也日益增长&#xff0c;传统的资源分配方式已无法满足需求。 在这一背景下&#xff0c;算力Q…

基于vue-onlyoffice实现企业office web在线应用

目录 1.背景... 1 2.Onlyoffice介绍... 2 3.Onlyoffice核心api介绍... 2 3.1 ApiDocument 2 3.2 ApiParagraph. 2 3.3 ApiTable. 2 3.4. ApiRange. 3 4.Onlyoffice插件介绍... 3 4.1 插件定义... 3 4.2 插件对象... 3 4.3 插件结构... 4 4.4 插件内嵌使用方式... 4…