CN116860953B - 一种基于问答系统的问答匹配方法及系统 - Google Patents

一种基于问答系统的问答匹配方法及系统 Download PDF

Info

Publication number
CN116860953B
CN116860953B CN202311132051.5A CN202311132051A CN116860953B CN 116860953 B CN116860953 B CN 116860953B CN 202311132051 A CN202311132051 A CN 202311132051A CN 116860953 B CN116860953 B CN 116860953B
Authority
CN
China
Prior art keywords
question
answer
sample data
recall
data
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
CN202311132051.5A
Other languages
English (en)
Other versions
CN116860953A (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 Unicom Online Information Technology Co Ltd
Original Assignee
China Unicom Online Information Technology Co Ltd
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 China Unicom Online Information Technology Co Ltd filed Critical China Unicom Online Information Technology Co Ltd
Priority to CN202311132051.5A priority Critical patent/CN116860953B/zh
Publication of CN116860953A publication Critical patent/CN116860953A/zh
Application granted granted Critical
Publication of CN116860953B publication Critical patent/CN116860953B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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
    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • G06F40/35Discourse or dialogue representation

Abstract

本发明属于信息检索技术领域,提供一种基于问答系统的问答匹配方法及系统,该方法包括:建立问答知识库,根据业务领域的场景参数,确定问答对;采用召回策略,从所建立的问答知识库召回与各问题相似的问答对,以得到问答对候选集,从中选定指定数量的正样本和负样本以建立原始训练数据集;构建问答匹配模型,采用随机mask机制训练问答匹配模型;接收待回复问题,召回与待回复问题相对应的候选集,使用训练好的问答匹配模型对所召回的候选集进行排序计算,并从中选取最匹配的答案。本发明采用随机mask机制训练问答匹配模型,使问答匹配模型可学习到多种多样特征,在知识库新增问答时,无需重新训练,即可得到精准排序。

Description

一种基于问答系统的问答匹配方法及系统
技术领域
本发明涉及信息检索技术领域,尤其涉及一种基于问答系统的问答匹配方法及系统。
背景技术
随着互联网业务的迅速增长,市场对于智能问答的需求日渐高涨。智能问答以一问一答的形式,精确定位用户的提问,通过与用户交互,为用户提供个性化的信息服务。常用的问答系统,大部分是以实现FAQ问答为主的。FAQ包括客户常见的问题。基于FAQ进行检索,主要能够检索到常见的典型问题,基于文本匹配策略的检索式问答系统(FAQ)排序方法,通常是给定标准问题库,系统根据用户输入的一条query从标准问题库中召回n个候选,通过文本匹配模型计算query和每个候选的相似度得分,最后根据得分排序输出top-k个候选。此外,传统FAQ问答一般基于分类和匹配两种模式,分类的优点是模型训练速度快,准确率高,比如知识库有100个FAQ,则类别为100类。由于类别固定,当新增一个类别时,模型永远无法回答新类别的问题,在这种情况下重新训练模型,或者使用相似度匹配模型来解决新增类别时无法精确识别的问题。
现有面向FAQ问答系统的模型训练中,主要存在以下两个问题:
采用相似问题匹配或问题答案匹配的方式,仅判断用户提出的query与知识库中问题之间的相似度排序,或判断用户query和答案之间的匹配排序,特征比较单一;对于知识库中新增问答的情况,现有模型通常需要针对新增的问答样本重新训练模型,训练成本较高,且比较费时。
因此,有必要提供一种基于问答系统的问答匹配方法,以解决上述问题。
发明内容
本发明意在提供一种基于问答系统的问答匹配方法及系统,以解决现有技术中现有方法仅判断用户提出的query与知识库中问题之间的相似度排序,或判断用户query和答案之间的匹配排序,特征比较单一;对于知识库中新增问答的情况,现有模型通常需要针对新增的问答样本重新训练模型,训练成本较高,且比较费时等的技术问题,本发明要解决的技术问题通过以下技术方案来实现。
第一方面,本发明提出一种基于问答系统的问答匹配方法,包括以下步骤:建立问答知识库,根据业务领域的场景参数,确定问答对,每一个问答对包括问题集和对应答案,其中,同一个答案对应有多个不同的问题;采用召回策略,从所建立的问答知识库召回与各问题相似的问答对,以得到问答对候选集;根据所得到的问答对候选集,从中选定指定数量的正样本和负样本以建立原始训练数据集,所述正样本表征当前查询问题和召回问题所对应的答案一致,所述负样本表征当前查询问题和召回问题所对应的答案有差异;构建问答匹配模型,采用随机mask机制训练问答匹配模型,具体在模型训练时,从原始训练数据集中分别随机选取不同数量的样本数据并进行召回问题、答案类别的mask处理后训练问答匹配模型;接收待回复问题,召回与待回复问题相对应的候选集,使用训练好的问答匹配模型对所召回的候选集进行排序计算,并从中选取最匹配的答案。
所述问答匹配方法可以进一步包括以下步骤:从原始训练数据集中随机选取指定比例a的样本数据,分别从剩余比例b中选取第一数量的样本数据和第二数量的样本数据,对第一数量的样本数据的召回问题进行mask处理,对第二数量的样本数据的答案类别进行mask处理,得到最终的训练数据集,以用于训练问答匹配模型;指定比例a与剩余比例b之和等于1,指定比例a大于等于剩余比例b,且指定比例a可以在40%~60%的范围内;第一数量大于第二数量。
所述指定比例a可以在45%~55%的范围内;第一数量可以为剩余比例b的样本数据的60%~80%,第二数量可以为剩余比例b的样本数据的20%~40%。
通过对训练数据集的数据划分优化,对损失函数Loss进行了优化,优化后的损失函数Loss为:
其中, xh表示训练数据集中第h个样本数据的实际label;yh为模型的预测结果;H表示60%的数据、即不遮蔽任何数据的总数据量;为第h个样本数据的交叉熵;h表示训练数据集中第h个样本数据,h为正整数,h为1、2、...、H; xm表示第m个样本数据的实际label; ym为模型的预测结果;M表示32%的数据、即遮蔽了知识库的问题的总数据量;为第m个样本数据的交叉熵;m表示训练数据集中第m个样本数据,m为正整数,m为1、2、...、M; xk表示训练数据集中第k个样本数据的实际label;yk表示模型的预测结果;K表示8%的数据、即遮蔽了知识库的标签的总数据量;/>为第k个样本数据的交叉熵;k表示训练数据集中第k个样本数据,k为正整数,k为1、2、...、K。
所述问答匹配方法可以进一步包括以下步骤:对问答知识库建立召回索引,对于每一个问题 Qi召回多个问题Qj,查找答案Aj,以组成问答对,在召回结果里面选定z个正样本数据, f个负样本数据,以建立原始训练数据集,得到正负样本集:
其中, Qi表示第 i个问题,即当前问题, i为正整数,且为1、2、...、N,N表示问题个数; Qj表示召回问题,j为正数数,且为1、2、...、f+z; Aj表示召回问题对应的答案;label表示正样本数据和负样本数据的标签值,正样本数据表示当前问题Qi和召回问题 Qj两者对应的答案一致,其标签值label=1;负样本数据表示当前问题 Qi和召回问题 Qj两者对应的答案有差异,其标签值label=0;z表示正样本数据的数量;f表示负样本数据的数量。
所述采用召回策略,从所建立的问答知识库中召回与各问题相似的问答对,包括:使用文本召回策略、向量召回策略或者语义召回策略,从所建立的问答知识库中召回与当前问题相似的多个问题以及相应答案。
所述问答匹配方法可以进一步包括以下步骤:基于所生成的问答对候选集,构建预测样本集,其中,Qquery是指用户的待回复问题; Qj表示召回问题,j表示从1到N,N表示召回问题个数,且(f+z)<N;Aj表示召回问题Qj所对应的答案;label表示问答匹配模型的模型预测分值,所述模型预测分值越接近1,则表示结果相似;所述模型预测分值越接近0,则表示结果不相似;
使用训练好的问答匹配模型计算预测样本集中所有 label的概率值,并进行降序排列,选取最高概率值对应的答案 Aj作为最终的答案。
所述问答匹配方法还包括以下步骤:使用双塔模型或cross模型,建立问答匹配模型。
第二方面,本发明提供一种问答匹配系统,包括:知识库建立模块,建立问答知识库,根据业务领域的场景参数,确定问答对,每一个问答对包括问题集和对应答案,同一个答案对应有多个不同的问题;召回处理模块,采用召回策略,从所建立的问答知识库召回与各问题相似的问答对,以得到问答对候选集;数据集建立模块,根据所得到的问答对候选集,从中选定指定数量的正样本和负样本以建立原始训练数据集,所述正样本表征当前查询问题和召回问题所对应的答案一致,所述负样本表征当前查询问题和召回问题所对应的答案有差异;模型构建模块,构建问答匹配模型,采用随机mask机制训练问答匹配模型,具体在模型训练时,从原始训练数据集中分别随机选取不同数量的样本数据并进行召回问题、答案类别的mask处理后训练问答匹配模型;排序确定模块,接收待回复问题,召回与待回复问题相对应的候选集,使用训练好的问答匹配模型对所召回的候选集进行排序计算,并从中选取最匹配的答案。
与现有技术相比,本发明具有以下优点与有益效果:
本发明通过采用随机mask机制训练问答匹配模型,使问答匹配模型既可以学习到query与问题之间的相似特征,也可以学习到query与答案之间的交互特征,增加了特征的多样性,在模型训练的同时优化损失函数,能够得到更稿精确度的问答匹配模型;对于知识库的新增问答,模型无需重新训练,而是根据模型学习到的相似特征进行精准排序。
附图说明
图1是本发明的基于问答系统的问答匹配方法的一示例的步骤流程图;
图2是根据本发明的问答匹配系统的一示例的结构示意图;
图3是根据本发明的电子设备实施例的结构示意图;
图4是根据本发明的计算机可读介质实施例的结构示意图。
具体实施方式
实施例:
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
鉴于上述问题,本发明提出一种基于问答系统的问答匹配方法,该方法通过采用随机mask机制训练问答匹配模型,使问答匹配模型既可以学习到query与问题之间的相似特征,也可以学习到query与答案之间的交互特征,增加了特征的多样性,且对于知识库的新增问答,模型无需重新训练,而是根据模型学习到的相似特征进行精准排序。
下面参照图1、图2图3和图4,对本发明的内容进行详细说明。
图1是本发明的基于问答系统的问答匹配方法的一示例的步骤流程图。
接下来,在步骤S101中,建立问答知识库,根据业务领域的场景参数,确定问答对,每一个问答对包括问题集和对应答案,其中,同一个答案对应有多个不同的问题。
在一具体实施方式中,建立问答(frequently-asked questions,简称FAQ)知识库,根据业务领域的场景特点,确定常见问题集 Q和对应答案 A,并组成问答对(Q,A),其中,FAQ知识库共有 N个问答对,即 |Q|=N,每一个问题有若干个相似问题:即同一个答案A可对应多个不同的 Q,则有 |A|=M, M<=N,其中, M表示答案的数量, N表示答案对的数量。
根据以下场景参数,进行问题相似匹配,来确定多对一关系的问答对:打开、关闭、退订、生效、以及与各业务相对应的各种操作动词等。
例如,问题集包括问题Q1和问题Q2。问题Q1“打开手机的某APP了吗?”、问题Q2“手机的某APP打开了吗?”。问题Q1和问题Q2的对应答案为回答A1“打开了”。
例如,在移动终端或家用电器的智能语音对话的应用场景,根据例如“打开手机的某APP”,移动终端的后端服务器在接收到“打开手机的某APP”的语音控制指令后,识别并控制执行相应打开操作。
需要说明的是,在本发明中,助理智能应答产品是在用户遇忙、等不及或者紧急情况的场景下,为被叫用户提供智能语音机器人代接的服务。基于人工智能进行语义理解、意图识别、对话生成,通过ASR(Automatic Speech Recognition)、TTS(Text To Speech)完成文字与语音的转换,从而完成同主叫用户的交互对话。在人机对话过程中,可提供生活类(如快递、外卖、网约车)、房产和交通类(如房产、租金催缴)、金融类(如理财、信用卡)、熟人熟约(如约吃饭、约逛街)等诸多场景下的对话服务。
在一具体实施方式中,基于通讯业务退订的业务场景,构建知识库,如助理智能应答系统中,共有300个常见问答对和30个答案,即 N=300,M=30。每一个问题有若干个相似问,如当前问题:“退订智能应答后,多久生效?”,对应答案为:“通过微信支付购买的产品智能应答,成功退订后立即生效;通过话费支付购买的产品智能应答生效后,退订月底生效。”。该问题的相似问如:“我退订了智能应答,大概什么时候才能生效啊?”、“如果我退订了智能应答,要等多久能成功?”、“我退订智能应答之后,是立即生效吗?”等,对应答案与当前问题相同。
需要说明的是,上述仅作为可选示例进行说明,不能理解成对本发明的限制。
接下来,在步骤S102中,采用召回策略,从所建立的问答知识库召回与各问题相似的问答对,以得到问答对候选集。
在一具体实施方式中,使用文本召回策略、向量召回策略或者语义召回策略,从所建立的问答知识库中召回与当前问题相似的多个问题以及相应答案。
具体地,对问答知识库建立召回索引,对于每一个问题 Qi召回多个问题 Qj,查找答案 Aj,以组成问答对,例如召回指定数量(例如30个)的答案。
需要说明的是,召回问答集,对于知识库中的每一个问题Qi,采用相关方案召回与该问题相似的问答对,为后续问答匹配模型提供一定数量的问答对候选集。
通过常用召回方案如使用Elasticsearch(为文本召回策略)、Faiss召回与 Qi相关的候选集,如 Qi=“电话无人接听时,响铃多久后才能启用智能应答服务?”,召回的候选集如下表1所示。
表1
表1示出了问答对候选集中所召回的候选答案的一示例。
在一具体实施方式中,在人物识别任务的应用场景下,知识库里面已收集了10000个用户及其数据。当识别一个待识别用户时,问题“请问是谁?”,回答“我是**”。具体根据所接收到的语音回答,从问答对候选集中选出例如前30名。
上述仅作为可选示例进行说明,不能理解成对本发明的限制。
接下来,在步骤S103中,根据所得到的问答对候选集,从中选定指定数量的正样本和负样本以建立原始训练数据集,所述正样本表征当前查询问题和召回问题所对应的答案一致,所述负样本表征当前查询问题和召回问题所对应的答案有差异。
具体地,在问答对候选集(即召回结果)中选定z个正样本数据, f个负样本数据,以建立原始训练数据集,得到正负样本集:
其中,Qi表示第 i个问题,即当前问题, i为正整数,且为1、2、...、N,N表示问题个数; Qj表示召回问题,j为正数数,且为1、2、...、f+z; Aj表示召回问题对应的答案;label表示正样本数据和负样本数据的标签值,正样本数据表示当前问题Qi和召回问题 Qj两者对应的答案一致,其标签值label=1;负样本数据表示当前问题 Qi和召回问题 Qj两者对应的答案有差异,其标签值label=0;z表示正样本数据的数量;f表示负样本数据的数量。
对于每一个问题 Qi(例如当前问题Qi),在召回的问答对候选集中选择 z个正样本(即正样本数据),f个负样本(即负样本数据),如设定 z,f=10,其中,正样本数据表示当前问题 Qi和召回的 Qj(即召回问题)两者对应的A一致,对应label=1,负样本数据表示当前问题Qi和召回的 Qj(即召回问题)两者对应的A有差异,对应 label=0。如果从召回中找到的正负样本数据量小于 a, b,则直接使用这些数据即可构建正负样本集。所构建的正负样本集如下,其中Qj,Aj为 Qi召回的问答对,对于每个具体问题,例如当前问题Qi,可构建例如20个样本,具体包括10个正样本数据,10个负样本数据,具体可参见下表2。
表2
表2示出了所选定的正样本数据和负样本数据的具体示例。
此外,对于训练数据集的构建,具体从原始训练数据集中随机选取指定比例a的样本数据,分别从剩余比例b中选取第一数量的样本数据和第二数量的样本数据,对第一数量的样本数据的召回问题进行mask处理(即遮蔽处理),对第二数量的样本数据的答案类别进行mask处理,得到最终的训练数据集,以用于训练问答匹配模型。
需要说明的是,上述仅作为可选示例进行说明,不能理解成对本发明的限制。
接下来,在步骤S104中,构建问答匹配模型,采用随机mask机制训练问答匹配模型,在模型训练时,从原始训练数据集中分别选取不同数量的样本数据,并进行召回问题、答案类别的mask处理后训练问答匹配模型。
使用双塔模型或cross模型,建立问答匹配模型。
需要说明的是,所述问答匹配模型是一个既能进行分类又能进行排序的模型,按照排序过程,并在排序的同时,把知识库里面的用户添加额外的另一个类别标签,以完成训练过程。例如,构建了“带识别的用户a |知识库里面的用户b|用户对应的类别标签c”,以下简称a|b|c。如果把“知识库里面的用户c”去掉,则是分类的逻辑,如果把“用户对应的类别标签c”去掉,则是排序的逻辑。然后按照特定的比例,选取一部分数据:如60%的数据包含a|b|c,32%的数据为a|b,8%的数据为a|c,然后训练一个网络,训练完成后,预测的时候,当对待识别用户进行识别时,使用训练好的问答匹配模型进行预测,能够精确识别用户类别。这是由于上述问答匹配模型在训练过程中既考虑了分类信息数据又考虑了排序信息数据,所以能够有效提高模型的预测效果。
在一具体示例中,所述指定比例a与所述剩余比例b之和等于1(即a+b=1),指定比例a大于等于剩余比例b,且指定比例a在40%~60%的范围内。第一数量大于第二数量。
可选地,指定比例a在45%~55%的范围内。第一数量为剩余比例b的样本数据的60%~80%,第二数量为剩余比例b的样本数据的20%~40%。
在一优选实施方式中,采用随机mask机制训练问答匹配模型,在模型训练时,随机选取例如60%的样本数据维持原样(即保持原来状态的样本数据),在其余的例如40%中随机选取如80%的样本数据mask召回问题 Qj,剩余20%的样本数据mask答案类别 Aj。具体地,从正负样本集中随机选取60%的样本维持原样,使用上述60%的样本数据进行模型训练,使模型学习到问题Qi(例如当前问题)和召回问题 Qj之间的相似度信息以及问题Qi与答案 Aj之间的对应关系。从剩余比例40%的样本中随机选取80%的样本数据mask问题Qj(即对问题Qj进行遮蔽处理),得到样本/>,如将这部分问题 Qj对应的embedding向量替换为0,使用该部分样本数据对模型训练的过程,使模型重点关注 Qj与答案 Aj之间的关联,即问题答案匹配。而剩余20%的样本数据mask答案Aj(即对答案Aj进行遮蔽处理),得到/>,如将答案 Aj对应embedding向量替换为0,使用这部分样本数据进行模型训练,使模型主要关注问题 Qi与 Qj之间的相似度,即相似问题匹配。
具体地,所述训练数据集包括三部分,60%的数据不遮蔽mask任何数据的总数据量为H,32%的数据为mask了知识库的query的总数据量为M,8%的数据为mask了知识库的label的总数据量为K,他们的关系为 H:M:K=60%:30%:8%。
通过对训练数据集的数据划分优化,对损失函数Loss进行了优化。优化后的损失函数Loss如下:
其中, xh表示训练数据集中第h个样本数据的实际label;yh为模型的预测结果;H表示60%的数据、即不遮蔽任何数据的总数据量;为第h个样本数据的交叉熵;h表示训练数据集中第h个样本数据,h为正整数,h为1、2、...、H; xm表示第m个样本数据的实际label; ym为模型的预测结果;M表示32%的数据、即遮蔽了知识库的问题的总数据量;为第m个样本数据的交叉熵;m表示训练数据集中第m个样本数据,m为正整数,m为1、2、...、M; xk表示训练数据集中第k个样本数据的实际label;yk表示模型的预测结果;K表示8%的数据、即遮蔽了知识库的标签的总数据量;/>为第k个样本数据的交叉熵;k表示训练数据集中第k个样本数据,k为正整数,k为1、2、...、K。
具体地,激活函数共分为三部分, 分别为各部分数据占比的交叉熵,第一部分而言,0.6为占比60%, xh为样本的实际label;yh为模型的预测结果;为第h个样本数据的交叉熵,把H里面所有样本数据进行交叉熵求和再求平均数再乘以对应的占比;为第m个样本数据的交叉熵,把M里面所有样本数据进行交叉熵求和再求平均数再乘以对应的占比;/>为第k个样本数据的交叉熵,把K里面所有样本数据进行交叉熵求和再求平均数再乘以对应的占比。
在一具体实施方式中,如果有100个样本,分成3部分,分别为60个(即H),32个(即M)和8个(即K),具体参见下表3。
每个样本有一个标签Y,其值要么是0,要么是1,问答匹配模型也会预测一个分值Y',分值Y'的范围在0~1之间。
表3
表3示出了将8%的数据(即mask了知识库的label的数据)K里面所有样本数据进行交叉熵求和再求平均数再乘以对应的占比的一示例。
通过依次计算每个样本的交叉熵,对最后一列进行求和,得到0.656946077,再求平均数,0.656946077 /8 =0.08211826,再乘以各占比,最后得到0.08211826*0.08=0.006569461。
通过从原始训练数据集中分别随机选取不同数量的样本数据并进行召回问题、答案类别的mask处理后训练问答匹配模型,同时优化损失函数,能够得到更稿精确度的问答匹配模型,使问答匹配模型既可以学习到query与问题之间的相似特征,也可以学习到query与答案之间的交互特征,增加了特征的多样性;在知识库新增问答时,模型无需重新训练,仅根据模型学习到的相似特征即可进行精准排序。
接下来,在步骤S105中,接收待回复问题,召回与待回复问题相对应的候选集,使用训练好的问答匹配模型对所召回的候选集进行排序计算,并从中选取最匹配的答案。
基于所生成的问答对候选集,构建预测样本集。其中,Qquery是指用户的待回复问题; Qj表示召回问题,j表示从1到N,N表示召回问题个数,且(f+z)<N; Aj表示召回问题 Qj所对应的答案;label表示问答匹配模型的模型预测分值,所述模型预测分值越接近1,则表示结果相似;所述模型预测分值越接近0,则表示结果不相似。
使用训练好的问答匹配模型计算预测样本集中所有label的概率值,并进行降序排列,选取最高概率值对应的答案 Aj作为最终的答案。
具体地,使用训练好的问答匹配模型计算预测样本集中所有label的概率值,并进行降序排列,选取最高概率值对应的答案Aj作为最终的答案。
模型部署上线,对于线上用户提出的query,对召回的候选集进行精排,选取最相关的答案返回给用户。
在一实施方式中,将训练好的问答匹配模型部署上线,对于用户提出的query,首先召回一批问答对候选集,构建预测样本集,基于训练好的问答匹配模型预测 label的概率值,
对概率值降序排列,选取最高概率值对应的答案Aj作为最终的答复返回。如有新的问题 Qnew上线时,可通过此形式预测用户query和 Qnew的相似程度 label以返回对应答案,而无需加入Qnew相关样本重新训练模型。
通过采用随机mask机制训练问答匹配模型,使问答匹配模型既可以学习到query与问题之间的相似特征,也可以学习到query与答案之间的交互特征,增加了特征的多样性,在模型训练的同时优化损失函数,能够得到更稿精确度的问答匹配模型;在知识库新增问答时,模型无需重新训练,仅根据模型学习到的相似特征即可进行精准排序。
需要说明的是,上述仅作为可选示例进行说明,不能理解成对本发明的限制。此外,上述附图仅是根据本发明示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
与现有技术相比,本发明通过采用随机mask机制训练问答匹配模型,使问答匹配模型既可以学习到query与问题之间的相似特征,也可以学习到query与答案之间的交互特征,增加了特征的多样性,在模型训练的同时优化损失函数,能够得到更稿精确度的问答匹配模型;对于知识库的新增问答,模型无需重新训练,而是根据模型学习到的相似特征进行精准排序。
下述为本发明系统实施例,可以用于执行本发明方法实施例。对于本发明系统实施例中未披露的细节,请参照本发明方法实施例。
图2是根据本发明的问答匹配系统的一示例的结构示意图。
如图2所示,本公开第二方面提供一种问答匹配系统400,所述问答系统400包括知识库建立模块410、召回处理模块420、数据集建立模块430、模型构建模块440和排序确定模块450。
在一具体实施方式中,知识库建立模块410建立问答知识库,根据业务领域的场景参数,确定问答对,每一个问答对包括问题集和对应答案,其中,同一个答案对应有多个不同的问题。召回处理模块420采用召回策略,从所建立的问答知识库召回与各问题相似的问答对,以得到问答对候选集。数据集建立模块430根据所得到的问答对候选集,从中选定指定数量的正样本和负样本以建立原始训练数据集,所述正样本表征当前查询问题和召回问题所对应的答案一致,所述负样本表征当前查询问题和召回问题所对应的答案有差异。模型构建模块440构建问答匹配模型,采用随机mask机制训练问答匹配模型,具体在模型训练时,从原始训练数据集中分别随机选取不同数量的样本数据并进行召回问题、答案类别的mask处理后训练问答匹配模型。排序确定模块450接收待回复问题,召回与待回复问题相对应的候选集,使用训练好的问答匹配模型对所召回的候选集进行排序计算,并从中选取最匹配的答案。
根据可选的实施方式,从原始训练数据集中随机选取指定比例a的样本数据,分别从剩余比例b中选取第一数量的样本数据和第二数量的样本数据,对第一数量的样本数据的召回问题进行mask处理,对第二数量的样本数据的答案类别进行mask处理,得到最终的训练数据集,以用于训练问答匹配模型;指定比例a与剩余比例b之和等于1,指定比例a大于等于剩余比例b,且指定比例a可以在40%~60%的范围内;第一数量大于第二数量。
所述指定比例a可以在45%~55%的范围内;第一数量可以为剩余比例b的样本数据的60%~80%,第二数量可以为剩余比例b的样本数据的20%~40%。
通过对训练数据集的数据划分优化,对损失函数Loss进行了优化,优化后的损失函数Loss为:
其中, xh表示训练数据集中第h个样本数据的实际label;yh为模型的预测结果;H表示60%的数据、即不遮蔽任何数据的总数据量;为第h个样本数据的交叉熵;h表示训练数据集中第h个样本数据,h为正整数,h为1、2、...、H; xm表示第m个样本数据的实际label; ym为模型的预测结果;M表示32%的数据、即遮蔽了知识库的问题的总数据量;为第m个样本数据的交叉熵;m表示训练数据集中第m个样本数据,m为正整数,m为1、2、...、M; xk表示训练数据集中第k个样本数据的实际label;yk表示模型的预测结果;K表示8%的数据、即遮蔽了知识库的标签的总数据量;/>为第k个样本数据的交叉熵;k表示训练数据集中第k个样本数据,k为正整数,k为1、2、...、K。
所述问答匹配方法可以进一步包括以下步骤:对问答知识库建立召回索引,对于每一个问题 Qi召回多个问题Qj,查找答案Aj,以组成问答对,在召回结果里面选定z个正样本数据, f个负样本数据,以建立原始训练数据集,得到正负样本集:
其中, Qi表示第 i个问题,即当前问题, i为正整数,且为1、2、...、N,N表示问题个数; Qj表示召回问题,j为正数数,且为1、2、...、f+z; Aj表示召回问题对应的答案;label表示正样本数据和负样本数据的标签值,正样本数据表示当前问题Qi和召回问题 Qj两者对应的答案一致,其标签值label=1;负样本数据表示当前问题 Qi和召回问题 Qj两者对应的答案有差异,其标签值label=0;z表示正样本数据的数量;f表示负样本数据的数量。
所述采用召回策略,从所建立的问答知识库中召回与各问题相似的问答对,包括:使用文本召回策略、向量召回策略或者语义召回策略,从所建立的问答知识库中召回与当前问题相似的多个问题以及相应答案。
基于所生成的问答对候选集,构建预测样本集,其中,Qquery是指用户的待回复问题; Qj表示召回问题,j表示从1到N,N表示召回问题个数,且(f+z)<N;Aj表示召回问题Qj所对应的答案;label表示问答匹配模型的模型预测分值,所述模型预测分值越接近1,则表示结果相似;所述模型预测分值越接近0,则表示结果不相似。
使用训练好的问答匹配模型计算预测样本集中所有 label的概率值,并进行降序排列,选取最高概率值对应的答案Aj作为最终的答案。
根据可选的实施方式,进一步包括:使用双塔模型或cross模型,建立问答匹配模型。
需要说明的是,在该实施方式中,所述问题匹配系统所执行的方法与图1中的方法大致相同,因此省略了相同部分的说明。
图3是根据本发明的电子设备实施例的结构示意图。
如图3所示,电子设备以通用计算设备的形式表现。其中处理器可以是一个,也可以是多个并且协同工作。本发明也不排除进行分布式处理,即处理器可以分散在不同的实体设备中。本发明的电子设备并不限于单一实体,也可以是多个实体设备的总和。
所述存储器存储有计算机可执行程序,通常是机器可读的代码。所述计算机可读程序可以被所述处理器执行,以使得电子设备能够执行本发明的方法,或者方法中的至少部分步骤。
所述存储器包括易失性存储器,例如随机存取存储单元(RAM)和/或高速缓存存储单元,还可以是非易失性存储器,如只读存储单元(ROM)。
可选的,该实施例中,电子设备还包括有I/O接口,其用于电子设备与外部的设备进行数据交换。I/O接口可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
应当理解,图3所示的电子设备仅仅是本发明的一个示例,本发明的电子设备中还可以包括上述示例中未示出的元件或组件。例如,有些电子设备中还包括有显示屏等显示单元,有些电子设备还包括人机交互元件,例如按钮、键盘等。只要该电子设备能够执行存储器中的计算机可读程序以实现本发明方法或方法的至少部分步骤,均可认为是本发明所涵盖的电子设备。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,如图4所示,根据本发明实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干命令以使得一台计算设备(可以是个人计算机、服务器、或者网络设备等)执行根据本发明实施方式的上述方法。
所述软件产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由命令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
上述计算机可读介质承载有一个或者多个程序(例如为计算机可执行程序),当上述一个或者多个程序被一个该设备执行时,使得该计算机可读介质实现本公开的方法。
本领域技术人员可以理解上述各模块可以按照实施例的描述分布于装置中,也可以进行相应变化唯一不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
通过以上的实施例的描述,本领域的技术人员易于理解,这里描述的示例实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本发明实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干命令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本发明实施例的方法。
以上具体地示出和描述了本发明的示例性实施例。应可理解的是,本发明不限于这里描述的详细结构、设置方式或实现方法;相反,本发明意图涵盖包含在所附权利要求的精神和范围内的各种修改和等效设置。

Claims (7)

1.一种基于问答系统的问答匹配方法,其特征在于,包括以下步骤:
建立问答知识库,根据业务领域的场景参数,确定问答对,每一个问答对包括问题集和对应答案,同一个答案对应有多个不同的问题;
采用召回策略,从所建立的所述问答知识库召回与各问题相似的问答对,以得到问答对候选集;
根据所得到的所述问答对候选集,从中选定指定数量的正样本和负样本以建立原始训练数据集,所述正样本表征当前查询问题和召回问题所对应的答案一致,所述负样本表征当前查询问题和召回问题所对应的答案有差异;
构建问答匹配模型,采用随机mask机制训练问答匹配模型,在模型训练时,从原始训练数据集中分别选取不同数量的样本数据,并进行召回问题、答案类别的mask处理后训练问答匹配模型;其中,从原始训练数据集中随机选取指定比例a的样本数据,从剩余比例b中选取第一数量的样本数据和第二数量的样本数据,对第一数量的样本数据的召回问题进行mask处理,对第二数量的样本数据的答案类别进行mask处理,得到最终的训练数据集,以用于训练问答匹配模型;所述指定比例a与所述剩余比例b之和等于1,所述指定比例a大于等于所述剩余比例b,且所述指定比例a在40%~60%的范围内;所述第一数量大于第二数量;通过对训练数据集的数据划分优化,对损失函数Loss进行了优化,优化后的损失函数Loss为:
其中,xh表示训练数据集中第h个样本数据的实际label;yh为模型的预测结果;H表示60%的数据、即不遮蔽任何数据的总数据量;为第h个样本数据的交叉熵;h表示训练数据集中第h个样本数据,h为正整数,h为1、2、...、H;xm表示第m个样本数据的实际label;ym为模型的预测结果;M表示32%的数据、即遮蔽了知识库的问题的总数据量;为第m个样本数据的交叉熵;m表示训练数据集中第m个样本数据,m为正整数,m为1、2、...、M;xk表示训练数据集中第k个样本数据的实际label;yk表示模型的预测结果;K表示8%的数据、即遮蔽了知识库的标签的总数据量;/>为第k个样本数据的交叉熵;k表示训练数据集中第k个样本数据,k为正整数,k为1、2、...、K;
接收待回复问题,召回与待回复问题相对应的候选集,使用训练好的问答匹配模型对所召回的候选集进行排序计算,并从中选取最匹配的答案。
2.根据权利要求1所述的问答匹配方法,其特征在于,还包括:
所述指定比例a在45%~55%的范围内;
所述第一数量为剩余比例b的样本数据的60%~80%,所述第二数量为剩余比例b的样本数据的20%~40%。
3.根据权利要求1所述的问答匹配方法,其特征在于,还包括以下步骤:
对问答知识库建立召回索引,对于每一个问题Qi召回多个问题Qj,查找答案Aj,以组成问答对,在召回结果里面选定z个正样本数据,f个负样本数据,以建立原始训练数据集,得到正负样本集:
其中,Qi表示第i个问题,即当前问题,i为正整数,且为1、2、...、N,N表示问题个数;Qj表示召回问题,j为正整数,且为1、2、...、f+z;Aj表示召回问题对应的答案;label表示正样本数据和负样本数据的标签值,正样本数据表示当前问题Qi和召回问题Qj两者对应的答案一致,其标签值label=1;负样本数据表示当前问题Qi和召回问题Qj两者对应的答案有差异,其标签值label=0;z表示正样本数据的数量;f表示负样本数据的数量。
4.根据权利要求1所述的问答匹配方法,其特征在于,所述采用召回策略,从所建立的问答知识库中召回与各问题相似的问答对,包括以下步骤:
使用文本召回策略、向量召回策略或者语义召回策略,从所建立的问答知识库中召回与当前问题相似的多个问题以及相应答案。
5.根据权利要求4所述的问答匹配方法,其特征在于,还包括以下步骤:
基于所生成的问答对候选集,构建预测样本集,其中,Qquery是指用户的待回复问题;Qj表示召回问题,j表示从1到N,N表示召回问题个数,且(f+z)<N,z表示正样本数据的数量;f表示负样本数据的数量;Aj表示召回问题Qj所对应的答案;label表示问答匹配模型的模型预测分值,所述模型预测分值越接近1,则表示结果相似;所述模型预测分值越接近0,则表示结果不相似;
使用训练好的问答匹配模型计算预测样本集中所有label的概率值,并进行降序排列,选取最高概率值对应的答案Aj作为最终的答案。
6.根据权利要求1所述的问答匹配方法,其特征在于,还包括以下步骤:
使用双塔模型或cross模型,建立问答匹配模型。
7.一种问答匹配系统,其特征在于,所述问答匹配系统包括:
知识库建立模块,建立问答知识库,根据业务领域的场景参数,确定问答对,每一个问答对包括问题集和对应答案,同一个答案对应有多个不同的问题;
召回处理模块,采用召回策略,从所建立的问答知识库召回与各问题相似的问答对,以得到问答对候选集;
数据集建立模块,根据所得到的问答对候选集,从中选定指定数量的正样本和负样本以建立原始训练数据集,所述正样本表征当前查询问题和召回问题所对应的答案一致,所述负样本表征当前查询问题和召回问题所对应的答案有差异;
模型构建模块,构建问答匹配模型,采用随机mask机制训练问答匹配模型,具体在模型训练时,从原始训练数据集中分别随机选取不同数量的样本数据并进行召回问题、答案类别的mask处理后训练问答匹配模型;
数据处理模块,所述数据处理模块从原始训练数据集中随机选取指定比例a的样本数据,分别从剩余比例b中选取第一数量的样本数据和第二数量的样本数据,对第一数量的样本数据的召回问题进行mask处理,对第二数量的样本数据的答案类别进行mask处理,得到最终的训练数据集,以用于训练问答匹配模型;所述指定比例a与所述剩余比例b之和等于1,所述指定比例a大于等于所述剩余比例b,且所述指定比例a在40%~60%的范围内;所述第一数量大于所述第二数量;通过对训练数据集的数据划分优化,对损失函数Loss进行了优化,优化后的损失函数Loss为:
其中,xh表示训练数据集中第h个样本数据的实际label;yh为模型的预测结果;H表示60%的数据、即不遮蔽任何数据的总数据量;为第h个样本数据的交叉熵;h表示训练数据集中第h个样本数据,h为正整数,h为1、2、...、H;xm表示第m个样本数据的实际label;ym为模型的预测结果;M表示32%的数据、即遮蔽了知识库的问题的总数据量;为第m个样本数据的交叉熵;m表示训练数据集中第m个样本数据,m为正整数,m为1、2、...、M;xk表示训练数据集中第k个样本数据的实际label;yk表示模型的预测结果;K表示8%的数据、即遮蔽了知识库的标签的总数据量;/>为第k个样本数据的交叉熵;k表示训练数据集中第k个样本数据,k为正整数,k为1、2、...、K;
排序确定模块,接收待回复问题,召回与待回复问题相对应的候选集,使用训练好的问答匹配模型对所召回的候选集进行排序计算,并从中选取最匹配的答案。
CN202311132051.5A 2023-09-05 2023-09-05 一种基于问答系统的问答匹配方法及系统 Active CN116860953B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311132051.5A CN116860953B (zh) 2023-09-05 2023-09-05 一种基于问答系统的问答匹配方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311132051.5A CN116860953B (zh) 2023-09-05 2023-09-05 一种基于问答系统的问答匹配方法及系统

Publications (2)

Publication Number Publication Date
CN116860953A CN116860953A (zh) 2023-10-10
CN116860953B true CN116860953B (zh) 2024-01-26

Family

ID=88230830

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311132051.5A Active CN116860953B (zh) 2023-09-05 2023-09-05 一种基于问答系统的问答匹配方法及系统

Country Status (1)

Country Link
CN (1) CN116860953B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113420113A (zh) * 2021-06-21 2021-09-21 平安科技(深圳)有限公司 语义召回模型训练、召回问答方法、装置、设备及介质
CN114020862A (zh) * 2021-11-04 2022-02-08 中国矿业大学 一种面向煤矿安全规程的检索式智能问答系统及方法
CN115470328A (zh) * 2022-08-11 2022-12-13 天津泰凡科技有限公司 基于知识图谱的开放领域问答方法及相关设备
CN116150335A (zh) * 2022-12-19 2023-05-23 中国电子科技集团公司第二十八研究所 一种军事场景下文本语义检索方法
CN116628146A (zh) * 2023-04-13 2023-08-22 交通银行股份有限公司 一种金融领域的faq智能问答方法及系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10387430B2 (en) * 2015-02-26 2019-08-20 International Business Machines Corporation Geometry-directed active question selection for question answering systems

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113420113A (zh) * 2021-06-21 2021-09-21 平安科技(深圳)有限公司 语义召回模型训练、召回问答方法、装置、设备及介质
CN114020862A (zh) * 2021-11-04 2022-02-08 中国矿业大学 一种面向煤矿安全规程的检索式智能问答系统及方法
CN115470328A (zh) * 2022-08-11 2022-12-13 天津泰凡科技有限公司 基于知识图谱的开放领域问答方法及相关设备
CN116150335A (zh) * 2022-12-19 2023-05-23 中国电子科技集团公司第二十八研究所 一种军事场景下文本语义检索方法
CN116628146A (zh) * 2023-04-13 2023-08-22 交通银行股份有限公司 一种金融领域的faq智能问答方法及系统

Also Published As

Publication number Publication date
CN116860953A (zh) 2023-10-10

Similar Documents

Publication Publication Date Title
CN110334201B (zh) 一种意图识别方法、装置及系统
CN110413746B (zh) 对用户问题进行意图识别的方法及装置
CN112424763B (zh) 对象推荐方法及装置、存储介质与终端设备
US9892414B1 (en) Method, medium, and system for responding to customer requests with state tracking
CN104951428B (zh) 用户意图识别方法及装置
CN110020426B (zh) 将用户咨询分配到客服业务组的方法及装置
CN110364146B (zh) 语音识别方法、装置、语音识别设备及存储介质
CN110069709B (zh) 意图识别方法、装置、计算机可读介质及电子设备
CN109460514A (zh) 用于推送信息的方法和装置
CN111428010B (zh) 人机智能问答的方法和装置
CN109726396A (zh) 问答文本的语义匹配方法、装置、介质及电子设备
CN112465017A (zh) 分类模型训练方法、装置、终端及存储介质
CN110046806B (zh) 用于客服派单的方法、装置和计算设备
CN111241992A (zh) 人脸识别模型构建方法、识别方法、装置、设备及存储介质
Windiatmoko et al. Developing FB chatbot based on deep learning using RASA framework for university enquiries
CN111611358A (zh) 信息交互方法、装置、电子设备及存储介质
CN110399473B (zh) 为用户问题确定答案的方法和装置
CN110704599B (zh) 为预测模型生成样本、预测模型训练的方法及装置
CN110489730A (zh) 文本处理方法、装置、终端及存储介质
CN114780753A (zh) 基于知识图谱的对话推荐方法、装置、设备及存储介质
CN113627194A (zh) 信息抽取方法及装置、通信消息分类方法及装置
CN109493186A (zh) 确定推送信息的方法和装置
WO2020211616A1 (zh) 用于处理用户交互信息的方法和装置
CN116860953B (zh) 一种基于问答系统的问答匹配方法及系统
CN111651575A (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