费建军
摘要:信息化时代的到来,人们从互联网中快速获得大量的信息。如何高效的从海量数据中获取有用的资源的需求和人工智能的兴起,促进了问答系统的发展。问答系统是构架于信息抽取之上,其影响着知识库的结构和解析问句的方式。命名实体是信息抽取领域的一个子集。所以本文主要是针对实体识别模型进行研究,本文介绍了三中主流实体识别模型的,并将股票实体作为研究对象,最终采用了CRF(Conditional Random Field)条件随机场模型。在该模型基础上根据上下文和词性特征,提出了CC-CRF识别算法。利用CRF++训练得到能够识别代码和名称的CC-CRF实体识别模型。
关键词:股票;命名实体识别;CRF模型
中图分类号:TP391.6 文献标识码:A 文章编号:1007-9416(2017)07-0093-04
命名实体通常指的是现实中独立存在的具体的或者抽象的事物[2]。如何使计算机能够理解自然语言是智能问答系统需要解决的一个关键问题。自然语言处理的研究范围包括词法分析、信息抽取、自动文摘等[1]。 信息抽取领域中,命名实体识别作为重要分支[3],其任务是标注语句中的实体,所以命名实体的识别有着非常关键的意义。作为文本的基本单位,它包含大量的语义信息,因此对命名实体进行识别可以保证最简单快捷的获得文本信息。他存在的价值就是标注语句中的实体,实体的识别对正确解析自然语言有着极其重要的作用。识别的实体领域一般为人名、机构名、地名以及专有名词等。在实际研究中,还需要根据具体要求来确定。本文中,要识别的实体为股票名称与股票代码[4]。命名实体识别在问句处理和知识库的构建方面发挥着关键性的作用。
命名实体识别的方法主要有:基于规则和词典的方法、基于统计的方法和二者混合的方法[5]。
本文介绍了四种命名实体识别模型(基于规则和词典的方法、隐马尔科模型、最大熵模型、条件随机场模型)以及每种模型的优缺点。在经过对比并且结合股票命名实体的特点,选择条件随机场作为投资领域命名实体的模型。并在此基础上提出了引入了上下文特征和词性特征的CC-CRF识别算法。使用该模型对语料训练得到CC-CRF模型,并对模型的识别效果进行测试。
1 相关工作与常规实体识别模型
1.1 基于规则和词典的方法
基于规则和词典的方法的核心是规则模板构造,但是模板的构造必须由相关领域的专业人士来进行。用其来识别该领域的命名实体。这种方式是该领域刚刚起步时候的识别方式。這种方式的缺点十分明显:成本太高、需要大量的人力时间构造相关领域规则模板、可移植性差。因此此类方法不是本文的研究重点。
1.2 基于统计的方法
基于统计的方法的核心是机器学习。此类方法以训练语料为输入,利用语料对模型进行训练,最终得到命名实体识别模型并输出。基于统计的方式不需要专业的语言学人才,也极大地降低了时间成本。基于统计的方法主要包括:隐马尔科夫模型、条件随机场、最大熵模型等[6]。
1.2.1 隐马尔科夫模型
马尔科夫模型[7]用来描述一个随机过程,该随机过程不可被直接观察,但是可以通过另外一个可观察的随机过程间接观察。该模型有其局限性,他必须是建立在以下的条件上:严格的独立性假设,即观察值只受状态的影响,而不受其他条件的影响。并且作为一种产生式模型,它需要通过枚举出所有可能的观察序列来获得标注序列和观察序列的联合概率。这对于长距离序列来说,穷举所有的观察序列是不现实的。
1.2.2 最大熵模型
为了保证概率预测的随机性和正确性,在推测一个随机事件的概率时,不要作出除了客观约束条件规定以外的任何干涉。满足上述要求的模型,熵值一定是最大的[8]。在自然语言处理中,熵就是信息的不确定程度。熵值越大,分布所受的干涉越少,预测越接近真实情况。最大熵模型不需要严格的独立性假设,上下文信息可以被充分挖掘。它避免了隐马尔科夫模型的缺陷。另外,最大熵模型只需考虑如何选择特征。但是最大熵模型的时间复杂度非常高,而且可能发生标记偏置的情况。
1.2.3 条件随机场模型(CRF)
条件随机场(conditional random field,CRF)模型指的是给定输入变量的条件下得到输出变量的条件概率[9]。对应到命名实体识别中,条件随机场即为判别给定观察序列的标注序列的条件概率模型。条件随机场模型既保留了最大熵模型和隐马尔可夫模型的优点,又克服了他们存在的缺陷。CRF模型不需要独立性假设。它也避免了标记偏置问题。而且在性能上,条件随机场要优于其他两种方式。然而,较高的时间和空间消耗是制约条件随机场性能的缺点。
CRF模型一般被看做无向图模型。设G=(V,E)为一个无向图,其中的顶点集合为V,边的集合为E。X为观察序列,Y为对应的标注序列。则标注序列中的随机变量与G中的点V对应。马尔科夫特性指的是某点是顶点的概率只和与它相连接的顶点有关。如果任一个随机变量都服从马尔科夫特性,即:
,
则将符合上述条件的(X,Y)称为条件随机场。
设表示线性链条件随机场,则有如下等式:
2 CC-CRF命名实体识别算法
CC-CRF识别算法在CRF模型的基础上引入了上下文特征(Context)和词性特征(Characteristic)。提出面向股票领域的CC-CRF实体识别算法。使用CRF++在此算法上对标注好的股票相关语料进行训练,得到CRF模型。最后并对模型进行测试,并对识别结果进行分析。
CC-CRF算法具体的实现方式如下:
(1)进行语料标注。根据2.3章节中的表3、表4进行语料标注。具体请参照2.3章节。
(2)定义特征模板。根据2.1、2.2章节中的表1、表2写入CRF++的template文件中,完成CRF++的特征模板设定。具体请参照2.1、2.2章节。endprint
(3)模型训练。本文的实验环境是ubuntu 14.04,在终端中执行如下代码:
crf_learn -f 3 -c 4.0 template corpus_train.txt crf_model
其中 -f为使用属性的出现次数 -c为代价参数,训练结果将产生一个CRF模型——crf_model。
2.1 上下文特征说明
为了更好的描述模型,CRF的特征模板可以借助上下文信息,充分的挖掘其内在的规律加以利用。在实际训练中,上下文的长度将会对结果产生影响。过长会增加模板的数量、训练时间的空耗、极大可能产生拟合;过短则会使信息挖掘力度不够不能产生最优特征函数。在股票领域的文本中,股票名称往往和“股票”等词相连,并且股票代码一般紧挨着股票名称”出现。因此,上下文特征的引用可以增加股票实体识别的精准率。在本文中,选择设置上下文信息长度为2。上下文特征模板如表1所示。
2.2 词性特征说明
除了上下文特征外[10],词性特征也可以反映文本中和实体有关的信息。一般来说,股票名是名词(n),代码是数词(m),股票一般是名词和动词(v)连在一起。因此,也将词性特征引入股票实体的识别模型中。词性特征模板如表2所示。
2.3 训练语料制作和标注
本文主要针对投资领域中的股票类命名实体进行识别,标注文本中的股票名称和股票代码。由于并没有投资领域语料库,因此相关训练语料需要人工获取并制作。本文在同花顺财经上抓取了股票相关的文本,主要范围是财经新闻及题目,从中挑选了800条语句作为实验材料。从这800条语句中,随机抽取100条来制作测试用语句,其余用来制作训练语料。
在CRF的训练中,语料必须遵循严格的格式要求:每个字(词)及其属性为一行。因此,在得到分词结果后,再对分词结果进行格式处理,分别得到11316条训练语料和5018条测试语料。
在得到语料后,还需要对语料进行标注。本文定义的标注集如表3所示。
在确定了标注集以后,手工标注训练语料和测试语料。标注样例如表4所示。
最后得到本文CRF模型训练所需的语料,将标注好的11316条语料写入文件corpus_train.txt作为训练语料,剩下的写入文件corpus_test.txt作为测试语料。
3 结果与分析
在终端中执行如下代码:crf_test -m crf_model test_001 > result.txt
执行完该语句后,模型将对测试语料test_001进行命名实体识别并且标注,生成结果写入文件result.txt中。测试结果图1所示。
3.1 结果分析
在对模型进行测试后,需要分析标注结果。准确率、召回率和F值可以全面的反映识别的性能。
设识别出的正确的实体数量为n*,识别出的全部实体数量为n,集合中全部正确的实体数量为N,则有:
准确率:
召回率:
F值:
其中,F值综合了P值和R值,F值越高,说明P值和R值越高,模型的性能越好。通过对test_result.txt的处理,得到CC-CRF模型的识别结果如表5所示。
3.2 实验总结
从结果来看,CC-CRF算法在股票实体方面的识别效果已经非常好。CC-CRF保证了模型效果的均衡性和稳定性,在准确率和召回率方面基本比较优秀。
4 结语
信息化时代的到来,人们从互联网中快速获得大量的信息。如何高效的从海量数据中获取有用的资源的需求和人工智能的兴起,促进了问答系统的发展。而本文讲述的命名實体对智能问答系统的架构和发展也起到着非常关键的作用。
本文的主要内容是研究以命名实体识别为代表的信息抽取问题。在综合研究面向的对象以及三种常见模型的优缺点后,并以股票为例进行说明,选择条件随机场作为投资领域命名实体的模型。并且在CRF模型的基础上,引入了上下文特征和词性特征,提出了CC-CRF识别算法。通过数据收集、语料制作、训练、识别等步骤,利用CRF++训练出了针对股票代码和股票名称的CC-CRF模型。其结果在准确率与召回率方面均比较优秀。为智能投资问答系统的架构和实现做到了抛砖引玉。
参考文献
[1]李生.自然语言处理的研究与发展[J].燕山大学学报,2013,(05):377-384.
[2]杨燕.面向电商领域的智能问答系统若干关键技术研究[D].华东师范大学,2016.
[3]郭喜跃,何婷婷.信息抽取研究综述[J].计算机科学,2015,(02):14-17+38.
[4]吴阳.财经领域命名实体识别方法的研究与系统实现[D].哈尔滨工业大学,2015.
[5]孙镇,王惠临.命名实体识别研究进展综述[J].现代图书情报技术,2010,(06):42-47.
[6]王峰.基于CRF的中文命名实体识别方法研究[D].中北大学,2011.
[7] Liu J. Chinese named entity recognition algorithm based on the improved hidden Markov model [J].Journal of Chemical & Pharmaceutical Research, 2014, 6(7): 1474-1478.
[8]Ratnaparkhi A. Maximum Entropy Models for Natural Language Processing [J]. Encyclopedia of Machine Learning, 2011, (25):647-651.
[9]Baltrusaitis T, Banda N, Robinson P. Dimensional affect recognition using Continuous Conditional Random Fields[J]. Automatic Face and Gesture Recognition (FG), 2013, 4(26):1-8.
[10]史海峰.基于CRF的中文命名实体识别研究[D].苏州大学,2010.endprint