首页 > 专利 > 齐鲁工业大学 > 一种联合多角度特征的深度智能文本匹配方法和装置专利详情

一种联合多角度特征的深度智能文本匹配方法和装置   0    0

有效专利 查看PDF
专利申请流程有哪些步骤?
专利申请流程图
申请
申请号:指国家知识产权局受理一件专利申请时给予该专利申请的一个标示号码。唯一性原则。
申请日:提出专利申请之日。
2020-02-20
申请公布
申请公布指发明专利申请经初步审查合格后,自申请日(或优先权日)起18个月期满时的公布或根据申请人的请求提前进行的公布。
申请公布号:专利申请过程中,在尚未取得专利授权之前,国家专利局《专利公报》公开专利时的编号。
申请公布日:申请公开的日期,即在专利公报上予以公开的日期。
2020-07-21
授权
授权指对发明专利申请经实质审查没有发现驳回理由,授予发明专利权;或对实用新型或外观设计专利申请经初步审查没有发现驳回理由,授予实用新型专利权或外观设计专利权。
2022-05-24
预估到期
发明专利权的期限为二十年,实用新型专利权期限为十年,外观设计专利权期限为十五年,均自申请日起计算。专利届满后法律终止保护。
2040-02-20
基本信息
有效性 有效专利 专利类型 发明专利
申请号 CN202010103504.1 申请日 2020-02-20
公开/公告号 CN111339249B 公开/公告日 2022-05-24
授权日 2022-05-24 预估到期日 2040-02-20
申请年 2020年 公开/公告年 2022年
缴费截止日
分类号 G06F16/33G06F16/332G06F16/951G06F40/30G06K9/62G06N3/04 主分类号 G06F16/33
是否联合申请 独立申请 文献类型号 B
独权数量 1 从权数量 9
权利要求数量 10 非专利引证数量 1
引用专利数量 0 被引证专利数量 0
非专利引证 1、CN 109766277 A,2019.05.17CN 110321419 A,2019.10.11CN 110032635 A,2019.07.19吴少洪、彭敦陆等.MGSC:一种多粒度语义交叉的短文本语义匹配模型《.小型微型计算机系统》.2019,(第6期),Xu Zhang, Wenpeng Lu等.Deep FeatureFusion Model for Sentence SemanticMatching《.Computers, Materials &Continua》.2019,第61卷(第2期),;
引用专利 被引证专利
专利权维持 2 专利申请国编码 CN
专利事件 转让 事务标签 公开、实质审查、授权、权利转移
申请人信息
申请人 第一申请人
专利权人 齐鲁工业大学 当前专利权人 南方电网互联网服务有限公司
发明人 鹿文鹏、张旭、禹继国、乔新晓、郭韦钰、于瑞 第一发明人 鹿文鹏
地址 山东省济南市长清区大学路3501号 邮编 250353
申请人数量 1 发明人数量 6
申请人所在省 山东省 申请人所在市 山东省济南市
代理人信息
代理机构
专利代理机构是经省专利管理局审核,国家知识产权局批准设立,可以接受委托人的委托,在委托权限范围内以委托人的名义办理专利申请或其他专利事务的服务机构。
济南信达专利事务所有限公司 代理人
专利代理师是代理他人进行专利申请和办理其他专利事务,取得一定资格的人。
孙园园
摘要
本发明公开了一种联合多角度特征的深度智能文本匹配方法和装置,属于自然语言处理技术领域,本发明要解决的技术问题为如何联合多角度特征,缓解编码过程中造成的语义缺失现象,从而达到提高智能文本匹配准确率的目标,采用的技术方案为:该方法具体如下:构建文本匹配知识库;构建文本匹配模型的训练数据集;构建文本匹配模型,具体如下:构建字符映射转换表、构建输入层、构建字符向量映射层、构建层次特征抽取模块、构建关键特征嵌入模块和构建联合多角度特征的深度智能文本匹配编码及计算模块;训练文本匹配模型。该装置包括文本匹配知识库构建单元、训练数据集生成单元、文本匹配模型构建单元和文本匹配模型训练单元。
  • 摘要附图
    一种联合多角度特征的深度智能文本匹配方法和装置
  • 说明书附图:图1
    一种联合多角度特征的深度智能文本匹配方法和装置
  • 说明书附图:图2
    一种联合多角度特征的深度智能文本匹配方法和装置
  • 说明书附图:图3
    一种联合多角度特征的深度智能文本匹配方法和装置
  • 说明书附图:图4
    一种联合多角度特征的深度智能文本匹配方法和装置
  • 说明书附图:图5
    一种联合多角度特征的深度智能文本匹配方法和装置
  • 说明书附图:图6
    一种联合多角度特征的深度智能文本匹配方法和装置
  • 说明书附图:图7
    一种联合多角度特征的深度智能文本匹配方法和装置
  • 说明书附图:图8
    一种联合多角度特征的深度智能文本匹配方法和装置
  • 说明书附图:图9
    一种联合多角度特征的深度智能文本匹配方法和装置
  • 说明书附图:图10
    一种联合多角度特征的深度智能文本匹配方法和装置
法律状态
序号 法律状态公告日 法律状态 法律状态信息
1 2023-01-03 专利权的转移 登记生效日: 2022.12.22 专利权人由齐鲁工业大学变更为京创联合(北京)知识产权服务有限责任公司 地址由250353 山东省济南市长清区大学路3501号变更为100085 北京市海淀区信息路甲28号C座(二层)02A室-084号
2 2022-05-24 授权
3 2020-07-21 实质审查的生效 IPC(主分类): G06F 16/33 专利申请号: 202010103504.1 申请日: 2020.02.20
4 2020-06-26 公开
权利要求
权利要求书是申请文件最核心的部分,是申请人向国家申请保护他的发明创造及划定保护范围的文件。
1.一种联合多角度特征的深度智能文本匹配方法,其特征在于,该方法具体如下:
构建文本匹配知识库:使用爬虫程序,在网上公共问答平台爬取问题集,得到原始相似句子知识库;或者,使用网上公开的文本匹配数据集,作为原始相似句子知识库;再对原始相似句子知识库进行预处理,构建用于模型训练的文本匹配知识库;
构建文本匹配模型的训练数据集:根据文本匹配知识库中的句子来构建训练正例数据和训练负例数据,并基于正例数据与负例数据来构建最终的训练数据集;
构建文本匹配模型,具体如下:
构建字符映射转换表:对文本匹配知识库中的每个句子按字符进行切分,并将每个字符依次存入一个列表中,从而得到一个字符表,随后以数字1为起始,按照每个字符被录入字符表的顺序依次递增排序,形成字符映射转换表;其中,字符映射转换表中每个字符均被映射为唯一的数字标识;字符映射转换表构建模块使用Word2Vec训练字符向量模型,得到字符的字向量矩阵权重embedding_matrix;
构建输入层:输入层中包括两个输入;根据字符映射转换表,将输入句子中的每个字符转化为相应的数字标识,从而完成数据的输入,即从输入的训练数据集样例中分别获取q1与q2作为输入层的两个输入,将其形式化为:(q1、q2);其中,q1表示句子1,q2表示句子2;
构建字符向量映射层:通过加载字向量矩阵权重初始化当前层的权重参数;针对输入句子q1和q2,得到其文本向量Q1 Emd、Q2 Emd;其中,文本匹配知识库中每一个句子均通过字符向量映射的方式,将文本信息转化为向量形式;
构建层次特征抽取模块:使用三层ONLSTM进行编码,抽取每一层的ONLSTM输出作为层级特征向量,同时计算q1,q2每层的余弦相似度;再整合三层相似度,得到层次特征抽取模块的匹配度;
构建关键特征嵌入模块:使用LSTM抽取特征向量,再使用BiLSTM以及两种不同卷积核的膨胀门卷积神经网络DGCNN获取文本语义特征;最终合BiLSTM以及膨胀门卷积得到的特征向量,作为该单元最终特征向量表示;再计算q1,q2的最终特征向量间余弦相似度,得到关键特征嵌入模块的匹配度;
构建联合多角度特征的深度智能文本匹配编码及计算模块:融合层次特征抽取模块的匹配度和关键特征嵌入模块的匹配度,得到最终的匹配度计算结果,并判定两个输入句子是否匹配;
训练文本匹配模型:在训练数据集上对文本匹配模型进行训练。

