编译 | 曾全晨 审稿 | 王建民
今天为大家介绍的是来自Kamal Choudhary团队的一篇论文。在这项工作中,作者介绍了ChemNLP库,它可用于以下方面:(1)整理材料和化学文献的开放访问数据集,开发和比较传统机器学习、transformer和图神经网络模型,用于(2)对文本进行分类和聚类,(3)进行大规模文本挖掘的命名实体识别,(4)生成摘要以从摘要中生成文章标题,(5)通过标题生成文本以建议摘要,(6)与密度泛函理论数据集集成,以识别潜在的候选材料,如超导体,以及(7)开发用于文本和参考查询的网络界面。作者主要使用公开可用的arXiv和PubChem数据集,但这些工具也可以用于其他数据集。此外,随着新模型的开发,它们可以轻松集成到该库中。
估计在网络上可获得的学术文章数量超过1亿篇。从这样庞大的语料库中执行特定的科学查询并提取有意义的信息是一项艰巨的任务。自然语言处理(NLP)是人工智能和语言学的一个子领域,用于使计算机理解人类语言中的陈述或单词,并执行有用的任务。NLP可用于学术文章的多个应用,如文本摘要、主题建模、机器翻译、语音识别、词形还原、词性标注、语法错误纠正、学术引用网络分析、命名实体链接、文本到文本和文本到图像生成等。诸如Web of Science、Scopus、Google Scholar、Microsoft Academic、Crossref和PubMed等多个网络工具使用NLP从学术文章中提取和分析信息。然而,科学文献,特别是化学和材料科学数据,包含许多难以使用传统NLP工具处理的技术术语。目前NLP在材料应用方面仍然是一个活跃的发展领域,存在许多使材料数据的NLP变得困难的问题。
数据来源
作者主要使用了两个开放获取的数据集:arXiv和PubChem。arXiv是由康奈尔大学维护和运营的一个合作资助、社区支持的资源。在当前版本中,arXiv收集了34年来的1796911篇预印本文章,涵盖了物理学、数学和计算机科学等科学领域及其子领域的文献。每篇arXiv预印本包含文本、图表、作者、引用、类别和其他元数据,这些对于NLP应用非常重要。这些元数据是用户在上传他们的手稿到arXiv时输入的。类似地,PubChem数据集是一个开放获取的集合,包括43920篇文章(在此版本中),涵盖了各种主题,如深度学习、COVID-19、人类连结组、脑机接口、电活性聚合物、PEDOT电极和神经假肢等。最初,这两个数据集是从Kaggle竞赛中获得的,然后转换为JARVISTools数据格式。需要注意的是,arXiv/PubChem文章在同行评审流程之后经常会进行更新,使用相应的版本控制过程,这可能会影响AI模型的应用。然而,为了保证可重复性,在工作中,作者使用了与FigShare相关联的特定版本的数据集。如果需要,ChemNLP方法也可以应用于数据集的后续版本。
结果
图 1
ChemNLP库的示意概述如图1所示。ChemNLP作为一个开放获取的软件包,用于各种自然语言处理(NLP)任务,特别是用于化学和材料科学应用。
图 2
arXiv数据集为科学文献提供了丰富的大规模数据集。在图2a中,作者展示了arXiv数据集中的几个学术文章类别。这种分类是因为数据集中存在167个分类标签数据。从图2a中可以看出,大多数文章属于物理学、数学和计算机科学领域。同样地,在图2c中展示了PubChem数据集的分布情况,共有43,920篇文章。
图 3
接下来,在图3中展示了不同凝聚态文章标题中的词云图。词云是一组以不同大小呈现的词汇集合。词语越大越粗,表示在给定文本中出现的频率越高,重要性越大。有趣的是,像二维这样的词汇在所有类别中都出现,表明这种类别是研究较多的材料之一。类似地,像磁性和超导性这样的词汇在多个类别中都出现,表明这类材料受到多个领域专家的研究。类似的分析也可以在PubChem数据集上进行,使用ChemNLP包中提供的工具。
图 4
t-SNE揭示了高维数据中的局部结构,如果在高维特征向量上具有相似性,将在低维可视化中将点放置在彼此附近。首先,作者从文本语料库中提取文章标题,并获得给定词干的TF-IDF。TF-IDF是指一个术语在单个文档中出现的相对频率,与该术语在文档池中的总论文数和出现该术语的文档数之比的乘积。然后,对稀疏数据执行截断奇异值分解(TruncatedSVD)以降低嵌入空间的维数(128维)。随后执行t-SNE将嵌入空间降低到两个维度,得到的t-SNE图在图4a中显示,标记颜色表示arXiv:cond-mat类别中每篇文章的文章类别。接下来,在图4b中展示了PubChem数据集的t-SNE图。与cond-mat文章类似,t-SNE也可以将PubChem数据集中不同类别的文章进行聚类。这些图表表明文章数据分布良好。
表 1
图 5
尽管聚类分析在定性解释方面可能很有用,但更多的定量分析可以通过监督分类训练来完成。作者将分类模型应用于arXiv:cond-mat和PubChem数据集,将文本转化为数字向量,使用词袋模型和TF-IDF。作者选择(1)标题,(2)摘要和(3)标题与摘要文本来对文章进行分类,如上所述。将数据集中的文本转换为数值表示后,作者应用了一些众所周知的机器学习算法,如随机森林(RF)、线性支持向量机(SVM)、逻辑回归(LR)和图神经网络(GNN),在表格1中展示了性能。对于所有模型,标题与摘要的模型获得了最高的准确率。SVM模型主要实现了最高的准确率值。在图5中展示了标题和摘要模型的分类混淆矩阵,用于这两个数据集,发现绝大多数预测都位于对角线上。
图 6
然整体文本分类对许多应用可能有帮助,但通常逐词分类文本允许对文本数据进行丰富的挖掘。命名实体识别(NER)或标记分类被用作文本挖掘方法,用于提取有意义的信息(称为实体)。作者使用MatScholar数据集,并使用XLNet训练一个Transformer模型,以高准确率提取实体。在训练模型之后将模型应用于arXiv的标题、摘要以及全文,以开发与材料设计相关的实体数据库。在图6a中显示了对参考文献中摘要的NER应用示例。此外,作者在图6b中展示了arXiv cond-mat文章中的实体分布。可以发现摘要主要以属性标记为主,材料特定名称最少。
图 7
文本到文本生成是自然语言处理中发展最迅速的领域之一,特别是在大型语言模型(LLM)领域的革命之后。有许多文本到文本生成的任务,但在这里作者选择关注两个应用:(1)摘要生成,例如从文稿摘要中生成标题,以及(2)文本生成,例如从论文标题生成摘要,如图7中的示例所示。显然,对于这两个任务并没有唯一的方法。尽管如此,这些摘要和标题是由高素质的科学家和工程师写作的,可以作为合理的比较基准。作者对arXiv-cond-mat数据集进行了80:20的训练-测试分割,使用ROUGE分数评估测试集的模型性能。因此,训练数据集有110,342个条目,而测试数据集有27,585个条目。训练后,得到了一个ROUGE-1分数为46.5%,远好于未经训练的模型分数30.8%。显然,对模型进行微调可以帮助提高性能。这里获得的ROUGE分数与其他摘要生成任务中的分数相似(通常在50%以下)。
总结
作者开发了一个ChemNLP软件包,可以用于使用公开可用的数据集分析重要的材料化学信息。为了弥合材料科学/化学和自然语言社区之间的差距,作者展示了几个对科学界可能有用的用例。作者还整合了化学和材料科学的大型数据集,使它们可以相互补充。随着新的模型和数据集的发展,它们可以轻松地集成到ChemNLP软件包中。
参考资料
Choudhary, Kamal, and Mathew L. Kelley. "ChemNLP: A natural language-processing-based library for materials chemistry text data." The Journal of Physical Chemistry C 127, no. 35 (2023): 17545-17555.