基于CRF和Bi—LSTM的保险名称实体识别
   来源:智能计算机与应用     2018年09月10日 08:23

基于CRF的中文命名实体识别的研究.pdf

陈彦妤 杜明

文章编号: 2095-2163(2018)03-0111-04中图分类号: 文献标志码: A

摘要: 关键词: (Schoo of Computer Science and Technology, Donghua University, Shanghai 201620, China)

Abstract: Because the insurance name is long and there are a lot of abbreviations and ambiguities in the user's query, identifying the insurance naming information in the user question becomes a research problem in insurance intelligent question answering. In this paper, a model (Bi-LSTM-CRF) combining Conditional Random Field (CRF) with two-way long-term memory networks(Bi-LSTM)is proposed. Then pre-trained word embedding vectors are added to train this model. The experiment result shows that: compared with the traditional method of machine learning, Bi-LSTM-CRF has a better performance in insurance Name Entity Recognition.

Key words:

作者简介:

收稿日期: 引言

社会保险作为现代经济的分支产业和风险管理的基本手段,是衡量经济发达程度和国民生活水平的有效标志。但是目前大部分民众对于保险领域相关知识却甚少涉猎。在参保人面临选择、产生问题时,如何利用智能问答[1]相关技术,准确理解用户的查询意图,为其提供专业、精准的问答服务,更好地辅助参保人做出选择即已成为互联网保险领域的热门趋势。

但保险行业是一个门类庞杂、内容泛化的实践领域。且保险领域内的许多专有名词,例如保险名称,字数普遍较多,且构成较为复杂。所以人们在提出问题时常常不能准确地表达出完整的保险名称,而是使用简写、别名等方式进行描述,甚至常常会发生错别字、歧义等混淆事件。这种情况给用户问句的理解带来了很大的困难。同时,句子内的标点符号、句子构成方式、空格等都会对保险名称的识别造成重大影响。综上分析可知,研究识别用户问句中的保险名称则有着不可忽视的实际应用价值。

1相关工作

目前,学术界对于命名实体识别[2]的研究,根据模型和算法的不同,现已陆续推出了成效可观的各类技术成果,对其可给出如下重点表述。

规则和词典相结合的方法最早应用于命名实体识别中。该方法的规则主要是人工构造规则模版,以字符串匹配的算法来设计展开命名实体的识别。这类方法的性能很大程度上将依赖于优质的人工构造规则和完整的词典。贾自艳等就是通过单字和多字的组合规则模型来实现命名实体的识别[3]。在保证这一前提的基础上,基于词典和规则的方法往往可以获得优良性能。但此类方法的人工成本较大,可移植性不高。

基于统计的机器学习算法是近年来获得学界高度瞩目与广泛应用的命名实体识别算法。这类方法多依托于统计学模型,并基于半监督的机器学习方法识别实体。主要的方法有最大熵(ME)[4]、隐马尔可夫模型(HMM)[5]、条件随机场(CRF)等。Zhao等通过最大熵模型对4类名词进行实体识别,获得了77.87%的准確率[6]。另有陈霄采用SVM模型提出了中文组织机构名的实体识别,准确率达到了81.68%[7]。其中,CRF自2001年由Lafferty[8]等人研发提出后,就广泛应用于命名实体识别领域。在中文实体识别领域,相较于其它的统计学算法,也取得了更好的效果。

随着命名实体识别的研究日趋深入,学术界正尝试将现阶段焦点性的深度学习技术应用于中文命名实体的识别中。如卷积神经网络(CNN)[9]、循环神经网络(RNN)等。其中,解决了RNN的长依赖问题的LSTM模型已获证实在命名实体识别中有更好的效果。在命名实体识别中,相较于其它深度学习算法,LSTM可以更为完善地存储句子中前后信息,同时也可以拟合非线性神经网络,这些特点都可以较好地弥补基于统计的CRF等模型的缺陷。因此,近一时期以来,学术界开始致力于将深度学习与机器学习结合起来,通过综合多种算法的优点来提高实体识别的效果。

基于以上问题,本文开展了如下研究工作:

(1)用保险领域语料预训练字向量,将句子按字标注,将预训练的字向量代替常规词向量作为模型的输入。实验证明在保险这一特殊专业词汇较多的领域中,预训练的字向量相比词向量取得了更好的效果。

(2)将双向的LSTM神经网络结合CRF的模型应用到保险名称的命名实体识别中。这样将双向LSTM可以保存句子前后信息的优势与CRF相结合,仿真实验最终表明该模型在保险名称实体识别中具有更加优越的性能表现。