2.根据权利要求1所述的联合多角度特征的深度智能文本匹配方法,其特征在于,所述构建层次特征抽取模块具体为:以文本向量Q1 Emd、Q2 Emd作为输入;对两个文本向量分别采用三层ONLSTM进行编码,抽取其中每一层的ONLSTM特征输出计算二者的余弦相似度,得到三个余弦相度;将三个余弦相度相乘得到两个文本的匹配度并输出,即为层次特征抽取模块的匹配度,具体公式如下:
其中,i表示相应字符向量在句子中的相对位置;pi为句子q1中每个字符的相应向量表示;p1i为句子q1经过一次ONLSTM特征提取后,输出特征向量中每个字符的相应向量表示;
p2i为句子q1经过两次ONLSTM特征提取后,输出特征向量中每个字符的相应向量表示;qi为句子q2中每个字符的相应向量表示;q1i为句子q2经过一次ONLSTM特征提取后,输出特征向量中每个字符的相应向量表示,q2i为句子q2中经过两次ONLSTM特征提取后输出特征向量每个字符的相应向量表示; 表示针对句子q1使用ONLSTM提取的三层特征向量; 表示针对句子q2使用ONLSTM提取的三层特征向量; 表示句
子q1以及句子q2三个层次特征向量的余弦相似度;M表示整合句子q1以及句子q2不同层次余弦相似度得到的层次特征抽取模块的匹配度,M通过 按位相乘而得到。

3.根据权利要求2所述的联合多角度特征的深度智能文本匹配方法,其特征在于,所述构建关键特征嵌入模块具体如下:
LSTM特征提取:以文本向量Q1 Emd、Q2 Emd作为输入,使用LSTM进行特征提取得到特征向量,具体公式如下:
其中, 表示q1采用LSTM编码后得到的特征向量; 表示q2采用LSTM编码后得到的特征向量;i表示相应字符向量在句子中的相对位置;pi为文本q1中每个字符的相应向量表示;qi为句子q2中每个字符的相应向量表示;
DGCNN特征提取:文本向量Q1 Emd、Q2 Emd经过LSTM编码后,使用两种不同卷积核的膨胀门卷积神经网络DGCNN进一步进行特征提取;利用Mask过滤掉无用的填充符号,同时将整个文本中的关键特征均保留下来;通过求和操作整合两个膨胀们卷积的输出,具体公式如下:
其中, 和 表示两个不同卷积核的膨胀门卷积神经网络DGCNN提取
句子q1得到的向量输出; 表示 和 整合后的向量输出;
和 表示两个不同卷积核的膨胀门卷积神经网络DGCNN提取句子q2得到
的向量输出; 表示 和 整合后的向量输出;
BiLSTM特征提取:文本向量Q1 Emd、Q2 Emd经过LSTM编码后,分别使用BiLSTM进行编码提取得到相应的特征向量 和 公式如下:
特征向量池化处理:整合BiLSTM以及DGCNN得到的特征向量
对 进行最大池化操作得到
公式如下:
获取最终特征向量:针对q1,根据 求和得到最终输出的特征向量 公
式如下:
针对q2,根据 求和得到最终输出的特征向量 公式如下:
获取关键特征嵌入模块的匹配度:通过编码处理分别得到句子q1以及句子q2的特征向量 进而计算q1,q2的最终特征向量间余弦相似度作为文本匹配度N,即关键特征嵌入模块的匹配度,公式如下:

4.根据权利要求3所述的联合多角度特征的深度智能文本匹配方法,其特征在于,所述构建联合多角度特征的深度智能文本匹配编码及计算模块具体为:
整合层次特征抽取模块和关键特征嵌入模块构成一个新的编码模块——联合多角度特征的深度智能文本匹配编码模块,整合层次特征抽取模块和关键特征嵌入模块分别求得的层次特征抽取模块的匹配度M和关键特征嵌入模块的匹配度N,得到最终的匹配度计算结果ypred,公式如下:
ypred=M+N;
当ypred≥0.5时,表示句子q1以及句子q2相匹配;当ypred<0.5时,表示句子q1以及句子q2不匹配。

5.根据权利要求4所述的联合多角度特征的深度智能文本匹配方法,其特征在于,所述训练文本匹配模型具体如下:
构建损失函数:使用正切函数作为损失函数,公式如下:
其中,ypred表示经过联合多角度特征编码处理后得到的匹配度计算结果;ytrue表示两个文本是否匹配的真实标签,其取值仅限于0或1;
优化训练模型:使用Adam作为优化算法,超参数均选择Keras中的默认值设置;在训练数据集上,对文本匹配模型进行优化训练。

6.根据权利要求1所述的联合多角度特征的深度智能文本匹配方法,其特征在于,所述构建文本匹配模型的训练数据集具体如下:
构建训练正例:将句子与其所对应的标准句子进行组合,构建正例,形式化为:(q1,q2,
1);其中,q1表示句子1,q2表示句子2,1表示句子1和句子2相匹配,是正例;
构建训练负例:选中一个句子q1,再从文本匹配知识库中随机选择一个与句子q1不匹配的句子q2,将q1与q2进行组合,构建负例,形式化为:(q1,q2,0);其中,q1表示句子1,q2表示句子2,0表示句子1和句子2不匹配,是负例;
构建训练数据集:将获得的全部的正例样本文本和负例样本文本进行组合,并打乱其顺序,构建最终的训练数据集;其中,训练正例数据和训练负例数据均包含三个维度,即q1、q2、0或1。

7.一种联合多角度特征的深度智能文本匹配装置,其特征在于,该装置包括,文本匹配知识库构建单元,用于使用爬虫程序,在网上公共问答平台爬取问题集,得到原始相似句子知识库;或者,使用网上公开的文本匹配数据集,作为原始相似句子知识库;
再对原始相似句子知识库进行预处理,构建用于模型训练的文本匹配知识库;
训练数据集生成单元,用于根据文本匹配知识库中的句子来构建训练正例数据和训练负例数据,并基于正例数据与负例数据来构建最终的训练数据集;
文本匹配模型构建单元,用于构建文本匹配模型;文本匹配模型构建单元包括,字符映射转换表构建模块,用于对文本匹配知识库中的每个句子按字符进行切分,并将每个字符依次存入一个列表中,从而得到一个字符表,随后以数字1为起始,按照每个字符被录入字符表的顺序依次递增排序,形成字符映射转换表;其中,字符映射转换表中每个字符均被映射为唯一的数字标识;字符映射转换表构建模块使用Word2Vec训练字符向量模型,得到字符的字向量矩阵权重;
输入层构建模块,用于根据字符映射转换表,将输入句子中的每个字符转化为相应的数字标识,从而完成数据的输入,即从输入的训练数据集样例中分别获取q1与q2作为输入层的两个输入,将其形式化为:(q1、q2);其中,q1表示句子1,q2表示句子2;
字符向量映射层构建模块,用于加载预训练好的字符向量权重,将输入句子中的字符转换为字向量形式,构成完整的句子向量表示,该处理根据字符的数字标识查找字向量矩阵而完成;
层次特征抽取模块,用于使用三层ONLSTM进行编码,抽取每一层的ONLSTM输出作为层级特征向量,同时计算q1,q2每层的余弦相似度;再整合三层相似度,得到层次特征抽取模块的匹配度;
关键特征嵌入模块,用于使用LSTM抽取特征向量,再使用BiLSTM以及两种不同卷积核的膨胀门卷积神经网络DGCNN获取文本语义特征;最终合BiLSTM以及膨胀门卷积得到的特征向量,作为该单元最终特征向量表示;再计算q1,q2的最终特征向量间余弦相似度,得到关键特征嵌入模块的匹配度;
联合多角度特征的深度智能文本匹配编码及计算模块,用于融合层次特征抽取模块的匹配度和关键特征嵌入模块的匹配度,得到最终的匹配度计算结果,并判定两个输入句子是否匹配;
文本匹配模型训练单元,用于构建模型训练过程中所需要的损失函数,并完成模型的优化训练。

8.根据权利要求7所述的联合多角度特征的深度智能文本匹配装置,其特征在于,所述文本匹配知识库构建单元包括,
爬取原始数据模块,用于在网上公共问答平台爬取问题集,构建原始相似句子知识库;
或者,使用网上公开的文本匹配数据集,构建原始相似句子知识库;
原始数据处理模块,用于将原始相似句子知识库中的句子进行断字处理,构建用于模型训练的文本匹配知识库;
所述训练数据集生成单元包括,
训练正例数据构建模块,用于将文本匹配知识库中文本匹配的句子进行组合,并对其添加匹配标签1,构建为训练正例数据;
训练负例数据构建模块,用于从文本匹配知识库中选取一个句子q1,再从文本匹配知识库中随机选择一个与句子q1语义不匹配的句子q2,将q1与q2进行组合,并对其添加匹配标签0,构建为训练负例数据;
训练数据集构建模块,用于将所有的训练正例数据与训练负例数据组合在一起,并打乱其顺序,构建最终的训练数据集;
所述文本匹配模型训练单元包括,
损失函数构建模块,用于计算句子1和句子2间文本匹配度的误差;
模型优化训练单元,用于训练并调整模型训练中的参数,从而减小模型训练过程中预测的句子1与句子2间匹配度与真实匹配度之间的误差。

9.一种存储介质,其中存储有多条指令,其特征在于,所述指令由处理器加载,执行权利要求1‑6中任一所述的联合多角度特征的深度智能文本匹配方法的步骤。

10.一种电子设备,其特征在于,所述电子设备包括:
权利要求9所述的存储介质;以及
处理器,用于执行所述存储介质中的指令。
说明书

技术领域

[0001] 本发明涉及人工智能、自然语言处理技术领域,具体地说是一种联合多角度特征的深度智能文本匹配方法和装置。

背景技术

[0002] 近年来,文本匹配方法在自然语言处理领域越来越受重视。究其原因,众多自然语言处理任务以文本匹配为基础,在一定程度上可以视为文本匹配任务的拓展。例如,“自动问答”任务可以通过计算“问题”与“候选答案”的匹配度进行处理;“信息检索”任务可以视为是在计算“查询句子”与“匹配文档”的匹配度。正因如此,文本匹配在自然语言处理领域中起着至关重要的作用。衡量句子之间内在的文本匹配程度是一项非常有挑战性的工作,到目前为止,现有的方法并没有实质性地解决这一问题。
[0003] 通过分析和研究,发现现有方法大多都是以卷积神经网络模型或循环神经网络模型为基础的,而这两种模型自身特点和局限性导致其无法彻底解决这一问题。例如,卷积神经网络虽然擅长用不同的核函数捕捉和表示局部特征,但它忽略了文本中的序列信息,不适用于处理序列信息任务;循环神经网络虽然可以处理序列信息,但是它们大多只生成最终的向量表示而不考虑句子的层次关系,这可能会丢失一些重要的中间编码信息。而对于文本匹配任务,句子中的词语顺序和句子的层次信息都是至关重要的,因此,单纯使用基于卷积神经网络模型或循环神经网络模型的方法几乎无法获得令人满意的结果。
[0004] 综上所述,如何对句子进行层次特征抽取,同时联合关键特征嵌入,实现从多角度获取文本语义特征,缓解编码过程中的语义特征缺失现象,从而达到提高智能文本匹配准确率的目标,是目前亟待解决的技术问题。

发明内容

