CN110083710B - 一种基于循环神经网络与潜变量结构的词语定义生成方法 - Google Patents
一种基于循环神经网络与潜变量结构的词语定义生成方法 Download PDFInfo
- Publication number
- CN110083710B CN110083710B CN201910365929.7A CN201910365929A CN110083710B CN 110083710 B CN110083710 B CN 110083710B CN 201910365929 A CN201910365929 A CN 201910365929A CN 110083710 B CN110083710 B CN 110083710B
- Authority
- CN
- China
- Prior art keywords
- word
- paraphrase
- words
- vector
- context
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 34
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 25
- 125000004122 cyclic group Chemical group 0.000 title claims abstract description 15
- 239000013598 vector Substances 0.000 claims abstract description 88
- 238000012549 training Methods 0.000 claims abstract description 31
- 239000000284 extract Substances 0.000 claims abstract description 6
- 230000009466 transformation Effects 0.000 claims description 13
- 238000012795 verification Methods 0.000 claims description 13
- 238000013507 mapping Methods 0.000 claims description 11
- 230000002457 bidirectional effect Effects 0.000 claims description 9
- 238000004364 calculation method Methods 0.000 claims description 9
- 230000002441 reversible effect Effects 0.000 claims description 7
- 239000004576 sand Substances 0.000 claims description 5
- 239000011159 matrix material Substances 0.000 claims description 4
- 238000005070 sampling Methods 0.000 claims description 4
- 238000010276 construction Methods 0.000 claims description 3
- 238000010606 normalization Methods 0.000 claims description 3
- 230000003213 activating effect Effects 0.000 claims description 2
- 230000004913 activation Effects 0.000 claims description 2
- 238000004140 cleaning Methods 0.000 claims description 2
- 238000000844 transformation Methods 0.000 claims description 2
- 230000000306 recurrent effect Effects 0.000 abstract description 7
- 238000003058 natural language processing Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 8
- 238000012360 testing method Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 4
- 239000000463 material Substances 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 241001522296 Erithacus rubecula Species 0.000 description 1
- 238000002679 ablation Methods 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/36—Creation of semantic tools, e.g. ontology or thesauri
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Software Systems (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Machine Translation (AREA)
Abstract
本发明涉及一种基于循环神经网络与潜变量结构的词语定义生成方法,属于自然语言处理领域。本发明在基于循环神经网络的基础上利用变分自编码器(VAE)对释义进行建模,结合潜变量特征,根据被定义词的上下文信息对词义进行提取来生成词语的释义,具体包括:建立并整理基础语料库;选取被定义词语的近义词集合,扩展基础语料库,形成最终语料库;对被定义词语的词向量进行扩展重构;构建基于循环神经网络与潜变量结构模型;训练基于循环神经网络与潜变量结构模型;将待释义词语及其上下文信息输入训练完成的模型中,实现具体语境中待释义词语的语义释义,解决一词多义问题。
Description
技术领域
本发明涉及一种基于循环神经网络与潜变量结构的词语定义生成方法,属于自然语言处理领域。
背景技术
英语学习型词典是指专为母语是非英语的学习者设计,力图帮助学习者正确理解并运用英语的工具书。目前大多数英语学习型词典的词语定义存在循环释义,用词太难等问题,不利于使用者的理解。
定义生成(Definition Generation)的主要任务是自动的生成词语的自然语言释义,从而缩减人工编纂词典的时间和成本,涉及语言学(Linguistics)、自然语言处理(Natural Language Processing)、人工智能(Artificial Intelligence)等众多领域。
词向量,即分布式的词表示,采用低维稠密的向量来表示词汇。在词相似等任务中词向量能够捕获词汇之间的语义关系。
词相似:通过计算两个词语的词向量的相似度来衡量两个词语的相似性,主要方法包括余弦相似度(Cosine)、欧氏距离(Euclidean)、曼哈顿距离(Manhattan Distance)、皮尔逊相关系数(Pearson Correlation Coefficient)等。
定义生成研究基于词向量表示是否可以生成对应词语的自然语言释义。相比于词相似等任务,它是词向量所捕获的语法和语义信息更直接的表示和验证。
图1为目前的定义生成方法示意图。目前的定义生成方法大多基于循环神经网络语言模型。如图1所示,将被定义词输入到循环神经网络中,神经网络输出一个词语的概率分布和隐藏表示,从概率分布中进行采样得到概率最高的词语作为该时刻的生成词,和隐藏表示一起送到下一个时刻的循环神经网络中,循环往复,直到生成停止标识。
长短期记忆网络(LSTM)是一种特殊结构的循环神经网络,可以学习序列的长期依赖信息。在每一个时刻t上,LSTM接收该时刻的输入x以及t-1刻的隐藏状态ht-1输出该时刻的输出y以及一个新的隐藏状态ht。
门控循环单元(GRU)是LSTM的一种变体,它将LSTM的忘记门和输入门合成了一个单一的更新门。GRU在保持LSTM效果的同时又使得模型的结构更加简单。
现有方法在定义生成过程中仅仅利用被定义词的信息,有一定的局限性,不能充分的结合上下文信息,即该词在语境中的含义,因此不能考虑到一词多义的问题。
发明内容
为了弥补现有方法的不足,本发明在输入时不仅利用被定义词,同时输入该词的上下文信息去进行词语的定义生成。本发明在基于循环神经网络的基础上利用变分自编码器 (VAE)对释义进行建模,结合潜变量特征,根据被定义词的上下文信息对词义进行提取来生成词语的释义,弥补了现有方法不能结合语境的缺点,从而解决了一词多义的问题。
本发明提供一种结合上下文信息与潜变量结构的词语定义生成方法,包括:上下文语义提取器、释义变分自编码器、释义生成解码器。
所述上下文语义提取器用于根据被定义词的上下文信息来提取被定义词词向量在相关语境中的含义。
所述释义变分自编码器对释义进行建模,提取释义的潜变量特征,弥补定义生成时信息不足的问题,同时在生成定义时为模型提供释义的结构信息。
所述释义生成解码器基于门控循环单元GRU,结合上下文语义提取器编码的上下文信息以及释义变分自编码器建模的潜变量特征,联合被定义词的词向量去进行该词的词语定义生成。
具体技术方案如下:
一种基于循环神经网络与潜变量结构的词语定义生成方法,其特征在于包括以下步骤:
(1)建立并整理基础语料库;
所述的基础语料库的内容包括被定义词、词性、领域、释义、上下文信息;
所述的基础语料库采用词典的词语释义语料集合;
所述的整理包括两部分,即对收集到的基本语料进行清洗,去除停用词和功能词,并按照一定的比例划分训练集、验证集,以及整理基础语料中被定义词、释义和上下文信息中出现的所有词作为基础语料库词表;
(2)选取被定义词语的近义词集合,扩展基础语料库,形成最终语料库;
计算被定义词语与基础语料库词表中每一个词的相似度得分,选择分数最高的前n个词作为被定义词语的近义词集合;基础语料库+被定义词近义词集合构成最终语料库;
(3)对被定义词语的词向量进行展重构,具体包括:
对被定义词词向量V*和最终语料库词表中出现词语的词向量进行初始化;
在被定义词的字符序列的开始和结束位置添加标识符,输入到双向LSTM中,分别从正向和反向对被定义词进行建模,将双向LSTM最后一个时刻正向和反向的隐藏状态进行拼接,得到被定义词的字符级信息VCH;
对所述被定义词近义词集合的词向量进行初始化,将n个近义词的词向量进行拼接,得到被定义词的近义词信息VSY;
将初始化的被定义词词向量V*与所述字符级信息VCH和所述近义词信息VSY进行拼接,得到被定义词扩展重构后的词向量,如公式1所示:
V*=[V*,VCH,VSY] (1)
(4)构建基于循环神经网络与潜变量结构模型
模型包括上下文语义提取器模块、释义变分自编码器模块、释义生成解码器模块三部分,
所述上下文语义提取器用于根据被定义词的上下文信息来提取被定义词词向量在相关语境中的含义,具体为:
将被定义词的上下文信息输入到双向GRU中,将双向GRU最后一个时刻正向和反向的隐藏状态进行拼接,得到上下文的嵌入表示Vs;
对上下文嵌入表示Vs进行线性变换操作来对齐空间,得到对齐后上下文表示TVs;按照公式2计算对齐后的上下文表示TVs与重构的被定义词词向量V*之间的内积d,具体计算公式如下:
d=TVs⊙V* (2)
其中T表示线性变换矩阵,⊙表示计算内积操作;
利用Softmax进行归一化,按照公式3计算得到被定义词词向量基于上下文信息的二进制掩码mask,具体计算公式如下:
mask=Softmax(d) (3)
将被定义词词向量基于上下文信息的二进制掩码mask与重构的被定义词词向量V*进行拼接,进行线性变换映射到相同的向量空间中,并使用Tanh进行激活,得到语义向量m,具体计算公式如下:
m=tanh(Wc[mask:V*]+b) (4)
其中Wc表示线性变换矩阵,b为偏置项,tanh为非线性激活函数;
本模块的输出包括:被定义词和上下文在向量空间中对齐后的上下文表示TVs和语义向量m;
所述释义变分自编码器对释义进行建模,提取释义的潜变量特征,弥补定义生成时信息不足的问题,同时在生成定义时提供释义的结构信息,具体如下:
将被定义词的释义输入到GRU中,取GRU最后一个时刻的隐藏状态作为释义的编码特征,对编码特征分别进行两个线性变换,映射到一个均值为0,标准差为1的潜变量空间Z中,通过Z重构被定义词的释义,使得Z拟合被定义词释义的特征分布;
随机生成两个向量,一个表示均值,一个表示标准差,用标准正态分布乘上标准差再加上均值得到被定义词释义的潜变量特征z;
本模块的输出为被定义词释义的潜变量特征z;
所述的释义生成解码器模块,基于GRU,用于联合重构后的被定义词词向量以及上下文信息和潜变量特征进行被定义词词语定义的生成,具体如下:
释义生成解码器的输入为被定义词的释义,释义生成解码器初始的隐藏状态是由重构的被定义词词向量、对齐的上下文表示、潜变量特征拼接,然后进行线性映射得到的,具体表示如下:
V=[V*;TVs;z] (5)
将拼接之后的所述被定义词的生成向量V经过线性变换映射到所述释义生成解码器初始的隐藏状态ho;
在第一个时刻使用一个特殊的开始标识BOS与语义向量m进行拼接作为第一个时刻的释义生成解码器的输入;之后在释义生成解码器每一个解码的时刻t上将t时刻词语的词向量Vt与语义向量m进行拼接,得到该时刻释义生成解码器的输入xt,如公式6所示:
xt=[Vt;m] (6)
接收t时刻的输入xt以及t-1时刻的隐藏表示ht-1,计算得到新的隐藏表示ht;
将释义生成解码器t时刻的隐藏表示ht经过线性变换按映射到一个词表大小的概率分布Ot中,通过Softmax计算得到最终的概率分布,选择分布概率最大的作为t时刻的输出 yt,如以下所示:
yt=argmaxpt,i (7)
(5)训练基于循环神经网络与潜变量结构模型,具体为:
首先使用WikiText-103数据对释义生成解码器部分进行单独的预训练,预训练时设置生成向量为0向量,当连续n≥5个轮次epoch在验证集上的困惑度没有下降时,预训练完毕,保存释义生成解码器模块的参数;
加载预训练之后释义生成解码器模块的参数,使用训练集对整体基于循环神经网络与潜变量结构模型进行训练优化,当连续n≥5个轮次epoch在验证集上的困惑度没有下降时,训练优化结束。
(6)将待释义词语及其上下文信息输入训练完成的模型中,实现具体语境中待释义词语的语义释义,解决一词多义问题。
本发明基于循环神经网络并结合潜变量结构与上下文信息进行词语的定义生成,使得模型可以考虑到生成定义时的语境信息,并学习到定义的句法结构特征。经实验证明,该方法可以有效的弥补被定义词信息不足的问题,并能考虑语境解决一词多义的问题,生成质量更高,易于理解的词语定义。
附图说明:
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍。
图1为目前定义生成方法示意图。
图2为本发明总体模型示意图。
图3为使用双向LSTM对被定义词进行字符特征VCH提取的示意图。
图4为对被定义词词向量的扩展重构示意图。
图5为释义变分自编码器结构示意图。
具体实施方式:
图2为本发明基于循环神经网络与潜变量结构的词语定义生成方法模型结构示意图,本实施中包括上下文语义提取器、释义变分自编码器、释义生成解码器。
本发明涉及的一些基本概念及相互关系
1、词表:由字典中收录的所有词语构成,即由所有被定义词组成;
2、初始词表:统计WikiText-103数据集出现频率最高的前70000个字符,去除特殊符号,仅保留英文单词作为初始词表;
3、基础语料库:就是把真实出现过的语言材料整理在一起,形成一个语料库,以便做词语解释的时候能够从中取材或者得到数据佐证。本发明所述的语料库是指我们收集到用于本方法的所有数据的集合。
3、初始词表与基础语料库的关系:基于初始词表中的所有词语建立基础语料库;
4、对被定义词的词向量进行展重构目的在于丰富被定义词的表示;
5、测试模型生成效果时的待定义词必须在初始词表中,因为这样才能有正确答案。
本发明包含如下具体步骤:
网络上大多的词典语料都缺乏例句信息,牛津词典包含了丰富的例句资源,因此本实施例针对初始词表使用牛津词典数据构建基本语料库,以便做词语解释的时候能够从中取材或者得到数据佐证。本发明所述的语料库是指我们用于训练和测试模型的所有数据。
基础语料库的建立:采用牛津词典数据作为语料,并且利用Wordnet资源计算近义词的计算。
A、使用牛津词典API收集牛津词典数据,收集数据格式如下:
Word(被定义词)|||POS tag(词性)|||domain(领域)|||definition(定义)|||example(上下文);
B、使用Wordnet计算通过A收集到的所有被定义词的相似度->被定义词的近义词集合,A (被定义词、词性、领域、释义、例句)+B(被定义词的近义词集合)得到最终的语料库。再按比例将整个语料库分为训练集、验证集、测试集。
将收集到的词典语料进行预处理,去除停用词、功能词,仅保留纯小写字母的单词。将处理完成的语料按照8:1:1的比例划分为训练集、验证集和测试集,利用训练集对本发明提出的方法进行模型训练,利用验证集寻找最好的超参数,利用测试集测试本方法性能。
词典释义通常具有种类和种差的结构。种类指的是词语的一般性类别,而种差指的是该词与同一类中的其他词之间的差异。
本实施例使用Wordnet资源,将被定义词输入,wordnet资源会根据余弦相似度自动计算出被定义词前n个近义词,Wordnet是一个工具资源,所得分数越高说明两个词语越相似。选择分数最高的5个词作为被定义词的近义词集合。如:money的近义词集合为(trade,deal,business,transaction,commerce)。利用近义词信息在生成被定义词定义时提供更多的种类关系。
基础语料库词表中出现词语的词向量初始化过程如下:
分别统计上下文和释义中出现的词表大小,创建Id2Word和Word2Id的映射。在释义序列的起始位置和结束位置添加特殊的标识。
为每一个单词构建固定维度300的词向量,使用谷歌Word2vec预训练的词向量进行初始化。由于谷歌预训练的词向量是在大型新闻语料上训练得到的,因此包含了词语丰富的语义信息,例如国王-男人=女王-女人,这样比我们随机初始化的向量要好,因为随机初始化的向量之间不存在类似的语义关系。
被定义词词向量的初始化同样使用谷歌预训练的词向量。
英语和其他语言中的许多单词由组合语素组成。例如“capitalist”由词根“capital”和后缀“-ist”组成,词缀信息通常对对词根语义存在一定的影响。通过建模字符级信息捕捉词的前缀和后缀特征。将被定义词用one-hot编码的字符序列表示,并在起始位置和结束位置添加特殊的标识。如money->[<s>,m,o,n,e,y,</s>]。构建一个字符级别的双向LSTM模型分别从正向和反向对词序列进行建模,将LSTM输出的最后一个隐藏状态进行拼接得到被定义词的字符信息,用VCH表示。对被定义词进行字符特征提取的示意图如图3所示。
使用得到的被定义词近义词集合的词向量之和作为被定义词近义词的嵌入融合表示,为被定义词提供更多的种类关系,近义词信息用VSY表示。
将被定义词词向量V*与字符级信息VCH、近义词信息VSY拼接,得到扩展重构后的词向量V*,如公式1所示。词向量的扩展重构如图4所示。
V*=[V*,VCH,VSY] (1)
为了解决一词多义问题,我们关注从被定义词相应的上下文信息中提取特定的语义信息。
首先使用双向的GRU编码器得到上下文的句子嵌入表示Vs,计算上下文句子嵌入Vs和被定义词词向量V*的内积。但是由于句子嵌入和被定义词词向量都是通过线性运算从相同的预训练嵌入得到,因此它们在向量空间中不能很好地对齐。我们学习一个额外的线性变换T来对齐空间。在变换之后计算内积,如公式2所示:
d=TVs⊙V* (2)
使用Softmax进行归一化,计算得到被定义词词向量关于其上下文信息的二进制掩码,如公式3所示:
mask=Softmax(d) (3)
最后计算语义向量m,如公式4所示:
m=tanh(Wc[mask:V*]+b) (4)
标准的循环神经网络每一个时刻生成一个单词,并不能考虑到整个句子的表示。为了得到句法正确、风格一致的词语释义,同时对释义进行有效的特征提取,我们构建释义变分自编码器,将被定义词的释义使用GRU编码器进行特征提取,映射到一个潜变量空间Z中,使得模型可以模拟词语定义的整体属性,例如结构,风格和高级句法特征。
变分自编码器的设计并不是用来进行序列建模相关任务的,因此我们在变分自编码器的潜变量上添加了历史依赖,使得隐藏层对其先前的时刻具有顺序依赖性,用于潜在结构的建模;然后将标准判别确定性解码器和循环生成解码器集成到同一解码框架中。目标释义将基于判别确定性变量和生成的潜在结构信息进行解码。
释义变分自编码器分为变分编码器和变分解码器两部分,如图5所示。
在编码阶段,变分编码器对输入的词语定义进行编码,将其映射到潜变量空间Z中,用来重构原始的输入。
在解码阶段,变分解码器利用先前的潜在结构信息来构建更有效的表示来进行释义的生成。
释义生成解码器模块基于GRU,对GRU的隐藏状态进行初始化,为解码器提供显示信号,以生成连贯、一致的词语定义。
为了使得模型在生成释义时同时考虑上下文信息和潜在的释义结构特征,将重构的被定义词词向量与对齐的上下文信息以及潜变量拼接,作为被定义词的生成向量V。如公式5所示:
V=[V*;TVs;z] (5)
将拼接得到的生成向量通过一个线性变换层映射到GRU初始的隐藏状态,使得解码器可以自适应的学习释义的生成信息,如公式6所示:
h0=WlV+bl (6)
在每一个解码的时刻t,我们将该时刻的生成的词向量Vt与语义向量m进行拼接作为GRU的输入xt,如公式7所示:
xt=[Vt;m] (7)
Vt是时刻t词语的词向量,m是由公式4计算得到的语义向量,以此确保在每一个解码的时刻释义生成解码器可以更好的融合上下文及被定义词的信息。
解码的过程直到遇到结束标识停止。GRU内部的结构如以下公式所示:
rt=σ(Wr·[ht-1,xt]), (8)
zt=σ(Wz·[ht-1,xt]), (9)
利用一个线性层将GRU输出的隐藏状态映射到词表大小维度的空间上,得到解码器输出的词语概率分布Ot,如公式12所示:
Ot=Wo·ht (12)
最后通过Softmax进行归一化,得到最终的概率分布,选择分布概率最大的作为该时刻的输出,如以下公式所示:
yt=argmaxpt,i (14)
释义生成解码器预训练过程如下:
使用WikiText-103数据集对释义生成解码器部分进行预训练。在预训练的过程中设定生成向量V为0向量,使得解码器没有任何限定条件,自适应地学习序列的表达。释义生成解码器的嵌入同样使用谷歌Word2vec预训练的词向量进行初始化并在训练过程中进行微调。预训练的过程可以有效的降低困惑度并且防止过拟合。
预训练完成后,释义生成解码器部分加载预训练好的参数,使用训练集的数据对整个模型进行训练,优化并进行微调。
由于释义变分自编码器、上下文语义提取器、释义生成解码器都采用神经网络的结构,因此模型中的所有参数都可以使用反向传播在端到端的系统中进行优化。
整个模型中的损失包括生成释义的负对数似然损失和释义变分自编码器的变分下界,优化的目标函数为两种损失之和。困惑度由损失计算得到。
选择训练后在验证集上困惑度最低的模型参数即完成模型的训练。
使用训练完成的模型对待解释词语进行释义,首先将待解释词语及其上下文输入到模型中,模型输出预测的单词概率分布,解码器从单词概率分布中进行采样,使用τ=0.1的简单采样算法,每一次选择概率最大的一个词作为下一步释义生成解码器的输入,直到生成释义达到最大长度或者生成停止标识,完成词语释义的过程。
根据测试集词语的正确释义计算本发明方法生成释义的BLEU评价指标。
进行消融实验,分析本发明方法各模块的性能及作用。
经过实验结果验证,本发明提出的方法能够发现释义结构的高阶特征,得到句法正确、风格一致的词语释义,并且解决了一词多义的问题,能够较好的提高生成词典定义的准确度,生成的定义样例如表1所示。
表1模型生成释义的结果。
Claims (1)
1.一种基于循环神经网络与潜变量结构的词语定义生成方法,其特征在于包括以下步骤:
(1)建立并整理基础语料库;
所述的基础语料库的内容包括被定义词、词性、领域、释义、上下文信息;
所述的基础语料库采用词典的词语释义语料集合的形式呈现;
所述的整理包括两部分,即对收集到的基础语料进行清洗,去除停用词和功能词,并按照一定的比例划分训练集、验证集,以及整理基础语料中被定义词、释义和上下文信息中出现的所有词作为基础语料库词表;
(2)选取被定义词语的近义词集合,扩展基础语料库,形成最终语料库;
计算被定义词语与基础语料库词表中每一个词的相似度得分,选择分数最高的前n个词作为被定义词语的近义词集合;基础语料库+被定义词近义词集合构成最终语料库;
(3)对被定义词语的词向量进行展重构,具体包括:
对被定义词词向量V*和最终语料库词表中出现词语的词向量进行初始化;
在被定义词的字符序列的开始和结束位置添加标识符,输入到双向LSTM中,分别从正向和反向对被定义词进行建模,将双向LSTM最后一个时刻正向和反向的隐藏状态进行拼接,得到被定义词的字符级信息VCH;
对所述被定义词近义词集合的词向量进行初始化,将n个近义词的词向量进行拼接,得到被定义词的近义词信息VSY;
将初始化的被定义词词向量V*与所述字符级信息VCH和所述近义词信息VSY进行拼接,得到被定义词扩展重构后的词向量,如公式1所示:
V*=[V*,VCH,VSY] (1)
(4)构建基于循环神经网络与潜变量结构模型
模型包括上下文语义提取器模块、释义变分自编码器模块、释义生成解码器模块三部分,
所述上下文语义提取器模块用于根据被定义词的上下文信息来提取被定义词词向量在相关语境中的含义,具体为:
将被定义词的上下文信息输入到双向GRU中,将双向GRU最后一个时刻正向和反向的隐藏状态进行拼接,得到上下文的嵌入表示Vs;
对上下文嵌入表示Vs进行线性变换操作来对齐空间,得到对齐后上下文表示TVs;按照公式2计算对齐后的上下文表示TVs与重构的被定义词词向量V*之间的内积d,具体计算公式如下:
d=TVs⊙V* (2)
其中T表示线性变换矩阵,⊙表示计算内积操作;
利用Softmax进行归一化,按照公式3计算得到被定义词词向量基于上下文信息的二进制掩码mask,具体计算公式如下:
mask=Softmax(d) (3)
将被定义词词向量基于上下文信息的二进制掩码mask与重构的被定义词词向量V*进行拼接,进行线性变换映射到相同的向量空间中,并使用Tanh进行激活,得到语义向量m,具体计算公式如下:
m=tanh(Wc[mask:V*]+b) (4)
其中Wc表示线性变换矩阵,b为偏置项,tanh为非线性激活函数;
本模块的输出包括:被定义词和上下文在向量空间中对齐后的上下文表示TVs和语义向量m;
所述释义变分自编码器模块对释义进行建模,提取释义的潜变量特征,弥补定义生成时信息不足的问题,同时在生成定义时提供释义的结构信息,具体如下:
将被定义词的释义输入到GRU中,取GRU最后一个时刻的隐藏状态作为释义的编码特征,对编码特征分别进行两个线性变换,映射到一个均值为0,标准差为1的潜变量空间Z中,通过Z重构被定义词的释义,使得Z拟合被定义词释义的特征分布;
随机生成两个向量,一个表示均值,一个表示标准差,用标准正态分布乘上标准差再加上均值得到被定义词释义的潜变量特征z;
本模块的输出为被定义词释义的潜变量特征z;
所述的释义生成解码器模块,基于GRU,用于联合重构后的被定义词词向量以及上下文信息和潜变量特征进行被定义词词语定义的生成,具体如下:
释义生成解码器的输入为被定义词的释义,释义生成解码器初始的隐藏状态是由重构的被定义词词向量、对齐的上下文表示、潜变量特征拼接,然后进行线性映射得到的,具体表示如下:
V=[V*;TVs;z] (5)
将拼接之后的所述被定义词的生成向量V经过线性变换映射到所述释义生成解码器初始的隐藏状态h0;
在第一个时刻使用一个特殊的开始标识BOS与语义向量m进行拼接作为第一个时刻的释义生成解码器的输入;之后在释义生成解码器每一个解码的时刻t上将t时刻词语的词向量Vt与语义向量m进行拼接,得到该时刻释义生成解码器的输入xt,如公式6所示:
xt=[Vt;m] (6)
接收t时刻的输入xt以及t-1时刻的隐藏表示ht-1,计算得到新的隐藏表示ht;
将释义生成解码器t时刻的隐藏表示ht经过线性变换按映射到一个词表大小的概率分布Ot中,通过Softmax计算得到最终的概率分布,选择分布概率最大的作为t时刻的输出yt,如以下所示:
yt=argmax pt,i (7)
(5)训练基于循环神经网络与潜变量结构模型,具体为:
首先使用WikiText-103数据对释义生成解码器部分进行单独的预训练,预训练时设置生成向量为0向量,当连续n≥5个轮次epoch在验证集上的困惑度没有下降时,预训练完毕,选择训练后在验证集上困惑度最低的模型参数进行保存;
加载预训练之后释义生成解码器模块的参数,使用训练集对整体基于循环神经网络与潜变量结构模型进行训练优化,当连续n≥5个轮次epoch在验证集上的困惑度没有下降时,训练优化结束;
(6)将待释义词语及其上下文信息输入训练完成的模型中,使用τ=0.1的简单采样算法进行释义生成,解码器模块在生成每一个字时可以同时考虑被定义词的语义和语境信息,实现具体语境中待释义词语的语义释义,解决一词多义问题。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910365929.7A CN110083710B (zh) | 2019-04-30 | 2019-04-30 | 一种基于循环神经网络与潜变量结构的词语定义生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910365929.7A CN110083710B (zh) | 2019-04-30 | 2019-04-30 | 一种基于循环神经网络与潜变量结构的词语定义生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110083710A CN110083710A (zh) | 2019-08-02 |
CN110083710B true CN110083710B (zh) | 2021-04-02 |
Family
ID=67418425
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910365929.7A Active CN110083710B (zh) | 2019-04-30 | 2019-04-30 | 一种基于循环神经网络与潜变量结构的词语定义生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110083710B (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110717327B (zh) * | 2019-09-29 | 2023-12-29 | 北京百度网讯科技有限公司 | 标题生成方法、装置、电子设备和存储介质 |
KR20210039598A (ko) * | 2019-10-02 | 2021-04-12 | 삼성전자주식회사 | 응답 추론 방법 및 장치 |
CN110718208A (zh) * | 2019-10-15 | 2020-01-21 | 四川长虹电器股份有限公司 | 基于多任务声学模型的语音合成方法及系统 |
CN110929767B (zh) * | 2019-10-24 | 2021-05-18 | 云从科技集团股份有限公司 | 一种字形处理方法、系统、设备和介质 |
CN112825109B (zh) * | 2019-11-20 | 2024-02-23 | 南京贝湾信息科技有限公司 | 一种句子对齐方法及计算设备 |
CN111178074B (zh) * | 2019-12-12 | 2023-08-25 | 天津大学 | 一种基于深度学习的中文命名实体识别方法 |
CN111160031A (zh) * | 2019-12-13 | 2020-05-15 | 华南理工大学 | 一种基于词缀感知的社交媒体命名实体识别方法 |
CN111563148B (zh) * | 2020-04-17 | 2023-06-20 | 华南理工大学 | 一种基于词组多样性的对话生成方法 |
CN111581962B (zh) * | 2020-05-14 | 2023-02-21 | 福州大学 | 一种基于主题词向量与混合神经网络的文本表示方法 |
CN111966998B (zh) * | 2020-07-23 | 2023-07-18 | 华南理工大学 | 基于变分自动编码器的口令生成方法、系统、介质和设备 |
US12039270B2 (en) | 2020-08-05 | 2024-07-16 | Baldu USA LLC | Disentangle syntax and semantics in sentence representation with decomposable variational autoencoder |
CN112634878B (zh) * | 2020-12-15 | 2024-05-17 | 深港产学研基地(北京大学香港科技大学深圳研修院) | 语音识别后处理方法和系统及相关设备 |
CN112599194B (zh) * | 2021-03-02 | 2021-06-22 | 北京橡鑫生物科技有限公司 | 甲基化测序数据的处理方法和装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107967262A (zh) * | 2017-11-02 | 2018-04-27 | 内蒙古工业大学 | 一种神经网络蒙汉机器翻译方法 |
CN108733792A (zh) * | 2018-05-14 | 2018-11-02 | 北京大学深圳研究生院 | 一种实体关系抽取方法 |
CN108984526A (zh) * | 2018-07-10 | 2018-12-11 | 北京理工大学 | 一种基于深度学习的文档主题向量抽取方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10565493B2 (en) * | 2016-09-22 | 2020-02-18 | Salesforce.Com, Inc. | Pointer sentinel mixture architecture |
-
2019
- 2019-04-30 CN CN201910365929.7A patent/CN110083710B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107967262A (zh) * | 2017-11-02 | 2018-04-27 | 内蒙古工业大学 | 一种神经网络蒙汉机器翻译方法 |
CN108733792A (zh) * | 2018-05-14 | 2018-11-02 | 北京大学深圳研究生院 | 一种实体关系抽取方法 |
CN108984526A (zh) * | 2018-07-10 | 2018-12-11 | 北京理工大学 | 一种基于深度学习的文档主题向量抽取方法 |
Non-Patent Citations (2)
Title |
---|
Malware classification with LSTM and GRU language models and a character-level CNN;Ben Athiwaratkun*.et.al;《 2017 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP)》;20170619;第2482-2486页 * |
基于CNN和LSTM混合模型的中文词性标注;谢逸等;《基于CNN和LSTM混合模型的中文词性标注》;20170630;第246-250页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110083710A (zh) | 2019-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110083710B (zh) | 一种基于循环神经网络与潜变量结构的词语定义生成方法 | |
CN107748757B (zh) | 一种基于知识图谱的问答方法 | |
CN108363743B (zh) | 一种智能问题生成方法、装置和计算机可读存储介质 | |
CN109359294B (zh) | 一种基于神经机器翻译的古汉语翻译方法 | |
CN110427629B (zh) | 半监督文本简化模型训练方法和系统 | |
CN111666758B (zh) | 中文分词方法、训练设备以及计算机可读存储介质 | |
CN109960804B (zh) | 一种题目文本句子向量生成方法及装置 | |
CN111695341A (zh) | 一种基于篇章结构图卷积的隐式篇章关系分析方法和系统 | |
CN113128203A (zh) | 基于注意力机制的关系抽取方法、系统、设备及存储介质 | |
KR20190065665A (ko) | 딥 러닝을 이용한 한국어 개체명 인식 장치 및 방법 | |
CN111144410A (zh) | 一种跨模态的图像语义提取方法、系统、设备及介质 | |
Luz et al. | Semantic parsing natural language into SPARQL: improving target language representation with neural attention | |
CN114818717A (zh) | 融合词汇和句法信息的中文命名实体识别方法及系统 | |
CN113239666A (zh) | 一种文本相似度计算方法及系统 | |
CN117251524A (zh) | 一种基于多策略融合的短文本分类方法 | |
CN112349294A (zh) | 语音处理方法及装置、计算机可读介质、电子设备 | |
CN113673259B (zh) | 基于数据增强的低资源神经机器翻译方法及系统 | |
CN112949293B (zh) | 一种相似文本生成方法、相似文本生成装置及智能设备 | |
CN112699684B (zh) | 命名实体识别方法和装置、计算机可读存储介质及处理器 | |
Tahayna et al. | Lexicon-based non-compositional multiword augmentation enriching tweet sentiment analysis | |
CN110852063B (zh) | 基于双向lstm神经网络的词向量生成方法及装置 | |
Wang et al. | Classification-based RNN machine translation using GRUs | |
CN114492464B (zh) | 一种基于双向异步序列的对话生成方法及系统 | |
CN111813927A (zh) | 一种基于主题模型和lstm的句子相似度计算方法 | |
CN111814433B (zh) | 一种维吾尔语实体识别的方法、装置和电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |