关键词生成方法及装置
文献发布时间:2023-06-19 19:30:30
技术领域
本发明涉及计算机技术领域,尤其涉及一种关键词生成方法及装置。
背景技术
关键词(也可以称为主题词,Keywords or Keyphrases)在很多自然语言处理任务例如文本总结、问题生成、文本分类和文本检索中也起到了重要作用。以文献检索为例,随着科学技术的不断发展,科技文献的数量不断增长,在海量文献中快速精准地找到相关文献愈发困难,关键词作为概括,总结一篇文章中心内容的短语可以帮助科研人员更方便快捷地了解文章的内容,从而提高了文献调研的效率。
目前相关技术把无序的关键词集合看做是有序的,这样会让模型往错误的方向学习,从而导致关键词生成准确率较低。
发明内容
本发明提供一种关键词生成方法及装置,用以解决现有技术中关键词生成准确率低的缺陷,提高关键词生成质量。
第一方面,本发明提供一种关键词生成方法,包括:
获取待处理文本;
对所述待处理文本进行文本分割,获得字词序列;
将所述字词序列输入至生成模型中,获得候选字词集合和至少一个概率分布,所述概率分布用于表示所述候选字词集合中的候选字词属于关键词的概率;
所述生成模型将每个所述概率分布中最大概率值对应的候选字词确定为关键词的首字词;
所述生成模型以所述首字词作为起始输入,依次对关键词中的字词进行预测,获得所述生成模型输出的至少一个关键词;
其中,所述生成模型是基于字词序列样本以及所述字词序列样本对应的关键词样本集合训练得到的。
可选地,所述概率分布是基于生成概率和复制概率确定的,所述生成概率用于表示生成所述候选字词的概率,所述复制概率用于表示从所述待处理文本中通过复制获得所述候选字词的概率。
可选地,所述生成模型包括解码器和编码器;
所述将所述字词序列输入至生成模型中,获得至少一个概率分布,包括:
基于所述解码器当前时刻的隐藏状态向量,计算当前时刻候选字词集合对应的生成概率;
基于所述字词序列中每个字词对应的注意力权重,计算当前时刻候选字词集合对应的复制概率;
对所述生成概率和所述复制概率进行加权,获得当前时刻候选字词集合对应的概率分布。
可选地,所述基于所述字词序列中每个字词对应的注意力权重,计算当前时刻候选字词集合对应的复制概率,包括:
将所述字词序列中每个字词对应的注意力权重代入复制概率公式,获得所述当前时刻候选字词集合对应的复制概率;
所述复制概率公式为:
其中,P
可选地,所述对所述生成概率和所述复制概率进行加权之前还包括:
计算所述解码器和所述编码器之间当前时刻的注意力向量;
对所述注意力向量、所述解码器当前时刻的隐藏状态向量和所述解码器当前时刻输入的词向量进行加权,获得第一加权值;
将所述第一加权值代入sigmoid函数中,获得第一复制权重;
基于所述第一复制权重确定第二复制权重,所述第一复制权重和第二复制权重的和为一,所述第一复制权重用于对所述生成概率赋权,所述第二复制权重为对所述复制概率赋权。
可选地,所述生成模型以所述首字词作为起始输入,依次对关键词中的字词进行预测,获得所述生成模型输出的至少一个关键词,包括:
所述生成模型基于多轮预测依次获得关键词中的字词,在每轮次预测中,所述生成模型以上一轮次获得的字词作为本轮次的输入,基于贪婪搜索,获得本轮次输出的字词;
基于多轮预测获得的字词确定所述关键词。
可选地,所述生成模型是经过如下步骤训练获得的:
在每轮训练中将字词序列样本输入至生成模型,获得所述生成模型输出的至少一个概率分布;
使用交叉熵损失函数作为概率分布和关键词样本的匹配损失函数,确定所述概率分布与每个关键词样本之间的匹配损失;
使用匈牙利损失函数计算每一个概率分布与对应的关键词样本之间的匹配损失总和;
基于最小的匹配损失总和更新所述生成模型的参数,经过多轮训练获得训练后的生成模型。
可选地,所述方法还包括:
设置固定的关键词数量,所述关键词数量用于约束所述生成模型生成的概率分布数量。第二方面,本发明还提供一种关键词生成装置,包括:
获取单元,用于获取待处理文本;
分割单元,用于对所述待处理文本进行文本分割,获得字词序列;
获取单元,用于获取待处理文本;
分割单元,用于对所述待处理文本进行文本分割,获得字词序列;
生成单元,用于将所述字词序列输入至生成模型中,获得候选字词集合和至少一个概率分布,所述概率分布用于表示所述候选字词集合中的候选字词属于关键词的概率;所述生成模型将每个所述概率分布中最大概率值对应的候选字词确定为关键词的首字词;所述生成模型以所述首字词作为起始输入,依次对关键词中的字词进行预测,获得所述生成模型输出的至少一个关键词;
其中,所述生成模型是基于字词序列样本以及所述字词序列样本对应的关键词样本集合训练得到的。
第三方面,本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所述关键词生成方法。
第四方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面所述关键词生成方法。
本发明实施例提供的关键词生成方法及装置中,生成模型使用序列到集合的生成模式,生成模型可以生成多个无序的概率分布,每个概率分布可以生成一个关键词,保证了生成模型把关键词看做一个无序集合而不是有序序列,避免了模型往错误的方向学习,从而提高关键词生成的准确性。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的关键词生成方法的流程示意图之一;
图2是本发明实施例提供的概率分布的示意图;
图3是本发明实施例提供的生成模型的结构示意图;
图4是本发明实施例提供的关键词生成装置的结构示意图;
图5是本发明实施例提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合图1-图3描述本发明实施例提供的关键词生成方法。
图1是本发明实施例提供的关键词生成方法的流程示意图,如图1所示,本发明实施例提供的关键词生成方法,包括:
步骤110,获取待处理文本;
具体地,待处理文本是指需要生成关键词的文本。示例性地,以文献领域为例,可以将标题和摘要拼接成待处理文本。
步骤120,对所述待处理文本进行文本分割,获得字词序列;
具体地,文本分割是指将待处理文本s分割为一个包含多个字词的序列S={x
可选地,对于待处理文本为中文文本的情况下,可以以字为粒度进行文本分割,即x
步骤130,将所述字词序列输入至生成模型中,获得候选字词集合和至少一个概率分布,所述概率分布用于表示所述候选字词集合中的候选字词属于关键词的概率;
具体地,候选字词集合包含了输入的字词序列的字词,也包含了词典中的字词,即候选字词集合是词典和输入的字词序列中的字词所组成的集合的并集。词典可以是字词序列中频率较高的K个字词。
生成模型输出的概率分布可以为一个或多个,概率分布是无序的,示例性地,生成模型获得概率分布1、概率分布2和概率分布3,概率分布1、概率分布2和概率分布3之间没有先后顺序。
示例性地,图2是本发明实施例提供的概率分布的示意图,如图2所示,一个概率分布的横坐标为候选字词集合中的候选字词,纵坐标为概率值。图中候选字词A、H、C和L等是为了便于理解进行的举例,每个字母可以代表一个中文字或者英文词。
步骤140,所述生成模型将每个所述概率分布中最大概率值对应的字词确定为关键词的首字词;
具体地,概率值用于表示候选字词作为首字词的概率,首字词是指关键词中的第一个字词。
示例性地,图2中最大概率值对应字词Z,将Z作为首字词。
示例性地,有概率分布1、概率分布2和概率分布3,概率分布1中最大概率值对应的字词为“发”,概率分布2中最大概率值对应的字词为“计”,概率分布3中最大概率值对应的字词为“null”,则获得两个首字词“发”和“计”,“null”表示该概率分布不表示任何关键词。
步骤150,所述生成模型以所述首字词作为起始输入,依次对关键词中的字词进行预测,获得所述生成模型输出的至少一个关键词。
具体地,将首字词作为关键词的第一个字,将首字词作为起始输入,预测得到第二个字,将第二个字作为输入,预测得到第三个字,依次循环,直到遇到最大概率值对应的字符为结束字符
示例性地,对于获得首字词“发”和“计”的情况下,分别将“发”和“计”作为起始输入。对于“发”预测,得到“动”;对“动”预测,得到“机”;对“机”预测,得到“
其中,所述生成模型是基于字词序列样本以及所述字词序列样本对应的关键词样本集合训练得到的。
具体地,字词序列样本是指对待处理文本样本处理后得到的字词序列,待处理文本样本可以为文献标题与摘要的拼接文本,字词序列样本对应的关键词样本集合,可以是待处理文本样本的来源文献中的关键词(可以是来源文献作者标注的),应理解,关键词样本集合中的关键词是无序的,关键词样本集合中关键词样本的先后顺序没有其他含义(如先后顺序不代表重要性排序)。
本发明实施例提供的关键词生成方法及装置中,生成模型使用序列到集合的生成模式,生成模型可以生成多个无序的概率分布,每个概率分布可以生成一个关键词,保证了生成模型把关键词看做一个无序集合而不是有序序列,避免了模型往错误的方向学习,从而提高关键词生成的准确性。
下面,对上述步骤在具体实施例中的可能的实现方式做进一步说明。
可选地,所述概率分布是基于生成概率和复制概率确定的,所述生成概率用于表示生成所述候选字词的概率,所述复制概率用于表示从所述待处理文本中通过复制获得所述候选字词的概率。应理解,所述候选字词属于所述候选字词集合。
具体地,生成概率是指生成模型从字词序列对应的待处理文本中生成候选字词的概率,应理解,从待处理文本中生成的关键词只能是待处理文本中的原词,从待处理文本中生成的关键词受限于待处理文本原文。复制概率是指从待处理文本中复制待处理文本中的原词或者原字,通过复制原字可以组成待处理文本中不存在的新词,将新词作为关键词。复制概率可以基于候选字词的重要性确定,可选地,候选字词的重要性可以为生成模型对候选字词的注意程度(如注意力权重)。
一种可能的实现中,可以选取字词序列中词频最高的前N个字词建立词典,N可以为50000,词典中的字词分别对应不同的标识符,不在词典中的字词使用
相关技术中的关键词生成方法只能提取待处理文本中逐字出现的原词,而实际应用中,关键词可能与文本中的原词不完全一致,因此存在关键词生成准确率低的问题。本发明实施例提供的关键词生成方法,通过生成概率和复制概率确定概率分布,其中根据复制概率,能够生成原文中没有逐字出现的关键词,因此本发明实施例提供的关键词生成方法,能够获得待处理文本中的原词作为关键词以及获得待处理文本中没有逐字出现的关键词,从而提高关键词生成的准确性。
可选地,所述生成模型包括解码器和编码器;
具体地,编码器负责把字词向量编码为特征向量,编码器可以由多层自注意力层构成,每层自注意力层包含多头注意力层、前馈神经网络层和残差连接层;解码器负责把编码器生成的特征向量以自回归的方式解码生成关键词,解码器可以由多层注意力层构成,解码器的自注意力层相比于编码器的自注意力层多了编码器和解码器之间的注意力机制计算。
所述将所述字词序列输入至生成模型中,获得所述生成模型输出的关键词包括:
基于所述解码器当前时刻的隐藏状态向量,计算当前时刻候选字词集合对应的生成概率;
具体地,候选字词集合对应的生成概率用于表征候选字词集合中每个候选字词的生成概率。使用解码器当前时刻的隐藏状态向量计算出当前候选字词集合对应的生成概率P
可选地,计算公式为:
P
其中,P
基于所述字词序列中每个字词对应的注意力权重,计算当前时刻候选字词集合对应的复制概率;
具体地,使用当前输入的字词序列中每个字词的注意力权重α
可选地,所述基于所述字词序列中每个字词对应的注意力权重,计算当前时刻候选字词集合对应的复制概率,包括:
将所述字词序列中每个字词对应的注意力权重代入复制概率公式,获得所述当前时刻候选字词集合对应的复制概率;
所述复制概率公式为:
其中,P
应理解,复制概率和生成概率在数学形式上也属于概率分布。
对所述生成概率和所述复制概率进行加权,获得当前时刻候选字词集合对应的概率分布。
可选地,所述对所述生成概率和所述复制概率进行加权之前还包括:
计算所述解码器和所述编码器之间当前时刻的注意力向量;
对所述注意力向量、所述解码器当前时刻的隐藏状态向量和所述解码器当前时刻输入的词向量进行加权,获得第一加权值;
将所述第一加权值代入sigmoid函数中,获得第一复制权重;
基于所述第一复制权重确定第二复制权重,所述第一复制权重和第二复制权重的和为一,所述第一复制权重用于对所述生成概率赋权,所述第二复制权重为对所述复制概率赋权。
具体地,首先计算解码器和编码器之间的当前时刻的注意力向量c
根据当前的解码器的隐藏状态向量s
p=σ(W
其中,p表示第一复制权重,σ表示sigmoid函数,W
最后根据第一复制权重p,对候选字词集合求生成概率和重要性权重的加权和,获得最后的概率分布,计算公式为:
P=p*P
其中,(1-p)为第二复制权重,P为概率分布。
应理解,每个时刻可以生成一个概率分布,多个时刻可以生成多个概率分布。
可选地,所述生成模型以所述首字词作为起始输入,依次对关键词中的字词进行预测,获得所述生成模型输出的至少一个关键词,包括:
所述生成模型基于多轮预测依次获得关键词中的字词,在每轮次预测中,所述生成模型以上一轮次获得的字词作为本轮次的输入,基于贪婪搜索,获得本轮次输出的字词;
基于多轮预测获得的字词确定所述关键词。
示例性地,将“发”作为起始输入,对于“发”进行贪婪搜索,得到“动”;对“动”进行贪婪搜索,得到“机”;对“机”进行贪婪搜索,得到“
可选地,所述生成模型是经过如下步骤训练获得的:
在每轮训练中将字词序列样本输入至生成模型,获得所述生成模型输出的至少一个概率分布;
使用交叉熵损失函数作为概率分布和关键词样本的匹配损失函数,确定所述概率分布与每个关键词样本之间的匹配损失;
具体地,在训练时会使用匈牙利算法求得生成模型输出的概率分布与关键词样本(ground-truth关键词)的完美匹配;
生成模型使用交叉熵损失函数作为关键词样本和输出的概率分布之间的匹配损失函数。
可选地,交叉熵损失函数为:
其中,σ表示第σ种概率分布与关键词样本的对应关系,P
使用匈牙利损失函数计算每一个概率分布与对应的关键词样本之间的匹配损失总和;
具体地,生成模型使用匈牙利损失函数作为模型的损失函数。匈牙利损失函数会通过匈牙利算法求得N个概率分布与关键词样本的完美匹配,同时匈牙利损失会把关键词看做无序集合而不是有序序列。
可选地,匈牙利损失函数为:
Loss
其中,Loss
基于最小的匹配损失总和更新所述生成模型的参数,经过多轮训练获得训练后的生成模型。具体地,使用梯度下降算法最小化所述匹配损失总和,更新所述生成模型的参数。
应理解,本发明实施例中将关键词样本和概率分布看做无序的,因此需要训练生成模型学习概率分布对应正确的关键词样本。示例性地,有概率分布1、概率分布2和概率分布3,分别对应关键词样本A、B和C(即概率分布1可以确定出A的首字词,依次类推),生成模型需要学习到概率分布1用于生成A,概率分布2用于生成B,概率分布3用于生成C。
本发明实施例提供的关键词生成方法,通过匈牙利损失函数把生成模型生成的多个概率分布与正确的关键词样本做匹配,每一种匹配都可以获得一个损失结果,匈牙利损失取这些损失结果中最小的结果作为最后的损失值,匹配的损失函数使用交叉熵损失函数,因为交叉熵损失函数可以让模型学习到关键词内部单词的有序性,本发明实施例提供的关键词生成方法会通过匈牙利算法求得N个概率分布与关键词样本的完美匹配,使得生成模型能够将关键词看做无序集合而不是有序序列。并且根据最小的匹配损失总和更新所述生成模型的参数,使得在训练过程中模型会尽可能获得更大的输出正确的关键词的概率,进而让输出的关键词质量更高。
可选地,所述方法还包括:
设置固定的关键词数量,所述关键词数量用于约束所述生成模型输出的概率分布的数量。
具体地,设置关键词数量为N,生成模型生成N个输出概率分布,N是预设的固定值,N可以为20。
每种概率分布通过贪婪搜索可以获得一种可能的关键词生成结果,使用
本发明实施例提供的关键词生成方法,通过设置关键词数量,约束生成模型,避免生成模型输出过多的关键词,应理解,输出过多的关键词会导致关键词质量下降。
本发明实施例提供的关键词生成方法,通过序列到集合(Seq2Set)训练模式获得生成模型,Seq2Set训练模式有三个特点:Seq2Set训练模式把关键词生成任务的输入(字词序列)看做一个有序序列,使用编码器的位置向量来捕获字词序列中的顺序依赖关系;Seq2Set训练模式符合关键词生成任务的两个特点,一是一篇文章的多个关键词组成的集合是无序的,二是每个关键词内部由多个单词组成,这些单词之间是有顺序依赖关系的。Seq2Set训练模式使用匈牙利损失作为模型的损失函数,且使用匈牙利算法计算模型损失,匈牙利损失函数让关键词生成的损失与关键词的顺序无关,符合关键词生成任务的本质。因此本发明实施例提供的生成模型,符合关键词生成任务的特点,能够以待处理文本为整体输出多个关键词。
本发明实施例提供的关键词生成方法的步骤主要包括:收集特定领域的科技文献的标题、摘要和关键词,进行数据预处理,获得字词序列样本和关键词样本,构造训练集、验证集和测试集;构建基于序列到集合(Seq2Set)训练模式和复制机制的生成模型;使用训练集训练初始模型直到初始的生成模型收敛,获得候选的生成模型,使用验证集保证候选的生成模型不过拟合;最后以验证集的匹配损失总和最小的候选的生成模型作为最终的生成模型,以科技文献的标题和摘要作为输入文本,生成可以总结概括文本中心思想的关键词。
本发明实施例提供基于Seq2Set训练模式和复制机制的关键词生成模型,以科技文献的摘要和标题作为输入,以关键词作为输出,整个流程请参阅图3所示,下面分别进行介绍:
步骤1:收集特定领域的科技文档的标题、摘要和关键词作为数据集
将一个科技文档的标题和摘要进行拼接,获得待处理文本样本,对待处理文本样本进行分词,获得字词序列样本。将当前预处理的科技文档中的关键词作为关键词样本,当前预处理的科技文档中的所有关键词样本作为一个关键词集合。
可选地,为保证数据的质量,因此过滤掉无对应的关键词的标题或摘要,以及无对应的标题和摘要的关键词。
可选地,过滤掉摘要过长或者过短的数据,过滤掉包含乱码或者长度过长的关键词。
步骤1.2:然后使用分词器对待处理文本样本进行分词,把待处理文本样本使用分词器进行分词,获得字词序列样本字词序列,选取词频最高的前50000个字词建立词典,不在词典中的字词使用
步骤1.3:最后按照一定比例把数据集划分为训练集、测试集和验证集三个部分,其中训练集用于初始的生成模型的训练,获得候选的生成模型,为避免候选的生成模型在训练集上过拟合,需要验证集来验证候选的生成模型以避免过拟合,测试集则是用于测试生成模型的效果。
步骤2:构建基于Seq2Set训练模式和复制机制的关键词生成模型,图3是本发明实施例提供的生成模型结构示意图,如图3所示模型结构如下:
生成模型以基于Transformer的序列到序列模型作为基本结构;
序列到序列模型由编码器和解码器构成,编码器负责把输入文本编码为特征向量,Transformer编码器(transformer encoder)由多层自注意力层构成,每层自注意力层包含多头注意力层、前馈神经网络层和残差连接层;
序列到序列模型的解码器(transformer decoder)负责把编码器生成的特征向量以自回归的方式解码生成关键词,Transformer解码器由多层注意力层构成,解码器的自注意力层相比于编码器的自注意力层多了编码器和解码器之间的注意力机制计算;
模型使用基于注意力机制的复制机制,复制机制以一定概率直接复制待处理文本的片段作为关键词输出,复制机制的计算步骤如下:
首先计算解码器和编码器之间的注意力向量c
根据当前的解码器的隐藏状态向量s
p=σ(W
使用当前的隐藏状态向量计算出当前输出的候选字词集合的生成概率P
P
使用当前输入的字词序列中每个单词的注意力权重α
/>
最后根据第一复制权重p,对候选字词集合求生成概率和重要性权重(复制概率)的加权和,获得最后的概率分布,计算公式为:
P=p*P
生成模型使用Seq2Set训练模式获得,Seq2Set训练模式有三个特点:
Seq2Set训练模式把关键词生成任务的输入看做一个有序序列,使用Transformer编码器的位置向量来捕获这种顺序依赖关系;
Seq2Set训练模式符合关键词生成任务的两个特点,一是一篇文章的多个关键词组成的集合是无序的,二是每个关键词内部由多个单词组成,这些单词之间是有顺序依赖关系的。
Seq2Set训练模式使用匈牙利损失(Hungarian Loss)作为模型的损失函数,且使用匈牙利算法计算模型损失,匈牙利损失函数让关键词生成的损失与关键词的顺序无关,符合关键词生成任务的本质。
模型训练中,使用匈牙利损失作为模型的损失函数,其中σ表示某种排列,P
Loss
步骤3:使用训练集训练初始的生成模型,初始的生成模型是指未训练的生成模型。
使用验证集验证经过训练的生成模型(候选的生成模型)的好坏,选择在验证集上匹配损失总和最低的候选的生成模型作为最终的生成模型。
如图3所示,将待处理文本样本输入至编码器,经过解码器获得概率分布P
步骤4:训练完毕后,以科技文献的标题和摘要作为输入文本,输入到生成模型中,生成可以总结概括文本中心思想的关键词。
图4是本发明实施例提供的关键词生成装置的结构示意图;下面对本发明提供的关键词生成装置进行描述,下文描述的关键词生成装置与上文描述的关键词生成方法可相互对应参照。
图4是本发明实施例提供的关键词生成装置的结构示意图,如图4所示,本发明实施例提供的关键词生成装置,包括:
获取单元410,用于获取待处理文本;
分割单元420,用于对所述待处理文本进行文本分割,获得字词序列;
生成单元430,用于将所述字词序列输入至生成模型中,获得候选字词集合和至少一个概率分布,所述概率分布用于表示所述候选字词集合中的候选字词属于关键词的概率;所述生成模型将每个所述概率分布中最大概率值对应的候选字词确定为关键词的首字词;所述生成模型以所述首字词作为起始输入,依次对关键词中的字词进行预测,获得所述生成模型输出的至少一个关键词;
其中,所述生成模型是基于字词序列样本以及所述字词序列样本对应的关键词样本集合训练得到的。
可选地,可选地,所述概率分布是基于生成概率和复制概率确定的,所述生成概率用于表示生成所述候选字词的概率,所述复制概率用于表示从所述待处理文本中通过复制获得所述候选字词的概率。
可选地,所述生成模型包括解码器和编码器;
所述生成单元430,用于基于所述解码器当前时刻的隐藏状态向量,计算当前时刻候选字词集合对应的生成概率;
所述生成单元430,用于基于所述字词序列中每个字词对应的注意力权重,计算当前时刻候选字词集合对应的复制概率;
所述生成单元430,用于对所述生成概率和所述复制概率进行加权,获得当前时刻候选字词集合对应的概率分布。
所述生成单元430,用于将所述字词序列中每个字词对应的注意力权重代入复制概率公式,获得所述当前时刻候选字词集合对应的复制概率;
所述复制概率公式为:
P
其中,P
所述生成单元430,用于计算所述解码器和所述编码器之间当前时刻的注意力向量;
所述生成单元430,用于对所述注意力向量、所述解码器当前时刻的隐藏状态向量和所述解码器当前时刻输入的词向量进行加权,获得第一加权值;
所述生成单元430,用于将所述第一加权值代入sigmoid函数中,获得第一复制权重;
所述生成单元430,用于基于所述第一复制权重确定第二复制权重,所述第一复制权重和第二复制权重的和为一,所述第一复制权重用于对所述生成概率赋权,所述第二复制权重为对所述复制概率赋权。
可选地,所述生成模型以所述首字词作为起始输入,依次对关键词中的字词进行预测,获得所述生成模型输出的至少一个关键词,包括:
所述生成模型基于多轮预测依次获得关键词中的字词,在每轮次预测中,所述生成模型以上一轮次获得的字词作为本轮次的输入,基于贪婪搜索,获得本轮次输出的字词;
基于多轮预测获得的字词确定所述关键词。
可选地,所述装置包括训练单元,所述训练单元用于训练获得所述生成模型;
所述训练单元,用于在每轮训练中将字词序列样本输入至生成模型,获得所述生成模型输出的至少一个概率分布;
所述训练单元,用于使用交叉熵损失函数作为概率分布和关键词样本的匹配损失函数,确定所述概率分布与每个关键词样本之间的匹配损失;
所述训练单元,用于使用匈牙利损失函数计算每一个概率分布与对应的关键词样本之间的匹配损失总和;
所述训练单元,用于基于最小的匹配损失总和更新所述生成模型的参数,经过多轮训练获得训练后的生成模型。可选地,所述装置还包括:
数量单元,用于设置固定的关键词数量,所述关键词数量用于约束所述生成模型生成的概率分布数量。
在此需要说明的是,本发明实施例提供的上述装置,能够实现上述方法实施例所实现的所有方法步骤,且能够达到相同的技术效果,在此不再对本实施例中与方法实施例相同的部分及有益效果进行具体赘述。
图5示例了一种电子设备的实体结构示意图,如图5所示,该电子设备可以包括:处理器(processor)510、通信接口(Communications Interface)520、存储器(memory)530和通信总线550,其中,处理器510,通信接口520,存储器530通过通信总线550完成相互间的通信。处理器510可以调用存储器530中的逻辑指令,以执行上述实施例提供的关键词生成方法,所述方法包括:获取待处理文本;对所述待处理文本进行文本分割,获得字词序列;将所述字词序列输入至生成模型中,获得候选字词集合和至少一个概率分布,所述概率分布用于表示所述候选字词集合中的候选字词属于关键词的概率;所述生成模型将每个所述概率分布中最大概率值对应的候选字词确定为关键词的首字词;所述生成模型以所述首字词作为起始输入,依次对关键词中的字词进行预测,获得所述生成模型输出的至少一个关键词;其中,所述生成模型是基于字词序列样本以及所述字词序列样本对应的关键词样本集合训练得到的。
此外,上述的存储器530中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述关键词生成方法,所述方法包括:获取待处理文本;对所述待处理文本进行文本分割,获得字词序列;将所述字词序列输入至生成模型中,获得候选字词集合和至少一个概率分布,所述概率分布用于表示所述候选字词集合中的候选字词属于关键词的概率;所述生成模型将每个所述概率分布中最大概率值对应的候选字词确定为关键词的首字词;所述生成模型以所述首字词作为起始输入,依次对关键词中的字词进行预测,获得所述生成模型输出的至少一个关键词;其中,所述生成模型是基于字词序列样本以及所述字词序列样本对应的关键词样本集合训练得到的。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述关键词生成方法,所述方法包括:获取待处理文本;对所述待处理文本进行文本分割,获得字词序列;将所述字词序列输入至生成模型中,获得候选字词集合和至少一个概率分布,所述概率分布用于表示所述候选字词集合中的候选字词属于关键词的概率;所述生成模型将每个所述概率分布中最大概率值对应的候选字词确定为关键词的首字词;所述生成模型以所述首字词作为起始输入,依次对关键词中的字词进行预测,获得所述生成模型输出的至少一个关键词;其中,所述生成模型是基于字词序列样本以及所述字词序列样本对应的关键词样本集合训练得到的。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
- 二维码的生成方法、识别方法、生成装置及识别装置
- 图像处理装置、学习装置、图像处理方法、识别基准的生成方法、学习方法和程序
- PRACH资源配置方法和装置、PRACH基带信号生成方法和装置
- 固件生成存储方法及装置、固件启动方法及装置
- 形近字字典的生成方法、装置和形近字纠错方法、装置
- 关键词生成方法、存储介质、关键词生成装置及服务器
- 关键词生成装置以及关键词生成方法