«上一篇 下一篇»
  计算机工程  2021, Vol. 47 Issue (3): 94-101  DOI: 10.19678/j.issn.1000-3428.0057265
0

引用本文  

张栋, 王铭涛, 陈文亮. 结合五笔字形与上下文相关字向量的命名实体识别[J]. 计算机工程, 2021, 47(3), 94-101. DOI: 10.19678/j.issn.1000-3428.0057265.
ZHANG Dong, WANG Mingtao, CHEN Wenliang. Named Entity Recognition Combining Wubi Glyphs with Contextualized Character Embeddings[J]. Computer Engineering, 2021, 47(3), 94-101. DOI: 10.19678/j.issn.1000-3428.0057265.

基金项目

国家自然科学基金(61876115)

作者简介

张栋(1992-), 男, 硕士研究生, 主研方向为自然语言处理;
王铭涛, 硕士研究生;
陈文亮, 教授、博士

文章历史

收稿日期:2020-01-19
修回日期:2020-03-03
结合五笔字形与上下文相关字向量的命名实体识别
张栋 , 王铭涛 , 陈文亮     
苏州大学 计算机科学与技术学院, 江苏 苏州 215006
摘要:命名实体识别(NER)作为自然语言处理的重要部分,在信息抽取和知识图谱等任务中得到广泛应用。然而目前中文预训练语言模型通常仅对上下文中的字符进行建模,忽略了中文字符的字形结构。提出2种结合五笔字形的上下文相关字向量表示方法,以增强字向量的语义表达能力。第一种方法分别对字符和字形抽取特征并联合建模得到字向量表示,第二种方法将五笔字形作为辅助信息拼接到字向量中,训练一个基于字符和五笔字形的混合语言模型。实验结果表明,所提两种方法可以有效提升中文NER系统的性能,且结合五笔字形的上下文相关字向量表示方法的系统性能优于基于单一字符的语言模型。
关键词语言模型    命名实体识别    五笔字形    上下文相关字向量    无标注语料    
Named Entity Recognition Combining Wubi Glyphs with Contextualized Character Embeddings
ZHANG Dong , WANG Mingtao , CHEN Wenliang     
School of Computer Science and Technology, Soochow University, Suzhou, Jiangsu 215006, China
Abstract: As a basic task of natural language processing, Named Entity Recognition(NER) is widely used in information extraction, knowledge graph and other tasks.However, the existing Chinese pre-trained language models usually only capture characters in the context, ignoring the structure of Chinese characters-glyphs.This paper proposes two kinds of contextualized character embeddings representation methods combined with Wubi to enhance the semantic representation of character embeddings.The first method is to present the character embeddings by jointly modeling the extracted character and glyph features.The second one is to splice the Wubi glyphs into the character embeddings for assistance, and on this basis train a language model combining characters and Wubi glyphs.Experimental results show that the proposed methods can significantly improve the performance of Chinese NER systems, which outperform the language models based on only characters.
Key words: language model    Named Entity Recognition(NER)    Wubi glyphs    contextualized character embeddings    unlabeled corpus    
0 概述

命名实体识别(Named Entity Recognition,NER)是自然语言处理中的一项重要任务[1-2],其目的是在非结构化文本中识别人名、地名和组织名等专有名词[3]。NER问题通常被转换为序列标注问题,即给序列中的每个字或词打上一个预定义的实体标签。近年来,基于有监督学习的NER模型取得较大进展,系统性能得到大幅提升[4-6]

传统的NER系统主要是基于统计机器学习,如最大熵模型[7]、隐马尔科夫模型[8]和条件随机场(Conditional Random Field,CRF)模型[9-10]等。这类模型非常依赖手工特征,如上下文特征、前缀词和后缀词等。由于语言的多样性以及领域的差异性,手工特征通常需要重新设计,缺乏可迁移性。随着深度学习的快速发展,基于神经网络的方法被广泛应用于NER任务。文献[11]使用前馈神经网络和卷积神经网络(Convolutional Neural Network,CNN)作为特征编码器,文献[12]使用长短时记忆(Long Short Term Memory,LSTM)网络作为特征编码器。这些深度学习模型不仅摆脱了对手工特征工程的依赖,而且命名实体识别性能明显优于基于统计机器学习的方法。神经网络的初始化对于深度学习模型性能影响很大,传统的词向量在训练时对上下文中的词进行预测,得到词的分布式向量表示。但通过这种方式取得的词向量都是静态的,无法体现一词多义的情况。例如,“自然”在不同上下文中具有“不造作,不呆板”或“理所当然”的含义。为了解决这一问题,文献[13]在大规模无标注语料上预训练一个语言模型,将多层上下文的隐状态通过线性加权作为词的向量表示,基于该预训练语言模型得到的上下文相关词向量在英文NER任务中取得了较好的效果。

在中文NER任务中,通常将字作为最小的处理单元,使用大规模无标注语料预训练字向量。汉字是一种象形文字,其中包含丰富的笔画、部首等字形信息。具有相似字形的汉字通常具有相似的语义,如“他、你、俺”都有部首“亻”,“亻”是“人”的变体,因此,这些字都包含与“人”相关的意思。虽然在大规模无标注语料上训练得到的字向量,可以在一定程度上学习到自然语言中的语法和语义特征,但是这种特征表示能力是有限的。一些研究人员尝试将汉字字形应用于中文NER任务中,目前已取得了一定成果。文献[14]将汉字拆分成多个组件,通过双向LSTM提取汉字的字形特征,将其与随机初始化的上下文无关字向量进行拼接并作为汉字的特征表示,该方法的NER性能得到有效提升。但是,目前较少有学者将预训练语言模型和汉字字形相结合,从而增强字的语义表达。同时,汉字存在多种字形表现形式,如部首、五笔和笔画,其中,部首只提供汉字的部分字形信息,笔画只有横类、竖类、撇类、点类和折类等,过于简单,而五笔拆解出的汉字较完整且字形具有一定含义。因此,本文将五笔字形信息引入汉字的向量表示中,以改进中文命名实体识别效果。