2基于BI-LSTM-CRF实现保险名称实体识别

2.1CRF

研究可知,CRF是对最大熵模型(HMM)的改进。根据给定的输入序列,CRF可以推测出对应的最优标记序列,因此CRF可以应用于命名实体的识别。这里,通过研究可得线性链条件随机场即如图1所示。

2.2Bi-LSTM

LSTM是一种解决序列标注中出现的长依赖问题的RNN模型。一般LSTM包含3个门,分别是:输入门(Input Gate)、忘记门(Forget Gate)、输出门(Output Gate),通过这3个门来控制细胞状态。其中,输入门决定保留当前输入的多少信息,忘记门决定保留上一个隐层传来的多少信息,输出门决定将输出多少的信息。每个门通过sigmoid层和pointwise层的操作来对输入到门的信息进行选择和删除。例如sigmoid层通过产生一个0~1之间的参数用来选择相应比例的信息。

Bi-LSTM相较LSTM又引入了一定程度上的优化。Bi-LSTM不仅可以保存前面的信息,同时也可以考虑到之后的信息,对于中文这种语义受上下文影响较大的语言来说,Bi-LSTM已获证实可以在中文序列标注中取得更好的效果。

如图2所示,结合预训练生成的字向量,通过word embedding层转化为字向量序列X1-i,将其作为Bi-LSTM的输入。前向LSTM从左到右输入,得到一组输出h1-i;后向LSTM从右到左输入得到一组输出hi-1。这样得到了2组元素长度均为hidden size的输出,最后将2组输出的Ht相加得到Bi-LSTM的输出。

2.3基于Bi-LSTM-CRF识别保险名称实体

在本文中,研究结合Bi-LSTM和CRF这2种模型,通过Bi-LSTM层获得之前和未来的输入特征,利用深度学习解决CRF中的序列特征提取问题。

首先采用了BIO经典标注法来对用户语料按字进行标注,标注后结果可见表1。

然后将利用word2vector[10]结合爬取到的保险问题语料展开字向量的预训练,并结合预训练字向量和标准化处理后的语料集即可以开始模型训练。

标注句子标注句子标注句子标注请O福I-BXN年O么O问O的O龄O?O平B-BXN投O是O安I-BXN保O什O如图3所示,在每一次训练过程中,可将用户问句按字符分开,并将字求得向量化,再作为模型的输入。将双向LSTM的输出htl和htr相加,传入Liner层和Log-Softmax层进行非线性操作得到ht,同时将ht传入CRF层。定义上述输出的分数矩阵为n*k的矩阵P。其中,n为句子中字向量的个数,k为需要识别的所有标签个数,Pi,t表示的是整个句子中第t个词标签是i的分数。过程中将该矩阵作为CRF层的输入,CRF层可以引进句子局部特征的线性加权值,获得句子级别标签信息。通过状态转移矩阵参数的作用,可以有效利用前后标签来预测当前标签,优化整个序列。为此,可定义这个状态转移为(k+2)*(k+2)的矩阵A,其中Ai, j表示在一个连续的时间序列中,第i个标签转移到第j个标签的分数[11]。对于输入序列x,预测的标签序列y的分数的公式表述为:sx,y=∑ni=0Ayi, yi+1+∑ni=1Pi,yi(1)

再用softmax层计算出所有可能标签的概率,在训练过程中不断收敛,最大程度地提高正确预测序列的分数。研究推得数学运算公式如下:py|x=es(x,y)1Yxexp (∑y∈Yes(x,y)x)(2)

logpy|X=1K[sx,y-log∑y∈Yxλiesx,y](3)其中,λ表示向量维度;K为句子字数;Y为所有可能的标签序列。

至此,CRF层会输出一个得分最高的标记序列。多次训练后,不断调整网络参数,得分最高的序列会逐步向预先标记的正确序列靠近,综上就是模型的训练过程。得到一个效果较优的模型后,当面对输入问题:请问平安福的投保年龄是什么?模型可以将保险名称:“平安福”这一实体识别出来。

3实验

3.1实验数据集

为了对本文提出的方法进行有效性评估,本文从专业化保险服务平台沃保网和向日葵保险专家网站上爬取并整理了11 456条用户问题数据,并按字对其进行手工标注。其中,7 320条左右作为训练集,3 019条作为测试集,剩下1 117条作为交叉验证集。

本文中字向量[12]由Google开源工具word2vec中的skip-gram模型,结合事先爬取的保险领域问句进行字向量训练,由此形成100维的字向量。对比实验采用的词向量借助jieba分词处理,再使用word2vec训练,维度也为100维。

