APP下载

基于RoForm的电商领域命名实体识别

2022-11-17秦煜峰

大连民族大学学报 2022年5期
关键词:编码卷积注意力

秦煜峰,刘 爽

(大连民族大学 计算机科学与工程学院,辽宁 大连 116650)

近些年来电子商务在国内飞速发展,淘宝、京东、拼多多等电商已经成为人们购物的不二选择[1]。随着电商热潮的到来,如何从海量异构的商品信息中提取有效的实体,为构建精准的推荐、搜索和智能客服系统提供数据基础成为热点话题。

命名实体识别(Named Entity Recognition,NER),是指在给定文本中识别出具有特定意义的字或词[2],并将这些特殊字词映射到预先设定好的类别中。目前被广泛的应用在信息检索[3]、自动问答系统[4]、机器翻译[5]以及知识图谱构建[6]等大型自然语言处理应用系统中。

目前,命名实体识别方法大致可分为三类:(1)基于规则匹配的方法,依赖手工规则的协同,根据文本语法的特点以及实体的结构建立匹配模板,并利用建立好的模板进行实体匹配和提取。但是基规则的方法,通常需要根据不同的语言风格和应用领域制定不同的匹配规则,需要耗费大量的时间成本。 (2)基于传统机器学习的方法,是指利用大规模已经标注好的语料来学习出标注模型,对句子的每个位置进行标注,常见的模型有生成式模型隐马尔可夫 (Hidden Markov Models,HMM) 模型[7]和判别式模型条件随机场 (Conditional Random Field,CRF) 模型[8]。两种模型中CRF模型的应用更为广泛,CRF是一个序列标注模型,它的目标函数不仅考虑输入的状态特征函数,而且还包含了标签转移特征函数[9]。CRF的优点在于其为一个位置进行标注的过程中可以利用丰富的内部及上下文特征信息,可以充分考虑词与词之间的依赖关系,克服了HMM模型输出独立行假设带来的缺陷。(3)基于深度学习的方法,随着硬件计算能力的发展以及词的分布式表示(word embedding)的提出,神经网络已经在多种大型自然语言处理任务中得到应用[10]。Hammertond等人[11]首次使用长短期记忆模型(Long Short Term Memory,LSTM)进行命名实体识别任务。Chiu等人[12]将卷积神经网络(Convolutional Neural Networks,CNN)应用于序列标注问题中,并取得了当时最好的结果。Strubell 等人提出使用迭代膨胀卷积神经网络(Iterated dilated Convolutional Neural Network,IDCNN)进行英文命名实体识别任务,Devlin等人[13]提出了BERT预训练模型,将语义信息融入了词向量,提高了命名实体识别任务的总体效果。杨飘等人[14],结合BERT预训练模型,使用双向长短期记忆神经网络(Bi-directional Long Short-Term Memory,BiLSTM)和条件随机场方法进行命名实体识别,在多个数据集上均取得很好的成绩。苏剑林[15]在BERT的基础上提出Rotary Transformer(RoFormer)预训练模型,为Transformer结构设计了新的旋转式位置编码(Rotary Position Embedding,RoPE),RoPE具有良好的理论性质,是目前唯一一种可以应用到线性Attention的相对位置编码,得益于新的位置编码方式RoFormer在多项中文NLP任务中均超越BERT。

鉴于RoFormer的良好性能,本文将RoFormer引入到命名实体识别任务中,并使用BiLSTM和IDCNN分别对输入文本进行特征提取,此外,为了提高模型对有用字词的关注能力,本文还引用了多头注意力机制。最后通过,CRF对电商领域实体进修正并输出,该模型能充分利用词的语义和位置信息,实验结果也表明,本文所提出的融合注意力机制的RoFormer-BiLSTM-IDCNN-CRF电商领域命名实体识别模型具有更高的优越性。

1 数据预处理

1.1 数据获取

本文所使用数据来自京东平台商品信息的自建数据集,因为原始数据并不规范其中存在大量的HTML标签,所以需要使用正则表达式对数据进行清洗,获取规范的数据。

1.2 数据标注

本文针对电商商品信息语料中的4类实体,采用BIO标注模式对文本中的实体进行标注,B表示实体的第一个字符,I表示实体的中间或最后一个字符,O表示其他字符或者非规定范围内的实体字符[16]。B-HCCX和I-HCCX分别代表商品的开头和中间字符;B-MISC和I-MISC代表商品产地的开头和中间字符;B-HPPX和I-HPPX代表商品的品牌的开头和中间字符;B-XH和I-XH代表商品规格的开头和中间字符。序列标注样例见表1。

表1 序列标注样例

该数据集共有8 006条,并按照6:1:1的比例划分训练集、验证集和测试集,各类实体统计见表2。

表2 电商数据实体统计

2 RoFormer-Bilstm-IDCNN-CRF模型

2.1 模型概述

针对自建的电商商品信息数据集,本文采用融合多头注意力机制的RoFormer-BiLSTM-IDCNN-CRF网络模型结构做命名实体识别任务如图1。模型主要由RoFormer预训练模型、BiLSTM与IDCNN特征提取融合层、多头注意力机制层和CRF推理层组成。

图1 命名实体识别模型结构

模型使用RoFormer所提供的字典将字映射为单字ID,再通过RoFormer完成词嵌入,获得动态词向量,将RoFormer输出的词向量输入到BiLSTM和IDCNN中,分别进行特征提取,得到序列的特征表示,再将提取到的特征通过拼接方式进行融合,输入到多头注意力层中,进一步提取对于序列标注具有关键作用的特征,最后,利用CRF对注意力层的输入进行解码并输出,获得每个字的序列标注。

本文所提出的模型,具有三方面的优势,首先,使用RoFormer中文预训练模型,相较于BERT预训练模型,同级别的RoFormer得益于其独特的位置编码能够获得更丰富的字词特征。其次,BiLSTM可以获取到输入句子中字词的上下文特征,但是会忽略掉一部分的局部特征,而IDCNN则可以很好的提取到局部特征,将BiLSTM和IDCNN进行特征融合,可以提高模型特征提取的能力。最后引入多头注意力机制,可以强化关键特征,进一步提升了模型的整体效果。

2.2 RoFormer模型

RoFormer由苏剑林团队于2020年3月发布,相较于谷歌团队发布的BERT,RoFormer主要在字的位置编码上做了改进。在BERT中采用正余弦位置编码,这种方式是Vaswani等人[17]提出并用在Transformer模型中,其位置编码方式为

PE(pos,2i+1)=sin(pos/100002i/dmodel),

(1)

PE(pos,2i+1)=cos(pos/100002i/dmodel)。

(2)

其中,pos代表当前词在句子中的位置,i指向量中每个值的index,在偶数位置使用正弦编码,在奇数位置,使用余弦编码[18]。这种编码形式属于绝对位置编码不能考虑到句子中词与词之间的位置关系。

通过分析相对位置编码和绝对位置编码的优缺点,苏剑林团队提出了旋转位置编码(Rotary Position Embedding,RoPE),二维情况下用复数表示的RoPE计算方式如下:

(3)

根据复数乘法的几何意义,上式变换实际上对应着向量的旋转,它还可以写成矩阵的形式。

(4)

将二维向量推导致n维可以得到RoPE在维情况下的公式如下:

(5)

通过上述公式发现给位置m的向量n乘上矩阵Rm、位置n的向量k乘上矩阵Rn,变换后的Q,K序列做Attention,那么Attention就自动包含相对位置新信息。RoPE是一种配合Attention机制能达到“绝对位置编码的方式实现相对位置编码效果”的设计。RoFormer和其他模型位置编码对比见表3。

在短文本任务上RoFormer预训练模型和WoBERT预训练模型表现类似,而在长文本任务中,RoFormer得益于旋转位置编码,其表现要优于其他预训练模型。

表3 预训练模型位置编码对比

