1.基于双层注意力联合学习的下联生成方法,其特征在于,所述基于双层注意力联合学习的下联生成方法,包括:将语料库中的上下联分别转化为符合“语料‑短语‑词语”三层文本结构的训练集,包括:对上下联进行分词得到有序集合;
获取对联中上联和下联对应的有序集合,利用最小公有和数构造短语;
基于所构造的短语,将上下联转化为“语料‑短语‑词语”三层文本结构表示,得到训练集;
基于“语料‑短语‑词语”三层文本结构构建双层注意力模型;
采用联合学习方法利用训练集对所述双层注意力模型进行训练得到下联生成模型;
采用所述下联生成模型,针对输入的上联自动生成下联;
其中,所述获取对联中上联和下联对应的有序集合,利用最小公有和数构造短语,包括:取分词工具分词后的上联为有序集合 ,分词后的下联为有序集合,为集合A中词语位置的下标, 表示集合A中第 个词语;表示集合B中词语位置的下标, 表示集合B中第 个词语,用“ ”表示词语的字数, 表示集合A中第 个词语的字数, 表示集合B中第 个词语的字数;
基于集合A和集合B构造短语,包括:
比较 与 的大小:取 , ,若 ,则 并执行下一步;若 ,则 并执行下一步;若 ,则将 作为上联中的一个短语,将 作为下联中的一个短语,并执行循环判断;
比较 与 的大小:若 ,
则 并重新比较 与 的大小;若
,则 并重新比较 与
的大小;若 ,则将
作为上联中的一个短语,将 作为下联中的一个短语并执行循环判断;
循环判断:若集合A中存在词语 ,则将集合A中的词语 删除,把第 个后面的词语 整体前移, 重新作为集合A中的第一个词语 ,同样地,将集合B中的词语 删除,把第 个后面的词语 整体前移, 重新作为集合B中的第一个词语 ,并重新执行比较 与 的大小;当集合A中不存在词语时,循环结束,短语构造完成;
其中,所述采用联合学习方法利用训练集对所述双层注意力模型进行训练得到下联生成模型,包括:依次取上联或下联中的每个短语作为起始短语;
由起始短语起向后取个数为组合数的短语与起始短语组成句子,其中组合数为由0逐一递增的整数,组合数递增至所组成的句子中同时包含起始短语和上联或下联中的最后一个短语;
采用交叉熵函数对每条句子计算损失值;
将所有句子的损失值相加作为下联生成模型的损失值;
以下联生成模型的损失值对双层注意力模型进行训练得到下联生成模型。
2.如权利要求1所述的基于双层注意力联合学习的下联生成方法,其特征在于,所述基于所构造的短语,将上下联转化为“语料‑短语‑词语”三层文本结构表示,包括:设定短语内词语的个数阈值为 ,“语料‑短语‑词语”三层文本结构内短语的个数阈值为 ;
将位于同一上联或下联中的短语进行有序排列得到初始结构;
对初始结构中,短语内词语个数少于个数阈值 的短语添加填充符,对短语个数少于个数阈值 的添加以填充符构成的短语,得到“语料‑短语‑词语”三层文本结构表示的上下联。
3.如权利要求1所述的基于双层注意力联合学习的下联生成方法,其特征在于,所述双层注意力模型由词语编码器、短语编码器、短语解码器和词语解码器构成。
4.如权利要求3所述的基于双层注意力联合学习的下联生成方法,其特征在于,所述词语编码器进行如下处理:将表示为“语料‑短语‑词语”三层文本结构的上联中的词语通过嵌入矩阵转化为词向量;
取上联中的短语,将每个短语内的词语的词向量传入双向GRU网络中,得到每个短语对应的短语向量;
取上联中的词语,将每个词语的词向量传入单向GRU网络中,得到每个词语对应的隐藏状态。
5.如权利要求4所述的基于双层注意力联合学习的下联生成方法,其特征在于,所述短语编码器进行如下处理:将所述短语向量传入单向GRU网络中,得到每个短语对应的隐藏状态。
6.如权利要求5所述的基于双层注意力联合学习的下联生成方法,其特征在于,所述短语解码器进行如下处理:在短语解码器的GRU单元的每一次循环中执行如下操作:将第一指定信息传入GRU单元,得到第一向量;
对第一向量和全部短语的隐藏状态进行矩阵乘法,并将矩阵乘法的结果进行归一化处理,得到短语注意力权重;
利用短语注意力权重对全部短语的隐藏状态进行加权求和得到短语上下文向量;
其中,在短语解码器的GRU单元的第一次循环中,所述第一指定信息为以全部短语的隐藏状态整合而成的上联信息;在短语解码器的GRU单元除第一次循环的其余循环中,所述第一指定信息为上一次循环中得到的第一向量。
7.如权利要求6所述的基于双层注意力联合学习的下联生成方法,其特征在于,所述词语解码器进行如下处理:在短语解码器的GRU单元的每一次循环中,词语解码器对本次循环得到的短语上下文向量进行解码,所述词语解码器进行解码包括:在词语解码器的GRU单元的每一次循环中执行如下操作:将第二指定信息传入GRU单元,得到第二向量;
对第二向量和全部词语的隐藏状态进行矩阵乘法,并将矩阵乘法的结果进行归一化处理,得到词语注意力权重;
利用词语注意力权重对全部词语的隐藏状态进行加权求和得到词语上下文向量;
其中,在词语解码器的GRU单元的第一次循环中,所述第二指定信息为短语上下文向量;在词语解码器的GRU单元除第一次循环的其余循环中,所述指定信息为上一次循环中得到的第二向量。
8.基于双层注意力联合学习的下联生成装置,包括处理器以及存储有若干计算机指令的存储器,其特征在于,所述计算机指令被处理器执行时实现权利要求1至权利要求7中任意一项所述方法的步骤。