[0005] 本发明的技术任务是提供一种联合多角度特征的深度智能文本匹配方法和装置,来解决如何对句子进行层次特征抽取,同时联合关键特征嵌入,实现从多角度获取文本语义特征,缓解编码过程中的语义特征缺失现象的问题,从而达到提高智能文本匹配准确率的目标。
[0006] 本发明的技术任务是按以下方式实现的,一种联合多角度特征的深度智能文本匹配方法,该方法具体如下:
[0007] 构建文本匹配知识库:在网上公共问答平台爬取问题集或者使用网上公开的句子匹配数据集,作为原始相似句子知识库,并对原始相似句子知识库进行预处理得到文本匹配知识库;
[0008] 构建文本匹配模型的训练数据集:对于每一个句子,在文本匹配知识库中至少有一个与该句子对应的标准句子,该句子与其对应的标准句子组合构建训练正例;将除与该句子对应的标准句子以外的句子与该句子自由组合构建训练负例;用户根据文本匹配知识库大小来设定负例的数量,从而构建训练数据集;
[0009] 构建文本匹配模型,具体如下:构建字符映射转换表、构建输入层、构建字符向量映射层、构建层次特征抽取模块、构建关键特征嵌入模块;
[0010] 构建联合多角度特征的深度智能文本匹配编码及计算模块;
[0011] 训练文本匹配模型:在训练数据集上对文本匹配模型进行训练。
[0012] 作为优选,所述构建字符映射转换表具体如下:
[0013] 字符表通过预处理后得到的文本匹配知识库来构建;
[0014] 字符表构建完成后,表中每个字符均被映射为唯一的数字标识,映射规则为:以数字1为起始,随后按照每个字符被录入字符表的顺序依次递增排序,从而形成所需的字符映射转换表;
[0015] 其后,使用Word2Vec训练字符向量模型,得到各字符的字向量矩阵权重embedding_matrix;
[0016] 所述构建输入层具体为:输入层中包括两个输入;从输入的训练数据集样例中分别获取q1、q2,将其形式化为:(q1,q2);对于输入句子中的每个字符,均按照字符映射转换表将字符转化为相应的数字标识;
[0017] 所述构建字符向量映射层具体为:通过加载字向量矩阵权重初始化当前层的权重参数;针对输入文本q1和q2,得到其文本向量Q1 Emd、Q2 Emd;其中,文本匹配知识库中每一个句子均通过字符向量映射的方式,将文本信息转化为向量形式;
[0018] 所述构建层次特征抽取模块具体为:以文本向量Q1 Emd、Q2 Emd作为输入;对两个文本向量分别采用三层ONLSTM(有序神经元LSTM)进行编码,抽取其中每一层的ONLSTM特征输出计算二者的余弦相似度,得到三个余弦相度;将三个余弦相度相乘得到两个文本的匹配度并输出,即为层次特征抽取模块的匹配度,具体公式如下:
[0019]
[0020]
[0021]
[0022]
[0023]
[0024]
[0025]
[0026]
[0027]
[0028]
[0029] 其中,i表示相应字符向量在句子中的相对位置;pi为文本q1中每个字符的相应向量表示;p1i为文本q1经过一次ONLSTM特征提取后,输出特征向量中每个字符的相应向量表示;p2i为文本q1经过两次ONLSTM特征提取后,输出特征向量中每个字符的相应向量表示;qi为文本q2中每个字符的相应向量表示;q1i为文本q2经过一次ONLSTM特征提取后,输出特征向量中每个字符的相应向量表示,q2i为文本q2中经过两次ONLSTM特征提取后输出特征向量每个字符的相应向量表示; 表示针对文本q1使用ONLSTM提取的三层特征向量; 表示针对文本q2使用ONLSTM提取的三层特征向量; 表示
文本q1以及文本q2三个层次特征向量的余弦相似度;M表示整合文本q1以及文本q2不同层次余弦相似度得到的层次特征抽取模块的匹配度,M通过 按位相乘而得到。
[0030] 更优地,所述构建关键特征嵌入模块具体如下:
[0031] LSTM特征提取:以文本向量Q1 Emd、Q2 Emd作为输入,使用LSTM进行特征提取得到特征向量,具体公式如下:
[0032]
[0033]
[0034] 其中, 表示q1采用LSTM编码后得到的特征向量; 表示q2采用LSTM编码后得到的特征向量;i表示相应字符向量在句子中的相对位置;pi为文本q1中每个字符的相应向量表示;qi为文本q2中每个字符的相应向量表示;
[0035] DGCNN特征提取:文本向量Q1 Emd、Q2 Emd经过LSTM编码后,使用两种不同卷积核的膨胀门卷积神经网络DGCNN进一步进行特征提取利用Mask过滤掉无用的填充符号,同时将整个文本中的关键特征均保留下来;通过求和操作整合两个膨胀们卷积的输出,具体公式如下:
[0036]
[0037]
[0038]
[0039]
[0040]
[0041]
[0042] 其中, 和 表示两个不同卷积核的膨胀门卷积神经网络DGCNN提取文本q1得到的向量输出; 表示 和 整合后的向量输出;
和 表示两个不同卷积核的膨胀门卷积神经网络DGCNN提取文本q2得到
的向量输出; 表示 和 整合后的向量输出;
[0043] BiLSTM特征提取:对文本向量Q1 Emd、Q2 Emd经过LSTM编码后,分别使用BiLSTM进行编码提取得到相应的特征向量 和 公式如下:
[0044]
[0045]
[0046] 特征向量池化处理:整合BiLSTM以及DGCNN得到的特征向量对 进行最大池化操作得
到 公式如下:
[0047]
[0048]
[0049]
[0050]
[0051] 获取最终特征向量:针对q1,根据 求和得到最终输出的特征向量公式如下:
[0052]
[0053] 针对q2,根据 求和得到最终输出的特征向量 公式如下:
[0054]
[0055] 获取关键特征嵌入模块的匹配度:通过编码处理分别得到文本q1以及文本q2的特征向量 进而计算q1,q2的最终特征向量间余弦相似度作为文本匹配度N,即关键特征嵌入模块的匹配度,公式如下:
[0056]
[0057] 更优地,所述构建联合多角度特征的深度智能文本匹配编码及计算模块具体为:
[0058] 整合层次特征抽取模块和关键特征嵌入模块构成一个新的编码模块——联合多角度特征的深度智能文本匹配编码模块,整合层次特征抽取模块和关键特征嵌入模块分别求得的层次特征抽取模块的匹配度M和关键特征嵌入模块的匹配度N,得到最终的匹配度计算结果ypred,公式如下:
[0059] ypred=M+N;
[0060] 当ypred≥0.5时,表示文本q1以及文本q2相匹配;当ypred<0.5时,表示文本q1以及文本q2不匹配。
[0061] 更优地,所述训练文本匹配模型具体如下:
[0062] 构建损失函数:使用正切函数作为损失函数,公式如下:
[0063]
[0064] 其中,ypred表示经过联合多角度特征编码处理后得到的匹配度计算结果;ytrue表示两个文本是否匹配的真实标签,其取值仅限于0或1;
[0065] 优化训练模型:使用Adam作为优化算法,超参数均选择Keras中的默认值设置;在训练数据集上,对文本匹配模型进行优化训练。
[0066] 作为优选,所述构建文本匹配知识库具体如下:
[0067] 使用爬虫获取原始数据:在网上公共问答平台爬取问题集,得到原始相似句子知识库;或者使用网上公开的句子匹配数据集,作为原始相似句子知识库;
[0068] 预处理原始数据:预处理原始相似句子知识库中的相似文本,对每个句子进行断字处理,得到文本匹配知识库;
[0069] 所述构建文本匹配模型的训练数据集具体如下:
[0070] 构建训练正例:将句子与其所对应的标准句子进行组合,构建正例,形式化为:(q1,q2,1);其中,q1表示句子1,q2表示句子2,1表示句子1和句子2相匹配,是正例;
[0071] 构建训练负例:选中一个句子q1,再从文本匹配知识库中随机选择一个与句子q1不匹配的句子q2,将q1与q2进行组合,构建负例,形式化为:(q1,q2,0);其中,q1表示句子1,q2表示句子2,0表示句子1和句子2不匹配,是负例;
[0072] 构建训练数据集:将获得的全部的正例样本文本和负例样本文本进行组合,并打乱其顺序,构建最终的训练数据集;其中,训练正例数据和训练负例数据均包含三个维度,即q1、q2、0或1。
[0073] 一种联合多角度特征的深度智能文本匹配装置,该装置包括,
[0074] 文本匹配知识库构建单元,用于使用爬虫程序,在网上公共问答平台爬取问题集,得到原始相似句子知识库;或者,使用网上公开的文本匹配数据集,作为原始相似句子知识库;再对原始相似句子知识库进行预处理,构建用于模型训练的文本匹配知识库;
[0075] 训练数据集生成单元,用于根据文本匹配知识库中的句子来构建训练正例数据和训练负例数据,并基于正例数据与负例数据来构建最终的训练数据集;
[0076] 文本匹配模型构建单元,用于构建文本匹配模型;文本匹配模型构建单元包括,[0077] 字符映射转换表构建模块,用于对文本匹配知识库中的每个句子按字符进行切分,并将每个字符依次存入一个列表中,从而得到一个字符表,随后以数字1为起始,按照每个字符被录入字符表的顺序依次递增排序,形成字符映射转换表;其中,字符映射转换表中每个字符均被映射为唯一的数字标识;字符映射转换表构建模块使用Word2Vec训练字符向量模型,得到字符的字向量矩阵权重;
[0078] 输入层构建模块,用于根据字符映射转换表,将输入句子中的每个字符转化为相应的数字标识,从而完成数据的输入,即分别获取q1与q2,将其形式化为:(q1、q2);
[0079] 字符向量映射层构建模块,用于加载预训练好的字符向量权重,将输入句子中的字符转换为字向量形式,构成完整的句子向量表示,该处理根据字符的数字标识查找字向量矩阵而完成;
[0080] 层次特征抽取模块,用于使用三层ONLSTM进行编码,抽取每一层的ONLSTM输出作为层级特征向量,同时计算q1,q2每层的余弦相似度;再整合三层相似度,得到层次特征抽取模块的匹配度;
[0081] 关键特征嵌入模块,用于使用LSTM抽取特征向量,再使用BiLSTM以及两种不同卷积核的膨胀门卷积神经网络DGCNN获取文本语义特征(引入Mask来消除padding过程中引入0带来的影响,得到有意义的文本特征);最终合BiLSTM以及膨胀门卷积得到的特征向量,作为该单元最终特征向量表示;再计算q1,q2的最终特征向量间余弦相似度,得到关键特征嵌入模块的匹配度;
[0082] 联合多角度特征的深度智能文本匹配编码及计算模块,用于融合层次特征抽取模块的匹配度和关键特征嵌入模块的匹配度,得到最终的匹配度计算结果,并判定两个输入句子是否匹配;
[0083] 文本匹配模型训练单元,用于构建模型训练过程中所需要的损失函数,并完成模型的优化训练。
[0084] 作为优选,所述文本匹配知识库构建单元包括,
[0085] 爬取原始数据模块,用于在网上公共问答平台爬取问题集,构建原始相似句子知识库;或者,使用网上公开的文本匹配数据集,构建原始相似句子知识库;
[0086] 原始数据处理模块,用于将原始相似句子知识库中的句子进行断字处理,构建用于模型训练的文本匹配知识库;
[0087] 所述训练数据集生成单元包括,
[0088] 训练正例数据构建模块,用于将文本匹配知识库中文本匹配的句子进行组合,并对其添加匹配标签1,构建为训练正例数据;
[0089] 训练负例数据构建模块,用于从文本匹配知识库中选取一个句子q1,再从文本匹配知识库中随机选择一个与句子q1语义不匹配的句子q2,将q1与q2进行组合,并对其添加匹配标签0,构建为训练负例数据;
[0090] 训练数据集构建模块,用于将所有的训练正例数据与训练负例数据组合在一起,并打乱其顺序,构建最终的训练数据集;
[0091] 所述文本匹配模型训练单元包括,
[0092] 损失函数构建模块,用于计算句子1和句子2间文本匹配度的误差;
[0093] 模型优化训练单元,用于训练并调整模型训练中的参数,从而减小模型训练过程中预测的句子1与句子2间匹配度与真实匹配度之间的误差。
[0094] 一种存储介质,其中存储有多条指令,所述指令由处理器加载,执行上述的联合多角度特征的深度智能文本匹配方法的步骤。
[0095] 一种电子设备,所述电子设备包括:
[0096] 上述的存储介质;以及
[0097] 处理器,用于执行所述存储介质中的指令。
[0098] 本发明的联合多角度特征的深度智能文本匹配方法和装置具有以下优点:
[0099] (一)本发明对句子进行层次特征抽取,同时联合关键特征嵌入;可以从多角度获取文本语义特征,缓解编码过程中的语义特征缺失现象;
[0100] (二)本发明提出的层次特征抽取模块能够捕捉不同编码层的文本语义特征,联合多层文本特征匹配方法,能够更加有效地避免因文本编码过程中出现的语义缺失而导致的匹配不精确现象;
[0101] (三)本发明提出的关键特征抽取模块,引入mask来消除padding过程中填充0带来的负面影响,将整个文本中的关键特征均保留下来,得到更有意义的文本特征;能够利用深度编码模型有效地捕捉句子中的深层语义特征,从而提高文本表征的全面性和准确性;
[0102] (四)本发明整合层次特征抽取模块和关键特征抽取模块,联合这两个模块的优势,提高文本匹配的准确性。
[0103] (五)本发明提出了一种新型损失函数——正切损失函数,针对预测值接近真实值的情况给予较小的惩罚,同时针对二者差距较大的情况给予较大的惩罚,进一步提高文本匹配模型的效果,更好地优化模型;
[0104] (六)本发明实现了对不同编码层次语义特征的提取,并实现关键特征抽取,并针对损失函数进行改进,可以有效提高模型在文本匹配中的准确性。

