APP下载

基于深度学习的中文短语复述抽取技术研究

2021-03-17潘晓彤刘作鹏

中文信息学报 2021年2期
关键词:语料短语语义

颜 欣,张 宇,潘晓彤,刘作鹏,刘 挺

(1. 哈尔滨工业大学 社会计算与信息检索研究中心,黑龙江 哈尔滨 150001)(2. 北京小米松果电子有限公司 人工智能部,北京 100085)

0 引言

中文的自然语言变化多样,很多人们日常交流或文字表达的句子,都能通过替换细粒度语言单元来达到相同效果,这就是细粒度级复述的一个重要应用场景,而短语就是一种细粒度语言单元。

复述(paraphrase)即使用不同的文本表达表示相同的语义信息,是自然语言多样性的一种体现,也是自然语言处理中的最基本、最核心的任务之一[1]。根据文本粒度的不同,可以将复述研究分为三类: 词汇级复述研究、短语级复述研究以及句子级复述研究,而从任务角度又可以划分为抽取式、识别式和生成式。优质的复述资源,能够应用在很多下游任务中以提升效果。

传统方法大多基于双语平行语料,通过组块分析以及共现概率获取短语复述。然而这类传统方法的相关研究早已遇到瓶颈,因为对齐错误或者外文翻译错误都会导致抽取到错误的短语复述,同时由于组块分析的局限性,只是将大量的连续词串作为短语,会识别出大量的非语言单元。时下深度学习技术兴起,为解决这类问题带来了新方式,本文提出了一种新的抽取短语复述的框架,无须双语语料,可直接从单语语料中识别短语并抽取更为精确的短语复述。

1 相关工作

国内外一直有研究人员在复述领域进行相关研究工作。Barzilay R等人[2]利用同一本小说的多个平行英文翻译构造了单语平行语料,并根据该语料抽取单词和短语的复述资源。他们训练了一个基于上下文的复述分类器来对候选复述进行过滤。Bannard C[3]等人则在双语平行语料上进行短语复述抽取,相比于单语平行语料,双语平行语料更加易于获取。

赵世奇[4]利用机器翻译将双语平行语料中的目标句子进行翻译,从而获取源语言句子的复述句,进而构建单语平行语料用于复述抽取。李莉等人[5]将中英平行专利语料用于短语级的复述抽取,利用组块分析技术过滤短语复述,再根据分布相似度对候选复述进行重排序。Li Z等人[6]首次引入深度强化学习进行句子级复述生成的研究。该方法由生成器和判别器组成,前者基于序列到序列模型生成句子复述,后者则使用文本匹配模型判断生成的句子是否是源句子的复述。其中生成器采用了二阶段的训练方式,先使用深度学习进行预训练,再利用强化学习做进一步的微调。

在应用方面,Dong L等人[7]将复述应用到QA任务中,提出了一种能用于各类QA任务的复述框架。苏晨等人[8]将复述应用到机器翻译中,利用源语言的复述缓解了机翻过程中缺少相关知识的问题。除此之外,王超越[9]利用复述知识作为辅助,提高情感分析任务的指标。

本文受启发于Ma X等人[10]提出的端到端序列标注模型,将中文的短语划分转化成序列标注任务,并迁移该模型用于中文短语划分。Zhang B等人[11]也提出了一种短语的向量表示方式,计算源、目标语言短语之间语义相似度用于统计机器翻译模型中提升效果。受启发于此,本文利用该模型获取中间的短语向量表示,进而通过语义计算和规则过滤,获取和过滤候选复述资源。

2 方法介绍

中文短语复述抽取的流程如图1所示,包含6个模块: 单语语料预处理、短语划分、短语过滤、短语向量表示学习、候选复述抽取以及候选复述判别。下文将依次介绍这几个模块。

图1 中文短语复述抽取流程

2.1 单语语料预处理

通过哈工大社会计算与信息检索研究中心研发的语言技术平台(LTP)[12](以下简称“LTP”)对原始的中文语料进行如下操作: 分句、分词、词性标注。对分句之后的过长过短句进行过滤,其阈值范围为[3 100]。另外,对于分词之后的句子,如果分词的结果中某个词的长度过长(超过7),则认为该句子太过脏乱,进而会删除对应的句子。预处理过后,获取到分好词且做好词性标注的句子。

