自然语言处理模型的优化方法、应答方法及系统与流程
未命名
10-26
阅读:141
评论:0
1.本发明涉及人工智能技术领域,具体地涉及一种自然语言处理模型的优化方法、一种智能客服的应答方法、一种会话意图分类方法、一种自然语言处理系统、一种电子设备和一种机器可读存储介质。
背景技术:
2.在智能客服系统中,利用自然语言理解技术(natural language understanding,nlu)识别用户的会话意图,是决定系统性能和用户体验的关键因素。因此,越来越多的相关企业和科研人员投入研究如何利用预训练语言模型,尝试识别用户的会话意图,用于提升智能客服系统的性能和用户体验。
3.目前,测试而言,智能客服系统通过训练的机器模型(例如nlp模型,自然语言处理模型,natural language processing model)能够与客户进行简单语句和包含高频词的对话,但是训练的机器模型基于含低频词的、复杂语句的客户对话难以识别客户的意图,因而很难上线应用实现符合客户对话意图的对话响应。
技术实现要素:
4.本发明的目的是提供一种自然语言处理模型的优化方法、应答方法及系统,避免nlp模型难以识别客户对话的意图导致的会话性能不能达到智能客服要求,进而实现客户对话的有效响应,具有实现针对低频词及复杂语句的对话响应的特点。
5.为了实现上述目的,本说明书采用下述方案:第一方面,本发明实施例提供一种自然语言处理模型的优化方法,该优化方法包括:基于目标领域的语料数据,训练通用nlp模型,以获得领域nlp模型;确定与所述语料数据中语句描述对应的意图描述符号;基于所述语句描述和所述意图描述符号,通过原生提示模板生成提示模板语料,所述原生提示模板用于描述替换关系,所述替换关系是将所述语句描述替换为所述意图描述符号的关系;基于所述提示模板语料和所述原生提示模板,训练所述领域nlp模型,以获得优化领域nlp模型。其中,语料数据包括历史会话消息,历史会话消息可以是由目标领域的智能客服系统提供的;智能客服系统中的数据库记录包括语料数据中语句描述与意图描述符号的对应关系记录;意图描述符号是通过查询所述数据库记录确定。
6.第二方面,本发明实施例提供一种智能客服的应答方法,该应答方法包括:获取语句描述;基于所述语句描述和优化领域nlp模型,确定返回的语句描述;其中,所述优化领域nlp模型是通过前述的自然语言处理模型的优化方法获得的。
7.第三方面,本发明实施例提供一种自然语言处理系统,该自然语言处理系统包括:
训练模块,用于基于目标领域的语料数据,训练通用nlp模型,以获得领域nlp模型;确定模块,用于确定与所述语料数据中语句描述对应的意图描述符号;生成模块,用于基于所述语句描述和所述意图描述符号,通过原生提示模板生成提示模板语料,所述原生提示模板用于描述替换关系,所述替换关系是将所述语句描述替换为所述意图描述符号的关系;优化模块,用于基于所述提示模板语料和所述原生提示模板,训练所述领域nlp模型,以获得优化领域nlp模型。
8.第四方面,本发明实施例提供一种电子设备,该电子设备包括:至少一个处理器;存储器,与所述至少一个处理器连接;其中,所述存储器存储有能被所述至少一个处理器执行的指令,所述至少一个处理器通过执行所述存储器存储的指令,所述至少一个处理器通过执行所述存储器存储的指令实现前述的方法。
9.第五方面,本发明实施例提供一种机器可读存储介质,存储有机器指令,当所述机器指令在机器上运行时,使得机器执行前述的方法。
10.在本发明中,采用目标领域的语料数据,能够将通用nlp模型转换为目标领域下的领域nlp模型,而不是直接使用通用语料,获得具有各向异性(anisotropy)的通用nlp模型,避免了采用通用nlp模型进行识别理解,因语料领域不同造成理解差异而不能符合目标领域下的含义。然后,确定领域语料数据中语句描述与意图描述符号之间的对应关系,能够在目标领域的语料数据中语句描述之间,用于形成目标领域内意图描述和语句描述的关联信息(语句描述可包括低频词和/或复杂语句),以及形成调整模型学习的语料。将关联对应的意图描述符号和语句描述,通过原生提示模板,能够形成目标领域内意图描述和语句描述的关联信息,以及形成调整模型学习的语料,不是构建新意图识别模型。使用提示模板语料和原生提示模板,实现所述领域nlp模型训练过程中的调整,调整得到优化领域nlp模型。
11.在本发明中,优化领域nlp模型能够实现含低频词的及复杂语句的客户对话的对话响应,达到符合客户意图的、应用于目标领域的智能客服系统中的会话性能要求,例如汽车领域中,智能客服系统的会话消息中客户说:“我的车推背了”,该语句描述的上下文可以是“我的车了”,关键词文本可以是“推背”,仅凭单语句描述的上下文及关键词文本不足使得机器理解客户会话意图,本发明中使用模板将整个句子“我的车推背了”与(意图描述)车辆加速性能强进行关联,此时机器客服识别的、符合客户会话意图的意图描述应该为“车辆加速性能良好”,而不是碰撞安全的会话意图。同时,本发明不需要训练新构建的模型,进一步本发明不需要引入任何除了目标领域的语料数据之外的语料数据(含模板本身),优化后的模型,能够避免因模板引入,出现会话消息中识别的客户意图与客户实际意图不符的调整。
12.本发明实施例的其它特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
13.附图是用来提供对本发明实施例的进一步理解,并且构成说明书的一部分,与下
面的具体实施方式共同用于解释本发明实施例,但并不构成对本发明实施例的限定。在附图中:图1 为本发明实施例的主要方法步骤示意图;图2 为本发明实施例的一种示例性的语料处理流程示意图;图3 为本发明实施例的一种示例性的应用服务器的模型优化场景示意图;图4 为本发明实施例的一种示例性的应用服务器的模型使用场景示意图;图5 为本发明实施例的一种示例性的应用服务器的模型使用场景示意图;图6 为本发明实施例的一种示例性的电子设备模块示意图。
具体实施方式
14.为使本说明书的目的、技术方案和优点更加清楚,以下结合附图对本发明实施例的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明实施例,并不用于限制本发明实施例。
15.正如前文所述,人工智能技术的不断发展,自然语言处理技术也得到了快速发展,随着transformer这种算法架构的提出,基于该架构下的预训练语言模型(pretraining language model,plm)在多个自然语言处理的任务上都表现出了出色的性能,也越来越多的应用于各种自然语言处理任务上中。
16.大多数智能客服系统在意图识别方面主要有规则模型、相似度检索以及意图识别模型相结合的方式,其中,规则模型是基于正则表达式和关键词,利用字符配算法进行意图识别;相似度检索方法根据业务专家总结出意图类型及其相应的典型会话,利用句子相似度匹配方式识别最相似的语句的意图类型;意图识别模型是基于预训练语言模型(plm),生成客户会话语料的嵌入式向量(embedding),然后基于这些embedding和其对应标注的意图类型,利用线性模型训练意图分类模型,用意图分类模型的评分完成意图的分类。然而,以上方式仅能进行简单及高频词的客户会话,很难解决含低频词及复杂语句的客户会话识别和响应的问题。
17.鉴于此,本说明书提供了自然语言处理模型的优化方案,使用目标领域的语料数据,训练通用nlp模型,以获得领域nlp模型,避免通用nlp模型的各向异性不利影响作用至识别结果,且使得各词频词或语句在目标领域内被模型理解为目标领域需求的含义。然后找到语料数据中语句描述,与意图描述符号的对应关系,语句描述之间存在不同词、语法的句子表示,该对应关系能提供包含各词频、简单/复杂句的语句描述与意图描述的关联信息。借助原生提示模板,生成具备前述关联信息的模板语料,最后通过模板语料和原生提示模板,训练领域nlp模型,此时相对于训练通用nlp模型,此时是对领域nlp模型的微小调整(微调),获得的优化领域nlp模型能够实现含低频词及复杂语句的客户会话识别和响应,同时,不需要构建和训练新的机器模型,进一步也不需要使用额外的语料(含模板本身)。
18.需要说明的是,相对于目标领域,可以通过配置的字词指标与评分的数值表,确定语料数据中涉及的各个字词的评分值,基于此评分值和目标领域内指定的评分阈值,确定是低频词或是高频词;也可以简单地通过语料数据中各字词的出现次数的统计值,以及目标领域内指定的统计阈值,确定是低频词或是高频词。类似地,可以通过配置的语句指标与评分的数值表,确定语料数据中涉及的语句描述是复杂句还是简单句,例如基于语句描述
的限定词个数、从句个数、字词个数、领域新词数、存在指定的语法属性等指标,确定语料数据中涉及的语句描述的评分值,基于此评分值和目标领域内指定的语句评分阈值,确定语料数据中涉及的语句描述是复杂句或简单句。应理解,本说明书提供的方法可以由具有计算和指令处理能力的设备执行,例如由服务器或电子设备执行。
19.在第一方面,请参考图1,本发明实施例提供了自然语言处理模型的优化方法,可以应用于nlp服务器,nlp服务器可以属于智能客服系统,或与智能客服系统通信,以完成模型训练或使用模型进行识别。该优化方法可以包括:s1)nlp服务器可以基于目标领域的语料数据,训练通用nlp模型,以获得领域nlp模型。
20.在本发明实施例中,自然语言处理模型(nlp模型)可以被部署于物理服务器或服务器实例或容器实例中,可称该物理服务器或服务器实例或容器实例为nlp服务器,实例的硬件可以是服务器集群中由处理器资源和存储器资源构成的、具有计算及指令处理功能的资源实例。
21.在一些可能的实现方式中,在该优化方法中,语料数据可以包括历史会话消息,历史会话消息可以是由目标领域的智能客服系统提供的。历史会话消息可以包括智能客服系统中的机器人客服与由客户使用的终端设备之间的会话消息,历史会话消息还可以包括智能客服系统中的人工客服与由客户使用的终端设备之间的会话消息。其中,会话消息可以包括多条语句描述,语句描述可以包括目标领域的商品术语或零部件术语或产品集成术语的关键词文本以及关键词文本所处上下文,关键词文本例如汽车领域内包含“变速箱”、“suv”、“内饰”、“机油”、“承载式车身”、“涡轮增压”、“差速器”、“悬架”、“越野车”等,且会话消息还可以包括目标领域的产品服务的关键词文本,关键词文本例如汽车领域的维修保养服务中,“更换空调滤芯”,“补漆”,“钣金修复”等。在另一些可能的实现方式中,语料数据还可以包括目标领域的网站论坛问答数据和用户评论数据等,网站论坛问答数据和用户评论数据可以包括术语表示或非术语表示的语句描述,这些语句描述可以包括目标领域的商品、零部件等术语以及与术语存在对应关系的通俗语和网红词的关键词文本以及关键词文本所处上下文,关键词文本例如汽车领域的“裸车价格”(只含车辆本身的销售价格)、“顶盖儿”(发动机缸体的缸盖由于损坏导致的破损)、“推背感”(汽车加速性能)等。
22.在一些可能的实现方式中,nlp服务器可以与智能客服系统进行通信,用于响应于智能客服系统的发送数据,返回处理结果数据。其中,在一些可能的应用中,智能客服系统可以是不同于nlp服务器的服务器实现,智能客服系统可以被配置有接口程序,该接口程序可以接收由网站程序、移动设备应用程序、微服务程序等客服程序发送的客户咨询数据,其中,客服程序可以生成与客户标识对应的会话,用于接收客户输入的文本数据和/或语音数据的功能,该客户咨询数据可以携带客户语句描述(可以是文本数据或由语音数据转换得到)和客户对象标识等信息。智能客服系统可以将客户语句描述发送至nlp服务器,接收由nlp服务器返回的处理结果数据,该处理结果数据可以包括与客户语句描述的意图关联的语句描述、由该语句描述转换的语音数据(text-to-speech,tts转换服务实现)、由该语句描述转换的图像(text-to-image,tti转换服务实现)等数据,智能客服系统可以将处理结果数据通过接口程序返回至客服程序,客服程序可以在前述的会话中对处理结果数据进行呈现,例如显示返回的语句描述,播放由此语句描述转换的语音数据,以及显示由此语句描
述转换的图像,其中,tts转换服务和tti转换服务可以是查表服务、调用封装接口的服务或使用生成式机器模型的服务等。
23.在另一些可能的应用中,智能客服系统也可以包括用户输入单元、前述nlp服务器和呈现单元,用户输入单元和呈现单元都可以是由部署于服务器或计算机或移动电子设备的应用程序实现的。用户输入单元可包括接口程序和通信程序,该接口程序可以接收由网站程序、移动设备应用程序、微服务程序等客服程序发送的客户咨询数据,客服程序可以从会话中得到客户咨询数据。用户输入单元中的通信程序可以将客户语句描述发送至nlp服务器。呈现单元可包括用户界面程序和通信程序,通信程序可以接收由nlp服务器返回的处理结果数据,呈现单元中用户界面程序可以指示客服程序,用于在会话中对处理结果数据进行呈现。用户输入单元和呈现单元的通信程序可以共用一个通信程序或采用独立的通信程序。
24.在本发明实施例中,被优化的nlp模型可以是通用nlp模型,即各领域通用的预训练语言模型(plm),具有各向异性的文本处理能力,例如bert(bidirectional encoder representations from transformers)模型。但在不同行业智能客服系统中,会话中存在着许多行业特有的领域信息,在处理这些领域信息时模型的性能就会下降。因此,在一些可能的实现方式中,可以采用用户收集的目标领域的语料数据,可通过优化服务器与nlp服务器进行通信,用于传输语料数据至nlp服务器,训练nlp服务器内部署的通用nlp模型;在另一些可能的实现方式中,nlp服务器可被配置有用于模型训练的优化程序,优化程序可以接收用户输入的语料数据、控制指令和训练参数等,并传递至nlp模型,nlp服务器中优化程序也可向用户呈现响应的信息,此时,可视为前述的优化服务器和nlp服务器是同一服务器,从而nlp服务器可以响应于用户(模型训练技术人员、服务器运维人员等)的交互操作,完成nlp模型的训练。
25.在一些可能的应用中,可以从专注目标领域的门户网站/行业网站获得问答文本数据和用户评论数据,以及从目标领域的人工客服系统中获得历史会话数据等,均可以作为目标领域的语料数据。例如,采用汽车领域的汽车门户网站/行业网站的问答文本数据和用户评论数据,线上汽车商店的人工客户系统的历史会话数据等语料数据进行模型训练,在训练完成后,可以获得面向汽车领域的领域nlp模型。在一些可能的汽车领域的应用中,步骤s1)可以包括:s101)nlp服务器可基于汽车领域的语料数据,确定作为训练样本的语句描述集合;s102)nlp服务器可基于遮掩语言模型任务(masked language model,mlm),通过训练样本对通用nlp模型(bert模型)进行训练,训练过程中的语料或样本处理可通过机器脚本实现自动化。
26.其中,在通用nlp模型的训练完成后,可以获得汽车领域的领域(预训练)nlp模型,可记为bert_domain模型。
27.在本发明实施例中,前述的优化方法还可以包括:s2)nlp服务器可以确定与所述语料数据中语句描述对应的意图描述符号。
28.由于通用nlp模型存在各向异性,例如bert模型词向量的分布在表示空间中呈锥形,不是均匀分布,词向量的向量分布会受到词频的影响。高频词分布较密集,离表示空间
原点更近,而低频词分布较稀疏,离表示空间原点更远;并且,目标领域的语料数据中的高频词分布与通用语料中高频词的分布存在一定差异,从而导致利用预训练语言模型生成句子嵌入向量(embedding)所训练的意图识别模型,在处理特定领域会话语料时的模型性能下降。因此,可以针对目标领域的语料数据中语句描述之间的不同意图,将语句描述与意图描述进行关联,以关联信息调整(训练实现)领域nlp模型,避免词频高低不同导致的模型理解语句描述对应的意图描述的不利影响。
29.在一些可能的实现方式中,意图描述可以是描述实际需求和希望实现行为的计划的文本。意图描述可以是根据语料数据中会话消息内语句描述的关键词文本与该关键词文本所在语句描述中的上下文,标注确定的。意图描述可以与对应的语句描述一同被写入至数据库服务器,以供训练和使用时进行查询,该数据库服务器可以属于智能客服系统。可以查询数据库服务器找到语句描述与意图描述符合的关联信息,数据库服务器中可记录语料数据中语句描述,以及与语句描述关联的意图描述。意图描述可以是人工输入的文本,基于目标领域和客户服务需求定义等实际使用情况,针对同一语句描述,在不同的目标领域中,意图描述可以是不同的、表示该语句描述含义的文本;在同一目标领域中,可有多条语句描述与同一条意图描述相关联,以形成语句描述与意图描述之间的关联信息。在同一目标领域中,意图描述的分类数量是非常有限的(不同的意图描述可以属于同一分类),例如汽车领域的10个分类、20个分类等,咨询售前服务分类、咨询售后服务分类、咨询汽车参数分类、咨询维修保养分类、咨询试驾汽车分类、有购买汽车意图分类、无购买汽车意图分类等有限的、可自定义的分类数量。例如,在汽车领域中,语料数据中示例的语句描述可以包括“这辆车的推背感如何”的文本,对应的意图描述可以标注为“需求汽车加速性能信息”的文本,可以标注属于咨询售前服务分类,且可以写入数据库中。
30.在训练领域nlp模型之前,步骤s2)可以包括:s201)nlp服务器可从数据库服务器获取所述语料数据中语句描述的意图描述。
31.在一些可能的实现方式中,nlp服务器可以向数据库服务器发送关于所述语料数据中语句描述的查询指令,其中,数据库服务器可以响应于该查询指令返回意图描述。nlp服务器可以将该意图描述,以列表方式通过优化程序的窗口界面中进行呈现,优化程序可以接收用户针对语句描述输入的自定义的意图描述,优化程序可以更新列表,从而有利于当前的用户针对意图描述进行调整,优化程序可以将存在调整的意图描述写入至数据库服务器,使得数据库服务器中记录的语句描述所对应的意图描述被更新为当前的用户调整的意图描述。
32.s202)nlp服务器可生成或指定所述意图描述的意图描述符号。
33.在一些可能的实现方式中,意图描述符号是机器可识别符号,意图描述符号可以包括与一条意图描述对应的机器可识别符号或与一个意图描述分类对应的机器可识别符号,意图描述符号可以与被对应的意图描述一同被写入至前述智能客服系统中的数据库服务器(智能客服系统中数据库记录存在对应关系记录),因此,可通过向智能客服系统进行查询,确定意图描述符号与语句描述的对应关系。从而能够在使用方面,智能客服系统中机器客服可以使用训练的模型识别意图描述符号确定客户对话的实际意图,例如机器客服理解客户对话中“这车推背感如何”为“需求车辆加速性能信息”,而不是碰撞安全方面信息,以及执行数据分析程序,可以基于智能客服系统中会话消息和训练的模型确定客户标识的
意图描述符号,例如从机器客服与客户的终端设备之间的会话消息,分析客户是否是有购买意图。nlp服务器可以按照人工配置的(数据库中)符号列表,查询指定意图描述所对应的意图描述符号,例如有购买意图描述对应的自定义的符号[sts],从而也可以提供领域nlp模型的训练数据中语句描述与意图描述的关联信息,且同时建立语句描述与意图描述分类的关联信息。nlp服务器也可以基于配置的符号序列或字符串生成算法,生成或指定意图描述符号。在一些可能的应用中,符号列表可以按照意图描述的分类编列,意图描述符号由字符串和数值序号构成,可以针对同一意图描述的分类下的多条意图描述,配置相同的字符串以及区别的数值序号,且不同分类下的的多条意图描述,配置由不同的字符串和数值序号。例如,语句描述1涉及咨询汽车动力相关的描述,对应咨询汽车参数分类,可指定意图描述符号[vpa{1}],语句描述2涉及咨询汽车内饰相关的描述,对应咨询汽车参数分类,可指定意图描述符号[vpa{2}],语句描述3涉及咨询汽车维修相关的描述,对应咨询维修保养分类,可指定意图描述符号[vca{1}],从而也可以提供领域nlp模型的训练数据中语句描述与意图描述的关联信息,且同时建立语句描述与意图描述分类的关联信息。在另一些可能的应用中,意图描述的分类数量低于指定的数量,可以采用相同的字符串以及区别的数值序号作为意图描述符号表示全部的分类,也可以在仅作两个意图描述的分类时,采用字符串作为意图描述符号表示是否是两个意图描述的分类中一者。
[0034]
在本发明实施例中,为了使得模型学习前述的关联信息,可以采用原生提示模板,将意图描述符号和语料数据中的语句描述关联地填入该原生提示模板,生成提示模板语料。前述的优化方法还可以包括:s3)nlp服务器可以基于所述语句描述和所述意图描述符号,通过原生提示模板生成提示模板语料,所述原生提示模板用于描述替换关系,所述替换关系是将所述语句描述替换为所述意图描述符号的关系。
[0035]
在一些可能的实现方式中,原生提示模板(prompt_raw)可以包括:位置符和所述替换关系的模板描述,所述位置符用于指示在所述模板描述中填入语句描述的词序和填入意图描述符号的词序。原生提示模板在被填入语句描述和意图描述符号之后,生成提示模板语料,该提示模板语料是一条新的语句描述,该新的语句描述字词数量大于填入原生提示模板中的语句描述的字词数量,能够将目标领域的语料数据中语句描述之间存在的高低词频词、简单/复杂句定向地与对应的意图描述符号进行关联。新的语句描述在用于模型训练时,替换关系在提示模板语料中的语义信息,将使得模型学习填入的语句描述和填入的意图描述符号之间的关联信息,从而不需要构建使用全新的模型,同时生成模板语料可由机器脚本基于原生提示模板中位置符,进行自动化填入已经确定对应关系的语句描述和意图描述符号,具有语料处理效率的优势。
[0036]
在一些可能的应用中,可以配置多个前述原生提示模板,其中,各模板描述可以是不相同的,且模板描述的字词词义和位置符(可不被计算字词数)构成原生提示模板的语法属性可以是相同的,可以用于利用至少两个原生提示模板之间的模板描述在训练模型过程中移除模板本身作为语料,对模型造成的不利影响,将不会对模型引入除了目标领域的语料数据之外的其他语料(含原生提示模板本身),请结合图2,原生提示模板中填入的语料数据与训练通用nlp模型的语料数据都是前述目标领域的语料数据。示例地,可配置3个原生提示模板;
第一个原生提示模板可以是:这句话“{$l1}”的意思是{$l2};第二个原生提示模板可以是:句子:“{$l1}”意味着{$l2};第三个原生提示模板可以是:客户说:“{$l1}”代表{$l2}。
[0037]
在第一个原生提示模板中,模板描述即是这句话
“”
的意思是;位置符{$l1}可以指示语料数据中的语句描述[x] (x=1,2,3
……
,语句描述[x]可代表语料数据中作为本发明实施例语句描述的客户句子)作为参数进行传递,nlp服务器可以将语句描述[x]置于模板描述中的双引号之间;位置符{$l2}可以指示意图描述符号[sts]([sts]可以为指定或生成的符号)作为参数进行传递,nlp服务器可以将[sts]置于模板描述中的“意思是”之后;通过第一个原生提示模板生成的提示模板语料可以是:这句话“语句描述[1]”的意思是[sts]。
[0038]
在第二个原生提示模板中,模板描述即是句子:
“”
意味着,位置符{$l1}可以指示语料数据中的语句描述[x]作为参数进行传递,nlp服务器可以将语句描述[x]置于模板描述中的双引号之间;位置符{$l2}可以指示意图描述符号[sts]作为参数进行传递,nlp服务器可以将[sts]置于模板描述中的“意味着”之后;通过第二个原生提示模板生成的提示模板语料可以是:句子:“语句描述[1]”意味着[sts]。
[0039]
在第三个原生提示模板中,模板描述即是客户说:
“”
代表,位置符{$l1}可以指示语料数据中的语句描述[x]作为参数进行传递,nlp服务器可以将语句描述[x]置于模板描述中的双引号之间;位置符{$l2}可以指示意图描述符号[sts]作为参数进行传递,nlp服务器可以将[sts]置于模板描述中的“代表”之后;通过第三个原生提示模板生成的提示模板语料可以是:客户说:“语句描述[1]”代表[sts]。
[0040]
在本发明实施例中,在获得提示模板语料之后,前述的优化方法中,可以进行正负样本构造。构造正负样本的方法可以包括:a1)基于第一提示模板语料集,构成正样本,所述第一提示模板语料集包括至少两个提示模板语料,所述第一提示模板语料集中提示模板语料之间的模板描述不同、且语句描述相同;a2)基于第二提示模板语料集,构成负样本,所述第二提示模板语料集包括至少两个提示模板语料,所述第二提示模板语料集中提示模板语料之间的语句描述不相同。
[0041]
在一些可能的实现方式中,nlp服务器可以通过机器脚本初始化两个为空的集合,分别作为第一提示模板语料集和第二提示模板语料集,nlp服务器针对第一提示模板语料集,可以对任意两个提示模板语料进行判断,确定模板描述是否相同、且语句描述是否相同;若确定模板描述不相同、且语句描述相同,则此时,该任意两个提示模板语料作为第一提示模板语料集中的一个正样本,且同时可置正样本标记1。类似地,nlp服务器针对第二提示模板语料集,可以对任意两个提示模板语料进行判断,确定模板描述是否相同、且语句描述是否相同,若确定语句描述不相同,则此时,该任意两个提示模板语料作为第二提示模板
语料集中的一个负样本,且同时可置负样本标记0。其中,机器脚本处理得到的样本,可以输入至前述的优化程序中,可以使得nlp服务器对部署的nlp模型进行训练。
[0042]
示例地,正样本可以是:这句话“语句描述[1]”的意思是[sts],句子:“语句描述[1]”意味着[sts],1。
[0043]
示例地,负样本可以是:这句话“语句描述[1]”的意思是[sts],客户说:“语句描述[2]”代表[sts],0。
[0044]
示例地,负样本也可以是:这句话“语句描述[1]”的意思是[sts],这句话“语句描述[2]”的意思是[sts],0。
[0045]
在本发明实施例中,可以使用提示模板语料构成的样本和原生提示模板本身,共同作为训练数据,对领域nlp模型进行训练,并同时移除原生提示模板的影响,其中,相对于对通用nlp模型的训练而言,此时模型的训练可以称为模型的微调。前述的优化方法还可以包括:s4)nlp服务器可以基于所述提示模板语料和所述原生提示模板,训练所述领域nlp模型,以获得优化领域nlp模型。
[0046]
在一些可能的实现方式中,nlp服务器可以执行模型向量提取,从而可以利用将正负样本输入至领域nlp模型中,并在输出意图描述符号[sts]的标记时领域nlp模型的第一隐藏向量,以及利用将原生提示模板输入至领域nlp模型时,领域nlp模型的第二隐藏向量,移除原生提示模板的影响。在一些可能的应用中,步骤s4)可以包括:s401)nlp服务器可以确定所述提示模板语料与所述原生提示模板之间语句描述的字词偏移量。
[0047]
nlp服务器可以确定正负样本中当前被输入至领域nlp模型的语句描述[x]的字词数量,并确定将对应的原生提示模板本身作为语句描述的字词数量,然后通过这两个字词数量作差,可以得到字词偏移量,例如提示模板语料中语句描述[x]有5个字,则相对于对应的原生提示模板本身,字词偏移量为5(可以不考虑意图描述符号,且不计入字词数量),从而可用于bert_domain中表示语句描述的隐藏向量的位置对齐。步骤s4)还可以包括:s402)nlp服务器可以基于所述字词偏移量,调整所述原生提示模板在作为所述领域nlp模型的输入时的位置编码。
[0048]
其中,领域nlp模型可以是领域bert模型bert_domain,在任意一条语句描述被输入至bert_domain时,会同时输入该任意一条语句描述的位置编码(即位置id、位置编号或位置映射值,例如position_id)。对于正样本或负样本,可分别将每个样本中的两个提示模板语料输入bert_domain。在当前被输入bert_domain的提示模板语料输入后,在bert_domain输出代表意图描述符号[sts]的标记(token)时,可以提取bert_domain的输出隐藏向量h
[sts]
(输出隐藏状态的向量),作为模型表示提示模板语料的隐藏向量hs,可以记为hs= h
[sts]
。为了消除模板的影响,可以按照字词偏移量,调整将与当前被输入的提示模板语料对应的原生提示模板本身输入至bert_domain时的位置编码,而使得bert_domain中表示原生提示模板本身以及当前被输入bert_domain的提示模板语料二者语句描述的隐藏向量,是在bert_domain中呈位置对齐的。例如字词偏移量为5,可以对将与当前被输入的提示模板语料对应的原生提示模板本身输入至bert_domain时的位置编码,增加5,然后,将与当前被输入的提示模板语料对应的原生提示模板本身输入至bert_domain,并可以提取bert_
domain的输出隐藏向量h
p
(输出隐藏状态的向量),作为模型表示原生提示模板本身的隐藏向量h
p
。步骤s4)还可以包括:s403)将正负样本、所述原生提示模板和调整后的位置编码,输入所述领域nlp模型,并使用对比学习方法进行模型训练,所述正负样本是基于所述提示模板语料构造的。
[0049]
其中,在模型训练(此时为微调)过程中,针对正负样本中当前被输入的提示模板语料、和与该提示模板语料对应的原生提示模板,可分别从领域nlp模型中提取前述的输出隐藏向量h
[sts]
(可为前述的第一隐藏向量)和输出隐藏向量h
p
(可为前述的第二隐藏向量),并计算获得当前被输入的提示模板语料中语句描述[i](i=1,2,3
……
)的向量hi= hs–ꢀhp
,向量hi作为移除模板影响后的隐藏向量。使用对比学习方法进行模型训练,训练的目标损失函数可以选择为:
[0050][0051]
在该函数中,是领域nlp模型表示的、两个不同提示语料模板中语句描述[i]的嵌入向量(embedding),是温度超参数,n是批量大小(batch size)。需要说明的是,bert模型的输出结果是可以配置的,输出结果可以包括意图描述符号的标记和隐藏状态的向量等元组数据,也可以在使用时,对应标记确定意图描述符号。以上,通过领域语料微调通用语言模型,然后通过多个prompt构建领域语料的prompt语料对,利用对比学习方法优化领域预训练模型的向量空间,降低预训练语言模型的各向异性,最终得到领域prompt预训练语言模型。在训练完成后,使得领域nlp模型学习意图描述符号与语料数据中语句描述之间的关联信息,同时,不会受到额外语料数据的影响,不会受包含模板本身的额外语料数据的影响,微调实现了优化领域nlp模型,从而模型在被应用于智能客服系统时,能够使得智能客服系统中机器客服提供符合客户会话意图的会话服务。
[0052]
本发明实施例提供一种示例性的应用于服务器的模型优化场景,请参考图3,nlp服务器可以被部署有优化程序和模型文件,模型文件可以包括通用bert模型,优化程序可以响应于训练终端发送的指令,向模型文件提供训练数据和参数等信息,其中,训练终端可以是具有计算和指令处理能力的终端设备,且可以与nlp服务器进行通信,例如计算机、移动电子设备等,从而模型训练技术人员能通过训练终端对nlp服务器进行处理操作的指示。nlp服务器可以与数据库服务器通信,数据库服务器(可与nlp服务器是同一服务器或不同的服务器)可以被配置有模板数据库、语料数据库、意图描述符号数据库,以实现获得语料数据、原生提示模板以及意图描述符号,其中,nlp服务器可以被部署有数据采集机器脚本,nlp服务器可以通过该机器脚本,从通信网络中获得目标领域的论坛问答数据、网站用户评论数据、以及历史会话消息,并写入语料数据库,历史会话消息可以从客户信息数据库(可被部署于智能客服系统)中获得,该客户信息数据库可以包括客户标识和通过客户终端与智能客服系统之间的会话消息,客户终端也可以是具有计算和指令处理能力的终端设备,且可以与智能客服系统进行通信,例如计算机、移动电子设备等。
[0053]
在上述的模型优化场景中,nlp服务器可以接收由模型训练技术人员可以通过训练终端发送的指令,nlp服务器可以通过执行优化程序,用于实现:从语料数据库中获取目
标领域的语料数据,并向通用nlp模型的模型文件输入目标领域的语料数据,训练通用nlp模型,以获得领域nlp模型;nlp服务器可以通过执行优化程序,用于实现:在意图描述符号数据库中查询,确定与语料数据中语句描述对应的意图描述符号;nlp服务器可以通过执行优化程序,用于实现:从模板数据库中获取原生提示模板,基于所述语句描述和所述意图描述符号,通过原生提示模板生成提示模板语料;nlp服务器可以通过执行优化程序,用于实现:将所述提示模板语料和所述原生提示模板作为训练数据,对领域nlp模型进行微调,获得优化领域nlp模型。nlp服务器还可以接收由模型训练技术人员通过训练终端发送的测试的语句描述,并响应地返回对应的意图描述符号。
[0054]
本发明实施例提出了利用目标领域的语料数据和提示模板,对预训练语言模型进行训练,实现领域nlp模型,然后利用原生提示模板获取句子表示,同时消除了模板的影响,使用对比学习的优化领域nlp模型,降低了领域nlp模型向量空间的各向异性,避免了通用预训练语言模型各向异性问题以及与领域语料词频分布差异导致的意图描述识别问题,从而也提升领域预训练语言模型的性能,使得优化微调后的领域nlp模型在智能客服系统中的下游任务上有更好的性能表现进而提升了在领域语料基础上机器模型进行意图识别的性能,以改善智能客服系统中机器客服的对话响应性能,能够基于意图描述符号,生成/选择语句描述,进行会话消息中客户对话的响应。
[0055]
在第二方面,使用而言,本发明实施例还提供了与前述实施例同一发明构思下的智能客服的应答方法,该应答方法可以包括:b1)获取语句描述;b2)基于所述语句描述和优化领域nlp模型,确定返回的语句描述;其中,所述优化领域nlp模型是通过前述的自然语言处理模型的优化方法获得的。
[0056]
在本发明实施例中,该应答方法可以被智能客服系统执行,优化领域nlp模型可以以模型文件的方式被部署于nlp服务器且可以被nlp服务器执行。在一些可能的实现方式中,智能客服系统可以被配置有接口程序,该接口程序可以接收由网站程序、移动设备应用程序、微服务程序等客服程序发送的客户咨询数据,其中,客服程序可以生成与客户标识对应的会话,用于接收客户输入的文本数据和/或语音数据的功能,该客户咨询数据可以携带客户语句描述和客户对象标识等信息。智能客服系统可以与nlp服务器进行通信,智能客服系统可以向nlp服务器发送客户咨询数据中的语句描述,其中,在一些可能的应用中,nlp服务器可以将该语句描述输入至优化领域nlp模型,并通过优化领域nlp模型获得意图描述符号,可以查表指定与该意图描述符号对应的语句描述,作为返回的语句描述;在另一些可能的应用中,nlp服务器可以被部署有基于意图描述符号和语句描述预训练的生成式模型,nlp服务器也可以通过优化领域nlp模型获得输出意图描述符号,利用意图描述符号和步骤b1)获取的语句描述,在步骤b2)中通过生成式模型获得返回的语句描述,若目标领域为汽车领域,则返回的语句描述即智能客服系统针对汽车领域的客户咨询的回答。
[0057]
本发明实施例提供一种示例性的应用于服务器的模型使用场景,请参考图4,nlp服务器可以执行会话处理应用程序,用于实现:从智能客服系统获取实时的会话消息中的语句描述r,语句描述r例如“这车推背感如何?”,基于语句描述r和优化领域nlp模型,确定返回的语句描述s,其中语句描述s被智能客户系统实时加入与客户终端的会话消息中,语句描述s例如“这车推背感强,0至100km/h提速仅需2~3秒”,会话处理应用程序通过优化领
域nlp模型可以确定语句描述r的意图描述符(意图描述的分类),并可以利用意图描述符对应的“需要车辆加速信息”的意图描述,查询车辆信息数据库或搜索引擎中,确定客户所询问车辆的加速信息,可使用语义回答模板(例如推背感强弱等级和具体数值化加速信息描述的模板)和车辆加速信息得到语句描述s。
[0058]
在使用方面,本发明实施例还提供了与前述实施例同一发明构思下的会话意图分类方法,该会话意图分类方法可以包括:c1)获取终端设备的会话消息,该会话消息包括客户标识和语句描述,客户标识可以是终端设备的标识;c2)基于所述语句描述和优化领域nlp模型,确定与所述客户标识对应的意图分类;其中,所述优化领域nlp模型是通过前述的自然语言处理模型的优化方法获得的。
[0059]
在本发明实施例中,该会话意图分类方法可以被智能客服系统执行,优化领域nlp模型可以以模型文件的方式被部署于nlp服务器且可以被nlp服务器执行,终端设备可以被安装有与智能客服系统通信的客服程序。智能客服系统可以获取终端设备(可以是客户侧使用的终端设备)的会话消息,并将语句描述发送nlp服务器,以其中,nlp服务器执行优化领域nlp模型,确定意图描述符号,此时意图描述符号可以与意图描述的分类一一对应,例如,目标领域是汽车领域,若获得“有购买意图”的意图描述符号([sts])时,则确定与客户标识对应的意图分类,此意图分类可以是有购买意图的分类,nlp服务器可以将该“有购买意图”的意图描述符号返回至智能客服系统,智能客服系统可以通过客户信息数据库记录该客户标识与“有购买意图”的意图描述符号,从而通过客户咨询的会话确定客户的购买意图。在一些可能的实现方式中,本发明实施例中的会话消息可以包括前述应答方法的实施例的步骤b1)中语句描述和步骤b2)中语句描述,也可以包括客户与人工客服之间对话的语句描述。
[0060]
本发明实施例提供一种示例性的应用于服务器的模型使用场景,请参考图5,nlp服务器可以执行数据分析应用程序,用于实现:从客户信息数据获取终端设备的会话消息;基于所述会话消息中的语句描述和优化领域nlp模型,确定与所述客户标识vip对应的意图分类,即“有购买意图”的意图描述符号[sts],nlp服务器可以返回客户标识vip和意图描述符号[sts]至智能客服系统,智能客服系统可以对部署于智能客服系统自身的客户信息数据库中该客户标识的意图分类进行记录更新,例如标记客户标识vip的意图分类为“有购买意图”的意图描述符号[sts]。
[0061]
在第三方面,本发明实施例还提供了与前述实施例同一发明构思下的自然语言处理系统,该自然语言处理系统可以应用于nlp服务器或智能客服系统(nlp服务器属于智能客服系统),该自然语言处理系统可以包括:训练模块,用于基于目标领域的语料数据,训练通用nlp模型,以获得领域nlp模型;确定模块,用于确定与所述语料数据中语句描述对应的意图描述符号;生成模块,用于基于所述语句描述和所述意图描述符号,通过原生提示模板生成提示模板语料,所述原生提示模板用于描述替换关系,所述替换关系是将所述语句描述替换为所述意图描述符号的关系;
优化模块,用于基于所述提示模板语料和所述原生提示模板,训练所述领域nlp模型,以获得优化领域nlp模型。
[0062]
在训练方面,具体的,其中,基于遮掩语言模型任务,训练通用nlp模型。
[0063]
具体的,所述确定与所述语料数据中语句描述对应的意图描述符号,包括:获取所述语料数据中语句描述的意图描述;生成或指定所述意图描述的意图描述符号。
[0064]
具体的,其中,所述原生提示模板包括:位置符和所述替换关系的模板描述,所述位置符用于指示在所述模板描述中填入语句描述的词序和填入意图描述符号的词序。
[0065]
具体的,其中,在用于生成提示模板语料的至少两个原生提示模板之间,模板描述不相同。
[0066]
具体的,基于所述提示模板语料和所述原生提示模板,训练所述领域nlp模型,包括:确定所述提示模板语料与所述原生提示模板之间语句描述的字词偏移量;基于所述字词偏移量,调整所述原生提示模板在作为所述领域nlp模型的输入时的位置编码;将正负样本、所述原生提示模板和调整后的位置编码,输入所述领域nlp模型,并使用对比学习方法进行模型训练,所述正负样本是基于所述提示模板语料构造的。
[0067]
具体的,构造所述正负样本的方法包括:基于第一提示模板语料集,构成正样本,所述第一提示模板语料集包括至少两个提示模板语料,所述第一提示模板语料集中提示模板语料之间的模板描述不同、且语句描述相同;基于第二提示模板语料集,构成负样本,所述第二提示模板语料集包括至少两个提示模板语料,所述第二提示模板语料集中提示模板语料之间的语句描述不相同。
[0068]
在使用方面,具体的,该自然语言处理系统可以用于执行:获取语句描述;基于所述语句描述和优化领域nlp模型,确定返回的语句描述;其中,所述优化领域nlp模型是前述的自然语言处理模型的优化方法获得的。
[0069]
在使用方面,具体的,该自然语言处理系统可以用于执行:获取终端设备的会话消息,该会话消息包括客户标识和语句描述;基于所述语句描述和优化领域nlp模型,确定与所述客户标识对应的意图分类;其中,所述优化领域nlp模型是通过前述的自然语言处理模型的优化方法获得的。
[0070]
在第四方面,本发明实施例还提供了与前述实施例同一发明构思下的电子设备,该电子设备包括:至少一个处理器;存储器,与所述至少一个处理器连接;其中,所述存储器存储有能被所述至少一个处理器执行的指令,所述至少一个处理器通过执行所述存储器存储的指令实现前述实施例中的方法。请参考图6,提供了一种示例性的电子设备,其内部结构图可以如图6所示,可以是服务器、工控机、终端设备、微控制器等。该电子设备包括通过总线连接的处理器a01、网络接口a02、存储器。其中,该电子设备的处理器a01用于提供计算、指令处理和控制能力。该电子设备的存储器包括内存a03和非易失性的存储介质a04。该
非易失性的存储介质a04存储有操作系统b01、计算机程序b02。该内存a03为非易失性存储介质a04中的操作系统b01和计算机程序b02的运行提供环境。该电子设备的网络接口a02用于与网络通信。该计算机程序b02被处理器a01执行时以实现前述实施例中的方法。
[0071]
在第五方面,本发明实施例还提供了与前述实施例同一发明构思下的机器可读存储介质,存储有机器指令,当所述机器指令在机器上运行时,使得机器执行前述实施例中的方法。
[0072]
需要说明的是,本说明书所涉及信息采集、分析、使用、传输、存储等方面,应按照法律法规的规定,被用于合法且合理的用途,不在这些合法使用等方面之外共享、泄露或出售,并且依法接受监督管理。
[0073]
以上结合附图详细描述了本发明实施例的可选实施方式,但是,本发明实施例并不限于上述实施方式中的具体细节,在本发明实施例的技术构思范围内,可以对本发明实施例的技术方案进行多种简单变型,这些简单变型均属于本发明实施例的保护范围。
[0074]
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本发明实施例对各种可能的组合方式不再另行说明。
[0075]
本领域技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得单片机、芯片或处理器(processor)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质可以是非瞬时的,存储介质可以包括:u盘、硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、闪存(flash memory)、磁性存储器、光学存储器等各种可以存储程序代码的介质。
[0076]
此外,本发明实施例的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明实施例的思想,其同样应当视为本发明实施例所公开的内容。
技术特征:
1.一种自然语言处理模型的优化方法,其特征在于,该优化方法包括:基于目标领域的语料数据,训练通用nlp模型,以获得领域nlp模型;确定与所述语料数据中语句描述对应的意图描述符号;基于所述语句描述和所述意图描述符号,通过原生提示模板生成提示模板语料,所述原生提示模板用于描述替换关系,所述替换关系是将所述语句描述替换为所述意图描述符号的关系;基于所述提示模板语料和所述原生提示模板,训练所述领域nlp模型,以获得优化领域nlp模型。2.根据权利要求1所述的自然语言处理模型的优化方法,其特征在于,其中,基于遮掩语言模型任务,训练通用nlp模型。3.根据权利要求1所述的自然语言处理模型的优化方法,其特征在于,所述确定与所述语料数据中语句描述对应的意图描述符号,包括:获取所述语料数据中语句描述的意图描述;生成或指定所述意图描述的意图描述符号。4.根据权利要求1所述的自然语言处理模型的优化方法,其特征在于,其中,所述原生提示模板包括:位置符和所述替换关系的模板描述,所述位置符用于指示在所述模板描述中填入语句描述的词序和填入意图描述符号的词序。5.根据权利要求4所述的自然语言处理模型的优化方法,其特征在于,其中,在用于生成提示模板语料的至少两个原生提示模板之间,模板描述不相同。6.根据权利要求1至5中任意一项所述的自然语言处理模型的优化方法,其特征在于,所述基于所述提示模板语料和所述原生提示模板,训练所述领域nlp模型,包括:确定所述提示模板语料与所述原生提示模板之间语句描述的字词偏移量;基于所述字词偏移量,调整所述原生提示模板在作为所述领域nlp模型的输入时的位置编码;将正负样本、所述原生提示模板和调整后的位置编码,输入所述领域nlp模型,并使用对比学习方法进行模型训练,所述正负样本是基于所述提示模板语料构造的。7.根据权利要求6所述的自然语言处理模型的优化方法,其特征在于,构造所述正负样本的方法包括:基于第一提示模板语料集,构成正样本,所述第一提示模板语料集包括至少两个提示模板语料,所述第一提示模板语料集中提示模板语料之间的模板描述不同、且语句描述相同;基于第二提示模板语料集,构成负样本,所述第二提示模板语料集包括至少两个提示模板语料,所述第二提示模板语料集中提示模板语料之间的语句描述不相同。8.一种智能客服的应答方法,其特征在于,该应答方法包括:获取语句描述;基于所述语句描述和优化领域nlp模型,确定返回的语句描述;其中,所述优化领域nlp模型是通过权利要求1至7中任意一项所述的自然语言处理模型的优化方法获得的。9.一种会话意图分类方法,其特征在于,该会话意图分类方法包括:
获取终端设备的会话消息,所述会话消息包括客户标识和语句描述;基于所述语句描述和优化领域nlp模型,确定与所述客户标识对应的意图分类;其中,所述优化领域nlp模型是通过权利要求1至7中任意一项所述的自然语言处理模型的优化方法获得的。10.一种自然语言处理系统,其特征在于,该自然语言处理系统包括:训练模块,用于基于目标领域的语料数据,训练通用nlp模型,以获得领域nlp模型;确定模块,用于确定与所述语料数据中语句描述对应的意图描述符号;生成模块,用于基于所述语句描述和所述意图描述符号,通过原生提示模板生成提示模板语料,所述原生提示模板用于描述替换关系,所述替换关系是将所述语句描述替换为所述意图描述符号的关系;优化模块,用于基于所述提示模板语料和所述原生提示模板,训练所述领域nlp模型,以获得优化领域nlp模型。11.一种电子设备,其特征在于,该电子设备包括:至少一个处理器;存储器,与所述至少一个处理器连接;其中,所述存储器存储有能被所述至少一个处理器执行的指令,所述至少一个处理器通过执行所述存储器存储的指令实现权利要求1至9中任意一项权利要求所述的方法。12.一种机器可读存储介质,存储有机器指令,当所述机器指令在机器上运行时,使得机器执行权利要求1至9中任意一项权利要求所述的方法。
技术总结
本发明提供一种自然语言处理模型的优化方法、应答方法及系统,属于人工智能技术领域。所述方法包括:基于目标领域的语料数据,训练通用NLP模型,以获得领域NLP模型;确定与所述语料数据中语句描述对应的意图描述符号;基于所述语句描述和所述意图描述符号,通过原生提示模板生成提示模板语料,所述原生提示模板用于描述替换关系,所述替换关系是将所述语句描述替换为所述意图描述符号的关系;基于所述提示模板语料和所述原生提示模板,训练所述领域NLP模型,以获得优化领域NLP模型。本发明可用于智能客服领域提供机器客服与客户的会话消息服务。息服务。息服务。
技术研发人员:李犇 张杰 于皓 罗华刚
受保护的技术使用者:北京中关村科金技术有限公司
技术研发日:2023.09.13
技术公布日:2023/10/20
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
航空商城 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/