实施方案

[0119] 参照说明书附图和具体实施例对本发明的一种联合多角度特征的深度智能文本匹配方法和装置作以下详细地说明。
[0120] 实施例1:
[0121] 如附图1所示,本发明的联合多角度特征的深度智能文本匹配方法,该方法步骤如下:
[0122] S1、构建文本匹配知识库:在网上公共问答平台爬取问题集或者使用网上公开的文本匹配数据集,得到原始相似句子知识库,并对原始相似句子知识库进行预处理得到文本匹配知识库;如附图2所示,具体步骤如下:
[0123] S101、使用爬虫获取原始数据:在网上公共问答平台爬取问题集,得到原始相似句子知识库;或者使用网上公开的句子匹配数据集,作为原始相似句子知识库;
[0124] 互联网上的公共问答分享平台中有着大量的问答数据及相似问题的推荐,这些都是面向大众开放的。因此本发明可以根据问答平台的特点,设计相应的爬虫程序,以此来获取语义相似的问题集合,从而构建原始相似句子知识库。
[0125] 举例:银行问答平台中的相似文本示例,表示如下:
[0126] 句子1 还款期限可以延后一天吗?句子2 是否可以申请延期一天还款?
[0127] 或者,使用网上公开的文本匹配数据集,作为原始知识库。比如BQ数据集【J.Chen,Q.Chen,X.Liu,H.Yang,D.Lu,B.Tang,The bq corpus:A large‑scale domain‑specific Chinese corpus for sentence semantic equivalence identification,EMNLP2018.】,该数据集包含网上银行服务日志中的120000个问题对,是一种专门用于文本匹配任务的中文数据集。BQ数据集是目前银行领域最大的、经人工注释过的中文数据集,对中文问题文本匹配研究很有用,而且该数据集是公开可用的。
[0128] S102、预处理原始数据:预处理原始相似句子知识库中的相似文本,对每个句子进行断字处理,得到文本匹配知识库;
[0129] 对步骤S101中获得的相似文本进行预处理,得到文本匹配知识库;本示例以中文里的每个字作为基本单位,对每条数据进行断字操作:每个汉字之间用空格进行切分,并且保留每条数据中包括数字、标点以及特殊字符在内的所有内容。为了避免语义信息的丢失,本发明保留了句子中的所有停用词。
[0130] 举例:以步骤S101中展示的句子1“还款期限可以延后一天吗?”为例,对其进行断字处理后得到“还款期限可以延后一天吗?”。
[0131] S2、构建文本匹配模型的训练数据集:对于每一个句子,在文本匹配知识库中至少有一个与该句子对应的标准句子,该句子与其对应的标准句子组合构建训练正例;将除与该句子对应的标准句子以外的句子与该句子自由组合构建训练负例;用户根据文本匹配知识库大小来设定负例的数量,从而构建训练数据集;如附图3所示,具体如下:
[0132] S201、构建训练正例:将句子与其所对应的标准句子进行组合,构建正例,形式化为:(q1,q2,1);其中,q1表示句子1,q2表示句子2,1表示句子1和句子2相匹配,是正例;
[0133] 举例:对步骤S101中展示的句子1和句子2,经过步骤S102断字处理后,构建的正例为:
[0134] (“还款期限可以延后一天吗?”,“是否可以申请延期一天还款?”,1)。
[0135] S202、构建训练负例:选中一个句子q1,再从文本匹配知识库中随机选择一个与句子q1不匹配的句子q2,将q1与q2进行组合,构建负例,形式化为:(q1,q2,0);其中,q1表示句子1,q2表示句子2,0表示句子1和句子2不匹配,是负例;
[0136] 举例:根据步骤S201中的所展示的示例数据,本发明仍然使用原问句作为s1,再从文本匹配知识库中随机选择一个与句子q1语义不匹配的句子q2,将q1与q2进行组合,构建的负例为:
[0137] (“还款期限可以延后一天吗?”,“为什么银行客户端登陆出现网络错误?”,0)。
[0138] S203、构建训练数据集:将经过步骤S201和步骤S202获得的全部的正例样本文本和负例样本文本进行组合,并打乱其顺序,构建最终的训练数据集;其中,训练正例数据和训练负例数据均包含三个维度,即q1、q2、0或1。
[0139] S3、构建文本匹配模型:如附图4所示,依次构建字符映射转换表、构建输入层、构建字符向量映射层、构建层次特征抽取模块、构建关键特征嵌入模块、构建联合多角度特征的深度智能文本匹配编码及计算模块;具体如下:
[0140] S301、构建字符映射转换表具体如下:
[0141] S30101、字符表通过预处理后得到的文本匹配知识库来构建;
[0142] S30102、字符表构建完成后,表中每个字符均被映射为唯一的数字标识,映射规则为:以数字1为起始,随后按照每个字符被录入字符表的顺序依次递增排序,从而形成所需的字符映射转换表;
[0143] 举例:以步骤S102断字后的内容,“还款期限可以延后一天吗?”,构建字符表及字符映射转换表如下:
[0144]字符 还 款 期 限 可 以 延 后 一
映射 1 2 3 4 5 6 7 8 9
字符 天 吗 ?            
映射 10 11 12            
[0145] S30103、使用Word2Vec训练字符向量模型,得到各字符的字向量矩阵权重embedding_matrix;
[0146] 举例说明:在Keras中,对于上面描述的代码实现如下所示:
[0147] w2v_model=genism.models.Word2Vec(w2v_corpus,size=embedding_dim,window=5,min_count=1,sg=1,workers=4,seed=1234,iter=25)
[0148] embedding_matrix=numpy.zeros([len(tokenizer.word_index)+1,embedding_dim])
[0149] tokenizer=keras.preprocessing.text.Tokenizer(num_words=len(word_set))
[0150] for word,idx in tokenizer.word_index.items():
[0151] embedding_matrix[idx,:]=w2v_model.wv[word];
[0152] 其中,w2v_corpus为训练语料,即文本匹配知识库中的所有数据;embedding_dim为字向量维度,在本发明中embedding_dim设置为300,word_set为词表。
[0153] S302、构建输入层具体为:输入层中包括两个输入;从输入的训练数据集样例中分别获取q1、q2,将其形式化为:(q1,q2);对于输入句子中的每个字符,均按照字符映射转换表将字符转化为相应的数字标识;
[0154] 举例说明:本发明使用步骤S201中展示的文本作为样例,以此组成一条输入数据。其结果如下所示:
[0155] (“还款期限可以延后一天吗?”,“是否可以申请延期一天还款?”)
[0156] 根据词表中的映射将上述的输入数据转换为数值表示(假定出现在句子2中但没有出现在句子1中的字的映射分别为“是”:13,“否”:14,“申”:15,“请”:16,“延”:17),结果如下:
[0157] (“1,2,3,4,5,6,7,8,9,10,11,12”,“13,14,5,6,15,16,17,3,9,10,1,2”)。
[0158] S303、构建字符向量映射层具体为:通过加载步骤S301中字向量矩阵权重初始化当前层的权重参数;针对输入文本q1和q2,得到其文本向量Q1 Emd、Q2 Emd;其中,文本匹配知识库中每一个句子均通过字符向量映射的方式,将文本信息转化为向量形式;本发明中设置embedding_dim为300。
[0159] 举例说明:在Keras中,对于上面描述的代码实现如下所示:
[0160] embedding_layer=Embedding(embedding_matrix.shape[0],
[0161] embedding_dim,
[0162] weights=[embedding_matrix],
[0163] input_length=input_dim,
[0164] trainable=False)
[0165] 其中,embedding_matrix是步骤S301中训练所得的字向量矩阵权重,embedding_matrix.shape[0]是字向量矩阵的词汇表(词典)的大小,embedding_dim是输出的字向量的维度,input_length是输入序列的长度。
[0166] 相应的文本q1和q2,经过Embedding层编码后得到相应的文本向量Q1 Emd、Q2 Emd。
[0167] S304、构建层次特征抽取模块具体为:如附图7所示,以文本向量Q1 Emd、Q2 Emd作为输入;对两个文本向量分别采用三层ONLSTM(有序神经元LSTM)进行编码,抽取其中每一层的ONLSTM特征输出计算二者的余弦相似度,得到三个余弦相度;将三个余弦相度相乘得到两个文本的匹配度并输出,即为层次特征抽取模块的匹配度,具体公式如下:
[0168]
[0169]
[0170]
[0171]
[0172]
[0173]
[0174]
[0175]
[0176]
[0177]
[0178] 其中,i表示相应字符向量在句子中的相对位置;pi为文本q1中每个字符的相应向量表示;p1i为文本q1经过一次ONLSTM特征提取后,输出特征向量中每个字符的相应向量表示;p2i为文本q1经过两次ONLSTM特征提取后,输出特征向量中每个字符的相应向量表示;qi为文本q2中每个字符的相应向量表示;q1i为文本q2经过一次ONLSTM特征提取后,输出特征向量中每个字符的相应向量表示,q2i为文本q2中经过两次ONLSTM特征提取后输出特征向量每个字符的相应向量表示; 表示针对文本q1使用ONLSTM提取的三层特征向量; 表示针对文本q2使用ONLSTM提取的三层特征向量; 表示
文本q1以及文本q2三个层次特征向量的余弦相似度;M表示整合文本q1以及文本q2不同层次余弦相似度得到的层次特征抽取模块的匹配度,M通过 按位相乘而得到。
[0179] 经实验验证,本模块的编码维度设置为300时,可获得最优结果。
[0180] S305、构建关键特征嵌入模块,如图8所示,以文本向量Q1 Emd、Q2 Emd作为输入;首先使用LSTM抽取特征向量;使用BiLSTM以及两种不同卷积核的膨胀门卷积DGCNN获取文本语义特征;整合BiLSTM以及DGCNN得到的特征向量,作为该模块最终特征向量表示;最终计算q1,q2的最终特征向量间余弦相似度,作为该模块文本匹配度,即关键特征嵌入模块的匹配度;具体如下:
[0181] S30501、LSTM特征提取:以文本向量Q1 Emd、Q2 Emd作为输入,使用LSTM进行特征提取得到特征向量,具体公式如下:
[0182]
[0183]
[0184] 其中, 表示q1采用LSTM编码后得到的特征向量; 表示q2采用LSTM编码后得到的特征向量;i表示相应字符向量在句子中的相对位置;pi为文本q1中每个字符的相应向量表示;qi为文本q2中每个字符的相应向量表示;
[0185] S30502、DGCNN特征提取:文本向量Q1 Emd、Q2 Emd经过LSTM编码后,使用两种不同卷积核的膨胀门卷积神经网络DGCNN进一步进行特征提取;本发明引入Mask来消除padding过程中填充0带来的负面影响,得到有意义的文本特征(因为神经网络的输入需要一个规整的张量,而文本通常都是不定长的;这就导致需要以裁剪或者填充的方式使得所有文本变成定长的;在填充过程中,本发明会使用0作为padding符号)。本发明利用Mask过滤掉无用的填充符号,同时将整个文本中的关键特征均保留下来,再通过求和操作整合两个膨胀们卷积的输出,具体公式如下:
[0186]
[0187]
[0188]
[0189]
[0190]
[0191]
[0192] 其中, 和 表示两个不同卷积核的膨胀门卷积神经网络DGCNN提取文本q1得到的向量输出; 表示 和 整合后的向量输出;
和 表示两个不同卷积核的膨胀门卷积神经网络DGCNN提取文本q2得到
的向量输出; 表示 和 整合后的向量输出;
[0193] S30503、BiLSTM特征提取:文本向量Q1 Emd、Q2 Emd经过LSTM编码后,分别使用BiLSTM进行编码提取得到相应的特征向量 和 公式如下:
[0194]
[0195]
[0196] S30504、特征向量池化处理:整合BiLSTM以及DGCNN得到的特征向量对 进行最大池化操作得
到 公式如下:
[0197]
[0198]
[0199]
[0200]
[0201] S30505、获取最终特征向量:针对q1,根据 求和得到最终输出的特征向量 公式如下:
[0202]
[0203] 针对q2,根据 求和得到最终输出的特征向量 公式如下:
[0204]
[0205] S30506、获取关键特征嵌入模块的匹配度:通过编码处理分别得到文本q1以及文本q2的特征向量 进而计算q1,q2的最终特征向量间余弦相似度作为文本匹配度N,即关键特征嵌入模块的匹配度,公式如下:
[0206]
[0207] S306、构建联合多角度特征的深度智能文本匹配编码及计算模块具体为:
[0208] 如附图9所示,经过步骤S304以及步骤S305分别构造了层次特征提取模块以及关键特征嵌入模块,整合层次特征抽取模块和关键特征嵌入模块构成一个新的编码模块——联合多角度特征的深度智能文本匹配编码模块,整合层次特征抽取模块和关键特征嵌入模块分别求得的层次特征抽取模块的匹配度M和关键特征嵌入模块的匹配度N,得到最终的匹配度计算结果ypred,公式如下:
[0209] ypred=M+N;
[0210] 当ypred≥0.5时,表示文本q1以及文本q2相匹配;当ypred<0.5时,表示文本q1以及文本q2不匹配。
[0211] S4、训练文本匹配模型:在步骤S2所得的训练数据集上对步骤S3构建的文本匹配模型进行训练,如附图5所示,具体如下:
[0212] S401、构建损失函数:使用正切函数作为损失函数,公式如下:
[0213]
[0214] 其中,ypred表示经过联合多角度特征编码处理后得到的匹配度计算结果;ytrue表示两个文本是否匹配的真实标签,其取值仅限于0或1;
[0215] 附图10中(a)和(b)比较了正切损失函数和交叉熵损失函数;交叉熵损失函数具有以下特点:预测值和真实值之间的差越小,损失值越小,即当前模型的惩罚越小;预测值和真实值之间的差异越大,损失值越大,即当前模型的惩罚越大。惩罚是非线性增长,这与指数增长类似。
[0216] 正切损失函数与交叉熵损失函数相比:当预测值和真实值之间的差异较小时,与交叉熵损失函数相比,正切损失函数可以得到较小的惩罚。这意味着正切损失函数对模型的预测越好,惩罚就越合理;另一方面,当预测值大大偏离真实值时,正切损失函数也给出了非线性增长的惩罚,但没有突然跳变现象。基于上述优点,本发明选择使用正切损失作为模型损失函数。
[0217] S402、优化训练模型:使用Adam作为优化算法,超参数均选择Keras中的默认值设置;在训练数据集上,对文本匹配模型进行优化训练。
[0218] 举例说明:上面描述的优化算法及其设置在Keras中使用代码表示为:
[0219] optim=keras.optimizers.Aadm();
[0220] model=keras.models.Model([q1,q2],[ypred])
[0221] model.compile(loss=Lloss,optimizer=optim,metrics=['accuracy',precision,recall,f1_score])
[0222] 其中,损失函数loss选择本发明自定义的正切损失Lloss;优化算法optimizer选择前文定义好的optim;q1以及q2作为模型输入,ypred为模型输出;评价指标metrics,本发明选取准确率accuracy,精确率precision,召回率recall,基于召回率和精确率计算的f1_score。
[0223] 接下来,介绍相关评价指标:
[0224]
[0225] accuracy=(TP+TN)/(TP+TN+FN+FP)
[0226] precision=TP/(TP+FP)
[0227] recall=TP/(TP+FN)
[0228] f1_score=2*precision*recall/(precision+recall)
[0229] 本发明的模型在BQ数据集上取得了优于当前先进模型的结果,实验结果的对比具体如下表所示:
[0230]
[0231] 本发明和现有模型进行了比较,实验结果显示本发明方法有了很大的提升。其中,前三行是现有技术的模型的实验结果【前四行数据来自:J.Chen,Q.Chen,X.Liu,H.Yang,D.Lu,B.Tang,The bq corpus:A large‑scale domain‑specific chinese corpus for sentence semantic equivalence identification,EMNLP2018.第五行数据使用DFF模型,模型来自:Xu Zhang,Wenpeng Lu,Fangfang Li,Xueping Peng,Ruoyu Zhang.Deep Feature Fusion Model for Sentence Semantic Matching.CMC‑Computers Materials&Continua,Vol.61,No.2,pp.601‑616,2019.】,最后一行是本发明模型的实验结果,由此可知本发明比现有模型有了较大提升。
[0232] 实施例2:
[0233] 如附图6所示,本发明的联合多角度特征的深度智能文本匹配装置,该装置包括,[0234] 文本匹配知识库构建单元,用于使用爬虫程序,在网上公共问答平台爬取问题集,得到原始相似句子知识库;或者,使用网上公开的文本匹配数据集,作为原始相似句子知识库;再对原始相似句子知识库进行预处理,构建用于模型训练的文本匹配知识库;文本匹配知识库构建单元包括,
[0235] 爬取原始数据模块,用于在网上公共问答平台爬取问题集,构建原始相似句子知识库;
[0236] 原始数据处理模块,用于将原始相似句子知识库中的句子进行断字处理,构建用于模型训练的文本匹配知识库;
[0237] 训练数据集生成单元,用于根据文本匹配知识库中的句子来构建训练正例数据和训练负例数据,并基于正例数据与负例数据来构建最终的训练数据集;训练数据集生成单元包括,
[0238] 训练正例数据构建模块,用于将文本匹配知识库中文本匹配的句子进行组合,并对其添加匹配标签1,构建为训练正例数据;
[0239] 训练负例数据构建模块,用于从文本匹配知识库中选取一个句子q1,再从文本匹配知识库中随机选择一个与句子q1语义不匹配的句子q2,将q1与q2进行组合,并对其添加匹配标签0,构建为训练负例数据;
[0240] 训练数据集构建模块,用于将所有的训练正例数据与训练负例数据组合在一起,并打乱其顺序,构建最终的训练数据集;
[0241] 文本匹配模型构建单元,用于构建文本匹配模型;文本匹配模型构建单元包括,[0242] 字符映射转换表构建模块,用于对文本匹配知识库中的每个句子按字符进行切分,并将每个字符依次存入一个列表中,从而得到一个字符表,随后以数字1为起始,按照每个字符被录入字符表的顺序依次递增排序,形成字符映射转换表;其中,字符映射转换表中每个字符均被映射为唯一的数字标识;字符映射转换表构建模块使用Word2Vec训练字符向量模型,得到字符的字向量矩阵权重;
[0243] 输入层构建模块,用于根据字符映射转换表,将输入句子中的每个字符转化为相应的数字标识,从而完成数据的输入,即分别获取q1与q2,将其形式化为:(q1、q2);
[0244] 字符向量映射层构建模块,用于加载预训练好的字符向量权重,将输入句子中的字符转换为字向量形式,构成完整的句子向量表示,该处理可根据字符的数字标识查找字向量矩阵而完成;
[0245] 层次特征抽取模块,用于使用三层ONLSTM进行编码,抽取每一层的ONLSTM输出作为层级特征向量,同时计算q1,q2每层的余弦相似度;再整合三层相似度,得到层次特征抽取模块的匹配度;
[0246] 关键特征嵌入模块,用于使用LSTM抽取特征向量,再使用BiLSTM以及两种不同卷积核的膨胀门卷积神经网络DGCNN获取文本语义特征(引入Mask来消除padding过程中引入0带来的影响,得到有意义的文本特征);最终合BiLSTM以及膨胀门卷积得到的特征向量,作为该单元最终特征向量表示;再计算q1,q2的最终特征向量间余弦相似度,得到关键特征嵌入模块的匹配度;
[0247] 联合多角度特征的深度智能文本匹配编码及计算模块,用于融合层次特征抽取模块的匹配度和关键特征嵌入模块的匹配度,得到最终的匹配度计算结果,并判定两个输入句子是否匹配;
[0248] 文本匹配模型训练单元,用于构建模型训练过程中所需要的损失函数与优化函数,并完成模型的训练;文本匹配模型训练单元包括,
[0249] 损失函数构建模块,用于计算句子1和句子2间文本匹配度的误差;
[0250] 模型优化训练单元,用于训练并调整模型训练中的参数,从而减小模型训练过程中预测的句子1与句子2间匹配度与真实匹配度之间的误差。
[0251] 实施例3:
[0252] 本发明的存储介质,其中存储有多条指令,指令由处理器加载,执行实施例1的联合多角度特征的深度智能文本匹配方法的步骤。
[0253] 实施例4:
[0254] 本发明的电子设备,电子设备包括:
[0255] 实施例3的存储介质;以及
[0256] 处理器,用于执行实施例3存储介质中的指令。
[0257] 最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