3.2实验参数设置

本文实验中,字向量维度为100维,LSTM隐层单元数为100,丢弃率(dropout rate)为0.6,学习率为0.001。

3.3实验结果分析

为了更好地讨论信息统计与结果分析,从数据集中随机选取定量记录进行样本分析,并获取准确率P、召回率R和F1度量值。这3个指标具体定义公式如下:P=识别正确的实体数识别的实体总数(4)

R=识别正确的实体数文本中包含的实体总数(5)

F1=2*P*RP+R(6)基于如上3个指标,就可以较全面地评价模型性能。利用本文的保险问题数据集来设计生成对比实验,最终实验结果可见表2。

结论:

(1)通过对比Bi-LSTM-CRF+ Pre-trained Word和Bi- LSTM-CRF + Pre-trained Character模型的数据,进一步分析后发现,采用预训练的字向量作为输入比用词向量效果更好。相应的准确值、召回率、以及F1值都有较大的提高。对于保险领域问句来说,句子中含有较多的领域专业词汇,且句子较短,噪声较大。采用jieba对句子进行分词很容易产生歧义。若采用字向量作为分词则可以避免这种歧义情况,在保险名称实体识别中可以获得更好的效果。

(2)通过对比CRF、Bi-LSTM+ Pre-trained Character和Bi- LSTM-CRF + Pre-trained Character模型的评价指标,处理分析后发现,本文提出的基于预训练字向量的Bi-LSTM-CRF在保险名称实体识别中可以取得更好的效果。Bi- LSTM-CRF 结合预训练字向量,利用Bi-LSTM为 CRF选取最优特征工程,利用CRF句子级别的标签信息优化Bi-LSTM结构。结合两者可以获得更佳的识别效果。

4结束语

保险领域的智能问答技术设计与实现已然成为当下人工智能与社会保险相契合的热点研究项目。不同于以往建立问答语料库,并通过计算问句相似度来查询相近答案的方法,本文是从自然语言角度出发,能够更加贴切、充分地理解用户查询意图。实验表明,对比当下学术界流行的各个模型,在真实的保险领域问句数据中,本文的模型在保险名稱命名实体的识别上取得了较好效果。未来将考虑引入attention机制,根据各种字符的不同重要程度分配相应的权重,动态地利用字向量信息[13]。

參考文献

[1] 毛先领,李晓明. 问答系统研究综述[J]. 计算机科学与探索,2012,6(3):193-207.

[2] NADEAU D, SEKINE S. A survey of named entity recognition and classification[J]. Journal of Linguisticae Investigations, 2007, 30 (1) :1-20.

[3] 贾自艳,史忠植. 基于概率统计技术和规则方法的新词发现[J]. 计算机工程,2004,30(20):19-21,83.

[4] BERGER A L, PIETRA V J D, PIETRA S A D. A maximum entropy approach to natural language processing[J]. Computational linguistics, 1996, 22 (1) :39-71.

[5] RABINER L, JUANG B. An introduction to hidden Markov models[J]. IEEE ASSP Magazine, 1986, 3 (1) :4-16.

[6] ZHAO Jian. Research on conditional probabilistic model and its application in Chinese Named Entity Recognition[D]. Harbin:Harbin Institute of Technology,2006.

[7] 陈霄. 基于支持向量机的中文组织机构名识别[D]. 上海:上海交通大学,2007.

[8] LAFFERTY J,MCCALLUM A,PEREIRA F. Conditional random fields: Porbabilistic models for segmenting and labeling sequence data[C]//Proceedings of the 18th International Conference on Machine Learning. Williamstown, MA, USA:Williams College,2001: 282-289.

[9] COLLOBERT R, WESTON J, BOTTOU L, et al. Natural language processing (almost) from scratch[J]. The Journal of Machine Learning Research, 2011, 12 (1):2493-2537.

[10]MIKOLOV T, SUTSKEVER I, CHEN Kai, et al. Distributed representations of words and phrases and their compositionality[J]. arXiv preprint arXiv:1310.4546, 2013.

[11]HUANG Zhiheng, XU Wei, YU Kai. Bidirectional LSTM-CRF models for sequence tagging[J]. arXiv preprint arXiv:1508.01991v1, 2015.

[12]WANG Ling, LUS T, MARUJO L,et al. Finding function in form: Compositional character models for open vocabulary word representation[J]. arXiv preprint arXiv:1508.02096v1, 2015.

[13]REI M, CRICHTON G K O, PYYSALO S. Attending to characters in neural sequence labeling models[J]. arXiv preprint arXiv:1611.04361,2016.

文章 平安 向量