4.2.3 实体抽取
在定义方面,实体抽取被称为命名实体的识别(Named Entity Recognition,NER),其目标是从文本中抽取实体信息元素,例如人名、商品名、设备名、企业名。比如在商品广告文案“新款iPhone 12限时优惠,不可错过”文本中通过实体抽取,识别出“iPhone 12”这一商品名。实体抽取任务既是许多自然语言处理任务的基础,也是关系抽取、属性抽取等其他知识抽取任务的基础。
在目标方面,实体抽取的目标通常是最大化地发现所有命名实体,而且命名实体须尽量正确。前者通常以召回率(Recall)来定义,后者通常以准确率(Precision)来定义,当将两者结合考虑时,通常以F1值来评估。因此,实体抽取任务需要围绕召回率、准确率、F1值来规划模型迭代目标。
在技术方面,实体抽取、命名实体已在业内发展多年,整个技术体系已相对成熟、完善。在算法方面,常见的实体抽取算法通常包括以下3种方法。
(1)基于规则的方法:指通过构建字典、正则规则、专家规则,对语句进行匹配与规则判断。将基于规则的方法与分词工具进行配合,可以在小规模数据集上达到较高的准确率,常见的分词工具有jieba、HanLP、IK等。但随着业务数据集的增加,字典、正则规则、专家规则的构建成本都将显著增加。同时,基于规则的方法对于新实体或者跨领域实体的识别能力都较弱,可移植性也低。
(2)基于特征的统计机器学习方法:指通过对语句语义特征进行提取,运用统计模型对文本进行文本分类或序列化标注。常见的算法有隐马尔可夫(HMM)、最大熵、条件随机场(CRF)等。美国斯坦福大学开发的Standford NER作为业内典型的工具,是基于CRF的系统。基于特征的统计机器学习方法通常涉及训练语料标注、特征定义和模型训练三项工作。为了达到业务效果,开发人员需要对文本有较深的业务理解,才能正确标注样本、合理构造特征来完成模型迭代。
(3)基于深度神经网络的方法:指深度神经网络将文本以词向量形式输入,自动进行特征构建,实现端到端的命名实体识别。常见的算法有卷积神经网络(CNN)、循环神经网络(RNN)、Bi-LSTM+CRF、注意力网络等。同时,word2vec、Bert、ElMo、GPT等预训练模型通过引入外部知识,可以显著提升实体抽取模型的效果。
那么,对自然语文处理模型在企业业务中的落地,应如何进行技术选型呢?
自然语言处理模型在企业业务中落地时,通常会从现有的语料资源、标注工作量、训练计算成本、业务效果需求等维度对算法进行评估。比如开发人员在业务中已整理、积累了一定的词典,并且通过规则匹配可以达到业务预期,那么可以直接采用基于规则的方法。如果开发人员已拥有一定的标注数据,那么可以采用基于特征的统计机器学习方法。如果业务计算资源、标注数据、开发人力资源都相对充足,而且对业务效果有较高的期望,那么可以采用基于深度神经网络的方法。