2.3 BiLSTM层

长短期记忆神经网络[19](long short-term memory,LSTM)是一种特殊的循环神经网络(Recurrent Neutural Network,RNN)[20],相较于普通的RNN,LSTM引入了细胞状态,有效的解决了长序列在训练过程中出现的梯度消失和梯度爆炸的问题[21],因此LSTM在处理长文本的问题上有更好的表现。

同其他的循环神经网络一样,LSTM也具有链式结构, LSTM由四个门控单元组成,它们分别是输入门、遗忘门、输出门和记忆控制器。LSTM模型结构如图2。

图2 LSTM模型结构

LSTM单元具体实现方程组为

ft=σ(Wf·[ht-1,xt]+bf),

(6)

it=σ(Wi·[ht-1,xt]+bi),

(7)

(8)

Qt=σ(Wo[ht-1,xt]+bo),

(9)

(10)

ht=ot*tanh(Ct)。

(11)

式中:ft为遗忘门,决定将那部分信息从细胞状态中舍去;it为输入门,决定将多少信息加入到细胞状态中;ot为输出门,决定最终输出的值。

LSTM只能计算上文的信息,对下文的信息不能考虑在内,所以采用BiLSTM模型如图3,即两层的LSTM结构,在计算过程中,同时将序输入到正向和反向的LSTM中,对同一时刻的输出结果合并,样就能充分获得输入序列的上下文信息。

图3 BiLSTM模型结构

2.4 IDCNN层

迭代膨胀卷积神经网络(Iterated Dilated Convolutional Neural Network,IDCNN)是由多层膨胀卷积神经网络[22](Dilated Convolutional Neural Network ,DCNN)组成,其目的是扩大感受野,尽可能多的提取有用的特征。膨胀卷积网络通过增加膨胀度,来增大卷积核尺寸进而增加了感受野[23]如图4。a的卷积核和感受野均为3×3,接着将a中卷积的膨胀宽度设为2,得到了的3×3大小的卷积核b,其感受野为7×7。而IDCNN通过DCNN的逐层叠加,其感受野也呈指数增长,因此能更加充分提取文本的局部特征,对BiLSTM起到补充的作用。

a)膨胀度为1 b)膨胀度为2图4 膨胀卷积示意图

2.5 多头注意力层

多头注意力机制(Multi-head attention)可以让模型更加关注重点信息,随着输入序列的不断增长,会带来一定的信息损失,将多头注意力机制作用于BiLSTM和IDCNN的融合序列,可以增加对分类有意义特征的权重,减小无关特征的权重,从而提高模型输出的准确率。多头注意力机制结构图如图5。

对于融合后的特征进行线性变换,生成Q(query)、K(key)和V(value)三个向量,注意力权重计算公式如下:

(12)

其中,dk表示矩阵K的维度,将Q,K点乘后通过softmax函数进行归一化处理,再与V相乘即可得到注意力权重。

图5 多头注意力机制结构图

训练好的权重参数Q,K,V乘上Wo进行线性转换,即可得到最终的多头注意力值。对于head数为h的注意力值计算如公式如下所示:

MultiHead(Q,K,V)=Concat(head1,head2,…,headh)Wo。

(13)

headi的计算公式如下所示:

(14)

2.6 CRF层

条件随机场(Conditional Random Field,CRF)是序列标注算法, CRF可以在训练过程中自动学习到一写限制条件,保证最后输出预测标签的合法性[24]。

X={X1,X2,…,Xn},Y={Y1,Y2,…,Yn}均为线性链表示的随机变量序列,通过计算X的评分函数,得到预测序列Y产生的概率,再计算当预测序列产生概率的似然函数为最大时的预测标签作为输出。Y的计算公式如下:

(15)

对于输入序列X={x1,x2,…,xn},可以将输出最佳序列y的概率为

(16)

其中,p(w|s)表示输入序列与标签序列的对应概率,Ws代表标签序列。

3 实验及结果分析

3.1 实验过程