2.2 短语划分

传统的中文短语获取方法大都是基于组块分析,这种做法抽取连续词串作为短语,会出现很多非语言单元。为了解决这类问题,我们将短语划分问题变换成序列标注问题,对预先定义好的短语类别按BIO标注法标注好,LSTM+CNN+CRF的框架已经证明在序列标注问题上有很好的效果,本文将该框架迁移到中文短语划分任务上,解决了传统方法会抽取到很多非语言单元的问题,提高了短语质量。

2.2.1 短语类型划分

要做短语划分任务,预先要定义好短语类别。Xue等人[13]把中文短语分为12类,如表1所示。这些短语类别都是并列关系。

表1 中文短语类型及说明

本文将中文的短语划分任务视为一种特殊的序列标注任务,利用BIO标注法将上述中文短语类别标注为25类。例如,动词短语(VP)分成了两类标签: B-VP以及I-VP,其他类别标签同理,外加单独标签O,总共25个标签。

2.2.2 基于2BiLSTM+CNN+CRF的序列标注模型

图2 基于2BiLSTM+CNN+CRF的序列标注模型

该模型将词及其对应的字和词性的向量表示拼接在一起作为双向长短时记忆网络(bi-directional long short-term memory,BiLSTM)模型的输入。本文引入了两层BiLSTM,让每个词的上下文信息学习得更充分。

本文利用卷积神经网络(convolution neural network,CNN)生成字向量表示,如图3所示。将每个中文词的字向量按顺序拼接后做Padding,通过卷积层和池化层进行特征提取,生成对应的字向量表示。

图3 基于CNN的字表示生成模型

2.3 中文短语过滤

通过2.2节中介绍的模型能够进行短语划分,初步获取短语集。为处理原始短语集,本文设置过滤规则如下:

① 2≤短语组成词的个数≤5;

② 不能出现非中文字符;

③ 过滤掉某个短语中对应的某个词没有翻译数据的情况;

④ 过滤频率小于10的低频短语。

基于以上过滤规则,其获取了103万条优质中文短语用于实验比对。

2.4 基于二元注意力机制递归自编码器的短语表示学习

传统方法大都基于双语平行语料计算共现概率来获取短语复述,缺点是对齐错误会造成误识。短语的翻译数据相对单一,通过“枢轴法”获取的复述资源又会大幅减少。本文提出了一种新的短语复述抽取方法: 先通过表示学习获取短语向量表示,再通过语义相似度获取候选复述,最后通过设置规则,保留正确的复述资源。

本文使用了二元注意力机制递归自编码器BattRAE[11](bidimensional attention-based recursive autoencoders)模型来学习短语向量表示。这样获取的短语向量不仅包含上下文信息,还有本身的语义以及结构信息,同时能够提高后续通过语义相似度获取到的候选复述资源的质量。

2.4.1 BattRAE模型介绍

模型结构如图4所示,左右两边分别输入源(中文)和目标语言(英文)短语。

图4 BattRAE模型结构

首先,用递归自编码器RAE(recursive auto encoder)解析源和目标短语的层次结构。进而从生成的结构中获得多级粒度(词,子短语和短语)embedding表示,输入的信息更丰富,就能学到更好的短语表示。

图5为递归自编码器的模型结构图,输入短语序列“中华 人民 共和国”,节点x1(中华),和x2(人民)组成了第一层父节点y1,计算过程如式(1)所示。

图5 Recursive AutoEncoder 模型结构图

y1=We*[x1,x2]+be

(1)

其中,We和be分别是encoder部分的权重和偏置项。

y1再重构出x′1以及x′2,如式(2)所示。

[x′1,x′2]=Wd*y1+bd

(2)

Wd和bd分别是decoder部分的权重和偏置项。

该节点的重构误差如式(3)所示。

(3)

训练目标即最小化所有节点重构误差。如式(4)所示。

(4)

不同粒度语言单元的表示投射到attention空间,利用二维attention矩阵表示源语言和目标语言之间各个单元的对齐强度。在该矩阵上执行行(列)方向求和后做softmax生成源(目标)侧attention 权重。最终短语表示为初始embedding和attention权重加权求和。图6为该部分网络框架。

图6 BattRAE模型中二维注意力机制网络框架

模型在输入矩阵上堆叠attention层,用以将Ms和Mt的embedding投影到共同的attention空间,如式(5)、式(6)所示。

在该attention空间上,源语言的每个embedding与目标语言的所有embedding交互,反之亦然。交互强度可以通过语义匹配值来衡量,计算如式(7)所示。

(7)

生成了attention矩阵B,下一步计算特定粒度级别的embedding相对于相应源和目标短语之间的语义相似度的重要程度。因为每个embedding在对侧与所有embedding交互,其重要性可以表示为各交互强度的总和,即在式(7)中计算出来的匹配值。通过二维attention矩阵上的行或者列逐次求和,如式(8)、式(9)所示。

由于短语的长度不是固定的,模型用softmax函数对上述向量做归一化,保证attention空间上的实数分布,即attention权重,如式(10)、式(11)所示。

根据上述权重,分别获取源和目标语言短语向量表示,如式(12)、式(13)所示。

本文将两者转换到同一语义空间,计算短语向量之间的语义相似度,存在非线性映射如式(14)、式(15)所示。

最后为了测量它们的语义相似性,用到了Bilinear model,如式(16)所示。

(16)

2.4.2 目标函数和训练方法

本模型目标函数由两部分组成: ①递归自编码器的重构误差(前面内容已经有介绍); ②语义误差,用于估量源和目标语言短语之间的语义匹配程度。

本文在给定一个训练样例(c,e)的同时,采用随机替换单词的方式生成对应的负样例(c-,e-),运用最大边界法(max-margin method)建立语义误差如式(17)所示。

(17)

最小化上式误差,能保证最大化正确的短语对(c,e),同时最小化负例短语对(c,e-)和(c-,e)之间的语义相似性。

对于训练样例(c,e),BattRAE网络的联合训练目标定义如式(18)所示。

J(θ)=αErec(c,e)+βEsem(c,e)+R(θ)

(18)

其中,Erec(c,e)=Erec(c)+Erec(e),为了平衡两类误差,令参数α和β满足约束条件α+β=1。R(θ)表示正则项。所有参数分为四类,如表2所示。

表2 参数分类情况

不同种类的参数簇用不同的正则化权重,计算如式(19)所示。

(19)

其中,λ*是对应的超参,同时用L-BFGS算法[14]进行参数优化。

2.5 候选复述获取和判别

在学习到中文短语的向量表示之后,本文利用余弦相似度表征短语之间的语义相似度,如式(20)所示。

(20)

其中Ea和Eb分别表示短语a和b对应的短语向量。

通过相似度计算排序后,为了保证最终复述资源的数量和质量,本文将相似度top40的短语选为候选复述短语。在此基础上需判别其正确性,过滤掉非复述短语。考虑到缺乏大规模标注数据,无法训练分类器做判别过滤,最终决定用基于规则的方式过滤。

本文主要是基于英文翻译数据对短语复述词表做过滤。例如,短语复述对“法国 世锦赛”和“俄罗斯 世锦赛”,显然“法国”和“俄罗斯”两个词不一样,就可以根据翻译规则判断两者不存在共现外文翻译,对其进行过滤。另外像“代表投票”和“投票代表”这种候选复述对,虽无法通过翻译规则过滤,但分析发现这两个的短语属于不同的类别,前者是名词短语,而后者是动词短语,可以通过短语类别的不同过滤掉候选复述对。

3 实验

3.1 数据来源

实验中用搜狗新闻数据作为中文单语语料。在短语识别任务中用到了Chinese Treebank(CTB)8.0[15]进行模型的训练和测试。短语表示学习中用到的平行外文短语,是从Google翻译中爬取的对应英文翻译。

3.2 结果及分析

3.2.1 短语划分相关结果

本文将CTB8.0语料重新用LTP做词性标注,按照9∶1的比例划分成训练集和测试集。其中中文词向量通过Word2Vec在搜狗新闻语料上进行预训练,词性embedding随机初始化,字向量是预训练的WIKI百科字向量。

