[发明专利]一种基于FSM多轮问答的语义相似度计算方法在审
申请号: | 201911183824.6 | 申请日: | 2019-11-27 |
公开(公告)号: | CN111046155A | 公开(公告)日: | 2020-04-21 |
发明(设计)人: | 王黎成;高阳 | 申请(专利权)人: | 中博信息技术研究院有限公司 |
主分类号: | G06F16/332 | 分类号: | G06F16/332;G06F16/33;G06K9/62;G06F40/126 |
代理公司: | 南京泰普专利代理事务所(普通合伙) 32360 | 代理人: | 窦贤宇 |
地址: | 210012 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 fsm 问答 语义 相似 计算方法 | ||
1.一种基于FSM多轮问答的语义相似度计算方法,其特征在于,通过使用FSM多轮问答加DSSM语义相似度计算模型来提供问题匹配的效率和精度。
2.根据权利要求1所述的一种基于FSM多轮问答的语义相似度计算方法,其特征在于,通过将传统DSSM表示层的双向RNN模型换成能够对输入数据进行并行处理的Transformer,从而加快了模型训练和计算速度。
3.根据权利要求1所述的一种基于FSM多轮问答的语义相似度计算方法,其特征在于,提出一种更灵活的迁移框架,基于权利要求1所述的问答流程,可用于不同垂直领域的智能客服系统,在迁移时,只需要提前整理好该利于常见问答对数据存入知识库,并根据知识库中的数据对DSSM模型进行训练。
4.一种基于FSM多轮问答的语义相似度计算方法,其特征在于,包括如下
步骤1、用户向系统输入所提问题,系统根据输入问题进行场景判断,根据判断结果调用知识库中相应数据集,使用预先训练好的词向量及DSSM模块,进行语义相似度计算,并将计算结果返回给用户;
步骤2、用户根据所提问题判断是否是其需要的答案,如果是,则结束问答对匹配过程,否则继续后续操作;
步骤3、如果返回答案不是用户需要的,则询问用户是否是想寻找某个具体类型的问题,如果是该类型,则输出该类型的问题关键字,由用户选择关键字;如果不是该类型,则返回若干问题候选类型,由用户进行选择,并输入问题关键字;
步骤4、根据选择问题类型和关键字,进一步缩小待匹配问答对数据,并将用户的问题进行语义相似度计算,返回候选答案给用户;
步骤5、如果所返回答案是用户需要,则结束问答过程,否则返回到步骤1继续进行,或者由用户自行退出。
5.根据权利要求4所述的基于FSM多轮问答的语义相似度计算方法,其特征在于,
所述DSSM模块包括:
输入层,用于将用户问题和知识库待匹配问题分别转为由字向量表示的三维数组,并将其作为表示层的输入,其中,字向量由网上公开文本数据训练得到,且向量空间为768维;
表示层,采用Transformer的编码器部分,分别对由输入层输出的用户问题特征向量和知识库待匹配问题特征向量进行编码,从而提取出句子中每个单词的更抽象特征,通过global-attention将原本由每个字向量组成的句子特征表示转换为由一个768维向量表示的新的句子特征;Transformer编码器一共分为6个小Encoder,其中每个Encoder又包含了self-attention和full-connect两个模块;
匹配层,在由表示层分别得到了用户问题和知识库待匹配问题的句子特征向量后,它们之间的语义相似性可以用这两个语义向量(768维)的cosine距离来表示:
其中,Q代表用户问题,S代表知识库待匹配问题;
对于用户输入的问题来说,当它需要与知识库中选择的上所有问题内容进行语义相似度计算时,首先由前面2层分别得到用户问题特征向量表示和知识库待匹配的若干问题的特征向量表示,然后将用户问题的特征向量依次与知识库待匹配的每个问题的特征向量进行余弦相似度计算,最后通过softmax函数可以把用户问题与匹配的每个问题的语义相似性转化为一个后验概率:
其中r为softmax的平滑因子,S+为所有待匹配问题的正样本,S-为所有待匹配问题的负样本,S为所有待匹配问题的整个样本空间;
在训练阶段,通过极大似然估计,最小化损失函数:
残差会在表示层的Transformer中反向传播,最终通过随机梯度下降(SGD)使模型收敛,得到各网络层的参数{Wi,bi}。
6.一种基于FSM多轮问答的语义相似度计算系统,其特征在于,包括如下模块:
问题分析模块:根据用户输入的问题,对问题的场景进行判断,根据相应问题场景调用知识库中的问答对数据,并将输入的问题中的每一个字符转换成该字符在字典中索引,用于获取通过BERT预先训练存储的字向量;
问题检索模块:根据转换后的用户问题以及从知识库中提取的问答对数据,进行第一轮的语义相似度计算,并将检索到答案返回给用户,等待用户进行反馈;
问题匹配模块:如果用户反馈为正确答案,则停止后续操作,整个问答过程结束,如果用户反馈答案错误,则根据用户选择的问题类型到知识库中选择该类型的问答对数据进行语义相似度计算;
打分模块:打分模型根据提前设置的top-k和threshold,对通过语义相似度计算匹配到的N个答案按评分进行排序,并返回top-k个候选答案,然后再根据threshold判断,如果候选答案的评分高于阈值,则输出给用户;
SimNet模块:该模型主要用来存储Transformer模型,并提供该模型进行训练、调用的相应接口;
(6)FAQ数据集存储模块:用于存储提前收集好的问答对数据集,该数据集除了包括垂直领域数据以外,还可包含闲聊、百科相关的问答对数据,从而提高用户体验。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中博信息技术研究院有限公司,未经中博信息技术研究院有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911183824.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种温感调节针织面料及其生产工艺
- 下一篇:一种共享文化用品自助借用系统