在开源平台TensorFlow中使用keras框架构建融合注意力机制的RoFormer-BiLSTM-IDCNN-CRF实体识别模型并调参,训练过程如图6。为了证明模型的有效性,本次实验还在同一数据集上做了多组对比实验以及消融实验。

图6 模型训练过程

3.2 实验环境

本次实验运行环境见表5。

表5 实验环境

训练过程中使用学习率预热策略AdamWarmup,增强模型的稳定性,让模型更快达到收敛状态。同时还引入了对抗训练Fast Gradient Method(FGM )提高模型的鲁棒性和泛化能力,具体参数配置见表6。

表6 参数配置表

3.3 实验结果及分析

3.3.1 对比实验

实验过程中,只有当一个实体的类型和边界完全正确时,才算正确的预测出实体。采用精确率P、召回率R和模型评价标准F1作为评价指标。

为了验证模型的效果,实验选取基于机器学习的“CRF”模型、基于深度学习的“BiLSTM-CRF”模型、“IDCNN-CRF”模型以及“BERT-BiLSTM-CRF”模型与所搭建的“融合注意力机制的RoFormer-BiLSTM-IDCNN-CRF”模型在相同实验环境,对同一数据集进行训练和验证。对商品(HCCX)、产地(MISC)、品牌(HPPX)、规格(HX)四类实体进行识别,实验结果也表明,融合注意力机制的 RoFormer-BiLSTM-IDCNN-CRF命名实体识别模型具有更高的优越性。本次实验结果见表7~10。

表7 商品实体识别结果

表8 产地实体识别结果

由实验结果可以看出,深度学习模型实验结果要远优于CRF模型,这是因为深度学习模型具有较强的学习能力,能充分提取文本特征。而预训练模型的引入,可以获得更加丰富的语义表示, 因此BERT-BiLSTM-CRF模型相较于BiLSTM-CRF模型有了较大地提高。本文所提出的模型,使用到了RoFormer预训练模型能够更充分的挖掘语义信息,而IDCNN能充分提取文本的局部特征弥补了BiLSTM提取局部特征的不足,因此本文所提出的模型评价结果要优于其他的对比模型。

表9 品牌实体识别结果

表10 规格实体识别结果

3.3.2消融实验

为了验证多头注意力机制在模型中的有效性,在本次实验所用的电商商品信息数据集上进行了消融实验,在相同的数据集和实验环境下,对比模型损失下降的速度以及模型的准确率得到了如图7~8的实验结果。

通过对比图7的实验结果可以看出,模型在引入了多头注意力机制后,对融合后的特征进行了权重的分配,增大了对分类影响较大的特征权重,减小了无关特征的权重,所以具有多头注意力机制的模型损失下降得更快,模型更易达到收敛,同时在预测结果上也有了一定的提升。

图7 损失对比

图8 模型准确率对比

4 结 语

本文以电商平台的商品信息作为数据集,提出了一种基于RoFormer的电商信息命名实体识别模型RoFormer-BiLSTM-IDCNN-CRF ,通过RoFormer获取到字向量,再将经过BiLSTM层和IDCNN层提取并融合后的信息输入到多头注意力层中学习重要的特征,最后,通过CRF模型进行实体标注,从而识别电商信息中的有效实体。通过对比目前命名实体识别领域的主流模型,进一步证明了本文所提出模型的优越性。本次实验识别出的实体可用于构建电商领域知识图谱,为实现智能推荐和搜索系统提供数据基础。在后续的研究中,将进一步扩大电商商品信息的语料,优化训练集中实体样本的分布,提升识别的效果。

猜你喜欢

编码卷积注意力
让注意力“飞”回来
生活中的编码
基于3D-Winograd的快速卷积算法设计及FPGA实现
《全元诗》未编码疑难字考辨十五则
如何培养一年级学生的注意力
子带编码在图像压缩编码中的应用
卷积神经网络的分析与设计
从滤波器理解卷积
Genome and healthcare
基于傅里叶域卷积表示的目标跟踪算法