如表3所示,本文用BiLSTM模型作为baseline,其准确率为0.877,F1值是0.824。由于使用CRF可以提高模型建模输出序列之间的语义关系,因此使用CRF作为序列标注的输出层可以大幅度提高模型的性能。而2BiLSTM + CRF模型额外增加了一层BiLSTM,进一步提高了模型学习句子内部语义信息的能力,因此又有了进一步的性能提升。而在加上字向量表示信息之后,我们提出的2BiLSTM+CNN+CRF在各项指标上又有提升,准确率和F1值分别能够达到0.903和0.861。这说明字向量的引入能够让输入的信息更加丰富,进而帮助标注。

表3 短语划分任务实验结果

3.2.2 短语复述抽取实验

我们在短语划分的基础上使用前面介绍过的方法学习中文短语的向量表示,同时进行候选复述的抽取和判别实验。最终获取到大约14万条中文短语复述,我们选取了一部分复述样例展示在表4中。

表4 部分中文短语复述结果

我们从抽取结果中随机抽取500条复述,使用Precision值和MRR值进行评价。并同已有的短语向量学习方法进行比较,最后的评价结果如表5所示。

表5 短语复述抽取结果评价

我们将BattRAE同已有的短语向量学习方法进行对比,其中CBOW(continue bag of word)通过根据当前词的上下文来预测当前词的训练方式来学习当前词的向量表示[16]。我们将该方法迁移到了短语的向量表示学习上,根据当前短语的上下文来学习当前短语的向量表示。实验结果显示,基于CBOW方法生成的短语向量不能很好地用于抽取短语复述,无论在精确度上还是MRR上结果都不理想。RAE(recursive autoencoder)表示是基于递归自编码器的方法[17],其获取的复述结果要优于CBOW,说明递归自编码器对于短语信息的表征能力要强过CBOW模型。

SWEM(simple word embedding based models)系列的表征方法比较简单,aver是将每个词向量加和平均作为短语表征;max是在每个维度上取最大;而concat是将两者拼接[18]。这样的表征方式,虽然很简单,但是效果不差,SWEM-aver的效果只略低于RAE。SWEM-max的方法相对于SWEM-aver在Precision有一定的提升,而相比于这两者SWEM-concat的效果要更好一些。这证明了拼接的方法要优于最大池化和平均池化,更适合用于生成短语向量。

SIF(smooth inverse frequency)则将每个词平滑的逆频率进行加权求和,再除以第一主成分来获取短语的表示向量[19]。相对SWFM-concat其有3个点的提升。

BRAE(bilingually-constrained recursive auto encoder)是带双语约束的递归自编码方法[20]。其引入外文语料进行联合训练,提高了建模短语向量的能力,可以让短语向量蕴涵更丰富的语义信息。实验结果显示,其性能相对于SIF有了进一步的提升,也进一步佐证了其更为强大的建模短语的能力。而相比于BRAE模型,我们提出的BattRAE则在引入外文语义信息的同时还学到了短语中各个子结构的信息,因此相比于BRAE模型,本文模型性能又有了进一步的提升。

4 结论及下一步展望

本文提出了一种中文短语复述抽取的方法,该方法主要通过2BiLSTM+CNN+CRF模型进行中文短语划分,同时利用BattRAE模型进行短语表示学习,通过余弦相似度计算和规则过滤,进行候选复述的抽取和过滤。在搜狗新闻语料上进行抽取实验,通过实验对比,证明该方法超越了目前其他的方法。下一步我们的研究将尝试更多不同的方式去进行短语复述的抽取。考虑使用加入BERT模型[21]进一步提高短语划分的准确率,同时还会尝试获取一些标注语料,方便训练分类器对候选复述进行判别。

猜你喜欢

语料短语语义
语言与语义
基于语料调查的“连……都(也)……”出现的语义背景分析
“上”与“下”语义的不对称性及其认知阐释
《健民短语》一则
华语电影作为真实语料在翻译教学中的应用
认知范畴模糊与语义模糊
《苗防备览》中的湘西语料
国内外语用学实证研究比较:语料类型与收集方法
语义分析与汉俄副名组合