自动化化学实体识别:创建您的 ChemNER 模型

自动化化学实体识别:打造您的 ChemNER 模型

Aakash Dhage在Unsplash上的照片

我一直对化学有浓厚的兴趣,它在塑造我的学术和职业道路方面起到了重要作用。作为一个有化学背景的数据专业人士,我发现可以将我的科学和研究技能,如创造力、好奇心、耐心、敏锐的观察和数据分析,应用于数据项目中。在本文中,我将为您介绍一个我称为ChemNER的简单命名实体识别(NER)模型的开发过程。该模型可以识别文本中的化学化合物,并将其分类为烷烃、烯烃、炔烃、醇、醛、酮或羧酸等类别。

TL;DR

如果您只想玩一下ChemNER模型和/或使用我制作的Streamlit应用程序,请通过下面的链接访问:

HuggingFace链接: https://huggingface.co/victormurcia/en_chemner

Streamlit应用程序ChemNER链接

引言

NER方法通常可分为以下三类:

  • 基于词典:定义类别和术语的词典
  • 基于规则:定义与每个类别相对应的术语和规则
  • 基于机器学习(Machine Learning,ML):让模型从训练语料库中学习命名规则

这些方法各有优势和局限性,而且并不是复杂和精细的模型总是最好的选择。

在这种情况下,基于词典的方法在范围上会有限制,因为对于我们有兴趣分类的每个类别的化合物,我们需要手动定义该类别中的所有化合物。换句话说,为了使这种方法包含所有内容,您需要为每个化合物类别手动输入每个化学化合物。

机器学习方法可能是最强大的方法,但是标注数据集可能相当费力(剧透:我最终将训练模型,但是为了教育目的,我想展示整个过程)。相反,我们可以从一些预定义的命名规则开始怎么样?