1.面向智能问答基于内部相关性编码的文本意图匹配方法,其特征在于,该方法是通过构建并训练由多粒度嵌入模块、内部相关性编码模块、全局推理模块和标签预测模块组成的文本意图匹配模型,以达到对文本对进行意图匹配的目标;具体如下:多粒度嵌入模块将输入的文本对按字粒度和词粒度分别进行嵌入操作,得到文本对的字嵌入表示和词嵌入表示;
内部相关性编码模块对文本对的字嵌入表示和词嵌入表示,使用基础编码层和软对齐编码层进行处理,得到软对齐后的字粒度表示和词粒度表示;
全局推理模块对基础编码层中的字/词特征表示,以及软对齐编码层中软对齐后的字/词粒度表示,进行全局最大池化和全局平均池化,抽取出全局性、关键性的特征,生成文本的表示与文本间的多粒度表示,对两个文本的表示进行相似度计算,并与文本间的多粒度表示合并,得到最终的交互信息表示;
标签预测模块将文本对的匹配张量,即最终的交互信息表示映射为指定区间上的一个浮点型数值,将其作为匹配度与预设的阈值进行比较,根据比较结果,判定文本对的意图是否匹配。
2.根据权利要求1所述的面向智能问答基于内部相关性编码的文本意图匹配方法,其特征在于,所述多粒度嵌入模块用于构建字映射转换表、构建词映射转换表、构建输入模块、构建字向量映射层、构建词向量映射层;
其中,构建字映射转换表:映射规则为:以数字1为起始,随后按照每个字被录入字表的顺序依次递增排序,从而形成本发明所需的字映射转换表;其中,字表根据文本意图匹配断字处理知识库构建,该知识库通过对文本意图匹配知识库的原始数据文本进行断字处理而得;其后,再使用Word2Vec训练字向量模型,得到各字的字向量矩阵;
构建词映射转换表:映射规则为:以数字1为起始,随后按照每个词被录入词表的顺序依次递增排序,从而形成本发明所需的词映射转换表;其中,词表根据文本意图匹配分词处理知识库构建,该知识库通过对文本意图匹配知识库的原始数据文本进行分词操作而得;
其后,再使用Word2Vec训练词向量模型,得到各词的词向量矩阵;
构建输入模块:输入模块包括四个输入,对于训练数据集中的每一个文本对或待预测的文本对,对其进行断字和分词预处理,分别获取text1_char、text2_char、text1_word和text2_word,其中后缀char、word分别表示对相应文本进行断字或分词操作而得;对于输入文本中的每个字和词都按照字映射转换表和词映射转换表转化为相应的数字表示形式;
构建字向量映射层:加载构建字映射转换表步骤中训练所得的字向量矩阵来初始化当前层的权重参数;针对输入文本text1_char和text2_char,得到相应字嵌入表示text1_char_embed、text2_char_embed;
构建词向量映射层:加载构建词映射转换表步骤中训练所得的词向量矩阵来初始化当前层的权重参数;针对输入文本text1_word和text2_word,得到相应词嵌入表示text1_word_embed、text2_word_embed。
3.根据权利要求1或2所述的面向智能问答基于内部相关性编码的文本意图匹配方法,其特征在于,所述内部相关性编码模块的构建过程具体如下:构建基础编码层:此层接收字/词向量映射层输出的字/词嵌入表示作为本层的输入,使用长短期记忆网络LSTM对字/词嵌入表示进行编码,得到字/词编码结果,将字/词编码结果与字/词嵌入表示进行Concatenation拼接得到字/词拼接结果,并将字/词拼接结果传入第二层编码结构;第二层编码结构对字/词拼接结果使用双向长短期记忆网络BiLSTM进行编码操作,得到字/词编码结果,并将第二层编码得到的字/词编码结果与LSTM编码得到的字/词编码结果Concatenation合并,得到字/词特征表示,对于基础编码层结构,公式如下:C w C w
其中,Q1、Q1、Q2 、Q2分别表示第一个文本的字嵌入表示、词嵌入表示和第二个文本的字嵌入表示、词嵌入表示;n代表字嵌入表示中的第n个字,m代表词嵌入表示中的第m个词;
分别表示文本1的第n个字嵌入表示经过基础编码层得到的字特征表示、文本1的第m个词嵌入表示经过基础编码层得到的词特征表示; 与 相对应,为文本2经过基础编码层得到的编码结果;
构建软对齐编码层:此层接收基础编码层中的文本的字特征表示和词特征表示,并对这两个表示进行软对齐注意力机制操作,输出软对齐后的字粒度表示和软对齐后的词粒度表示,公式如下:
其中, 为基础编码层中所得到的文本1的字/词特征表示与文本2的字/词特征表示;公式(5)和公式(6)表示计算每个文本的字特征表示与词特征表示之间的相似度,eqlmn表示文本1的注意力权重,即 与 的相似度,eq2mn表示文本2的注意力权重,即 与 的相似度;公式(7)‑(10)则是将注意力权重进行归一化,并分别与字/词特征表示进行矩阵乘法,得到软对齐后的字/词粒度表示; 分别表示文本1软对齐后的字粒度表示和词粒度表示、文本2软对齐后的字粒度表示和词粒度表示。
4.根据权利要求1或3所述的面向智能问答基于内部相关性编码的文本意图匹配方法,其特征在于,所述全局推理模块的构建过程具体如下:全局推理模块接收文本的相关表示即基础编码层中的字/词特征表示,以及软对齐编码层中软对齐后的字/词粒度表示;其中,两个文本的软对齐后的字/词粒度表示,即为文本间的多粒度相关性特征;对接收到的表示进行全局最大池化操作和全局平均池化操作,从而抽取出全局性、关键性的特征,公式如下:对于文本1的池化操作,公式如下:
其中, 表示对文本1的字特征表示进行全局平均池化得到的软对齐前字平均池化表示, 表示文本1的字特征表示进行全局最大池化得到的软对齐前字最大池化表示,表示文本1的词特征表示进行全局平均池化得到的软对齐前词平均池化表示, 表示文本1的词特征表示进行全局最大池化得到的软对齐前词最大池化表示;而 表示的是软对齐后字平均池化表示,其余表示与此类比,即可明确意义,因篇幅有限不再一一赘述;
对于文本2的池化操作,公式如下:
其中,各符号与公式(11)和公式(12)大致相同,特别的是这里的q2表示文本2;
分别对两个文本池化后的信息进行整合,得到文本1的表示f1和文本2的表示f2;以文本
1为例,整合的信息包括:软对齐前字平均池化表示 软对齐前词平均池化表示 软对齐后字平均池化表示 软对齐后词平均池化表示 软对齐前字最大池化表示软对齐前词最大池化表示 软对齐后字最大池化表示 和软对齐后词最大池化表示 文本2整合的信息符号大致相同,不再一一赘述;将文本间的多粒度相关性特征进行池化后的结果进行整合,得到文本间的多粒度表示f3,公式如下:对两个文本的表示进行相似度计算,得到两个文本的交互信息,并与文本间的多粒度表示进行合并,得到最终的交互信息表示,公式如下:ab=|f1‑f2|,mu=f1×f2, (18)F=[ab;mu;f3]. (19)其中,ab和mu均为相似度计算的结果,f3为公式(17)得到的文本间的多粒度表示,F为最终的交互信息表示。
5.根据权利要求4所述的面向智能问答基于内部相关性编码的文本意图匹配方法,其特征在于,所述标签预测模块构建过程如下:将最终的交互信息表示作为本模块的输入,其经过三层全连接网络处理,其中前两层的激活函数为relu函数,最后一层的激活函数为sigmoid函数,从而得到一个位于[0,1]的数值,该值表示两个文本经过文本意图匹配模型处理后得到的意图匹配度,记为ypred;若ypred小于0.5则表示文本意图不一致,反之则表示文本意图一致。
6.根据权利要求5所述的面向智能问答基于内部相关性编码的文本意图匹配方法,其特征在于,所述文本意图匹配知识库构建具体如下:下载数据集获取原始数据:下载网络上已公开的文本意图匹配数据集,或者人工构建符合要求的数据集,将其作为构造文本意图匹配知识库的原始数据;
数据预处理:对文本意图匹配知识库的原始数据进行断字和分词操作,从而得到文本意图匹配断字处理知识库和文本意图匹配分词处理知识库;
汇总知识库:汇总文本意图匹配断字处理知识库和文本意图匹配分词处理知识库,构建文本意图匹配知识库;
所述文本意图匹配模型通过使用训练数据集进行训练而得到,训练数据集的构建过程如下:
构建训练正例数据:将意图一致的文本对构建成训练正例,标注为1;
构建训练负例数据:从训练正例数据中选出一个文本,并随机的从其他文本对中选出一个意图不一致的文本,将这两个文本构建成训练负例,标注为0;
构建训练数据集:将构建出的所有训练正例文本对和训练负例文本对合并在一起,并打乱顺序,构建出最终的训练数据集;
所述文本意图匹配模型构建完成后通过训练数据集进行文本意图匹配模型的训练与优化,具体如下:
构建损失函数:由标签预测模块构建过程可知,ypred表示文本意图匹配模型预测的两个文本的意图匹配度;ytrue表示两个文本意图是否匹配的真实标签,其取值为0或1;本发明采用修正的交叉熵作为损失函数,公式如下:λ(ytrue,ypred)=1‑θ(ytrue‑m)θ(ypred‑m)‑θ(1‑m‑ytrue)θ(1‑m‑ypred), (21)L=‑∑λ(ytrue,ypred)(ytruelogypred+(1‑ytrue)log(1‑ypred) (22)其中θ(x)为单位阶跃函数,m为阈值,L表示修正后的交叉熵公式;
优化训练模型:使用Adam优化函数作为模型的优化函数,超参数均选择Keras中的默认值设置;在训练数据集上,对文本意图匹配模型进行优化训练。
7.一种面向智能问答基于内部相关性编码的文本意图匹配装置,其特征在于,该装置包括,
文本意图匹配知识库构建单元,用于从网上获取大量的文本意图匹配数据,随后对其进行断字与分词操作,从而形成文本意图匹配知识库;
训练数据集生成单元,用于根据文本意图匹配知识库的文本来构建用于训练的正例数据和训练的负例数据,并基于正例数据和负例数据来构建最终的训练数据集;
文本意图匹配模型构建单元,用于构建字映射转换表、词映射转换表、输入模块、字向量映射层、词向量映射层、内部相关性编码模块、全局推理模块以及标签预测模块;文本意图匹配模型构建单元还包括,
字/词映射转换表构建单元,负责将文本意图匹配断字/分词处理知识库中的字/词分别存入一个列表中,从而得到一个字/词表,随后以数字1为起始,按照每个字/词被录入字/词表的顺序依次递增排序,从而形成本发明所需的字/词映射转换表;其后,本发明使用Word2Vec训练字/词向量模型,得到各字/词的字/词向量矩阵;
输入模块构建单元,负责对数据进行预处理,将字/词转化为对应的数字表示;
字/词向量映射层构建单元,负责加载用Word2Vec训练的字/词向量矩阵来初始化当前层的权重参数;对于字/词向量的映射,针对输入的字/词文本,得到对应的字/词嵌入表示;
内部相关性编码模块构建单元,负责接收字/词嵌入表示,使用基础编码层进行编码,并将编码后的字/词特征表示使用软对齐编码层进行处理,得到软对齐后的字粒度表示与词粒度表示;
全局推理模块构建单元,负责接收内部相关性编码模块构建单元中获取到的文本的相关表示,即字/词特征表示和软对齐后的字/词粒度表示;对接收到的表示进行全局最大池化操作和全局平均池化操作,通过整合池化信息得到文本的表示以及文本间的多粒度表示;最后对两个文本的表示进行相似度计算,并与文本间的多粒度表示合并为最终的交互信息表示;
标签预测模块单元,负责对最终的交互信息表示使用3层全连接层处理,得到一个意图匹配度,并与预设阈值进行比较,从而得到文本对意图是否匹配;
文本意图匹配模型训练单元,用于构建模型训练过程中所需要的损失函数与优化函数,并完成模型的训练。
8.根据权利要求7所述的面向智能问答基于内部相关性编码的文本意图匹配方法,其特征在于,所述文本意图匹配知识库构建单元包括,原始数据获取单元,负责下载网络上公开的自动问答文本意图匹配数据集或人工构建符合要求的数据集,将其作为构造文本意图匹配知识库的原始数据;
数据预处理单元,负责对文本意图匹配知识库的原始数据进行断字和分词操作,从而得到文本意图匹配断字处理知识库和文本意图匹配分词处理知识库;
知识库汇总单元,负责汇总文本意图匹配断字处理知识库和文本意图分词处理知识库,构建文本意图匹配知识库;
所述训练数据集生成单元包括,
训练正例数据构建单元,负责将文本意图匹配知识库中两个意图匹配的文本与其匹配标签1构建为训练正例数据;
训练负例数据构建单元,负责从正例数据中选出文本,并随机选择与其意图不匹配的文本相组合,并与匹配标签0构建为训练负例数据;
训练数据集构建单元,负责将所有的训练正例数据与训练负例数据组合在一起,并打乱其顺序,从而构建最终的训练数据集;
所述文本意图匹配模型训练单元包括,损失函数构建单元,负责计算两个文本间意图匹配度的误差;
模型优化单元,负责训练并调整模型训练中的参数,从而减少预测误差。
9.一种存储介质,其中存储有多条指令,其特征在于,所述指令有处理器加载,执行权利要求1‑6中所述的面向智能问答基于内部相关性编码的文本意图匹配方法的步骤。
10.一种电子设备,其特征在于,所述电子设备包括:权利要求9所述的存储介质;以及处理器,用于执行所述存储介质中的指令。