一种无监督或少量数据下的深度学习问答机器人构建系统的制作方法

文档序号:33422718发布日期:2023-03-11 00:20阅读:25来源:国知局
一种无监督或少量数据下的深度学习问答机器人构建系统的制作方法

1.本发明涉及自然语言处理领域,具体为一种无监督或少量数据下的深度学习问答机器人构建系统。


背景技术:

2.用户在使用产品的过程中往往会遇到各类问题,客服是用户寻求解决方案的首要渠道。随着人工智能技术的发展,尤其是深度学习的兴起让自然语言处理技术日趋成熟,越来越多的企业开始采用智能客服机器人。智能客服可以提供7*24小时、质量稳定的服务。有效降低人工成本,提高客服效率。而智能问答又是智能客服的最主要和核心的场景。
3.打造智能客服目前业界的最先进的解决方案是深度学习。在要构建的问答系统场景,常见的深度模型架构有两种:一是交互式、端到端的,直接将两段文本(用户的问题和常见问题库中的问题)连接起来作为输入,深度模型将交互学习并输出两者之间的相关度评分。另一种是将深度模型作为一种表示学习方法,从可变长度的文本中学习固定长度的特征表示,再通过特征表示计算相关度。这种方法也有另外一种直观理解,就是将用户查询语句和问题库的问题语句映射到同一个特征空间,而它们在特征空间的某种距离代表它们之间的相似度。
4.然而即使是上述sota方法,在实际生产过程中落地应用时仍发现一些特定问题无法得到很好的解决:
5.一、交互式模型架构针对性更强,通常预测精度更高,但需要大量标注数据,而在某些场景或业务开展初期,通常都没有数据积累,无法提供足够于训练的标注数据
6.二、实际生产中存在语料和语料之间的差异问题,容易导致模型失效或预测错误,具体体现在两大块:
7.1、预训练语料和特定场景语料的差异性。通常情况下,每个业务场景都有一些特有的或者生产过程中慢慢形成的专业术语或是所谓的行话,使用基于通用语料库预训练的语言模型无法很好的识别,而这类术语对于问题匹配来说又相当的重要;
8.2、用户查询语料和问题库语料的差异性。两者通常采用不同的表达方式和语言风格。比如,大多数用户倾向于采用偏口语化的表达方式,且用词做不到很精确,而语料库中的问题和措词则通常偏正式。
9.三、问题和问题之间的差异问题,有些情况下会不同于所用词语之间的差异,甚至和语义相似性也存在冲突。例如实际生产过程中,有看起来用词差异不大但实质却不同的问题,也有很多措词看起来差异较大但实际一致的问题。还存在不少基本上完全一致,但仅一个关键词的差异,就标志着它们属于不同的问题。


技术实现要素:

