欢迎来到知嘟嘟! 联系电话:13095918853 卖家免费入驻,海量在线求购! 卖家免费入驻,海量在线求购!
知嘟嘟
我要发布
联系电话:13095918853
知嘟嘟经纪人
收藏
专利号: 202010855957X
申请人: 齐鲁工业大学
专利类型:发明专利
专利状态:已下证
专利领域: 计算;推算;计数
更新日期:2024-01-05
缴费截止日期: 暂无
价格&联系人
年费信息
委托购买

摘要:

权利要求书:

1.一种面向司法公开服务的句子对智能语义匹配方法,其特征在于,该方法是通过构建并训练由多粒度嵌入模块、时序特征卷积网络构造模块、特征转换网络模块和标签预测模块组成的句子对语义匹配模型,实现对句子信息的时序特征卷积表示和语义特征的二维卷积编码表示,同时通过注意力机制生成句子对的最终匹配张量并判定句子对的匹配程度,以达到对句子对进行智能语义匹配的目标;具体如下:多粒度嵌入模块对输入的句子以字粒度和词粒度分别进行嵌入操作,得到句子的多粒度嵌入表示;

时序特征卷积网络构造模块对句子的多粒度嵌入表示进行编码操作,得到句子的时序特征卷积表示;

特征转换网络模块对句子对的时序特征卷积表示进行进一步地特征编码、特征匹配和特征筛选操作,得到句子对的匹配向量;

标签预测模块将句子对的匹配张量映射为指定区间上的一个浮点型数值,将其作为匹配度与预设的阈值进行比较,根据比较结果,判定句子对的语义是否匹配;

所述多粒度嵌入模块用于构建字映射转换表、构建词映射转换表、构建输入模块、构建字向量映射层、构建词向量映射层;

其中,构建字映射转换表或词映射转换表:映射规则为:以数字1为起始,随后按照每个字或词被录入字表或词表的顺序依次递增排序,从而形成所需的字映射转换表或词映射转换表;其中,字表或词表根据句子对语义匹配知识库而构建,该知识库包含断字处理知识库或分词处理知识库,分别通过对语义匹配知识库的原始数据文本进行断字预处理或分词预处理操作而得;其后,再使用Word2Vec训练字向量模型或词向量模型,得到各字的字向量矩阵或各词的词向量矩阵;

构建输入模块:输入层包括四个输入,对于训练数据集中的每一个句子对或待预测的句子对,对其进行断字和分词预处理,分别获取sentence1_char、sentence2_char、sentence1_word和sentence2_word,其中后缀char、word分别表示对相应句子进行断字或分词处理而得,将其形式化为:(sentence1_char ,sentence2_char ,sentence1_word ,sentence2_word);对于输入句子中的每个字或词都按照字映射转换表和词映射转换表转化为相应的数字标识;

构建字向量映射层或词向量映射层:加载构建字映射转换表或词映射转换表步骤中训练所得的字向量矩阵或词向量矩阵来初始化当前层的权重参数;对于字向量映射,针对输入句子sentence1_char和sentence2_char,得到其相应句子向量sentence1_char_embed、sentence2_char_embed;对于词向量映射,针对输入句子sentence1_word和sentence2_word,得到其相应句子向量sentence1_word_embed、sentence2_word_embed;

所述时序特征卷积网络构造模块的构建过程具体如下:首先,多粒度嵌入模块输出的字嵌入表示和词嵌入表示在新增的粒度维度上被联接,以得到句子嵌入表示,公式如下:其中,公式(1)表示在新增的粒度维度上联接字嵌入表示和词嵌入表示,表示sentence1_char_embed或sentence2_char_embed,表示sentence1_word_embed或sentence2_word_embed,表示句子嵌入表示;

第一个卷积结构对句子嵌入表示的第一个时间步信息进行编码操作,以得到时间步一编码结果,公式如下:

其中,句子嵌入表示为该层输入,即,第一个卷积结构的输入;公式(2.1)表示第f个卷积核对句子嵌入表示中第一个时间步信息进行卷积后经ReLU函数映射的结果,其中,[1,y]表示卷积核的尺寸,表示第f个卷积核的权重矩阵,j表示卷积区域的纵坐标,mh表示句子嵌入表示中词嵌入表示的嵌入维度,0:1,j:j+y‑1表示卷积区域,表示第f个卷积核的偏置矩阵,表示第f个卷积核在0:1 ,j:j+y‑1区域的卷积结果;公式(2.2)表示整合第f个卷积核在每个区域的卷积结果以得到第f个卷积核的最终卷积结果其中,sy表示嵌入维度上的卷积步幅;公式(2.3)表示将n个卷积核的最终卷积结果进行组合,得到该层网络对于句子嵌入表示中第一个时间步信息的最终卷积结果,即称其为时间步一编码结果;

第二个卷积结构对句子嵌入表示的前两个时间步信息进行编码操作,以得到时间步二编码结果,公式如下:

其中,句子嵌入表示为该层输入,即,第二个卷积结构的输入;公式(3.1)表示第f个卷积核对句子嵌入表示中前两个时间步信息进行卷积后经ReLU函数映射的结果,其中,[2,y]表示卷积核的尺寸,表示第f个卷积核的权重矩阵,j表示卷积区域的纵坐标,mh表示句子嵌入表示中词嵌入表示的嵌入维度,0:2,j:j+y‑1表示卷积区域,表示第f个卷积核的偏置矩阵,表示第f个卷积核在0:2,j:j+y‑1区域的卷积结果;公式(3.2)表示整合第f个卷积核在每个区域的卷积结果以得到第f个卷积核的最终卷积结果其中,sy表示嵌入维度上的卷积步幅;公式(3.3)表示将n个卷积核的最终卷积结果进行组合,得到该层网络对于句子嵌入表示中前两个时间步信息的最终卷积结果,即称其为时间步二编码结果;

第三个卷积结构对句子嵌入表示的前三个词的嵌入信息进行编码操作;以此类推,可得到每一时间步的编码结果,对于第depth个卷积结构,公式如下:其中,句子嵌入表示为该层输入,即,第depth个卷积结构的输入;公式(4.1)表示第f个卷积核对句子嵌入表示中所有时间步信息进行卷积后经ReLU函数映射的结果,其中,[depth,y]表示卷积核的尺寸,表示第f个卷积核的权重矩阵,j表示卷积区域的纵坐标,mh表示句子嵌入表示中词嵌入表示的嵌入维度,0:depth ,j:j+y‑1表示卷积区域,表示第f个卷积核的偏置矩阵,表示第f个卷积核在0:depth,j:j+y‑1区域的卷积结果;公式(4.2)表示整合第f个卷积核在每个区域的卷积结果以得到第f个卷积核的最终卷积结果其中,sy表示嵌入维度上的卷积步幅;公式(4.3)表示将n个卷积核的最终卷积结果进行组合,得到该层网络对于句子嵌入表示中所有时间步信息的最终卷积结果,即称其为时间步depth编码结果;

将上述各个时间步的编码结果进行联接,以得到时序特征卷积编码结果,公式如下:

其中,表示时序特征卷积编码结果;

所述特征转换网络模块的构建过程具体如下:构建二维卷积语义特征编码层:此层接收时序特征卷积网络构造模块输出的时序特征卷积编码结果作为输入,然后使用二维卷积神经网络对其进行编码操作,从而得到相应的语义特征编码表示,公式如下:其中,时序特征卷积编码结果该层输入,即,构建的二维卷积语义特征编码层中二维卷积神经网络的输入;公式(6.1)表示第f个卷积核对时序特征卷积编码结果的特定区域进行卷积后经ReLU函数映射的结果,其中,[x1,y1]表示卷积核的尺寸,表示第f个卷积核的权重矩阵,i和j表示卷积区域的横坐标和纵坐标,ml和mh表示时序特征卷积编码结果的长和高,i:i+x1‑1,j:j+y1‑1表示卷积区域,表示第f个卷积核的偏置矩阵,表示第f个卷积核在i:i+x1‑1,j:j+y1‑1区域的卷积结果;公式(6.2)表示整合第f个卷积核在每个区域的卷积结果以得到第f个卷积核的最终卷积结果其中,sx1和sy1表示横向卷积步幅和纵向卷积步幅;公式(6.3)表示将n个卷积核的最终卷积结果进行组合,得到该层网络对于时序特征卷积编码结果的最终卷积结果,即称其为语义特征编码表示;

构建语义特征匹配层:此层首先联接sentence1和sentence2的语义特征编码表示和

从而得到句子对联接张量公式如下:

随后,使用另一个二维卷积神经网络对进行卷积匹配处理,从而得到句子对初步匹配张量,公式如下:

其中,句子对联接张量为该层输入,即,构建的二维卷积语义特征编码层中另一个二维卷积神经网络的输入;公式(8.1)表示第f个卷积核对句子对联接张量的特定区域进行卷积后经过ReLU函数映射的结果,其中,[x2,y2]表示卷积核的尺寸,表示第f个卷积核的权重矩阵,i和j表示卷积区域的横坐标和纵坐标,rl和rh表示时序特征卷积编码结果的长和高,i:i+x2‑1,j:j+y2‑1表示卷积区域,表示第f个卷积核的偏置矩阵,表示第f个卷积核在i:i+x2‑1,j:j+y2‑1区域的卷积结果;公式(8.2)表示整合第f个卷积核在每个区域的卷积结果以得到第f个卷积核的最终卷积结果其中,sx2和sy2表示横向卷积步幅和纵向卷积步幅;公式(8.3)表示将n个卷积核的最终卷积结果进行组合,得到该层网络对于句子对联接张量的最终卷积结果,即称其为句子对初步匹配张量;

构建语义特征筛选层:此层接收语义特征匹配层的输出句子对初步匹配张量作为输入,然后在本层中对其完成语义特征筛选操作;

使用注意力机制得到最终的句子对语义匹配张量,公式如下:

其中,公式(9.1)表示对进行映射,其中,和表示模型中相应的可训练权重矩阵,表示经映射后的结果;公式(9.2)表示计算得出注意力权重,其中,表示注意力权重;公式(9.3)表示使用注意力权重生成最终的匹配向量,其中,N为中的特征向量的数量,为最终的句子对语义匹配张量。

2.根据权利要求1所述的一种面向司法公开服务的句子对智能语义匹配方法,其特征在于,所述标签预测模块构建过程如下:

将句子对语义匹配张量将作为本模块的输入,其经过一层维度为1、激活函数为sigmoid的全连接网络处理,从而得到一个处于[0,1]之间的匹配度数值,记为ypred,最终通过与设立的阈值0.5进行比较,从而判断句子对间的语义是否匹配;即ypred≥0.5时,预测该句子对的语义是匹配的,否则,不匹配;当句子对语义匹配模型尚未充分训练时,需要在训练数据集上进行训练,以优化模型参数;当模型训练完毕时,其标签预测模块可预测目标句子对的语义是否匹配。

3.根据权利要求2所述的一种面向司法公开服务的句子对智能语义匹配方法,其特征在于,所述句子对语义匹配知识库构建具体如下:

下载网络上的数据集获取原始数据:下载网络上已经公开的句子对语义匹配数据集或人工构建数据集,将其作为构建句子对语义匹配知识库的原始数据;

预处理原始数据:预处理用于构建句子对语义匹配知识库的原始数据,对其中的每个句子均进行断字操作、分词操作,得到句子对语义匹配断字处理知识库、分词处理知识库;

汇总子知识库:汇总句子对语义匹配断字处理知识库和句子对语义匹配分词处理知识库,构建句子对语义匹配知识库;

所述句子对语义匹配模型通过使用训练数据集进行训练而得到,训练数据集的构建过程如下:

构建训练正例:将句子对语义匹配知识库中将两个句子语义一致的句子对构建为正例,形式化为:(sentence1_char,sentence2_char,sentence1_word ,sentence2_word ,1);其中,sentence1_char、sentence2_char分别指代句子对语义匹配断字处理知识库中的句子1、句子2,sentence1_word、sentence2_word分别指代句子对语义匹配分词处理知识库中的句子1、句子2,1表示这两个句子的语义相匹配,是正例;

构建训练负例:选中一个句子s1,再从句子对语义匹配知识库中随机选择一个与句子s1不匹配的句子s2,将s1与s2进行组合,构建负例,形式化为:(sentence1_char,sentence2_char,sentence1_word ,sentence2_word ,0);其中,sentence1_char、sentence1_word分别指代句子对语义匹配断字处理知识库和句子对语义匹配分词处理知识库中的句子1;sentence2_char、sentence2_word分别指代句子对语义匹配断字处理知识库和句子对语义匹配分词处理知识库中的句子2;0表示句子s1和句子s2的语义不匹配,是负例;

构建训练数据集:将经过构建训练正例和构建训练负例操作后所获得的全部的正例样本句子对和负例样本句子对进行组合,并打乱其顺序,构建最终的训练数据集;无论正例数据还是负例数据均包含了五个维度,即sentence1_char ,sentence2_char ,sentence1_word,sentence2_word,0或1;

所述句子对语义匹配模型构建完成后通过训练数据集进行句子对语义匹配模型的训练与优化,具体如下:

构建损失函数:采用交叉熵作为损失函数;

优化训练模型:使用RMSProp作为优化算法,除了其学习率设置为0.0015外,RMSProp的剩余超参数均选择Keras中的默认值设置;在训练数据集上,对句子对语义匹配模型进行优化训练。