大型语言模型(LLM)已成为处理自然语言和汇聚世界知识的尖端技术,呈现了令人惊叹的自然语言理解和生成能力。然而,人类的语言远不止自然语言那么简单,特别是在科学研究领域,比如化学,存在着极其复杂且精确的专业语言体系,例如用表示分子结构的化学语言(SMILES),这些语言体系拥有自己独特的词汇系统,与日常所用的自然语言有着极大的不同。
为了促进对科学语言的理解,推动科学大语言模型 (Sci-LLM)落地,大模型语料数据联盟最新发布了精心构建的高质量化学语言微调数据集——ChemData,提供了7,000,000条用于指令微调(Instruction Tuning)的问答对,覆盖了广泛的化学领域专业知识,为增强化学语言模型的能力、推动化学研究和创新带来突破性进展提供了丰富多样且高质量的数据。快来一睹为快。
一、数据集简介
ChemData是大模型语料数据联盟成员单位上海人工智能实验室(Shanghai Artificial Intelligence Laboratory)精心构建的大规模数据集,旨在为化学语言模型的微调提供支持,从而提高、释放其全部化学潜力。
1.数据集来源
为确保化学语言模型的有效性,获取多样化且高质量的数据集至关重要。因此,研究团队从大量的知名在线数据库中收集了海量化学数据,这其中包括了PubChem、ChEMBL、ChEBI、ZINC、USPTO、ORDerly、ChemXiv、LibreTexts Chemistry、Wikipedia和Wikidata等等。基于这一系列在线数据库,研究团队构建了ChemData数据集。
2.数据集构成
ChemData包含了7,000,000条用于指令微调(Instruction Tuning)的问答对。同时,ChemData覆盖了广泛的化学领域专业知识,主要面向三种化学任务类型:分子(Molecules)、反应(Reactions)以及其它特定领域(Domain-specific)任务。
● 分子(Molecules)具体而言,分子相关的任务包括名称转换(Name Conversion)、文生分子(Caption2Mol)、分子生文(Mol2Caption)和分子属性预测(Molecular Property Prediction),这些任务旨在优化、提升语言模型对化学分子的理解能力。
● 反应(Reactions)与反应相关的任务涵盖了逆合成(Retrosynthesis)、产物预测(Product Prediction)、产率预测(Yield Prediction)、温度预测(Temperature Prediction)和溶剂预测(Solvent Prediction),涵盖了化学反应的各个方面。
● 其它特定领域(Domain-specific)此外,所有无法明确分类的其他数据都归类为特定领域任务,这些数据提升了化学语言模型对整个化学领域的理解。
数据的具体分布图 1所示:
图 1 ChemData数据分布图,包含了九项化学核心任务
二、数据质量验证
借助ChemData,化学领域的研究人员和实践者可以利用丰富多样且高质量的数据,增强化学语言模型的能力,从而为化学研究和创新带来突破性进展。
利用该数据集训练的ChemLLM模型在化学任务上表现出色
上海人工智能实验室AI for Science团队利用ChemData对InternLM2-chat-7B进行了训练,得到了化学大模型ChemLLM。实验结果表明,ChemData对模型化学能力的提高具有显著的作用,在一些化学任务上,ChemLLM的表现超越了GPT-4。相关的实验结果见图 2。
(ChemLLM demo 体验地址:https://openxlab.org.cn/apps/detail/OpenScienceLab/ChemLLM)
图 2 不同模型在ChemBench上的表现
ChemData可以指导模型学会求解高考化学题,即使涉及到复杂的推理,经过训练后的模型也可以精确地进行解答;除此之外,ChemData能做到的还有很多很多。
图 3 ChemLLM在解答高考化学题上的表现
三、数据集下载
当前数据集的1/10已经开源发布至 OpenDataLab:https://opendatalab.com/AI4Chem/ChemData700K
论文地址:https://arxiv.org/pdf/2402.06852v2化学大模型ChemLLM demo
体验地址:https://openxlab.org.cn/apps/detail/OpenScienceLab/ChemLLM
诚邀您即刻使用ChemData并加入我们的社区,为您的化学语言模型注入新的活力以及沟通相关合作!我们真诚地期待您的反馈。
更多数据集,请访问OpenDataLab:https://opendatalab.org.cn/
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。