为了充分利用大规模无标注语料,本文将中文特有的字形信息和预训练语言模型相结合,提出2种结合五笔字形的上下文相关字向量表示方法。第一种方法分别训练得到2个语言模型,一是基于字序列训练一个基于字的语言模型,二是将文本转换为五笔编码序列,训练一个基于五笔的语言模型。第二种方法是将五笔字形作为辅助特征拼接到字向量表示中,将两者信息直接融合,训练一个基于字与五笔字形的混合语言模型。通过这2种方法得到2种结合五笔字形的上下文相关字向量,并以此构建中文NER系统。

1 相关工作

目前,序列标注任务主要通过基于神经网络的方法来完成。文献[11]去掉特征工程和先验知识,使用语言模型中训练的词向量替换手工设计特征,在词性标注、分块以及NER任务上取得了较好的效果。文献[15-16]分别使用CNN和双向LSTM以捕获英文单词内的拼写特征,结果验证了字符级特征的有效性。借鉴英文中提取单词拼写特征的思想,文献[14]将汉字拆分成多个组件,通过双向LSTM提取组件级别的特征,然后和上下文无关字向量相拼接,以改进中文NER的性能。文献[17]通过CNN对汉字五笔进行编码,然后与上下文无关字向量相拼接以作为NER模型的输入。此外,为了提取命名实体的前缀和后缀特征,文献[17]使用多个卷积核模拟传统的n-gram特征。由于LSTM在处理序列时无法并行运算以及传统卷积感受野受限,因此文献[18]使用空洞卷积增大感受野从而进行命名实体识别,该方法在未降低识别性能的同时显著缩短了模型训练时间。为了降低人工标注语料的成本,文献[19]提出了一种利用对抗网络在众包数据上进行命名实体识别的方法。为了避免分词错误,很多研究人员都以字为处理单元。文献[20]建立一种Lattice-LSTM模型来引入序列中所有潜在的词信息,其在NER任务中取得了很好的效果。

除了对NER模型进行改进外,自然语言处理的一个重要任务是学习文本中较好的特征表示。研究表明,在大规模无标注数据上预训练学习得到的词向量可以捕获语法和语义信息,使得预训练的词向量成为自然语言处理模型的一个基本组成部分[21]。文献[22]利用汉字的上下文和部首信息来训练上下文无关字向量,并将其应用于汉字的相似性计算任务和中文分词任务中,且取得了较好效果。文献[23]基于五笔将汉字转变成五笔序列,使用CBOW模型预训练五笔的上下文无关向量,在中文分词、短文本分类以及网页排序任务中,该方法的效果优于基于传统特征的机器学习方法。文献[24]在SkipGram和CBOW模型中,将汉字的组件信息融合到字向量的预训练中,在文本分类中取得一定效果。文献[25]在预训练上下文无关词向量时,同时考虑词、字和部首三者的信息,在词相似性和词推理任务中的结果验证了上下文无关词向量的有效性。文献[26]根据汉字的图像表示,通过CNN提取汉字的可视化特征。上述方法虽然在一定程度上丰富了字向量的表示,但多数是对上下文无关向量的改进。此外,很多研究仅聚焦于字或词级的语义任务,未在句子、文档等自然语言处理的高层任务上进行延伸。

文献[13]提出基于语言模型的上下文相关词向量表示方法,其在多个英文自然语言处理任务中取得了较好的效果。但是,该方法不能直接应用于中文NER任务,因此,本文在中文语料上训练一个基于字的语言模型。此外,为了更好地挖掘中文的字形信息,本文建立2种结合五笔字形的预训练语言模型,并在此基础上分别构建2种结合五笔字形的上下文相关字向量表示模型。

2 LSTM-CRF模型

LSTM-CRF已经成为命名实体识别中最主要的模型之一。本文采用LSTM-CRF构建基准系统(baseline),如图 1所示。整个模型主要由输入层、编码层和解码层3个部分组成。baseline模型的输入为传统的静态字向量,使用双向LSTM对序列的特征进行编码。在解码层,本文使用CRF模型。

Download:
图 1 LSTM-CRF模型 Fig. 1 LSTM-CRF model
2.1 输入层

假设LSTM-CRF模型的输入为一句话$ s={c}_{1}, {c}_{2}, \cdots ,{c}_{n} $$ {c}_{k} $表示句子中的第$ k $个字。对每个字$ {c}_{i} $,通过word2vec预训练字向量将其嵌入为连续稠密向量表示,本文使用$ {\boldsymbol{x}}_{k} $表示LSTM-CRF模型第$ k $个字向量的输入,$ {\boldsymbol{x}}_{k}={\boldsymbol{C}}_{k}^{\mathrm{e}\mathrm{m}\mathrm{b}} $

2.2 编码层

本层使用LSTM对特征进行编码,LSTM单元能够处理当前时刻的信息,也可以处理历史信息,非常适合对序列问题进行建模。LSTM单元通过输入门、遗忘门和输出门来控制单元的隐状态,可以有效捕获长距离依赖信息。LSTM单元的实现方式如式(1)~式(3)所示:

$ \left[\begin{array}{c}{\boldsymbol{i}}_{k}\\ {\boldsymbol{g}}_{k}\\ {\boldsymbol{f}}_{k}\\ {\boldsymbol{o}}_{k}\end{array}\right]=\left[\begin{array}{c}\sigma \left({\boldsymbol{W}}_{xi}\cdot {\boldsymbol{x}}_{k}+{\boldsymbol{W}}_{hi}\cdot {\boldsymbol{h}}_{k-1}+{\boldsymbol{b}}_{i}\right)\\ \mathrm{t}\mathrm{a}\mathrm{n}\mathrm{h}\left({\boldsymbol{W}}_{xg}\cdot {\boldsymbol{x}}_{k}+{\boldsymbol{W}}_{hg}\cdot {\boldsymbol{h}}_{k-1}+{\boldsymbol{b}}_{g}\right)\\ \sigma \left({\boldsymbol{W}}_{xf}\cdot {\boldsymbol{x}}_{k}+{\boldsymbol{W}}_{hf}\cdot {\boldsymbol{h}}_{k-1}+{\boldsymbol{b}}_{f}\right)\\ \sigma \left({\boldsymbol{W}}_{xo}\cdot {\boldsymbol{x}}_{k}+{\boldsymbol{W}}_{ho}\cdot {\boldsymbol{h}}_{k-1}+{\boldsymbol{b}}_{0}\right)\end{array}\right] $ (1)
$ {\boldsymbol{c}}_{k}={\boldsymbol{f}}_{k}\mathrm{*}{\boldsymbol{c}}_{k-1}+{\boldsymbol{i}}_{k}\mathrm{*}{\boldsymbol{g}}_{k} $ (2)
$ {\boldsymbol{h}}_{k}={\boldsymbol{o}}_{k}\mathrm{*}{\boldsymbol{c}}_{k} $ (3)

其中,$ \sigma $是sigmoid函数,$ \mathrm{*} $代表元素乘,$ \boldsymbol{W} $是权重矩阵,$ \boldsymbol{b} $代表偏置。

在序列标注任务中,上下文特征对于标签决策很重要。由于LSTM只能对序列的一个方向进行编码,因此本文使用双向LSTM(BiLSTM)对输入进行特征编码,将BiLSTM的2个前后向隐状态相连接以作为最终的特征编码。输入序列$ \left({\boldsymbol{x}}_{1}, {\boldsymbol{x}}_{2}, \cdots , {\boldsymbol{x}}_{n}\right) $经过BiLSTM编码后可以得到特征序列$ \left({\boldsymbol{h}}_{1}, {\boldsymbol{h}}_{2}, \cdots , {\boldsymbol{h}}_{n}\right) $

2.3 解码层

根据BiLSTM提取到的第$ k $时刻的特征$ {\boldsymbol{h}}_{k} $,可以直接对每个字的输出$ {\boldsymbol{O}}_{k, {y}_{k}} $进行独立的标签预测。但是,由于标签之间存在一定的相关性,如B-ORG后面不能跟着I-PER,因此本文使用CRF对标签序列进行一些约束。定义矩阵$ \boldsymbol{O} $是对隐层表示$ \boldsymbol{H}=\left\{{\boldsymbol{h}}_{1}, {\boldsymbol{h}}_{2}, \cdots , {\boldsymbol{h}}_{n}\right\} $进行线性变换所得,$ {\boldsymbol{O}}_{k, {y}_{k}} $表示第$ k $个字是$ {y}_{k} $的得分,$ \boldsymbol{O} $的表达式如式(4)所示:

$ \boldsymbol{O}={\boldsymbol{W}}_{o}\boldsymbol{H}+{\boldsymbol{b}}_{o} $ (4)

其中,$ {\boldsymbol{W}}_{o} $$ {\boldsymbol{b}}_{o} $是矩阵$ \boldsymbol{O} $的参数。对于标签序列$ y=\left\{{y}_{1}, {y}_{2}, \cdots , {y}_{n}\right\} $,本文通过式(5)计算其概率:

$ p\left(y\right|s)=\frac{\mathrm{e}\mathrm{x}\mathrm{p}\left(\sum \limits_{k}\left({\boldsymbol{O}}_{k, {y}_{k}}+{\boldsymbol{T}}_{{y}_{k-1}, {y}_{k}}\right)\right)}{\sum \limits_{\tilde{y}}\mathrm{e}\mathrm{x}\mathrm{p}\left(\sum \limits_{k}{\boldsymbol{O}}_{k, {\tilde{y}}_{k}}+{\boldsymbol{T}}_{{\tilde{y}}_{k-1}, {\tilde{y}}_{k}}\right)} $ (5)

其中,$ \boldsymbol{T} $是转移矩阵,$ \tilde{y} $表示所有可能的标签序列。

在训练过程中,给定N个句子的命名实体识别数据$ \left({s}_{j}, {y}_{j}\right)\left|{}_{j=1}^{N}\right. $,使用梯度反向传播算法来最小化损失函数loss,如式(6)所示:

$ \mathrm{l}\mathrm{o}\mathrm{s}\mathrm{s}=-\sum \limits_{j}\mathrm{l}\mathrm{o}{\mathrm{g}}_{a}\left(p\left({y}_{j}\right|{s}_{j})\right) $ (6)

在训练完成后,需要对模型输出进行解码,通过式(7)来找到得分最高的标签序列:

$ {y}^{\mathrm{*}}=\underset{y\in \tilde{y}}{\mathrm{a}\mathrm{r}\mathrm{g}\mathrm{m}\mathrm{a}\mathrm{x}}\sum \limits_{k}{\boldsymbol{O}}_{k, {y}_{k}}+{\boldsymbol{T}}_{{y}_{k-1}, {y}_{k}} $ (7)
3 结合五笔字形的上下文相关字向量表示

本文建立2种上下文相关字向量表示系统。第一种是在基于字的语言模型和基于五笔的语言模型的基础上所构建,第二种是在基于字与五笔的混合语言模型的基础上所构建。

3.1 基于字与基于五笔的语言模型

将字和五笔的信息分开,分别训练基于字的语言模型和基于五笔的语言模型,在这2个语言模型的基础上构建本文所提第一种结合五笔字形的上下文相关字向量表示系统。

3.1.1 基于字的语言模型

本文使用ELMo(Embeddings from Language Model)作为基于字的语言模型的训练框架。作为传统上下文无关词向量的一种替代方法,ELMo已经在解决一系列句法和语义NLP问题上取得了成功。与文献[11]系统不同,本文系统构建基于字的ELMo框架。对于字序列$ \left({c}_{1}, {c}_{2}, \cdots , {c}_{n}\right) $,前向语言模型通过式(8)计算序列概率:

$ p\left({c}_{1}, {c}_{2}, \cdots , {c}_{n}\right)=\prod \limits_{k=1}^{n}p\left({c}_{k}\left|{c}_{1}, {c}_{2}, \cdots , {c}_{k-1}\right.\right) $ (8)

前向语言模型只能编码一个字的上文信息,因此,还需要一个后向语言模型来编码字的下文信息,如式(9)所示:

$ p({c}_{1}, {c}_{2}, \cdots , {c}_{n})=\prod \limits_{k=1}^{n}p\left({c}_{k}|{c}_{k+1}, {c}_{k+2}, \cdots , {c}_{n}\right) $ (9)

训练的目标是最大化前向语言模型和后向语言模型对数似然概率,如式(10)所示:

$ \sum \limits_{k=1}^{n}\left(\mathrm{l}\mathrm{o}{\mathrm{g}}_{a}p\left({c}_{k}|{c}_{1}, {c}_{2}, \cdots , {c}_{k-1}\right)\mathrm{ }+\mathrm{l}\mathrm{o}{\mathrm{g}}_{a}p\left({c}_{k}|{c}_{k+1}, {c}_{k+2}, \cdots , {c}_{n}\right)\right) $ (10)

前向语言模型和后向语言模型互相独立,即参数不共享。同时,较低的层可以学到更多的语法特征,而较高的层能够学习上下文特征。因此,本文前向语言模型和后向语言模型均采用两层LSTM堆叠的结构,如图 2所示。

Download:
图 2 基于字的语言模型 Fig. 2 Character-based language model

不同于传统的上下文无关字向量,上下文相关字向量直到整个句子被构造出来才确定。因此,每个字向量都是上下文相关的,一旦预训练完成,通过双向语言模型就可以得到上下文相关字向量。对于第$ k $个时刻,前向语言模型的隐状态为$ {\overrightarrow{\boldsymbol{h}}}_{k}^{j} $,后向语言模型的隐状态为$ {\overleftarrow{\boldsymbol{h}}}_{k}^{j} $。因此,对于第$ k $个时刻,$ L $层双向语言模型可以得到$ 2L+1 $个向量表示,如式(11)、式(12)所示:

$ {\boldsymbol{R}}_{k}=\left\{{\boldsymbol{x}}_{k}, {\overrightarrow{\boldsymbol{h}}}_{k}^{j}, {\overleftarrow{\boldsymbol{h}}}_{k}^{j}\left|j=\mathrm{1, 2}, \cdots , L\right.\right\}=\left\{{\boldsymbol{h}}_{k}^{j}\left|j=\mathrm{0, 1},\cdots , L\right.\right\} $ (11)
$ {\boldsymbol{h}}_{k}^{j}=\left\{{\overrightarrow{\boldsymbol{h}}}_{k}^{j}, {\overleftarrow{\boldsymbol{h}}}_{k}^{j}\right\} $ (12)

其中,$ {\boldsymbol{h}}_{k}^{0} $指第$ k $个时刻的字向量。为了将多层的信息相融合,通过式(13)对第$ k $个时刻的多层隐状态进行softmax归一化的线性加权求和,以得到上下文相关字向量$ {\boldsymbol{C}}_{k}^{\mathrm{c}\mathrm{h}\mathrm{a}\mathrm{r}} $

$ {\boldsymbol{C}}_{k}^{\mathrm{c}\mathrm{h}\mathrm{a}\mathrm{r}}={\gamma }^{\mathrm{t}\mathrm{a}\mathrm{s}\mathrm{k}}\sum \limits_{j=0}^{L}{s}_{j}^{\mathrm{t}\mathrm{a}\mathrm{s}\mathrm{k}}{\boldsymbol{h}}_{k}^{j} $ (13)

其中,$ {s}_{j}^{\mathrm{t}\mathrm{a}\mathrm{s}\mathrm{k}} $表示每一层的softmax归一化参数,$ {\gamma }^{\mathrm{t}\mathrm{a}\mathrm{s}\mathrm{k}} $是特定任务的缩放因子,用于刻画语言模型与命名实体识别任务的差异性。上述参数将在训练时自动学习得到。