10.本发明的目的在于提供一种无监督或少量数据下的深度学习问答机器人构建系统,有效解决了一系列实际生产过程中发现的语料之间的差异问题,问题之间的差异问题,
并在实际业务场景下完成了落地和应用,结果取得了实质性的改进。
11.为实现上述目的,本发明提供如下技术方案:一种无监督或少量数据下的深度学习问答机器人构建系统,包括预训练模块、相似计算模块、交互处理模块以及最终匹配度计算模块,预训练模块、相似计算模块、交互处理模块、最终匹配度计算模块依次连接;所述预训练模块用于输入文本的上下文建模,所述相似计算模块计算输入问题和问题库问题之间的语义相似度,所述交互处理模块帮助识别输入问题中的一些特定含义,并与问题库中的相应问题产生交互分数;所述最终匹配度计算模块输出包含语义、词顺序以及特定词交互结果后的匹配分数。
12.优选的,所述预训练模块先从大量公开的中文语料库的上下文中学习语义信息,再迁移使用到系统的特定场景任务上。
13.优选的,所述预训练模型选取了业界sota的bert模型架构,其中的postition encoding技术引入了顺序的信息,使用最后一层的cls对应的输出作为query和question的表示。
14.优选的,所述相似计算模块基于预训练模块的输出选取了余弦相似度计算匹配分数,计算公式为:
[0015][0016]
其中,score(query,question)为匹配分数,query和question作为预训练模块模型架构的最后一层的cls对应的输出。
[0017]
优选的,所述交互处理模块包括显性识别和交互模块、上下文识别和交互模块,所述显性识别和交互模块用于识别预训练语料中没有的该业务场景下的关键术语并在问题库中找到相关问题给出交互分;上下文识别和交互模块的构建则需要一定量的标注数据。
[0018]
优选的,所述最终匹配度计算模块的计算公式为:
[0019][0020]
其中,scoref是最终匹配度,scoreq是相似计算模块得出的匹配度,α值在0~1之间,si为交互处理模块的交互分,ωi为权重。
[0021]
优选的,所述α值、ωi值均根据实际结果进行调整,定义α值、ωi值的取值范围,最终匹配度计算模块的调整为:
[0022]
scoref=α
·
scoreq+(1-α)
·
max(si·
ωi)。
[0023]
与现有技术相比,本发明的有益效果是:
[0024]
1、适用场景优势,采用本发明方案仅需要少量的标注数据,对数据积累的要求更低,适用场景更多;
[0025]
2、语义识别优势,本发明方案中的预训练模块从公开的大规模语料库中获取语义信息输出到下游任务。而包含了语义,上下文,语序的句子表示能够很好的识别一个问题的各种表述(使用其他同义词/表述顺序不同);
[0026]
3、本发明方案解决了一系列实际生产过程中发现的特定问题,通过两个识别和处理模块,有效解决了查询和语料库的差异问题、结果和语义相似性相冲突的问题,并在实际业务场景下完成了落地和应用,实验结果取得了实质性的改进;
[0027]
4、本发明方案具有一定的成长性,其中的识别和处理模块在产品上线到初、中、后
期可以根据业务的发展情况和数据的积累程度去适配不同的解决方案:比如一开始可以不配,然后根据业务专家的提供的经验去构建特征或识别和处理规则,可以人工少量构建一些正负样本让模型来学习映射关系,当然还可以使用更多更真实的样本以及更复杂的各种模型来学习映射关系,最终实现算法效果的逐步提升。
附图说明
[0028]
图1为本发明的结构示意图;
[0029]
图2为本发明的预训练模块bert模型示意图;
[0030]
图3为本发明的语义相似计算示意图;
[0031]
图4为本发明的显性识别与交互示意图;
[0032]
图5为本发明的上下文识别与交互示意图;
[0033]
图中标号:1、预训练模块;2、相似计算模块;3、交互处理模块;4、最终匹配度计算模块。
具体实施方式
[0034]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0035]
请参阅图1-5,本发明提供一种技术方案:一种无监督或少量数据下的深度学习问答机器人构建系统,包括预训练模块1、相似计算模块2、交互处理模块3以及最终匹配度计算模块4,预训练模块1、相似计算模块2、交互处理模块3、最终匹配度计算模块4依次连接;所述预训练模块1用于输入文本的上下文建模,所述相似计算模块2计算输入问题和问题库问题之间的语义相似度,所述交互处理模块3帮助识别输入问题中的一些特定含义,并与问题库中的相应问题产生交互分数;所述最终匹配度计算模块4输出包含语义、词顺序以及特定词交互结果后的匹配分数。
[0036]
进一步的,所述预训练模块1先从大量公开的中文语料库的上下文中学习语义信息,再迁移使用到系统的特定场景任务上。
[0037]
进一步的,所述预训练模型1选取了业界sota的bert模型架构,其中的postition encoding技术引入了顺序的信息,使用最后一层的cls对应的输出作为query和question的表示。
[0038]
进一步的,所述相似计算模块2基于预训练模块1的输出选取了余弦相似度计算匹配分数,计算公式为:
[0039][0040]
其中,score(query,question)为匹配分数,query和question作为预训练模块1模型架构的最后一层的cls对应的输出。
[0041]
进一步的,所述交互处理模块3包括显性识别和交互模块、上下文识别和交互模块,所述显性识别和交互模块用于识别预训练语料中没有的该业务场景下的关键术语并在
问题库中找到相关问题给出交互分;上下文识别和交互模块的构建则需要一定量的标注数据。
[0042]
进一步的,所述最终匹配度计算模块4的计算公式为:
[0043][0044]
其中,scoref是最终匹配度,scoreq是相似计算模块2得出的匹配度,α值在0~1之间,si为交互处理模块3的交互分,ωi为权重。
[0045]
进一步的,所述α值、ωi值均根据实际结果进行调整,定义α值、ωi值的取值范围,最终匹配度计算模块4的调整为:
[0046]
scoref=α
·
scoreq+(1-α)
·
max(si·
ωi)。
[0047]
工作原理:交互处理模块3中的显性识别和交互模块之所以称之为显性,因为它可以根据业务经验显性的构建和维护,后可以基于真实数据通过统计方法计算得出;上下文识别和交互模块通过人工少量构建正负样本即可,模型的深度和复杂性取决于样本量的大小,上下文识别和交互模块的交互分是基于预训练模型的词的上下文的结果。最终匹配度计算模块4的计算公式中,ωi值作为权重的意义在于不是所有词对匹配的贡献都是一致的,有一些重要的指向性的词的贡献应该更高一些;α值、ωi值均根据实际结果进行调整,具体可以参考lll/il中各种参数定义方法,原理和思想是共通的。另外需要注意的是最终匹配度是有可能大于1的,如果对此比较在意的话,也可以将最终得分计算变更为类似以下形式,并定义ωi和si的取值范围,此时最终匹配度计算模块4的调整为:
[0048]
scoref=α
·
scoreq+(1-α)
·
max(si·
ωi)。
[0049]
产品刚上线时,或没有任何数据沉淀时,配备预训练模块1、相似计算模块2,预训练模块1先从大量公开的中文语料库的上下文中学习语义信息,再迁移使用到我们的特定场景任务上。
[0050]
产品上线初期,收集到少量的用户问题,或有业务专家参与时,构建交互处理模块3中的显性识别与交互模块,将特定术语及预训练模型处理不佳的tok定义出来;早期的token-question矩阵可以人工定义和维护。
[0051]
专家经验积累到一定程度时,规则的优先级和维护都会较为繁杂,此时可以采用统计概率的方式,在专家构建的正负样本上计算和维护显性交互分;正负样本有了积累可以着手构建交互模块来学习基于上下文的映射关系,随着样本量的逐渐增多,构建的模型结构就可以更复杂,最终实现算法效果的逐步提升。
[0052]
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1