附图说明

[0105] 下面结合附图对本发明进一步说明。
[0106] 附图1为联合多角度特征的深度智能文本匹配方法的流程框图;
[0107] 附图2为构建文本匹配知识库的流程框图;
[0108] 附图3为构建训练数据集的流程框图;
[0109] 附图4为构建文本匹配模型的流程框图;
[0110] 附图5为训练文本匹配模型的流程框图;
[0111] 附图6为联合多角度特征的深度智能文本匹配装置的结构框图;
[0112] 附图7为层次特征抽取模块的框架示意图;
[0113] 附图8为关键特征嵌入模块的框架示意图;
[0114] 附图9为联合多角度特征的深度智能文本匹配编码及计算模块的框架示意图;
[0115] 图10为交叉熵损失与正切损失对比示意图。
[0116] 其中,附图7中ONLSTM全名为Ordered neurons LSTM,又称为有序神经元LSTM,是长短时记忆模型LSTM的变种;这种LSTM内部的神经元是经过特定排序的,从而能够表达更丰富的信息;ONLSTM将神经元经过特定排序是为了将层级结构(树结构)整合到LSTM中去,从而允许LSTM能自动学习到层级结构信息;ONLSTM模型的出处为:Shen,Yikang,Shawn Tan,Alessandro Sordoni,and Aaron Courville."Ordered neurons:Integrating tree structures into recurrent neural networks."ICLR 2019;
[0117] 附图8中DGCNN:全名为Dilate Gated Convolutional Neural Network,又称为膨胀门卷积神经网络。该模型融合了两种新的卷积用法,即:膨胀卷积、门卷积。DGCNN模型的出处为:https://spaces.ac.cn/archives/5409;
[0118] 附图10中当真实值为0时,不同预测值的交叉熵损失和正切损失;当真实值为1时,不同预测值的交叉熵损失和正切损失。
版权所有:盲专网 ©2023 zlpt.xyz  蜀ICP备2023003576号