3.1.2 基于五笔的语言模型

在基于五笔的语言模型中,将字转换为其对应的五笔编码形式,将句子转化为五笔编码序列。如文本表示“爱国家”,其对应的五笔序列表示为“epdc < / > lgyi < / > peu”。本文基于五笔的编码方式将句子转换为五笔字符串$ {r}_{1}, {r}_{2}, \cdots , {r}_{m} $。汉字的五笔表示包含多个五笔码元(用英文字母表示),每个五笔码元刻画汉字的字形信息,汉字与汉字的五笔编码之间使用特殊字符“ < / > ”分隔。本文不再将字或词当成一个最小的处理单元,而将五笔的码元当成最小的语义单元。

预训练一个基于五笔序列的语言模型(简称五笔语言模型),该语言模型的目标是学习一个五笔序列分布$ p({r}_{1}, {r}_{2}, \cdots , {r}_{m}) $,根据前一个五笔码元序列预测后一个五笔码元。在基于五笔的语言模型中,对于输入序列“epdc < / > lgyi < / > pe”,其对应的输出序列为“pdc < / > lgyi < / > peu”,与基于字的语言模型类似,基于五笔的语言模型同样通过堆叠的LSTM来训练前后向的语言模型。

与基于字的语言模型得到上下文相关字向量表示不同,本文利用预训练的五笔语言模型的内部状态来产生一种新型的上下文相关字向量。在五笔语言模型训练完成后,根据五笔的前向语言模型和后向语言模型中最后一层的隐状态创建字的向量表示。图 3中的“国”对应的五笔编码“lgyi”,通过前向语言模型中“lgyi”前的“ < / > ”隐状态和后向语言模型中“lgyi”后的“ < / > ”隐状态的拼接,并作为“lgyi”的向量表示。这种字向量在没有任何明确的字或词的概念下训练,从根本上将字建模为五笔码元序列。此外,其可以随着上下文码元的不同而变化。在本文中,对于第$ k $个字,基于五笔语言模型得到的上下文相关字向量为$ {\boldsymbol{C}}_{k}^{\mathrm{w}\mathrm{u}\mathrm{b}\mathrm{i}} $

Download:
图 3 基于五笔的上下文相关字向量表示 Fig. 3 Contextualized character embeddings representation based on Wubi

将上述基于字的语言模型和基于五笔的语言模型相拼接,得到本文第一种结合五笔的上下文相关字向量表示$ [{\boldsymbol{C}}_{k}^{\mathrm{c}\mathrm{h}\mathrm{a}\mathrm{r}};{\boldsymbol{C}}_{k}^{\mathrm{w}\mathrm{u}\mathrm{b}\mathrm{i}}] $

3.2 基于字与五笔的混合语言模型

将字信息和五笔信息相结合,基于字和五笔混合语言模型构建本文所提第二种上下文相关字向量表示。在混合语言模型的训练过程中,字的嵌入表示和五笔编码表示相拼接作为语言模型的输入。对于句子$ {c}_{1}, {c}_{2}, \cdots , {c}_{n} $,第$ k $个时刻的输入包含字的嵌入表示和五笔表示,字的嵌入表示不作介绍,本文主要关注五笔表示。

图 4所示为五笔信息的获取方式,将句子中的每个汉字表示成五笔编码形式,如“爱国家”对应的五笔形式为“epdc lgyi peu”。对于“国”的五笔编码“lgyi”,利用多个卷积核从不同角度对其进行卷积以提取特征,然后通过最大池化进一步提取特征。为了防止网络过深导致梯度弥散从而难以训练,本文加入高速网络,高速网络的输出即为五笔编码的最终表示。

Download:
图 4 五笔信息的获取方式 Fig. 4 The way of obtaining Wubi information

混合语言模型的训练同样是最大化前向语言模型和后向语言模型的概率分布。在混合语言模型训练完成后,通过类似ELMo的方式获得第$ k $个时刻包含五笔和字信息的上下文相关字向量$ {\boldsymbol{C}}_{k}^{\mathrm{h}\mathrm{y}\mathrm{b}\mathrm{r}\mathrm{i}\mathrm{d}} $

4 实验结果与分析 4.1 实验设置 4.1.1 实验数据

本文实验数据分为无标注数据和命名实体识别数据2类。对于无标注数据,使用Gigaword(https://catalog.ldc.upenn.edu/LDC2003T09)训练基于word2vec的上下文无关字向量和语言模型。对于命名实体识别数据,为了从不同领域评估本文模型的性能,选取来自新闻领域的数据集Ontonotes和社交媒体领域的数据集Weibo,2个数据集的句子数和字数统计如表 1所示。

下载CSV 表 1 数据集信息统计结果 Table 1 Statistical results of datasets information
4.1.2 评价指标

实体识别需要同时识别实体的边界和类别,只有当实体边界和类别都识别正确时结果才算正确。本文实验使用综合指标F1值来衡量模型性能,F1值计算公式如下:

$ P=\frac{M}{N}\times 100\mathrm{\%} $ (14)
$ R=\frac{M}{K}\times 100\mathrm{\%} $ (15)
$ \mathrm{F}1=\frac{2\times P\times R}{P+R}\times 100\mathrm{\%} $ (16)

其中,N表示模型预测出的实体数目,M表示模型预测正确的实体数目,K表示标注数据中包含的实体数目。

4.1.3 标签框架

实验采用BIO标签框架,B即Begin,表示当前字是实体的第一个字,I即Inside,表示当前字是实体内的字,O即Other,表示其他。对于某种具体类型(Type),某个字可选标注集合为{B-Type,I-Type,O}。

4.1.4 模型训练和参数设置

实验采用pytorch深度学习框架,使用NVIDIA GeForce GTX 1080 Ti加速模型训练。在BiLSTM-CRF模型中设置LSTM隐层维度为200。采用Adam优化器更新神经网络的参数,对LSTM输入向量和输出向量采用dropout策略,概率设置为0.5。为防止模型过拟合,总训练轮次设置为50轮,当连续迭代10轮模型在开发集上的性能不再提升时模型停止训练。预训练语言模型均采用2层BiLSTM,Embedding映射维度为512,负采样窗口大小设置为8 192。其中,基于字与五笔的混合语言模型中使用256个n-gram卷积滤波器进行特征抽取。预训练语言模型的迭代次数设置为10,当模型困惑度在开发集上不再明显降低时停止训练。

本文实验中的对比模型具体如下:

1)LSTM-CRF:即本文baseline模型,其将双向LSTM作为编码器,CRF作为解码器,输入为传统字向量,即$ {\boldsymbol{x}}_{k}={\boldsymbol{C}}_{k}^{\mathrm{e}\mathrm{m}\mathrm{b}} $

2)LSTM-CRF-char:在baseline的基础上,输入增加基于字语言模型得到的上下文相关字向量,即输入为$ {\boldsymbol{x}}_{k}=\left[{\boldsymbol{C}}_{k}^{\mathrm{e}\mathrm{m}\mathrm{b}};{\boldsymbol{C}}_{k}^{\mathrm{c}\mathrm{h}\mathrm{a}\mathrm{r}}\right] $

3)LSTM-CRF-wubi:在baseline的基础上,输入增加基于五笔语言模型得到的上下文相关字向量,即输入为$ {\boldsymbol{x}}_{k}=[{\boldsymbol{C}}_{k}^{\mathrm{e}\mathrm{m}\mathrm{b}};{\boldsymbol{C}}_{k}^{\mathrm{w}\mathrm{u}\mathrm{b}\mathrm{i}}] $

4)LSTM-CRF-concat:在baseline的基础上,增加基于字的语言模型和基于五笔的语言模型得到的2个上下文相关字向量的拼接,对应本文所提第一种结合五笔的上下文相关字向量表示,即输入为$ {\boldsymbol{x}}_{k}=\left[{\boldsymbol{C}}_{k}^{\mathrm{e}\mathrm{m}\mathrm{b}};{\boldsymbol{C}}_{k}^{\mathrm{c}\mathrm{h}\mathrm{a}\mathrm{r}};{\boldsymbol{C}}_{k}^{\mathrm{w}\mathrm{u}\mathrm{b}\mathrm{i}}\right] $

5)LSTM-CRF-hybrid:在baseline的基础上,输入增加基于字和五笔的混合语言模型得到的上下文相关字向量,对应本文所提第二种结合五笔的上下文相关字向量表示,即输入为$ {\boldsymbol{x}}_{k}=\left[{\boldsymbol{C}}_{k}^{\mathrm{e}\mathrm{m}\mathrm{b}};{\boldsymbol{C}}_{k}^{\mathrm{h}\mathrm{y}\mathrm{b}\mathrm{r}\mathrm{i}\mathrm{d}}\right] $

4.2 结果分析

表 2表 3所示为Ontonotes和Weibo 2个数据集上的实验结果。从表 2表 3下半部分可以看出,模型在增加上下文相关字向量(LSTM-CRF-char)后,命名实体识别的性能在Ontonotes和Weibo数据集上分别提升9.04和6.19个百分点。从表 2表 3最后两行可以看出,本文所提2种结合五笔的上下文相关字向量(LSTM-CRF-hybrid和LSTM-CRF-concat)在2个数据集上的F1值相比基于字的上下文相关字向量(LSTM-CRF-char)有了进一步提高,在Weibo上尤为显著,最高提升3.03个百分点,说明在预训练语言模型中引入五笔字形信息具有有效性。此外,LSTM-CRF-concat比LSTM-CRF-hybrid效果更好,原因是基于五笔的语言模型不仅可以学习到汉字本身的字形信息,而且可以学习到上下文的码元信息。

下载CSV 表 2 Ontonotes数据集上的实验结果 Table 2 Experimental results on Ontonotes dataset  
下载CSV 表 3 Weibo数据集上的实验结果 Table 3 Experimental results on Weibo dataset  

表 2中,文献[27]模型使用一种基于中英双语语料的方法,LSTM-CRF-char在没有借助英文语料的情况下F1值仍然比其高0.6个百分点,说明上下文相关字向量能大幅提升语义表征能力。文献[27]模型通过结合基于多种手工特征以及外部资源的CRF和基于神经网络的LSTM-CRF模型,使得命名实体识别性能达到76.40%。相比之下,LSTM-CRF-concat完全没有使用手工设计特征和模型融合,但是F1值仅比文献[29]模型低0.56个百分点。在表 3中,文献[31]模型和文献[20]模型分别利用分词和外部词典来更好地判断实体边界,本文方法的F1值比文献[31]模型高4.32个百分点。Weibo数据集来自社交媒体领域,文本的表达通常是非正式的,包含很多噪声,从表 3可以看出,模型在Weibo数据集上的结果与Ontonotes结果一致,说明结合五笔增强的上下文相关字向量在社交媒体领域同样有效,而没有因为领域的不同导致命名实体识别系统性能下降。

