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

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

Info

Publication number
CN111339249B
CN111339249B CN202010103504.1A CN202010103504A CN111339249B CN 111339249 B CN111339249 B CN 111339249B CN 202010103504 A CN202010103504 A CN 202010103504A CN 111339249 B CN111339249 B CN 111339249B
Authority
CN
China
Prior art keywords
sentence
text
training
character
text matching
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010103504.1A
Other languages
English (en)
Other versions
CN111339249A (zh
Inventor
鹿文鹏
张旭
禹继国
乔新晓
郭韦钰
于瑞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Southern Power Grid Internet Service Co ltd
Jingchuang United Beijing Intellectual Property Service Co ltd
Original Assignee
Qilu University of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qilu University of Technology filed Critical Qilu University of Technology
Priority to CN202010103504.1A priority Critical patent/CN111339249B/zh
Publication of CN111339249A publication Critical patent/CN111339249A/zh
Application granted granted Critical
Publication of CN111339249B publication Critical patent/CN111339249B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Software Systems (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Human Computer Interaction (AREA)
  • Machine Translation (AREA)

Abstract

本发明公开了一种联合多角度特征的深度智能文本匹配方法和装置,属于自然语言处理技术领域,本发明要解决的技术问题为如何联合多角度特征,缓解编码过程中造成的语义缺失现象,从而达到提高智能文本匹配准确率的目标,采用的技术方案为:该方法具体如下:构建文本匹配知识库;构建文本匹配模型的训练数据集;构建文本匹配模型,具体如下:构建字符映射转换表、构建输入层、构建字符向量映射层、构建层次特征抽取模块、构建关键特征嵌入模块和构建联合多角度特征的深度智能文本匹配编码及计算模块;训练文本匹配模型。该装置包括文本匹配知识库构建单元、训练数据集生成单元、文本匹配模型构建单元和文本匹配模型训练单元。

Description

一种联合多角度特征的深度智能文本匹配方法和装置
技术领域
本发明涉及人工智能、自然语言处理技术领域,具体地说是一种联合多角度特征的深度智能文本匹配方法和装置。
背景技术
近年来,文本匹配方法在自然语言处理领域越来越受重视。究其原因,众多自然语言处理任务以文本匹配为基础,在一定程度上可以视为文本匹配任务的拓展。例如,“自动问答”任务可以通过计算“问题”与“候选答案”的匹配度进行处理;“信息检索”任务可以视为是在计算“查询句子”与“匹配文档”的匹配度。正因如此,文本匹配在自然语言处理领域中起着至关重要的作用。衡量句子之间内在的文本匹配程度是一项非常有挑战性的工作,到目前为止,现有的方法并没有实质性地解决这一问题。
通过分析和研究,发现现有方法大多都是以卷积神经网络模型或循环神经网络模型为基础的,而这两种模型自身特点和局限性导致其无法彻底解决这一问题。例如,卷积神经网络虽然擅长用不同的核函数捕捉和表示局部特征,但它忽略了文本中的序列信息,不适用于处理序列信息任务;循环神经网络虽然可以处理序列信息,但是它们大多只生成最终的向量表示而不考虑句子的层次关系,这可能会丢失一些重要的中间编码信息。而对于文本匹配任务,句子中的词语顺序和句子的层次信息都是至关重要的,因此,单纯使用基于卷积神经网络模型或循环神经网络模型的方法几乎无法获得令人满意的结果。
综上所述,如何对句子进行层次特征抽取,同时联合关键特征嵌入,实现从多角度获取文本语义特征,缓解编码过程中的语义特征缺失现象,从而达到提高智能文本匹配准确率的目标,是目前亟待解决的技术问题。
发明内容
本发明的技术任务是提供一种联合多角度特征的深度智能文本匹配方法和装置,来解决如何对句子进行层次特征抽取,同时联合关键特征嵌入,实现从多角度获取文本语义特征,缓解编码过程中的语义特征缺失现象的问题,从而达到提高智能文本匹配准确率的目标。
本发明的技术任务是按以下方式实现的,一种联合多角度特征的深度智能文本匹配方法,该方法具体如下:
构建文本匹配知识库:在网上公共问答平台爬取问题集或者使用网上公开的句子匹配数据集,作为原始相似句子知识库,并对原始相似句子知识库进行预处理得到文本匹配知识库;
构建文本匹配模型的训练数据集:对于每一个句子,在文本匹配知识库中至少有一个与该句子对应的标准句子,该句子与其对应的标准句子组合构建训练正例;将除与该句子对应的标准句子以外的句子与该句子自由组合构建训练负例;用户根据文本匹配知识库大小来设定负例的数量,从而构建训练数据集;
构建文本匹配模型,具体如下:构建字符映射转换表、构建输入层、构建字符向量映射层、构建层次特征抽取模块、构建关键特征嵌入模块;
构建联合多角度特征的深度智能文本匹配编码及计算模块;
训练文本匹配模型:在训练数据集上对文本匹配模型进行训练。
作为优选,所述构建字符映射转换表具体如下:
字符表通过预处理后得到的文本匹配知识库来构建;
字符表构建完成后,表中每个字符均被映射为唯一的数字标识,映射规则为:以数字1为起始,随后按照每个字符被录入字符表的顺序依次递增排序,从而形成所需的字符映射转换表;
其后,使用Word2Vec训练字符向量模型,得到各字符的字向量矩阵权重embedding_matrix;
所述构建输入层具体为:输入层中包括两个输入;从输入的训练数据集样例中分别获取q1、q2,将其形式化为:(q1,q2);对于输入句子中的每个字符,均按照字符映射转换表将字符转化为相应的数字标识;
所述构建字符向量映射层具体为:通过加载字向量矩阵权重初始化当前层的权重参数;针对输入文本q1和q2,得到其文本向量Q1 Emd、Q2 Emd;其中,文本匹配知识库中每一个句子均通过字符向量映射的方式,将文本信息转化为向量形式;
所述构建层次特征抽取模块具体为:以文本向量Q1 Emd、Q2 Emd作为输入;对两个文本向量分别采用三层ONLSTM(有序神经元LSTM)进行编码,抽取其中每一层的ONLSTM特征输出计算二者的余弦相似度,得到三个余弦相度;将三个余弦相度相乘得到两个文本的匹配度并输出,即为层次特征抽取模块的匹配度,具体公式如下:
Figure BDA0002387665630000021
Figure BDA0002387665630000022
Figure BDA0002387665630000023
Figure BDA0002387665630000031
Figure BDA0002387665630000032
Figure BDA0002387665630000033
Figure BDA0002387665630000034
Figure BDA0002387665630000035
Figure BDA0002387665630000036
Figure BDA0002387665630000037
其中,i表示相应字符向量在句子中的相对位置;pi为文本q1中每个字符的相应向量表示;p1i为文本q1经过一次ONLSTM特征提取后,输出特征向量中每个字符的相应向量表示;p2i为文本q1经过两次ONLSTM特征提取后,输出特征向量中每个字符的相应向量表示;qi为文本q2中每个字符的相应向量表示;q1i为文本q2经过一次ONLSTM特征提取后,输出特征向量中每个字符的相应向量表示,q2i为文本q2中经过两次ONLSTM特征提取后输出特征向量每个字符的相应向量表示;
Figure BDA0002387665630000038
表示针对文本q1使用ONLSTM提取的三层特征向量;
Figure BDA0002387665630000039
表示针对文本q2使用ONLSTM提取的三层特征向量;
Figure BDA00023876656300000310
表示文本q1以及文本q2三个层次特征向量的余弦相似度;M表示整合文本q1以及文本q2不同层次余弦相似度得到的层次特征抽取模块的匹配度,M通过
Figure BDA00023876656300000311
按位相乘而得到。
更优地,所述构建关键特征嵌入模块具体如下:
LSTM特征提取:以文本向量Q1 Emd、Q2 Emd作为输入,使用LSTM进行特征提取得到特征向量,具体公式如下:
Figure BDA00023876656300000312
Figure BDA00023876656300000313
其中,
Figure BDA0002387665630000041
表示q1采用LSTM编码后得到的特征向量;
Figure BDA0002387665630000042
表示q2采用LSTM编码后得到的特征向量;i表示相应字符向量在句子中的相对位置;pi为文本q1中每个字符的相应向量表示;qi为文本q2中每个字符的相应向量表示;
DGCNN特征提取:文本向量Q1 Emd、Q2 Emd经过LSTM编码后,使用两种不同卷积核的膨胀门卷积神经网络DGCNN进一步进行特征提取利用Mask过滤掉无用的填充符号,同时将整个文本中的关键特征均保留下来;通过求和操作整合两个膨胀们卷积的输出,具体公式如下:
Figure BDA0002387665630000043
Figure BDA0002387665630000044
Figure BDA0002387665630000045
Figure BDA0002387665630000046
Figure BDA0002387665630000047
Figure BDA0002387665630000048
其中,
Figure BDA0002387665630000049
Figure BDA00023876656300000410
表示两个不同卷积核的膨胀门卷积神经网络DGCNN提取文本q1得到的向量输出;
Figure BDA00023876656300000411
表示
Figure BDA00023876656300000412
Figure BDA00023876656300000413
整合后的向量输出;
Figure BDA00023876656300000414
Figure BDA00023876656300000415
表示两个不同卷积核的膨胀门卷积神经网络DGCNN提取文本q2得到的向量输出;
Figure BDA00023876656300000416
表示
Figure BDA00023876656300000417
Figure BDA00023876656300000418
整合后的向量输出;
BiLSTM特征提取:对文本向量Q1 Emd、Q2 Emd经过LSTM编码后,分别使用BiLSTM进行编码提取得到相应的特征向量
Figure BDA00023876656300000419
Figure BDA00023876656300000420
公式如下:
Figure BDA00023876656300000421
Figure BDA00023876656300000422
特征向量池化处理:整合BiLSTM以及DGCNN得到的特征向量
Figure BDA00023876656300000423
Figure BDA0002387665630000051
Figure BDA0002387665630000052
进行最大池化操作得到
Figure BDA0002387665630000053
公式如下:
Figure BDA0002387665630000054
Figure BDA0002387665630000055
Figure BDA0002387665630000056
Figure BDA0002387665630000057
获取最终特征向量:针对q1,根据
Figure BDA0002387665630000058
求和得到最终输出的特征向量
Figure BDA0002387665630000059
公式如下:
Figure BDA00023876656300000510
针对q2,根据
Figure BDA00023876656300000511
求和得到最终输出的特征向量
Figure BDA00023876656300000512
公式如下:
Figure BDA00023876656300000513
获取关键特征嵌入模块的匹配度:通过编码处理分别得到文本q1以及文本q2的特征向量
Figure BDA00023876656300000514
进而计算q1,q2的最终特征向量间余弦相似度作为文本匹配度N,即关键特征嵌入模块的匹配度,公式如下:
Figure BDA00023876656300000515
更优地,所述构建联合多角度特征的深度智能文本匹配编码及计算模块具体为:
整合层次特征抽取模块和关键特征嵌入模块构成一个新的编码模块——联合多角度特征的深度智能文本匹配编码模块,整合层次特征抽取模块和关键特征嵌入模块分别求得的层次特征抽取模块的匹配度M和关键特征嵌入模块的匹配度N,得到最终的匹配度计算结果ypred,公式如下:
ypred=M+N;
当ypred≥0.5时,表示文本q1以及文本q2相匹配;当ypred<0.5时,表示文本q1以及文本q2不匹配。
更优地,所述训练文本匹配模型具体如下:
构建损失函数:使用正切函数作为损失函数,公式如下:
Figure BDA0002387665630000061
其中,ypred表示经过联合多角度特征编码处理后得到的匹配度计算结果;ytrue表示两个文本是否匹配的真实标签,其取值仅限于0或1;
优化训练模型:使用Adam作为优化算法,超参数均选择Keras中的默认值设置;在训练数据集上,对文本匹配模型进行优化训练。
作为优选,所述构建文本匹配知识库具体如下:
使用爬虫获取原始数据:在网上公共问答平台爬取问题集,得到原始相似句子知识库;或者使用网上公开的句子匹配数据集,作为原始相似句子知识库;
预处理原始数据:预处理原始相似句子知识库中的相似文本,对每个句子进行断字处理,得到文本匹配知识库;
所述构建文本匹配模型的训练数据集具体如下:
构建训练正例:将句子与其所对应的标准句子进行组合,构建正例,形式化为:(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。
一种联合多角度特征的深度智能文本匹配装置,该装置包括,
文本匹配知识库构建单元,用于使用爬虫程序,在网上公共问答平台爬取问题集,得到原始相似句子知识库;或者,使用网上公开的文本匹配数据集,作为原始相似句子知识库;再对原始相似句子知识库进行预处理,构建用于模型训练的文本匹配知识库;
训练数据集生成单元,用于根据文本匹配知识库中的句子来构建训练正例数据和训练负例数据,并基于正例数据与负例数据来构建最终的训练数据集;
文本匹配模型构建单元,用于构建文本匹配模型;文本匹配模型构建单元包括,
字符映射转换表构建模块,用于对文本匹配知识库中的每个句子按字符进行切分,并将每个字符依次存入一个列表中,从而得到一个字符表,随后以数字1为起始,按照每个字符被录入字符表的顺序依次递增排序,形成字符映射转换表;其中,字符映射转换表中每个字符均被映射为唯一的数字标识;字符映射转换表构建模块使用Word2Vec训练字符向量模型,得到字符的字向量矩阵权重;
输入层构建模块,用于根据字符映射转换表,将输入句子中的每个字符转化为相应的数字标识,从而完成数据的输入,即分别获取q1与q2,将其形式化为:(q1、q2);
字符向量映射层构建模块,用于加载预训练好的字符向量权重,将输入句子中的字符转换为字向量形式,构成完整的句子向量表示,该处理根据字符的数字标识查找字向量矩阵而完成;
层次特征抽取模块,用于使用三层ONLSTM进行编码,抽取每一层的ONLSTM输出作为层级特征向量,同时计算q1,q2每层的余弦相似度;再整合三层相似度,得到层次特征抽取模块的匹配度;
关键特征嵌入模块,用于使用LSTM抽取特征向量,再使用BiLSTM以及两种不同卷积核的膨胀门卷积神经网络DGCNN获取文本语义特征(引入Mask来消除padding过程中引入0带来的影响,得到有意义的文本特征);最终合BiLSTM以及膨胀门卷积得到的特征向量,作为该单元最终特征向量表示;再计算q1,q2的最终特征向量间余弦相似度,得到关键特征嵌入模块的匹配度;
联合多角度特征的深度智能文本匹配编码及计算模块,用于融合层次特征抽取模块的匹配度和关键特征嵌入模块的匹配度,得到最终的匹配度计算结果,并判定两个输入句子是否匹配;
文本匹配模型训练单元,用于构建模型训练过程中所需要的损失函数,并完成模型的优化训练。
作为优选,所述文本匹配知识库构建单元包括,
爬取原始数据模块,用于在网上公共问答平台爬取问题集,构建原始相似句子知识库;或者,使用网上公开的文本匹配数据集,构建原始相似句子知识库;
原始数据处理模块,用于将原始相似句子知识库中的句子进行断字处理,构建用于模型训练的文本匹配知识库;
所述训练数据集生成单元包括,
训练正例数据构建模块,用于将文本匹配知识库中文本匹配的句子进行组合,并对其添加匹配标签1,构建为训练正例数据;
训练负例数据构建模块,用于从文本匹配知识库中选取一个句子q1,再从文本匹配知识库中随机选择一个与句子q1语义不匹配的句子q2,将q1与q2进行组合,并对其添加匹配标签0,构建为训练负例数据;
训练数据集构建模块,用于将所有的训练正例数据与训练负例数据组合在一起,并打乱其顺序,构建最终的训练数据集;
所述文本匹配模型训练单元包括,
损失函数构建模块,用于计算句子1和句子2间文本匹配度的误差;
模型优化训练单元,用于训练并调整模型训练中的参数,从而减小模型训练过程中预测的句子1与句子2间匹配度与真实匹配度之间的误差。
一种存储介质,其中存储有多条指令,所述指令由处理器加载,执行上述的联合多角度特征的深度智能文本匹配方法的步骤。
一种电子设备,所述电子设备包括:
上述的存储介质;以及
处理器,用于执行所述存储介质中的指令。
本发明的联合多角度特征的深度智能文本匹配方法和装置具有以下优点:
(一)本发明对句子进行层次特征抽取,同时联合关键特征嵌入;可以从多角度获取文本语义特征,缓解编码过程中的语义特征缺失现象;
(二)本发明提出的层次特征抽取模块能够捕捉不同编码层的文本语义特征,联合多层文本特征匹配方法,能够更加有效地避免因文本编码过程中出现的语义缺失而导致的匹配不精确现象;
(三)本发明提出的关键特征抽取模块,引入mask来消除padding过程中填充0带来的负面影响,将整个文本中的关键特征均保留下来,得到更有意义的文本特征;能够利用深度编码模型有效地捕捉句子中的深层语义特征,从而提高文本表征的全面性和准确性;
(四)本发明整合层次特征抽取模块和关键特征抽取模块,联合这两个模块的优势,提高文本匹配的准确性。
(五)本发明提出了一种新型损失函数——正切损失函数,针对预测值接近真实值的情况给予较小的惩罚,同时针对二者差距较大的情况给予较大的惩罚,进一步提高文本匹配模型的效果,更好地优化模型;
(六)本发明实现了对不同编码层次语义特征的提取,并实现关键特征抽取,并针对损失函数进行改进,可以有效提高模型在文本匹配中的准确性。
附图说明
下面结合附图对本发明进一步说明。
附图1为联合多角度特征的深度智能文本匹配方法的流程框图;
附图2为构建文本匹配知识库的流程框图;
附图3为构建训练数据集的流程框图;
附图4为构建文本匹配模型的流程框图;
附图5为训练文本匹配模型的流程框图;
附图6为联合多角度特征的深度智能文本匹配装置的结构框图;
附图7为层次特征抽取模块的框架示意图;
附图8为关键特征嵌入模块的框架示意图;
附图9为联合多角度特征的深度智能文本匹配编码及计算模块的框架示意图;
图10为交叉熵损失与正切损失对比示意图。
其中,附图7中ONLSTM全名为Ordered neurons LSTM,又称为有序神经元LSTM,是长短时记忆模型LSTM的变种;这种LSTM内部的神经元是经过特定排序的,从而能够表达更丰富的信息;ONLSTM将神经元经过特定排序是为了将层级结构(树结构)整合到LSTM中去,从而允许LSTM能自动学习到层级结构信息;ONLSTM模型的出处为:Shen,Yikang,ShawnTan,Alessandro Sordoni,and Aaron Courville."Ordered neurons:Integrating treestructures into recurrent neural networks."ICLR 2019;
附图8中DGCNN:全名为Dilate Gated Convolutional Neural Network,又称为膨胀门卷积神经网络。该模型融合了两种新的卷积用法,即:膨胀卷积、门卷积。DGCNN模型的出处为:https://spaces.ac.cn/archives/5409;
附图10中当真实值为0时,不同预测值的交叉熵损失和正切损失;当真实值为1时,不同预测值的交叉熵损失和正切损失。
具体实施方式
参照说明书附图和具体实施例对本发明的一种联合多角度特征的深度智能文本匹配方法和装置作以下详细地说明。
实施例1:
如附图1所示,本发明的联合多角度特征的深度智能文本匹配方法,该方法步骤如下:
S1、构建文本匹配知识库:在网上公共问答平台爬取问题集或者使用网上公开的文本匹配数据集,得到原始相似句子知识库,并对原始相似句子知识库进行预处理得到文本匹配知识库;如附图2所示,具体步骤如下:
S101、使用爬虫获取原始数据:在网上公共问答平台爬取问题集,得到原始相似句子知识库;或者使用网上公开的句子匹配数据集,作为原始相似句子知识库;
互联网上的公共问答分享平台中有着大量的问答数据及相似问题的推荐,这些都是面向大众开放的。因此本发明可以根据问答平台的特点,设计相应的爬虫程序,以此来获取语义相似的问题集合,从而构建原始相似句子知识库。
举例:银行问答平台中的相似文本示例,表示如下:
句子1 还款期限可以延后一天吗?
句子2 是否可以申请延期一天还款?
或者,使用网上公开的文本匹配数据集,作为原始知识库。比如BQ数据集【J.Chen,Q.Chen,X.Liu,H.Yang,D.Lu,B.Tang,The bq corpus:A large-scale domain-specificChinese corpus for sentence semantic equivalence identification,EMNLP2018.】,该数据集包含网上银行服务日志中的120000个问题对,是一种专门用于文本匹配任务的中文数据集。BQ数据集是目前银行领域最大的、经人工注释过的中文数据集,对中文问题文本匹配研究很有用,而且该数据集是公开可用的。
S102、预处理原始数据:预处理原始相似句子知识库中的相似文本,对每个句子进行断字处理,得到文本匹配知识库;
对步骤S101中获得的相似文本进行预处理,得到文本匹配知识库;本示例以中文里的每个字作为基本单位,对每条数据进行断字操作:每个汉字之间用空格进行切分,并且保留每条数据中包括数字、标点以及特殊字符在内的所有内容。为了避免语义信息的丢失,本发明保留了句子中的所有停用词。
举例:以步骤S101中展示的句子1“还款期限可以延后一天吗?”为例,对其进行断字处理后得到“还款期限可以延后一天吗?”。
S2、构建文本匹配模型的训练数据集:对于每一个句子,在文本匹配知识库中至少有一个与该句子对应的标准句子,该句子与其对应的标准句子组合构建训练正例;将除与该句子对应的标准句子以外的句子与该句子自由组合构建训练负例;用户根据文本匹配知识库大小来设定负例的数量,从而构建训练数据集;如附图3所示,具体如下:
S201、构建训练正例:将句子与其所对应的标准句子进行组合,构建正例,形式化为:(q1,q2,1);其中,q1表示句子1,q2表示句子2,1表示句子1和句子2相匹配,是正例;
举例:对步骤S101中展示的句子1和句子2,经过步骤S102断字处理后,构建的正例为:
(“还款期限可以延后一天吗?”,“是否可以申请延期一天还款?”,1)。
S202、构建训练负例:选中一个句子q1,再从文本匹配知识库中随机选择一个与句子q1不匹配的句子q2,将q1与q2进行组合,构建负例,形式化为:(q1,q2,0);其中,q1表示句子1,q2表示句子2,0表示句子1和句子2不匹配,是负例;
举例:根据步骤S201中的所展示的示例数据,本发明仍然使用原问句作为s1,再从文本匹配知识库中随机选择一个与句子q1语义不匹配的句子q2,将q1与q2进行组合,构建的负例为:
(“还款期限可以延后一天吗?”,“为什么银行客户端登陆出现网络错误?”,0)。
S203、构建训练数据集:将经过步骤S201和步骤S202获得的全部的正例样本文本和负例样本文本进行组合,并打乱其顺序,构建最终的训练数据集;其中,训练正例数据和训练负例数据均包含三个维度,即q1、q2、0或1。
S3、构建文本匹配模型:如附图4所示,依次构建字符映射转换表、构建输入层、构建字符向量映射层、构建层次特征抽取模块、构建关键特征嵌入模块、构建联合多角度特征的深度智能文本匹配编码及计算模块;具体如下:
S301、构建字符映射转换表具体如下:
S30101、字符表通过预处理后得到的文本匹配知识库来构建;
S30102、字符表构建完成后,表中每个字符均被映射为唯一的数字标识,映射规则为:以数字1为起始,随后按照每个字符被录入字符表的顺序依次递增排序,从而形成所需的字符映射转换表;
举例:以步骤S102断字后的内容,“还款期限可以延后一天吗?”,构建字符表及字符映射转换表如下:
字符
映射 1 2 3 4 5 6 7 8 9
字符
映射 10 11 12
S30103、使用Word2Vec训练字符向量模型,得到各字符的字向量矩阵权重embedding_matrix;
举例说明:在Keras中,对于上面描述的代码实现如下所示:
w2v_model=genism.models.Word2Vec(w2v_corpus,size=embedding_dim,window=5,min_count=1,sg=1,workers=4,seed=1234,iter=25)
embedding_matrix=numpy.zeros([len(tokenizer.word_index)+1,embedding_dim])
tokenizer=keras.preprocessing.text.Tokenizer(num_words=len(word_set))
for word,idx in tokenizer.word_index.items():
embedding_matrix[idx,:]=w2v_model.wv[word];
其中,w2v_corpus为训练语料,即文本匹配知识库中的所有数据;embedding_dim为字向量维度,在本发明中embedding_dim设置为300,word_set为词表。
S302、构建输入层具体为:输入层中包括两个输入;从输入的训练数据集样例中分别获取q1、q2,将其形式化为:(q1,q2);对于输入句子中的每个字符,均按照字符映射转换表将字符转化为相应的数字标识;
举例说明:本发明使用步骤S201中展示的文本作为样例,以此组成一条输入数据。其结果如下所示:
(“还款期限可以延后一天吗?”,“是否可以申请延期一天还款?”)
根据词表中的映射将上述的输入数据转换为数值表示(假定出现在句子2中但没有出现在句子1中的字的映射分别为“是”:13,“否”:14,“申”:15,“请”:16,“延”:17),结果如下:
(“1,2,3,4,5,6,7,8,9,10,11,12”,“13,14,5,6,15,16,17,3,9,10,1,2”)。
S303、构建字符向量映射层具体为:通过加载步骤S301中字向量矩阵权重初始化当前层的权重参数;针对输入文本q1和q2,得到其文本向量Q1 Emd、Q2 Emd;其中,文本匹配知识库中每一个句子均通过字符向量映射的方式,将文本信息转化为向量形式;本发明中设置embedding_dim为300。
举例说明:在Keras中,对于上面描述的代码实现如下所示:
embedding_layer=Embedding(embedding_matrix.shape[0],
embedding_dim,
weights=[embedding_matrix],
input_length=input_dim,
trainable=False)
其中,embedding_matrix是步骤S301中训练所得的字向量矩阵权重,embedding_matrix.shape[0]是字向量矩阵的词汇表(词典)的大小,embedding_dim是输出的字向量的维度,input_length是输入序列的长度。
相应的文本q1和q2,经过Embedding层编码后得到相应的文本向量Q1 Emd、Q2Emd。
S304、构建层次特征抽取模块具体为:如附图7所示,以文本向量Q1 Emd、Q2 Emd作为输入;对两个文本向量分别采用三层ONLSTM(有序神经元LSTM)进行编码,抽取其中每一层的ONLSTM特征输出计算二者的余弦相似度,得到三个余弦相度;将三个余弦相度相乘得到两个文本的匹配度并输出,即为层次特征抽取模块的匹配度,具体公式如下:
Figure BDA0002387665630000131
Figure BDA0002387665630000132
Figure BDA0002387665630000133
Figure BDA0002387665630000134
Figure BDA0002387665630000135
Figure BDA0002387665630000141
Figure BDA0002387665630000142
Figure BDA0002387665630000143
Figure BDA0002387665630000144
Figure BDA0002387665630000145
其中,i表示相应字符向量在句子中的相对位置;pi为文本q1中每个字符的相应向量表示;p1i为文本q1经过一次ONLSTM特征提取后,输出特征向量中每个字符的相应向量表示;p2i为文本q1经过两次ONLSTM特征提取后,输出特征向量中每个字符的相应向量表示;qi为文本q2中每个字符的相应向量表示;q1i为文本q2经过一次ONLSTM特征提取后,输出特征向量中每个字符的相应向量表示,q2i为文本q2中经过两次ONLSTM特征提取后输出特征向量每个字符的相应向量表示;
Figure BDA0002387665630000146
表示针对文本q1使用ONLSTM提取的三层特征向量;
Figure BDA0002387665630000147
表示针对文本q2使用ONLSTM提取的三层特征向量;
Figure BDA0002387665630000148
表示文本q1以及文本q2三个层次特征向量的余弦相似度;M表示整合文本q1以及文本q2不同层次余弦相似度得到的层次特征抽取模块的匹配度,M通过
Figure BDA0002387665630000149
按位相乘而得到。
经实验验证,本模块的编码维度设置为300时,可获得最优结果。
S305、构建关键特征嵌入模块,如图8所示,以文本向量Q1 Emd、Q2 Emd作为输入;首先使用LSTM抽取特征向量;使用BiLSTM以及两种不同卷积核的膨胀门卷积DGCNN获取文本语义特征;整合BiLSTM以及DGCNN得到的特征向量,作为该模块最终特征向量表示;最终计算q1,q2的最终特征向量间余弦相似度,作为该模块文本匹配度,即关键特征嵌入模块的匹配度;具体如下:
S30501、LSTM特征提取:以文本向量Q1 Emd、Q2 Emd作为输入,使用LSTM进行特征提取得到特征向量,具体公式如下:
Figure BDA0002387665630000151
Figure BDA0002387665630000152
其中,
Figure BDA0002387665630000153
表示q1采用LSTM编码后得到的特征向量;
Figure BDA0002387665630000154
表示q2采用LSTM编码后得到的特征向量;i表示相应字符向量在句子中的相对位置;pi为文本q1中每个字符的相应向量表示;qi为文本q2中每个字符的相应向量表示;
S30502、DGCNN特征提取:文本向量Q1 Emd、Q2 Emd经过LSTM编码后,使用两种不同卷积核的膨胀门卷积神经网络DGCNN进一步进行特征提取;本发明引入Mask来消除padding过程中填充0带来的负面影响,得到有意义的文本特征(因为神经网络的输入需要一个规整的张量,而文本通常都是不定长的;这就导致需要以裁剪或者填充的方式使得所有文本变成定长的;在填充过程中,本发明会使用0作为padding符号)。本发明利用Mask过滤掉无用的填充符号,同时将整个文本中的关键特征均保留下来,再通过求和操作整合两个膨胀们卷积的输出,具体公式如下:
Figure BDA00023876656300001515
Figure BDA0002387665630000155
Figure BDA0002387665630000156
Figure BDA0002387665630000157
Figure BDA0002387665630000158
Figure BDA0002387665630000159
其中,
Figure BDA00023876656300001510
Figure BDA00023876656300001511
表示两个不同卷积核的膨胀门卷积神经网络DGCNN提取文本q1得到的向量输出;
Figure BDA00023876656300001512
表示
Figure BDA00023876656300001513
Figure BDA00023876656300001514
整合后的向量输出;
Figure BDA0002387665630000161
Figure BDA0002387665630000162
表示两个不同卷积核的膨胀门卷积神经网络DGCNN提取文本q2得到的向量输出;
Figure BDA0002387665630000163
表示
Figure BDA0002387665630000164
Figure BDA0002387665630000165
整合后的向量输出;
S30503、BiLSTM特征提取:文本向量Q1 Emd、Q2 Emd经过LSTM编码后,分别使用BiLSTM进行编码提取得到相应的特征向量
Figure BDA0002387665630000166
Figure BDA0002387665630000167
公式如下:
Figure BDA0002387665630000168
Figure BDA0002387665630000169
S30504、特征向量池化处理:整合BiLSTM以及DGCNN得到的特征向量
Figure BDA00023876656300001610
Figure BDA00023876656300001611
Figure BDA00023876656300001612
进行最大池化操作得到
Figure BDA00023876656300001613
公式如下:
Figure BDA00023876656300001614
Figure BDA00023876656300001615
Figure BDA00023876656300001616
Figure BDA00023876656300001617
S30505、获取最终特征向量:针对q1,根据
Figure BDA00023876656300001618
求和得到最终输出的特征向量
Figure BDA00023876656300001619
公式如下:
Figure BDA00023876656300001620
针对q2,根据
Figure BDA00023876656300001621
求和得到最终输出的特征向量
Figure BDA00023876656300001622
公式如下:
Figure BDA00023876656300001623
S30506、获取关键特征嵌入模块的匹配度:通过编码处理分别得到文本q1以及文本q2的特征向量
Figure BDA00023876656300001624
进而计算q1,q2的最终特征向量间余弦相似度作为文本匹配度N,即关键特征嵌入模块的匹配度,公式如下:
Figure BDA00023876656300001625
S306、构建联合多角度特征的深度智能文本匹配编码及计算模块具体为:
如附图9所示,经过步骤S304以及步骤S305分别构造了层次特征提取模块以及关键特征嵌入模块,整合层次特征抽取模块和关键特征嵌入模块构成一个新的编码模块——联合多角度特征的深度智能文本匹配编码模块,整合层次特征抽取模块和关键特征嵌入模块分别求得的层次特征抽取模块的匹配度M和关键特征嵌入模块的匹配度N,得到最终的匹配度计算结果ypred,公式如下:
ypred=M+N;
当ypred≥0.5时,表示文本q1以及文本q2相匹配;当ypred<0.5时,表示文本q1以及文本q2不匹配。
S4、训练文本匹配模型:在步骤S2所得的训练数据集上对步骤S3构建的文本匹配模型进行训练,如附图5所示,具体如下:
S401、构建损失函数:使用正切函数作为损失函数,公式如下:
Figure BDA0002387665630000171
其中,ypred表示经过联合多角度特征编码处理后得到的匹配度计算结果;ytrue表示两个文本是否匹配的真实标签,其取值仅限于0或1;
附图10中(a)和(b)比较了正切损失函数和交叉熵损失函数;交叉熵损失函数具有以下特点:预测值和真实值之间的差越小,损失值越小,即当前模型的惩罚越小;预测值和真实值之间的差异越大,损失值越大,即当前模型的惩罚越大。惩罚是非线性增长,这与指数增长类似。
正切损失函数与交叉熵损失函数相比:当预测值和真实值之间的差异较小时,与交叉熵损失函数相比,正切损失函数可以得到较小的惩罚。这意味着正切损失函数对模型的预测越好,惩罚就越合理;另一方面,当预测值大大偏离真实值时,正切损失函数也给出了非线性增长的惩罚,但没有突然跳变现象。基于上述优点,本发明选择使用正切损失作为模型损失函数。
S402、优化训练模型:使用Adam作为优化算法,超参数均选择Keras中的默认值设置;在训练数据集上,对文本匹配模型进行优化训练。
举例说明:上面描述的优化算法及其设置在Keras中使用代码表示为:
optim=keras.optimizers.Aadm();
model=keras.models.Model([q1,q2],[ypred])
model.compile(loss=Lloss,optimizer=optim,metrics=['accuracy',precision,recall,f1_score])
其中,损失函数loss选择本发明自定义的正切损失Lloss;优化算法optimizer选择前文定义好的optim;q1以及q2作为模型输入,ypred为模型输出;评价指标metrics,本发明选取准确率accuracy,精确率precision,召回率recall,基于召回率和精确率计算的f1_score。
接下来,介绍相关评价指标:
Figure BDA0002387665630000181
accuracy=(TP+TN)/(TP+TN+FN+FP)
precision=TP/(TP+FP)
recall=TP/(TP+FN)
f1_score=2*precision*recall/(precision+recall)
本发明的模型在BQ数据集上取得了优于当前先进模型的结果,实验结果的对比具体如下表所示:
Figure BDA0002387665630000182
本发明和现有模型进行了比较,实验结果显示本发明方法有了很大的提升。其中,前三行是现有技术的模型的实验结果【前四行数据来自:J.Chen,Q.Chen,X.Liu,H.Yang,D.Lu,B.Tang,The bq corpus:A large-scale domain-specific chinese corpus forsentence semantic equivalence identification,EMNLP2018.第五行数据使用DFF模型,模型来自:Xu Zhang,Wenpeng Lu,Fangfang Li,Xueping Peng,Ruoyu Zhang.DeepFeature Fusion Model for Sentence Semantic Matching.CMC-Computers Materials&Continua,Vol.61,No.2,pp.601-616,2019.】,最后一行是本发明模型的实验结果,由此可知本发明比现有模型有了较大提升。
实施例2:
如附图6所示,本发明的联合多角度特征的深度智能文本匹配装置,该装置包括,
文本匹配知识库构建单元,用于使用爬虫程序,在网上公共问答平台爬取问题集,得到原始相似句子知识库;或者,使用网上公开的文本匹配数据集,作为原始相似句子知识库;再对原始相似句子知识库进行预处理,构建用于模型训练的文本匹配知识库;文本匹配知识库构建单元包括,
爬取原始数据模块,用于在网上公共问答平台爬取问题集,构建原始相似句子知识库;
原始数据处理模块,用于将原始相似句子知识库中的句子进行断字处理,构建用于模型训练的文本匹配知识库;
训练数据集生成单元,用于根据文本匹配知识库中的句子来构建训练正例数据和训练负例数据,并基于正例数据与负例数据来构建最终的训练数据集;训练数据集生成单元包括,
训练正例数据构建模块,用于将文本匹配知识库中文本匹配的句子进行组合,并对其添加匹配标签1,构建为训练正例数据;
训练负例数据构建模块,用于从文本匹配知识库中选取一个句子q1,再从文本匹配知识库中随机选择一个与句子q1语义不匹配的句子q2,将q1与q2进行组合,并对其添加匹配标签0,构建为训练负例数据;
训练数据集构建模块,用于将所有的训练正例数据与训练负例数据组合在一起,并打乱其顺序,构建最终的训练数据集;
文本匹配模型构建单元,用于构建文本匹配模型;文本匹配模型构建单元包括,
字符映射转换表构建模块,用于对文本匹配知识库中的每个句子按字符进行切分,并将每个字符依次存入一个列表中,从而得到一个字符表,随后以数字1为起始,按照每个字符被录入字符表的顺序依次递增排序,形成字符映射转换表;其中,字符映射转换表中每个字符均被映射为唯一的数字标识;字符映射转换表构建模块使用Word2Vec训练字符向量模型,得到字符的字向量矩阵权重;
输入层构建模块,用于根据字符映射转换表,将输入句子中的每个字符转化为相应的数字标识,从而完成数据的输入,即分别获取q1与q2,将其形式化为:(q1、q2);
字符向量映射层构建模块,用于加载预训练好的字符向量权重,将输入句子中的字符转换为字向量形式,构成完整的句子向量表示,该处理可根据字符的数字标识查找字向量矩阵而完成;
层次特征抽取模块,用于使用三层ONLSTM进行编码,抽取每一层的ONLSTM输出作为层级特征向量,同时计算q1,q2每层的余弦相似度;再整合三层相似度,得到层次特征抽取模块的匹配度;
关键特征嵌入模块,用于使用LSTM抽取特征向量,再使用BiLSTM以及两种不同卷积核的膨胀门卷积神经网络DGCNN获取文本语义特征(引入Mask来消除padding过程中引入0带来的影响,得到有意义的文本特征);最终合BiLSTM以及膨胀门卷积得到的特征向量,作为该单元最终特征向量表示;再计算q1,q2的最终特征向量间余弦相似度,得到关键特征嵌入模块的匹配度;
联合多角度特征的深度智能文本匹配编码及计算模块,用于融合层次特征抽取模块的匹配度和关键特征嵌入模块的匹配度,得到最终的匹配度计算结果,并判定两个输入句子是否匹配;
文本匹配模型训练单元,用于构建模型训练过程中所需要的损失函数与优化函数,并完成模型的训练;文本匹配模型训练单元包括,
损失函数构建模块,用于计算句子1和句子2间文本匹配度的误差;
模型优化训练单元,用于训练并调整模型训练中的参数,从而减小模型训练过程中预测的句子1与句子2间匹配度与真实匹配度之间的误差。
实施例3:
本发明的存储介质,其中存储有多条指令,指令由处理器加载,执行实施例1的联合多角度特征的深度智能文本匹配方法的步骤。
实施例4:
本发明的电子设备,电子设备包括:
实施例3的存储介质;以及
处理器,用于执行实施例3存储介质中的指令。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (10)

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特征输出计算二者的余弦相似度,得到三个余弦相度;将三个余弦相度相乘得到两个文本的匹配度并输出,即为层次特征抽取模块的匹配度,具体公式如下:
Figure FDA0003571929100000021
Figure FDA0003571929100000022
Figure FDA0003571929100000023
Figure FDA0003571929100000024
Figure FDA0003571929100000025
Figure FDA0003571929100000026
Figure FDA0003571929100000027
Figure FDA0003571929100000028
Figure FDA0003571929100000031
Figure FDA0003571929100000032
其中,i表示相应字符向量在句子中的相对位置;pi为句子q1中每个字符的相应向量表示;p1i为句子q1经过一次ONLSTM特征提取后,输出特征向量中每个字符的相应向量表示;p2i为句子q1经过两次ONLSTM特征提取后,输出特征向量中每个字符的相应向量表示;qi为句子q2中每个字符的相应向量表示;q1i为句子q2经过一次ONLSTM特征提取后,输出特征向量中每个字符的相应向量表示,q2i为句子q2中经过两次ONLSTM特征提取后输出特征向量每个字符的相应向量表示;
Figure FDA0003571929100000033
表示针对句子q1使用ONLSTM提取的三层特征向量;
Figure FDA0003571929100000034
表示针对句子q2使用ONLSTM提取的三层特征向量;
Figure FDA0003571929100000035
表示句子q1以及句子q2三个层次特征向量的余弦相似度;M表示整合句子q1以及句子q2不同层次余弦相似度得到的层次特征抽取模块的匹配度,M通过
Figure FDA0003571929100000036
按位相乘而得到。
3.根据权利要求2所述的联合多角度特征的深度智能文本匹配方法,其特征在于,所述构建关键特征嵌入模块具体如下:
LSTM特征提取:以文本向量Q1 Emd、Q2 Emd作为输入,使用LSTM进行特征提取得到特征向量,具体公式如下:
Figure FDA0003571929100000037
Figure FDA0003571929100000038
其中,
Figure FDA0003571929100000039
表示q1采用LSTM编码后得到的特征向量;
Figure FDA00035719291000000310
表示q2采用LSTM编码后得到的特征向量;i表示相应字符向量在句子中的相对位置;pi为文本q1中每个字符的相应向量表示;qi为句子q2中每个字符的相应向量表示;
DGCNN特征提取:文本向量Q1 Emd、Q2 Emd经过LSTM编码后,使用两种不同卷积核的膨胀门卷积神经网络DGCNN进一步进行特征提取;利用Mask过滤掉无用的填充符号,同时将整个文本中的关键特征均保留下来;通过求和操作整合两个膨胀们卷积的输出,具体公式如下:
Figure FDA0003571929100000041
Figure FDA0003571929100000042
Figure FDA0003571929100000043
Figure FDA0003571929100000044
Figure FDA0003571929100000045
Figure FDA0003571929100000046
其中,
Figure FDA0003571929100000047
Figure FDA0003571929100000048
表示两个不同卷积核的膨胀门卷积神经网络DGCNN提取句子q1得到的向量输出;
Figure FDA0003571929100000049
表示
Figure FDA00035719291000000410
Figure FDA00035719291000000411
整合后的向量输出;
Figure FDA00035719291000000412
Figure FDA00035719291000000413
表示两个不同卷积核的膨胀门卷积神经网络DGCNN提取句子q2得到的向量输出;
Figure FDA00035719291000000414
表示
Figure FDA00035719291000000415
Figure FDA00035719291000000416
整合后的向量输出;
BiLSTM特征提取:文本向量Q1 Emd、Q2 Emd经过LSTM编码后,分别使用BiLSTM进行编码提取得到相应的特征向量
Figure FDA00035719291000000417
Figure FDA00035719291000000418
公式如下:
Figure FDA00035719291000000419
Figure FDA00035719291000000420
特征向量池化处理:整合BiLSTM以及DGCNN得到的特征向量
Figure FDA00035719291000000421
Figure FDA00035719291000000422
Figure FDA00035719291000000423
进行最大池化操作得到
Figure FDA00035719291000000424
公式如下:
Figure FDA00035719291000000425
Figure FDA00035719291000000426
Figure FDA00035719291000000427
Figure FDA00035719291000000428
获取最终特征向量:针对q1,根据
Figure FDA0003571929100000051
求和得到最终输出的特征向量
Figure FDA0003571929100000052
公式如下:
Figure FDA0003571929100000053
针对q2,根据
Figure FDA0003571929100000054
求和得到最终输出的特征向量
Figure FDA0003571929100000055
公式如下:
Figure FDA0003571929100000056
获取关键特征嵌入模块的匹配度:通过编码处理分别得到句子q1以及句子q2的特征向量
Figure FDA0003571929100000057
进而计算q1,q2的最终特征向量间余弦相似度作为文本匹配度N,即关键特征嵌入模块的匹配度,公式如下:
Figure FDA0003571929100000058
4.根据权利要求3所述的联合多角度特征的深度智能文本匹配方法,其特征在于,所述构建联合多角度特征的深度智能文本匹配编码及计算模块具体为:
整合层次特征抽取模块和关键特征嵌入模块构成一个新的编码模块——联合多角度特征的深度智能文本匹配编码模块,整合层次特征抽取模块和关键特征嵌入模块分别求得的层次特征抽取模块的匹配度M和关键特征嵌入模块的匹配度N,得到最终的匹配度计算结果ypred,公式如下:
ypred=M+N;
当ypred≥0.5时,表示句子q1以及句子q2相匹配;当ypred<0.5时,表示句子q1以及句子q2不匹配。
5.根据权利要求4所述的联合多角度特征的深度智能文本匹配方法,其特征在于,所述训练文本匹配模型具体如下:
构建损失函数:使用正切函数作为损失函数,公式如下:
Figure FDA0003571929100000059
其中,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所述的存储介质;以及
处理器,用于执行所述存储介质中的指令。
CN202010103504.1A 2020-02-20 2020-02-20 一种联合多角度特征的深度智能文本匹配方法和装置 Active CN111339249B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010103504.1A CN111339249B (zh) 2020-02-20 2020-02-20 一种联合多角度特征的深度智能文本匹配方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010103504.1A CN111339249B (zh) 2020-02-20 2020-02-20 一种联合多角度特征的深度智能文本匹配方法和装置

Publications (2)

Publication Number Publication Date
CN111339249A CN111339249A (zh) 2020-06-26
CN111339249B true CN111339249B (zh) 2022-05-24

Family

ID=71185380

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010103504.1A Active CN111339249B (zh) 2020-02-20 2020-02-20 一种联合多角度特征的深度智能文本匹配方法和装置

Country Status (1)

Country Link
CN (1) CN111339249B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112000772B (zh) * 2020-08-24 2022-09-06 齐鲁工业大学 面向智能问答基于语义特征立方体的句子对语义匹配方法
CN112101030B (zh) * 2020-08-24 2024-01-26 沈阳东软智能医疗科技研究院有限公司 建立术语映射模型、实现标准词映射的方法、装置及设备
CN112347791B (zh) * 2020-11-06 2023-10-13 北京奇艺世纪科技有限公司 文本匹配模型的构建方法、系统、计算机设备及存储介质
CN112463924B (zh) * 2020-11-27 2022-07-05 齐鲁工业大学 面向智能问答基于内部相关性编码的文本意图匹配方法
CN116028596B (zh) * 2023-03-27 2023-08-18 云筑信息科技(成都)有限公司 一种实体匹配分块的实现方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109766277A (zh) * 2019-01-02 2019-05-17 北京航空航天大学 一种基于迁移学习与dnn的软件故障诊断方法
CN110032635A (zh) * 2019-04-22 2019-07-19 齐鲁工业大学 一种基于深度特征融合神经网络的问题对匹配方法和装置
CN110321419A (zh) * 2019-06-28 2019-10-11 神思电子技术股份有限公司 一种融合深度表示与交互模型的问答匹配方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7675435B2 (en) * 2006-08-31 2010-03-09 Microsoft Corporation Smart filtering with multiple simultaneous keyboard inputs
CN110083692B (zh) * 2019-04-22 2023-01-24 齐鲁工业大学 一种金融知识问答的文本交互匹配方法及装置
CN110765755A (zh) * 2019-10-28 2020-02-07 桂林电子科技大学 一种基于双重选择门的语义相似度特征提取方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109766277A (zh) * 2019-01-02 2019-05-17 北京航空航天大学 一种基于迁移学习与dnn的软件故障诊断方法
CN110032635A (zh) * 2019-04-22 2019-07-19 齐鲁工业大学 一种基于深度特征融合神经网络的问题对匹配方法和装置
CN110321419A (zh) * 2019-06-28 2019-10-11 神思电子技术股份有限公司 一种融合深度表示与交互模型的问答匹配方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Deep Feature Fusion Model for Sentence Semantic Matching;Xu Zhang, Wenpeng Lu等;《Computers, Materials & Continua》;20190131;第61卷(第2期);全文 *
MGSC:一种多粒度语义交叉的短文本语义匹配模型;吴少洪、彭敦陆等;《小型微型计算机系统》;20190614(第6期);全文 *

Also Published As

Publication number Publication date
CN111339249A (zh) 2020-06-26

Similar Documents

Publication Publication Date Title
CN111310438B (zh) 基于多粒度融合模型的中文句子语义智能匹配方法及装置
CN111339249B (zh) 一种联合多角度特征的深度智能文本匹配方法和装置
CN111325028B (zh) 一种基于深度分层编码的智能语义匹配方法和装置
CN111159407B (zh) 训练实体识别和关系分类模型的方法、装置、设备及介质
CN107516110B (zh) 一种基于集成卷积编码的医疗问答语义聚类方法
CN112667818B (zh) 融合gcn与多粒度注意力的用户评论情感分析方法及系统
CN111310439B (zh) 一种基于深度特征变维机制的智能语义匹配方法和装置
CN111753189A (zh) 一种少样本跨模态哈希检索共同表征学习方法
WO2017193685A1 (zh) 社交网络中数据的处理方法和装置
CN111581956B (zh) 基于bert模型和k近邻的敏感信息识别方法及系统
CN112580328A (zh) 事件信息的抽取方法及装置、存储介质、电子设备
CN110580281A (zh) 一种基于语义相似度的相似案件匹配方法
Estevez-Velarde et al. AutoML strategy based on grammatical evolution: A case study about knowledge discovery from text
CN116245107B (zh) 电力审计文本实体识别方法、装置、设备及存储介质
CN113380360B (zh) 一种基于多模态病历图的相似病历检索方法及系统
CN110222192A (zh) 语料库建立方法及装置
CN115757804A (zh) 一种基于多层路径感知的知识图谱外推方法及系统
Manik et al. Out-of-Scope Intent Detection on A Knowledge-Based Chatbot.
CN115456421A (zh) 工单的分派方法及装置、处理器和电子设备
CN114496231B (zh) 基于知识图谱的体质识别方法、装置、设备和存储介质
CN117709358A (zh) 保险智能问答系统的对话应答方法、装置、设备和介质
CN118446182A (zh) 基于同义词网络和反向引用对比学习的icd自动编码方法和装置
Liu et al. Resume parsing based on multi-label classification using neural network models
Ma Artificial Intelligence‐Assisted Decision‐Making Method for Legal Judgment Based on Deep Neural Network
CN113761192A (zh) 文本处理方法、文本处理装置及文本处理设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20221222

Address after: Room 606-609, Compound Office Complex Building, No. 757, Dongfeng East Road, Yuexiu District, Guangzhou, Guangdong Province, 510699

Patentee after: China Southern Power Grid Internet Service Co.,Ltd.

Address before: Room 02A-084, Building C (Second Floor), No. 28, Xinxi Road, Haidian District, Beijing 100085

Patentee before: Jingchuang United (Beijing) Intellectual Property Service Co.,Ltd.

Effective date of registration: 20221222

Address after: Room 02A-084, Building C (Second Floor), No. 28, Xinxi Road, Haidian District, Beijing 100085

Patentee after: Jingchuang United (Beijing) Intellectual Property Service Co.,Ltd.

Address before: 250353 University Road, Changqing District, Ji'nan, Shandong Province, No. 3501

Patentee before: Qilu University of Technology