时间:2024-05-04
王 超 王 峥
(1.南京烽火星空通信发展有限公司 南京 210019)(2.武汉邮电科学研究院 武汉 430074)
随着社交网络的近几年的快速发展,推特、微博、微信等以短文本为主的社交网络平台已成为实时信息的主要来源,对社交媒体的分析也受到越来越多的关注[1~2]。目前在国内,微博平台发展迅猛,其用户量大,传播速度快,贴近日常生活,在热点事件的报导和传播方面占据主导地位[3],诸多基于此类社交网络的应用如关系抽取以及实体链接[4~5]等,首先必须依赖于微博文本中所涉及到的命名实体,因此对微博文本内容进行命名实体识别,从而挖掘出社交媒体中的包含的信息如人物关系、舆论走向、热点事件跟踪等是一项很有意义的研究。
目前,国内外命名实体识别的研究已趋于成熟,但主要是针对正式文本[6~8],而对非正式文本的研究也多集中在英文[9],针对中文非正式文本如中文微博的研究则相对较少[10~11]。对于亚洲语种(中文,日文,韩文等),词与词之间没有固定的分隔符,对中文进行分词通常是处理中文信息任务的基础,因此分词的准确性会很大程度上影响命名实体识别效果,加之微博文本本身文本短,用语不规范,词汇新奇,噪声多的特点,使得分词的准确性大大降低,从而导致传统命名实体识别方法的性能在微博文本上会下降 20%[12]。
文献[12]提出了基于拼音相似距离以及文本相似距离聚类算法对微博文本进行规范化,消除了微博的语言表达不规范造成的干扰。文献[13]则是字位置嵌入来表征分词信息,即在字嵌入的基础上附加字的位置信息,其研究表明字的位置信息对命名实体识别有较大影响。
本文结合文献[13]的研究,首先构建微博语料对到LSTM中文分词模型进行训练,以提高分词的准确性,然后对的分词结果标注集合进行改进,使其分词结果不仅携带字的位置信息,而且附加词性信息,根据分词结果选取适当的CRFs的特征模板,提高了命名实体识别的效果。
词嵌入通过在一个连续的低维度空间中表示单词,能够捕获词汇的语义或语法的属性,即相似的单词会用相似的低维度向量表示,词嵌入已经在各种自然语言处理任务中取得了较好的效果[14]。而对于中文语言处理,由于没有词边界,因此会为每一个汉字训练一个字嵌入,这时通常会存在一个大小为|C|字符字典C,该字符字典一般从训练集中提取,部分未知字符将会人工标注为一个特定的符号添加到字典中去。每一个中文字符c∈C会被表示成一个实向量vc∈Rd,其中d为向量空间的维数,然后该向量会被加入到字嵌入矩阵M∈Rd×||C中去。在本文中,字嵌入向量将通过word2vec[15]获取,作为2.2中分词系统的输入。
LSTM是循环神经网络(RNN)的扩展,用来避免RNN长期依赖问题,是目前应用广泛的分词模型,它的核心是一个记忆细胞c用来保持和更新当前状态。记忆细胞的行为由三个“门”控制:输入门(i)、忘记门(f)和输出门(o)。定义在门上的操作为元素依次相乘,因此当门为非零向量是可以对输入进行缩放,当门为零向量时可以忽略此时的输入。输出门上的输出将会反馈给下一时刻t+1作为隐藏状态以及作为神经网络当前时刻t的上一层输入。“门”的定义以及细胞的更新和输出如下:
其中σ表示sigmoid函数,tanh表示双曲正切函数;i(t),f(t),o(t),c(t),分表示表示输入门,忘记门,输出门以及记忆细胞在时刻t的激活向量,均与隐藏向量h(t)∈RH2大小相同;带有不同下标的参数矩阵Ws均为方阵,其中Wic,Wfc,Woc为对角矩阵。
在中文分词任务中,LSTM记忆单元的输入来自上下文窗口的汉字,对于每一个汉字,记忆单元的输入为
由c(t-k1):(t+k2)中的字嵌入连接而成,其中k和k12分别表示距离当前汉字向左或向右的索引位置。其输出会经过一个线性变换:
之后,通过推理函数:
来计算整个句子分词标注序列级总得分。
已有的研究工作中常用的标注集有三种[16]:二词位、四词位和六词位标注集,各词位标注集的定义如表1所示。
表1 三类词位标注集的定义
以上各词位标注都是在不断强化词位置信息,而忽略了词性信息,考虑到词性是信息抽取中一个常用且有效的特征,且命名实体大多为名词和动词,极少含有形容词、量词和代词等其他词性的词语且大多数命名实体都在两个字及意思,为了减少标记任务的求解空间,本文采用三词性-四词位标注集作为LSTM的分词标注,标注集的定义如表2所示。
表2 三词性-四词位标注集
条件随机场(Conditional random fields)是一种用来计算在给定输入随机变量时,输出随机变量的条件概率的无向图模型,它结合了最大熵模型和隐马尔可夫模型的特征,具有表达长距离依赖性和交叠性特征的能力,能够较好地解决标注偏置等问题,因此在命名实体识别等方面有着广泛的应用。
线性链CRFs是基于一阶马尔科夫链的假设,对于给定的观测序列o=<o1,o2,…oT>,其对应的状态序列s‘的概率定义如式(9):
其中Λ为模型的参数集,Z0为所有状态序列上的归一化因子,λk为特征权重可在模型训练中采用极大似然估计获得,fk为二值特征函数。
本文利用链式条件随机场的推理过程对微博文本的观测序列和训练产生的参数λ,找出一个能够准确标注微博文本中命名实体的最优标记,利用维特比算法求取后验概率Y*=argmaxp(Y|X)最大时的标记序列。
确定求解过程之后,需要选择对应的文本特征,此处特征选取依然基于字级别的特征,由于2.2中的LSTM中文分词已经提供了当前字符详细的分词信息,因此可以大大简化特征模板。文献[17]选取了比较合适的基于词语的特征模板和标记集合用于微博命名实体识别以及事件抽取,并取得相对较好的结果,本文将其特征模板和标记集合进行适当修改,选取了一个大小为5的观测窗口用来提取当前字符的上下文特征,用来构建特征模板,具体含义如表3所示。
表3 CRFs特征模板
由于特征模板是基于字级别的特征,所以本文定义了一个基于实体位置的标记集合用来表示当前字的实体类型,如表4所示。
表4 实体类型标注集合
本文利用新浪微博平台提供的接口随机抽取了2015年9月到2017年4月份的21之间的未标注的1,404,026条微博用于训练word2vec字嵌入,word2vec采用Skip-Gram训练目标,参数设置为默认值,所有的字嵌入为100维。
然后又抽取了同时间段的2600条至少包含三个命名实体的微博作为命名实体识别的语料库,其中1800条经过人工添加分词标注以及命名实体类型标注作为训练集,剩下未标注800条作为测试集。
本文设置了3组实验。
1)ICTCLAS+四词位标注:利用ICTCLAS2016分词软件对微博文本进行分词,然后依照2.3构建CRFs特征模板进行命名实体识别。
2)LSTM+四词位标注:利用LSTM神经网络模型对微博文本进行中文分词,沿用文献[18]的LSTM分词模型的参数设置,分词结果采用四位词标注结果,然后依照2.3构建CRFs特征模板进行命名实体识别。
3)LSTM+三词性-四词位标注:用LSTM神经网络模型对微博文本进行中文分词沿用Chen等LSTM分词模型参数设置,分词结果采用三词性-四词位标注结果,然后依照2.3构建CRFs特征模板进行命名实体识别。
在命名实体识别性能评估中,采用了的P(准确率)、R(召回率)和F(综合指F值)等评测指标,以F值为主要评测指标。
通过对测试集中的800条微博文本人工标记命名实体类型,将以上三组实验的处理结果与人工标注结果进行对比,分别得到每组实验的P值,R值以及F值如表5所示。
表5 不同实验结果的比较
实验表明,相比于通用分词软件,本文使用特定的微博文本对LSTM神经网络分词模型进行训练得到的分词结果能够明显提升中文微博命名实体识别的效果;而在分词标注中添加了词性信息在一定程度上也提高了命名实体识别的的效果。
本文结合目前应用广泛的LSTM中文分词模型以及CRFs命名实体识别模型,通过特定的训练集以及改进的分词标注集,能够有效提升中文微博命名实体识别的效果,但也存在以下两点不足:1)只能针对特定中文微博文本领域;2)需要大量的人工标注。因此后续的研究工作要着重于将该方法应用到开放领域,以及寻找一种自动标注的机器学习方法进行改善。
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!