4.2.1 五笔信息与WC-LSTM相结合对识别结果的影响

基于字的命名实体识别方法虽然取得了较好的效果,但是其未利用句子中词的信息。词的边界往往也是命名实体的边界,词的边界信息可以帮助基于字的命名实体识别方法确定命名实体的边界。文献[33]提出一种可以同时整合字和词信息的WC-LSTM(Word-Character LSTM)模型。为了进一步验证本文所提方法的有效性,在WC-LSTM模型的输入中增加结合五笔的上下文相关字向量表示,从而同时对五笔、字和词的多个层面进行特征表示。

表 4可以看出,增加了基于五笔的上下文相关字向量的WC-LSTM模型,命名实体识别性能进一步提升,性能优于表 2中的文献[29]模型,这说明词、字、五笔携带的信息不同,对中文命名实体识别具有不同的作用。

下载CSV 表 4 Ontonotes数据集上的模型性能对比 Table 4 Performance comparison of models on Ontonotes dataset  
4.2.2 训练数据规模对识别结果的影响

为了验证在训练不充分的情况下基于五笔的上下文相关字向量对命名实体识别性能的影响,本文从Ontonotes训练数据中分别随机选取5%、10%、20%、50%和100%比例的数据作为训练集,固定验证集和测试集,然后进行对比实验。从表 5可以看出,训练数据规模越小,基于五笔的上下文相关字向量对模型性能提升越大,这说明基于五笔的上下文相关字向量可以在一定程度上缓解模型在小数据集上的欠拟合问题。

下载CSV 表 5 数据规模对模型性能的影响 Table 5 The impact of data size on models performance  
5 结束语

中文预训练语言模型在命名实体识别时仅对字符进行建模而较少关注中文特有的字形信息。本文考虑中文五笔字形的优势,将其作为额外的输入信息,提出2种融合字形信息的上下文相关字向量表示方法。第一种方法在预训练语言模型中引入额外的五笔编码器以丰富字向量表示,第二种方法对五笔序列进行建模从而抽取字向量表示。实验结果表明,2种方法在实体识别任务中取得了较高的F1值,且结合五笔的上下文相关字向量表示方法的性能优于基于字的上下文相关字向量表示方法。语言模型BERT[34]具有更强的特征编码能力,在各项识别任务中取得了较好效果。下一步考虑在BERT中结合五笔编码特征提取来增强语义表达,以获取更高的命名实体识别性能。

参考文献
[1]
LEAMAN R, LU Z. TaggerOne: joint named entity recognition and normalization with semi-Markov models[J]. Bioinformatics, 2016, 32(18): 2839-2846. DOI:10.1093/bioinformatics/btw343
[2]
LI Yanqun, HE Yunqi, QIAN Longhua, et al. Automatic construction of Chinese nested named entity recognition corpus based on Wikipedia[J]. Computer Engineering, 2018, 44(11): 76-82. (in Chinese)
李雁群, 何云琪, 钱龙华, 等. 基于维基百科的中文嵌套命名实体识别语料库自动构建[J]. 计算机工程, 2018, 44(11): 76-82.
[3]
YU X F, LAM W, CHAN S K, et al.Chinese NER using CRFs and logic for the fourth SIGHAN bakeoff[C]//Proceedings of the 6th SIGHAN Workshop on Chinese Language Processing.New York, USA: ACM Press, 2008: 102-105.
[4]
KURU O, CAN O A, YURET D.Charner: character-level named entity recognition[C]//Proceedings of the 26th International Conference on Computational Linguistics: Technical Papers.New York, USA: ACM Press, 2016: 911-921.
[5]
TRAN Q, MACKINLAY A, YEPES A J.Named entity recognition with stack residual LSTM and trainable bias decoding[EB/OL].[2019-12-20].https://arxiv.org/pdf/1706.07598.pdf.
[6]
REI M, CRICHTON G K O, PYYSALO S.Attending to characters in neural sequence labeling models[EB/OL].[2019-12-20].https://arxiv.org/pdf/1611.04361.pdf.
[7]
ZHANG Suxiang, QIN Ying, WEN Juan, et al.Word segmentation and named entity recognition for SIGHAN Bakeoff3[EB/OL].[2019-12-20].https://www.aclweb.org/anthology/W06-0126.pdf.
[8]
BURGER J D, HENDERSON J C, MORGAN W T.Statistical named entity recognizer adaptation[C]//Proceedings of the 6th Conference on Natural Language Learning.New York, USA: ACM Press, 2002: 1-4.
[9]
CHEN W L, ZHANG Y J, ISAHARA H.Chinese named entity recognition with conditional random fields[C]//Proceedings of the 5th SIGHAN Workshop on Chinese Language Processing.New York, USA: ACM Press, 2006: 118-121.
[10]
LI Huilin, CHAI Yumei, SUN Muzhen. Deep network model for text named entity recognition[J]. Journal of Chinese Computer Systems, 2019, 40(1): 50-57. (in Chinese)
李慧林, 柴玉梅, 孙穆祯. 面向文本命名实体识别的深层网络模型[J]. 小型微型计算机系统, 2019, 40(1): 50-57.
[11]
COLLOBERT R, WESTON J, BOTTOU L, et al. Natural language processing(almost) from scratch[J]. Journal of Machine Learning Research, 2011, 12: 2493-2537.
[12]
HUANG Zhiheng, XU Wei, YU Kai.Bidirectional LSTM-CRF models for sequence tagging[EB/OL].[2019-12-20].https://arxiv.org/pdf/1508.01991.pdf.
[13]
PETERS M E, NEUMANN M, IYYER M, et al.Deep contextualized word representations[EB/OL].[2019-12-20].https://arxiv.org/pdf/1802.05365.pdf.
[14]
DONG Chuanhai, ZHANG Jiajun, ZONG Chengqing, et al.Character-based LSTM-CRF with radical-level features for Chinese named entity recognition[EB/OL].[2019-12-20].http://pdfs.semanticscholar.org/b944/5206f592423f0b2faf05f99de124ccc6aaa8.pdf.
[15]
MA X, HOVY E.End-to-end sequence labeling via bi-directional LSTM-CNNs-CRF[EB/OL].[2019-12-20].https://arxiv.org/pdf/1603.01354.pdf.
[16]
LAMPLE G, BALLESTEROS M, SUBRAMANIAN S, et al.Neural architectures for named entity recognition[EB/OL].[2019-12-20].https://arxiv.org/pdf/1603.01360.pdf.
[17]
YANG Fan, ZHANG Jianhu, LIU Gongshen, et al.Five-stroke based CNN-BiRNN-CRF network for Chinese named entity recognition[C]//Proceedings of CCF International Conference on Natural Language Processing and Chinese Computing.Berlin, Germany: Springer, 2018: 184-195.
[18]
STRUBELL E, VERGA P, BELANGER D, et al.Fast and accurate entity recognition with iterated dilated convolutions[EB/OL].[2019-12-20].https://arxiv.org/pdf/1702.02098.pdf.
[19]
YANG Y S, ZHANG M, CHEN W, et al.Adversarial learning for Chinese NER from crowd annotations[C]//Proceedings of the 32nd AAAI Conference on Artificial Intelligence.[S.l.]: AAAI Press, 2018: 16-25.
[20]
ZHANG Yue, YANG Jie.Chinese NER using lattice LSTM[EB/OL].[2019-12-20].https://arxiv.org/pdf/1805.02023.pdf.
[21]
MIKOLOV T, SUTSKEVER I, CHEN K, et al.Distributed representations of words and phrases and their composi-tionality[EB/OL].[2019-12-20].http://export.arxiv.org/pdf/1310.4546.
[22]
SUN Yaming, LIN Lei, YANG Nan, et al.Radical-enhanced Chinese character embedding[C]//Proceedings of International Conference on Neural Information Processing.Berlin, Germany: Springer, 2014: 279-286.
[23]
SHI Xinlei, ZHAI Junjie, YANG Xudong, et al.Radical embedding: delving deeper to Chinese radicals[C]//Proceedings of the 53rd Annual Meeting of the Association for Computational Linguistics and the 7th International Joint Conference on Natural Language Processing.Berlin, Germany: Springer, 2015: 594-598.
[24]
LI Yanran, LI Wenjie, SUN Fei, et al.Component-enhanced Chinese character embeddings[EB/OL].[2019-12-20].https://arxiv.org/ftp/arxiv/papers/1508/1508.06669.pdf.
[25]
YIN Rongchao, WANG Quan, LI Peng, et al.Multi-granularity Chinese word embedding[C]//Proceedings of 2016 Conference on Empirical Methods in Natural Language Processing.Berlin, Germany: Springer, 2016: 981-986.
[26]
DAI F Z, CAI Z.Glyph-aware embedding of Chinese characters[EB/OL].[2019-12-20].https://arxiv.org/ftp/arxiv/papers/1709/1709.00028.pdf.
[27]
WANG M, CHE W, MANNING C D.Effective bilingual constraints for semi-supervised learning of named entity recognizers[C]//Proceedings of the 27th AAAI Conference on Artificial Intelligence.[S.l.]: AAAI Press, 2013: 152-168.
[28]
CHE W, WANG M, MANNING C D, et al.Named entity recognition with bilingual constraints[C]//Proceedings of 2013 Conference of the North American Chapter of the Association for Computational Linguistics.Washington D.C., USA: IEEE Press, 2013: 52-62.
[29]
YANG Jie, TENG Zhiyang, ZHANG Meishan, et al.Combining discrete and neural features for sequence labeling[C]//Proceedings of International Conference on Intelligent Text Processing and Computational Linguistics.Berlin, Germany: Springer, 2016: 140-154.
[30]
PENG N, DREDZE M.Named entity recognition for Chinese social media with jointly trained embeddings[C]//Proceedings of 2015 Conference on Empirical Methods in Natural Language Processing.Berlin, Germany: Springer, 2015: 548-554.
[31]
PENG N, DREDZE M.Improving named entity recognition for Chinese social media with word segmentation repre-sentation learning[EB/OL].[2019-12-20].https://arxiv.org/pdf/1603.00786.pdf.
[32]
HE H, SUN X.A unified model for cross-domain and semi-supervised named entity recognition in Chinese social media[C]//Proceedings of the 31st AAAI Conference on Artificial Intelligence.[S.l.]: AAAI Press, 2017: 125-146.
[33]
LIU Wei, XU Tongge, XU Qinghua, et al.An encoding strategy based word-character LSTM for Chinese NER[C]//Proceedings of 2019 Conference of the North American Chapter of the Association for Computational Linguistics.Washington D.C., USA: IEEE Press, 2019: 2379-2389.
[34]
DEVLIN J, CHANG M, LEE K, et al.BERT: pre-training of deep bidirectional transformers for language understanding[EB/OL].[2019-12-20].https://nlp.stanford.edu/seminar/details/jdevlin.pdf.