CN115587598A - 多轮对话改写方法、设备及介质 - Google Patents
多轮对话改写方法、设备及介质 Download PDFInfo
- Publication number
- CN115587598A CN115587598A CN202211371860.7A CN202211371860A CN115587598A CN 115587598 A CN115587598 A CN 115587598A CN 202211371860 A CN202211371860 A CN 202211371860A CN 115587598 A CN115587598 A CN 115587598A
- Authority
- CN
- China
- Prior art keywords
- type
- rewriting
- sentence
- sentences
- recognition
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
- G06F40/35—Discourse or dialogue representation
Abstract
本申请涉及一种多轮对话改写方法、设备及介质,属于深度学习技术领域,该方法包括:获取用户与智能对话系统的历史对话语句和本轮待应答语句;确定本轮待应答语句的改写类型;在历史对话语句中确定与改写类型相符的识别词;在本轮待应答语句中确定与改写类型相符的抽取词;按照改写类型指示的改写方式使用抽取词改写识别词,得到改写后的待应答语句;可以解决由于需要将对话数据从第一句开始编码成序列,并生成与序列对应的标签,且后续还需要根据标签查找需要改写的序列,这就会导致完整语句的生成过程需要耗费较长的时间,从而导致系统生成回答语句较慢,影响用户体验的问题。
Description
【技术领域】
本申请涉及一种多轮对话改写方法、设备及介质,属于深度学习技术领域。
【背景技术】
多轮对话改写是指将一个信息不完整的残缺语句重写为一个语义信息完整、可脱离上下文独立理解的完整语句的技术。单轮对话是指用户输入的一次询问语句、和与询问语句对应的系统应答语句。多轮对话改写通常应用于智能对话系统中,以供智能对话系统对用户的询问语句做出有效应答。而在用户与智能对话系统的多轮对话中,用户通常会输入省略或者指代性的询问语句,由于智能对话系统无法理解语义不全的残缺语句,因此需要使用多轮对话改写对用户输入的残缺语句进行改写。
在传统的多轮对话改写方法中,通常是将历史单轮对话和当前的残缺语句作为对话数据输入预训练模型,将对话数据从第一句话开始按照单词或者短语编码成不同的序列,基于不同的序列生成不同的标签,残缺语句中的标签用于指示需要删改或添加的单词,历史单轮对话中的标签用于指示需要添加或者替换到残缺语句中相同标签位置的单词,再依据标签将对应的序列通过机器翻译模型解码后得到改写后的完整语句。
但是,由于需要将对话数据从第一句开始编码成序列,并生成与序列对应的标签,且后续还需要根据标签查找需要改写的序列,这就会导致完整语句的生成过程需要耗费较长的时间,从而导致系统生成回答语句较慢,影响用户体验的问题。
【发明内容】
本申请提供了一种多轮对话改写方法、设备及介质,可以解决由于需要将对话数据从第一句开始编码成序列,并生成与序列对应的标签,且后续还需要根据标签查找需要改写的序列,这就会导致完整语句的生成过程需要耗费较长的时间,从而导致系统生成回答语句较慢,影响用户体验的问题。本申请提供如下技术方案:
第一方面,提供一种多轮对话改写方法,应用于智能对话系统,所述方法包括:
获取用户与所述智能对话系统的历史对话语句和本轮待应答语句;所述历史对话语句包括至少一次历史待应答语句和每次历史待应答语句对应的系统应答语句;
确定所述本轮待应答语句的改写类型;
在所述历史对话语句中确定与所述改写类型相符的识别词;
在所述本轮待应答语句中确定与所述改写类型相符的抽取词;
按照所述改写类型指示的改写方式使用所述抽取词改写所述识别词,得到改写后的待应答语句。
可选地,所述确定所述本轮待应答语句的改写类型,包括:
获取预设的类型提示信息和第一识别模型,所述类型提示信息用于指示所述第一识别模型执行识别改写类型的任务;
将所述历史对话语句、本轮待应答语句和类型提示信息合并,得到类型数据集;
将所述类型数据集输入所述第一识别模型,得到所述改写类型。
可选地,获取预设的第一识别模型之前,还包括:
将第一历史训练语句、第一待应答训练语句和类型提示信息合并,得到类型识别训练数据;
将所述类型识别训练数据输入初始第一识别模型,得到第一待应答训练语句对应的初始改写类型;
使用第一待应答训练语句对应的真实改写类型与所述初始改写类型进行比较,得到第一比较结果;
使用第一比较结果对初始第一识别模型进行训练,得到所述第一识别模型。
可选地,获取预设的类型提示信息之前,还包括:
获取提示信息模板;
使用所述提示信息模板按照所述第一识别模型的识别目的生成提示信息,所述识别目的包括识别改写类型,相应地,所述提示信息包括所述类型提示信息。
可选地,所述在所述历史对话语句中确定与所述改写类型相符的识别词,包括:
获取预设的抽取提示信息和第二识别模型,所述抽取提示信息用于指示所述第二识别模型执行抽取识别词的任务;
将所述历史对话语句、本轮待应答语句和抽取提示信息合并,得到抽取数据集;
将所述抽取数据集输入第二识别模型,得到所述识别词。
可选地,获取预设的第二识别模型之前,还包括:
将第二历史训练语句、第二待应答训练语句和抽取提示信息合并,得到抽取训练数据;
将所述抽取训练数据输入初始第二识别模型,得到第二待应答训练语句对应的初始识别词;
使用第二待应答训练语句对应的真实识别词与所述初始识别词进行比较,得到第二比较结果;
使用第二比较结果对初始第二识别模型进行训练,得到所述第二识别模型。
可选地,所述改写类型包括:替换和补全;
所述按照所述改写类型指示的改写方式使用所述抽取词改写所述识别词,得到改写后的待应答语句,包括:
在所述改写类型为替换的情况下,将所述抽取词替换为所述识别词;
在所述改写类型为补全的情况下,基于所述抽取词的位置添加所述识别词。
可选地,所述获取用户与所述智能对话系统的历史对话语句和本轮待应答语句之前,还包括:
获取用户与所述智能对话系统的初始历史对话语句和初始本轮待应答语句;所述初始历史对话语句包括至少一次初始历史待应答语句和每次初始历史待应答语句对应的初始系统应答语句;
对所述初始历史对话语句进行语法纠错和/或类型变换,得到所述历史对话语句和本轮待应答语句。
第二方面,提供一种电子设备,所述电子设备包括处理器和与所述处理器相连的存储器,所述存储器中存储有程序,所述处理器执行所述程序时用于实现第一方面提供的多轮对话改写方法。
第三方面,提供一种计算机可读存储介质,所述存储介质中存储有程序,所述程序被处理器执行时用于实现第一方面提供的多轮对话改写方法。
本申请的有益效果至少包括:通过获取用户与智能对话系统的历史对话语句和本轮待应答语句;历史对话语句包括至少一次历史待应答语句和每次历史待应答语句对应的系统应答语句,确定本轮待应答语句的改写类型,在历史对话语句中确定与改写类型相符的识别词,在本轮待应答语句中确定与改写类型相符的抽取词,按照改写类型指示的改写方式使用抽取词改写识别词,得到改写后的待应答语句;可以解决由于需要将对话数据从第一句开始编码成序列,并生成与序列对应的标签,且后续还需要根据标签查找需要改写的序列,这就会导致完整语句的生成过程需要耗费较长的时间,从而导致系统生成回答语句较慢,影响用户体验的问题;由于首先获取本轮待应答语句对应的改写类型,再通过改写类型获取需要改写的识别词,而不需要再根据对话数据的序列生成所有词汇的标签,也不需要再根据标签查找需要改写的序列,所以可以缩短完整语句的生成时间,从而提高系统生成回答语句的速度。
另外,通过将历史对话语句、本轮待应答语句和类型提示信息合并,得到类型数据集,将类型数据集输入第一识别模型,得到改写类型,可以使第一识别模型根据历史对话语句与本轮待应答语句之间的语义联系获取本轮待应答语句对应的改写类型,能够提高模型输出的改写类型的准确率。
另外,通过将类型提示信息与第一历史训练语句、第一待应答训练语句合并得到类型识别训练数据,用以训练初始第一模型。由于类型提示信息可以指示模型执行识别改写类型的任务,因此可以充分发挥初始第一识别模型具有的先验知识优势,同时还能够减少模型训练时使用的训练数据,减少训练资源的消耗。
另外,由于模型的任务目的不同,对应的提示信息也不同,而与任务目的不匹配的提示信息会导致模型的任务效果较差,因此通过使用提示信息模板生成提示信息,可以获得与模型的任务目的匹配的提示信息,因此可以提高模型的任务效果;并且,由于不同的提示信息可以指示模型执行不同的任务以实现不同的任务目的,因此可以使用同一个模型执行不同的任务,还可以提高模型输出的灵活性。
另外,对获取的初始历史对话语句和初始本轮待应答语句进行语法纠错和/或类型变换,可以避免智能对话系统无法处理不同类型的数据的问题,同时还能够避免由于语法错误导致智能对话系统出现识别错误的问题,因此,可以提高智能对话系统的识别准确率。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,并可依照说明书的内容予以实施,以下以本申请的较佳实施例并配合附图详细说明如后。
【附图说明】
图1是本申请一个实施例提供的多轮对话改写方法的流程图;
图2是本申请一个实施例提供的多轮对话改写方法的装置的框图;
图3是本申请一个实施例提供的电子设备的框图。
【具体实施方式】
下面结合附图和实施例,对本申请的具体实施方式做进一步详细描述。以下实施例用于说明本申请,但不用来限制本申请的范围。
首先,对本申请实施例涉及的若干名词进行介绍。
智能对话系统:是指使用各种智能算法,使得机器理解人类语言,并与人类进行有效的沟通对话,进而根据对人类语言中的意图进行理解并作出回答的系统。
预训练模型:是指已经通过大量的未标记数据进行自监督学习完成预训练的模型。
其中,自监督学习(self-supervised learning,SSL)能够学习到一种通用的特征表达用于真正想要解决的任务。其主要的方式就是通过自己监督自己,具体地,它利用无标签数据本身,构造一个辅助的任务,针对这个辅助任务,可以从数据本身中得到标签,然后有监督的训练网络。比如把一段话里面的几个单词去掉,用它的上下文去预测缺失的单词。
提示学习(Prompt-Learning)机制是一种在不显著改变预训练模型结构和参数的情况下,通过向输入增加″提示信息″、将真正想要解决的任务改为文本生成任务。Prompt即为提示信息,它伴随着数据一起输入预训练模型,告诉并指导预训练模型接下来应当执行什么任务。
图1是本申请一个实施例提供的多轮对话改写方法的流程图。该方法应用智能对话系统中,示意性地,在下述实施例中以智能对话系统安装于电子设备中为例进行说明。下述实施例以该方法应用于电子设备中,具体应用于电子设备中的处理器中为例进行说明,其中,电子设备包括但不限于:移动设备、平板电脑、计算机等,本实施例不对电子设备的实现方式作限定。
在实际实现时,该方法也可以用于与电子设备通信相连的其他设备中,比如:用户终端、或者服务器等,其中,用户终端包括但不限于:手机、计算机、平板电脑、可穿戴式设备等,本实施例不对其他设备的实现方式和用户终端的实现方式作限定。
该方法至少包括以下几个步骤:
步骤101,获取用户与智能对话系统的历史对话语句和本轮待应答语句。其中,历史对话语句包括至少一次历史待应答语句和每次历史待应答语句对应的系统应答语句。
智能对话系统在获取到用户输入的语音数据的情况下,对该语音数据进行意图识别;在识别到语音数据的语义的情况下,使用预设的对话算法生成该语音数据的应答语句;在未识别到语音数据的语义的情况下,确定该语音数据为本轮待应答语句,以执行步骤102-105对该本轮待应答语句进行改写,使用预设的对话算法生成改写后的待应答语句的应答语句。可选地,在生成改写后的待应答语句的应答语句后,该本轮待应答语句和改写后的待应答语句的应答语句可以作为后续对话的历史对话语句使用,以对后续对话中的待应答语句进行改写。
其中,意图识别是指识别文本中蕴含的主题和意图。意图识别算法包括:基于词向量的意图识别、基于CNN的意图识别、或者基于RNN的意图识别等识别算法等。
因此,本实施例中,本轮待应答语句是语义无法识别需要进行改写的残缺语句,历史对话语句是已经进行过改写、或者无需改写的语义完整的完整语句。
由于用户在与智能对话系统进行多轮对话时,通常会将历史对话语句中出现的部分词汇在本轮待应答语句中省略,或者使用指代性词汇替换该部分词汇,因此,会导致本轮待应答语句的语义不完整。
例如:
历史对话语句为:
用户:″姚明出生在哪一年″;
智能对话系统:″姚明出生在1980年″;
本轮待应答语句为:
用户:″他的妻子是谁″。
在本轮待应答语句中存在代词″他″,代词″他″指代历史待应答语句中的″姚明″,此时,如果仅使用本轮待应答语句,则智能对话系统无法识别代词″他″的含义,导致智能对话系统无法输出有效应答,因此智能对话系统需要获取至少一轮历史对话语句,从而通过历史对话语句确定本轮待识别语句中的省略或者代词指示的信息。
智能对话系统采集到用户输入的初始待应答语句后,该初始待应答语句在智能对话系统中存储的数据类型与智能对话系统能够处理的数据类型可能不一致,此时,会出现智能对话系统无法对该初始待应答语句进行处理的情况。因此,在初始待应答语句存储时的数据类型与智能对话系统能够处理的数据类型不一致时,需要对数据类型进行变换。并且,用户在与智能对话系统进行对话时,通常存在口语化输入、错别字输入的情况,而智能对话系统对口语化、带有错别字的初始待应答语句的识别效果较差。而在初始待应答语句存在口语化、错别字的情况时,则需要对该初始待应答语句进行语法纠错。
基于上述问题,获取用户与智能对话系统的历史对话语句和本轮待应答语句之前,还包括:获取用户与智能对话系统的初始历史对话语句和初始本轮待应答语句,对初始历史对话语句进行语法纠错和/或类型变换,得到历史对话语句和本轮待应答语句。
其中,初始历史对话语句包括至少一次初始历史待应答语句和每次初始历史待应答语句对应的初始系统应答语句。
语法纠错是指将输入的有语法错误的句子进行修正,输出语法正确的句子。语法错误包括:错字、乱序、标点错误、和/或拼写错误等。
语法纠错的方法包括:语法错误更正(Grammatical Error Correction:Tag,NotRewrite,GECToR)纠错算法、候选召回纠错算法、或者使用语法纠错工具等。
例如,用户输入的语句为″姚明出声在哪一年″,此时使用语法纠错工具对该语句进行语法纠错,得到纠错后的语句″姚明出生在哪一年″。
数据类型变换方法包括:自动类型变换、强制类型变换等。
其中,自动类型变换是在需要进行转换的数据的源类型和目标类型兼容以及目标类型广于源类型时,发生源类型到目标类型的转换。自动类型转换后的数据的精度不会降低。
强制类型变换是在需要进行转换的数据的源类型广于目标类型时强制发生源类型到目标类型的转换。强制类型变换可能会出现数据溢出和数据精度降低的情况。
通过数据类型变换使获取的数据的数据类型与智能对话系统能够处理的数据类型一致,从而使智能对话系统可以对获取的数据进行处理。而通过对初始历史对话语句和初始本轮待应答语句进行语法纠错,可以获得语义清楚的语句,从而提高智能对话系统的识别效果。
步骤102,确定本轮待应答语句的改写类型。
改写类型用于指示应当对本轮待应答语句采取的改写方式。
改写类型包括:替换和补全。
在一个示例中,确定本轮待应答语句的改写类型包括:获取第三识别模型,将历史对话语句和本轮待应答语句合并,得到定制类型数据集,将定制类型数据集输入第三识别模型,得到改写类型。
第三识别模型是预先训练好的神经网络模型,用于识别本轮待应答语句对应的改写类型。
由于本轮待应答语句语义不全,所以第三识别模型仅通过本轮待应答语句获取的改写类型不够准确,因此需要将历史对话语句和本轮待应答语句同时输入第三识别模型,第三识别模型基于历史对话语句与本轮待应答语句之间的语义联系特征,得到准确的改写类型。而由于分次向模型输入历史对话语句和本轮待应答语句时,模型无法获取相关联的历史对话语句和本轮待应答语句之间的语义联系特征,所以,需要将历史对话语句和本轮待应答语句合并,以便将历史对话语句和本轮待应答语句一起输入第三识别模型。
为了避免混淆本轮待应答语句和历史待应答语句,将历史对话语句和本轮待应答语句合并,得到定制类型数据集,包括:按照第一预设规则将历史对话语句和本轮待应答语句合并,得到定制类型数据集。
其中,第一预设规则可以是预先存储在电子设备中的,也可以是从其他设备中获取的,本实施例不对第一预设规则的获取方式作限定。
例如,第一预设规则为:以{历史待应答语句[sep]系统应答语句[sep]本轮待应答语句}的格式将历史对话语句和本轮待应答语句进行合并,得到定制类型数据集。其中,sep为分隔符,用于分隔不同的语句。
可选地,获取第三识别模型之前,需要使用训练数据对初始第三识别模型进行训练,得到第三识别模型。使用训练数据对初始第三识别模型进行训练,得到第三识别模型,包括:将第一历史训练语句和第一待应答训练语句合并,得到定制类型训练数据;将定制类型训练数据输入初始第三识别模型,得到第一待应答训练语句对应的初始改写类型;使用第一待应答训练语句对应的真实改写类型与初始改写类型进行比较,得到第三比较结果;使用第三比较结果对初始第三识别模型进行训练,得到第三识别模型。
示意性地,第一历史训练语句和第一待应答训练语句的获取方式包括:爬虫、和/或公开数据集等,本实施例不对第一历史训练语句和第一待应答训练语句的获取方式作限定。
其中,爬虫又称作网络蜘蛛,是一种按照一定的规则自动抓取网络信息的程序或者脚本。爬虫程序包括:Gogle爬虫程序、百度爬虫程序等。
由于在使用第一待应答训练语句时通常需要联系历史训练语句,即,历史训练语句和第一待应答训练语句之间存在语义联系,因此将第一历史训练数据和第一待应答训练语句基于第一预设规则合并,得到定制类型训练数据,使用定制类型训练数据集训练第三识别模型,可以使模型挖掘到历史训练语句和第一待应答训练语句之间存在语义联系特征,提高获取的改写类型的准确率。
其中,第一定制类型训练数据的格式与定制类型数据集的格式相同。
示意性地,初始第三识别模型为预训练模型。其中,预训练模型包括:双向转换器的解码器(Bidirectional Encoder Representation from Transformers,BERT)+条件随机域(Conditional Random Field,CRF)模型、轻量级的BERT(A Lite BERT,ALBERT)模型、基于BERT微调的二分类模型等,本实施例不对预训练模型的实现方式作限定。
由于预训练模型已经执行过预训练过程,因此存在大量先验知识,再根据真正想要实现的任务进行训练时,可以减少训练时间。
然而,虽然预训练模型中存在大量的先验知识,但是预训练模型无法准确调用与真正想要实现的任务相关的先验知识,难以发挥具有先验知识的优势。所以在进行训练时依然需要耗费大量训练数据对预训练模型进行训练。
因此,在另一个示例中,确定本轮待应答语句的改写类型,包括:获取预设的类型提示信息和第一识别模型;将历史对话语句、本轮待应答语句和类型提示信息合并,得到类型数据集;将类型数据集输入第一识别模型,得到改写类型。
其中,类型提示信息属于提示学习机制,用于指示第一识别模型执行识别改写类型的任务。
由于第一识别模型可能用于执行不同的任务,因此使用类型提示信息可以指示第一识别模型调用预先训练时得到的与识别改写类型相关的知识,从而高效执行识别改写类型的任务。
获取预设的类型提示信息之前,还包括:获取提示信息模板;使用提示信息模板按照第一识别模型的识别目的生成提示信息,识别目的包括识别改写类型,相应地,提示信息包括类型提示信息。
其中,提示信息模板和识别目的可以是用户输入的,也可以是从其他设备获取的,本实施例不对提示信息模板和识别目的的获取方式作限定。
例如,提示信息模板为″CATE是什么″,识别目的为识别″改写类型″,其中,″CATE″用于表征第一识别模型的识别目的,此时,根据提示信息模板和识别目的生成的类型提示信息为″改写类型是什么″。
在实际实现时,提示信息模板也可以是″这是什么CATE″、″CATE″等,其中,″CATE″均是用于表征第一识别模型的识别目的,且不同的识别目的对应不同的提示信息。
将历史对话语句、本轮待应答语句和类型提示信息合并,得到类型数据集,包括:基于第一合并规则,将历史对话语句、本轮待应答语句和类型提示信息合并,得到类型数据集。
其中,第一合并规则可以是预先存储在电子设备中的,也可以是从其他设备中获取的,本实施例不对第一合并规则的获取方式作限定。
具体地,基于第一合并规则:{历史待应答语句[sep]系统应答语句[sep]本轮待应答语句[sep]类型提示信息}的格式将历史对话语句、本轮待应答语句和类型提示信息进行合并,得到类型数据集。其中,sep为分隔符,用于分隔不同的语句。
例如,公开数据集中一组数据为{
用户:″姚明出生于哪一年″;
智能对话系统:″1980年″;
用户:″他的妻子是谁″}
预设的类型提示信息:″改写类型是什么″。
拼接后得到的类型数据集为{姚明出生于哪一年[sep]1980年[sep]他的妻子是谁[sep]改写类型是什么}。
由于在模型使用和模型训练时输入的数据是相同的,因此在获取第一识别模型之前,在对神经网络模型进行预先训练时,也需要引入类型提示信息。
因此,获取预设的第一识别模型之前,还包括:将第一历史训练语句、第一待应答训练语句和类型提示信息合并,得到类型识别训练数据;将类型识别训练数据输入初始第一识别模型,得到第一待应答训练语句对应的初始改写类型;使用第一待应答训练语句对应的真实改写类型与初始改写类型进行比较,得到第一比较结果;使用第一比较结果对初始第一识别模型进行训练,得到第一识别模型。
此时,类型识别训练数据的格式与类型数据集的格式相同。
示意性地,初始第一识别模型可以为预训练模型。
由于类型提示信息可以指示初始第一识别模型调用与识别改写类型相关的先验知识,因此结合提示学习机制与预训练模型,可以使用类型提示信息可以充分发挥预训练模型具有先验知识的优势,从而减少模型训练过程中使用的训练数据,使初始第一识别模型可以在使用少量训练数据的情况下,得到识别准确率较高的第一识别模型。
步骤103,在历史对话语句中确定与改写类型相符的识别词。
识别词是指本应该存在于本轮待应答语句中、但是被代词替代或者被省略的信息。
在一个示例中,在历史对话语句中确定与改写类型相符的识别词,包括:获取预设的抽取提示信息和第二识别模型,抽取提示信息用于指示第二识别模型执行抽取识别词的任务;将历史对话语句、本轮待应答语句和抽取提示信息合并,得到抽取数据集;将抽取数据集输入第二识别模型,得到识别词。
获取预设的抽取提示信息的方式包括但不限于以下几种:
第一种:使用提示信息模板按照第二识别模型的识别目的生成抽取提示信息。
在第一种实现方式中,提示信息模板是类型提示信息和抽取提示信息通用的模板。
例如,提示信息模板为″CATE是什么″,则此时得到的类型提示信息为″改写类型是什么″,抽取提示信息为″识别词是什么″。
由于第二识别模型按照抽取提示信息指示的识别目的执行任务,因此当抽取提示信息指示的识别目的与用户期望第二识别模型识别的真实识别目的不匹配的情况下,第二识别模型到达的识别结果也会与真实识别目的不匹配,所以抽取提示信息与第二识别模型的真实识别目的越匹配,第二识别模型的效果就越好。而在第一种实现方式中,由于抽取提示信息仅包括识别词这一识别目的,并不具有识别词对应的改写类型,而不同改写类型对应的识别词可能不同,这就会导致第二识别模型可能无法根据抽取提示信息确定出需要识别哪一种改写类型对应的识别词,导致识别该识别词的准确性较低的问题,基于此,本实施例还提供下述第二种方式。
第二种:使用提示信息模板和改写类型生成抽取提示信息。不同的改写类型对应不同的抽取提示信息。
在第二种实现方式中,提示信息模板也是类型提示信息和抽取提示信息通用的模板。
例如,当改写类型为″替换类型″时,第二识别模型的识别目的为识别″替换类型的识别词″,此时抽取提示信息为″替换类型的识别词是什么″;当改写类型为″补全类型″时,第二识别模型的识别目的为识别″补全类型的识别词″,此时抽取提示信息为″补全类型的识别词是什么″。
此时,由于抽取提示信息指示的识别目的是用户期望的,因此第二识别模型按照抽取提示信息指示的识别目的执行任务,获取到的识别结果与用户期望的识别目的相匹配,效果更好。
第三种:将类型提示信息中第一识别模型的识别目的替换为第二识别模型的识别目的,得到抽取提示信息。
例如,类型提示信息为″改写类型是什么″,第一识别模型的识别目的为识别″改写类型″,而第二识别模型的识别目的为识别″识别词″;此时,以″改写类型是什么″为模板,使用″识别词″替换该模板中″改写类型″,得到抽取提示信息″识别词是什么″。
可选地,第一识别模型与第二识别模型相同或不同。在第一识别模型和第二识别模型相同的情况下,可以通过不同的提示信息指示模型执行不同的任务。
抽取数据集基于第二合并规则建立,其中,第二合并规则与第一合并规则不同。基于改写类型的不同,抽取数据集也不同。
可选地,获取预设的第二识别模型之前,需要使用训练数据对初始第二识别模型进行训练。其中,使用训练数据对初始第二识别模型进行训练,包括:将第二历史训练语句、第二待应答训练语句和抽取提示信息合并,得到抽取训练数据;将抽取训练数据输入初始第二识别模型,得到第二待应答训练语句对应的初始识别词;使用第二待应答训练语句对应的真实识别词与初始识别词进行比较,得到第二比较结果;使用第二比较结果对初始第二识别模型进行训练,得到第二识别模型。
在一个示例中,第二识别模型使用的训练数据与第一识别模型使用的训练数据不同,此时,第二历史训练语句和第二待应答训练语句存在对应的真实改写类型。由于不同的改写类型对应不同的抽取提示信息。因此,将历史训练语句、待应答训练语句和抽取提示信息合并,得到抽取训练数据之前还包括:获取待应答训练语句的真实改写类型,基于该真实改写类型获取与待应答训练语句对应的抽取提示信息。
在另一个示例中,第二识别模型使用的训练数据与第一识别模型使用的训练数据相同,此时,第二历史训练语句和第二待应答训练语句的改写类型可以使用第一识别模型识别得到,或者,也可以由用户设置,本实施例不对该改写类型的获取方式作限定。以第二历史训练语句和第二待应答训练语句的改写类型可以使用第一识别模型识别得到为例,此时,将历史训练语句、待应答训练语句和抽取提示信息合并,得到抽取训练数据之前还包括:将历史训练语句和待应答训练语句输入第一识别模型,得到改写类型;基于识别得到的改写类型获取与待应答训练语句对应的抽取提示信息。
在本示例中,第二历史训练语句、第二待应答训练语句的获取方式包括:爬虫、和/或公开数据集等,本实施例不对第一历史训练语句和第一待应答训练语句的获取方式作限定。
在另一个示例中,也可以不使用抽取信息提示,此时,在历史对话语句中确定与改写类型相符的识别词,包括:获取第四识别模型;将历史对话语句和本轮待应答语句合并,得到定制抽取数据集;将定制抽取数据集输入第四识别模型,得到识别词。
定制抽取数据集基于第二预设规则建立,此时第二预设规则与第一预设规则相同或不同。
此时,在获取第四识别模型之前,对初始第四识别模型进行训练的训练过程为:将第二历史训练语句和第二待应答训练语句合并,得到定制抽取训练数据;将定制抽取训练数据输入初始第四识别模型,得到第二待应答训练语句对应的初始识别词;使用第二待应答训练语句对应的真实识别词与初始识别词进行比较,得到第四比较结果;使用第四比较结果对初始第四识别模型进行训练,得到第四识别模型。
步骤104,在本轮待应答语句中确定与改写类型相符的抽取词。
其中,根据改写类型的不同,抽取词也会不同。
具体地,在改写类型为替换的情况下,抽取词为与替换类型相对应的替换词。
在改写类型为补全的情况下,抽取词为与补全类型相对应的插入词。
由于在步骤103中将识别词替换为抽取词、和将历史对话语句替换为本轮待应答语句之后,获取抽取词的原理与获取识别词的原理相同,因此,本实施例在此不再一一赘述。
可选地,步骤104也可以先于步骤103之前执行,步骤103和步骤104也可以使用第二识别模型同时执行,本实施例不对步骤103和步骤104的执行顺序作限定。
步骤105,按照改写类型指示的改写方式使用抽取词改写识别词,得到改写后的待应答语句。
示意性地,按照改写类型指示的改写方式使用抽取词改写识别词,得到改写后的待应答语句,包括:在改写类型为替换的情况下,将抽取词替换为识别词;在改写类型为补全的情况下,基于抽取词的位置添加识别词。
例如,历史对话语句为″姚明出生于哪一年″″1980年″;而本轮待应答语句为″他的妻子是谁″,此时智能改写系统识别的改写类型为″替换″,与替换类型对应的抽取词为″他″,而识别词为″姚明″,此时将抽取词替换为识别词,得到改写后的完整语句″姚明的妻子是谁″。
具体地,在改写类型为补全的情况下,可以根据不同需要将识别词添加在抽取词前面的位置、或者添加到抽取词后面的位置。
例如,历史对话语句为″姚明出生于哪一年″″1980年″;而本轮待应答语句为″哪一年退役″,此时智能改写系统识别的改写类型为″补全″,与补全类型对应的抽取词为″哪一年″,而识别词为″姚明″,此时将识别词添加到抽取词的前面,得到改写后的完整语句″姚明哪一年退役″。
综上,本实施例提供的多轮对话改写方法,通过获取用户与智能对话系统的历史对话语句和本轮待应答语句;历史对话语句包括至少一次历史待应答语句和每次历史待应答语句对应的系统应答语句,确定本轮待应答语句的改写类型,在历史对话语句中确定与改写类型相符的识别词,在本轮待应答语句中确定与改写类型相符的抽取词,按照改写类型指示的改写方式使用抽取词改写识别词,得到改写后的待应答语句;可以解决由于需要将对话数据从第一句开始编码成序列,并生成与序列对应的标签,且后续还需要根据标签查找需要改写的序列,这就会导致完整语句的生成过程需要耗费较长的时间,从而导致系统生成回答语句较慢,影响用户体验的问题;由于首先获取本轮待应答语句对应的改写类型,再通过改写类型获取需要改写的识别词,而不需要再根据对话数据的序列生成所有词汇的标签,也不需要再根据标签查找需要改写的序列,所以可以缩短完整语句的生成时间,从而提高系统生成回答语句的速度。
另外,通过将历史对话语句、本轮待应答语句和类型提示信息合并,得到类型数据集,将类型数据集输入第一识别模型,得到改写类型,可以使第一识别模型根据历史对话语句与本轮待应答语句之间的语义联系获取本轮待应答语句对应的改写类型,能够提高模型输出的改写类型的准确率。
另外,通过将类型提示信息与第一历史训练语句、第一待应答训练语句合并得到类型识别训练数据,用以训练初始第一模型。由于类型提示信息可以指示模型执行识别改写类型的任务,因此可以充分发挥初始第一识别模型具有的先验知识优势,同时还能够减少模型训练时使用的训练数据,减少训练资源的消耗。
另外,由于模型的任务目的不同,对应的提示信息也不同,而与任务目的不匹配的提示信息会导致模型的任务效果较差,因此通过使用提示信息模板生成提示信息,可以获得与模型的任务目的匹配的提示信息,因此可以提高模型的任务效果;并且,由于不同的提示信息可以指示模型执行不同的任务以实现不同的任务目的,因此可以使用同一个模型执行不同的任务,还可以提高模型输出的灵活性。
另外,对获取的初始历史对话语句和初始本轮待应答语句进行语法纠错和/或类型变换,可以避免智能对话系统无法处理不同类型的数据的问题,同时还能够避免由于语法错误导致智能对话系统出现识别错误的问题,因此,可以提高智能对话系统的识别准确率。
图2是本申请一个实施例提供的多轮对话改写方法的装置的框图。该装置至少包括以下几个模块:数据获取模块210、类型识别模块220、第一抽取模块230、第二抽取模块240和语句改写模块250。
数据获取模块240,用于获取用户与所述智能对话系统的历史对话语句和本轮待应答语句。
类型识别模块220,用于确定所述本轮待应答语句的改写类型。
第一抽取模块230,用于在所述历史对话语句中确定与所述改写类型相符的识别词。
第二抽取模块240,用于在所述本轮待应答语句中确定与所述改写类型相符的抽取词。
语句改写模块250,用于按照所述改写类型指示的改写方式使用所述抽取词改写所述识别词,得到改写后的待应答语句。
相关细节参考上述方法实施例。
需要说明的是:上述实施例中提供的多轮对话改写方法的装置在进行多轮对话改写时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将多轮对话改写方法的装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的多轮对话改写方法的装置与多轮对话改写方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图3是本申请一个实施例提供的电子设备的框图。该设备至少包括处理器301和存储器302。
处理器301可以包括一个或多个处理核心,比如:4核心处理器、8核心处理器等。处理器301可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器301也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器301可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器301还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器302可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器302还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器302中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器301所执行以实现本申请中方法实施例提供的多轮对话改写方法。
在一些实施例中,电子设备还可选包括有:外围设备接口和至少一个外围设备。处理器301、存储器302和外围设备接口之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口相连。示意性地,外围设备包括但不限于:射频电路、触摸显示屏、音频电路、和电源等。
当然,电子设备还可以包括更少或更多的组件,本实施例对此不作限定。
可选地,本申请还提供有一种计算机可读存储介质,所述计算机可读存储介质中存储有程序,所述程序由处理器加载并执行以实现上述方法实施例的多轮对话改写方法。
可选地,本申请还提供有一种计算机产品,该计算机产品包括计算机可读存储介质,所述计算机可读存储介质中存储有程序,所述程序由处理器加载并执行以实现上述方法实施例的多轮对话改写方法。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种多轮对话改写方法,其特征在于,应用于智能对话系统,所述方法包括:
获取用户与所述智能对话系统的历史对话语句和本轮待应答语句;所述历史对话语句包括至少一次历史待应答语句和每次历史待应答语句对应的系统应答语句;
确定所述本轮待应答语句的改写类型;
在所述历史对话语句中确定与所述改写类型相符的识别词;
在所述本轮待应答语句中确定与所述改写类型相符的抽取词;
按照所述改写类型指示的改写方式使用所述抽取词改写所述识别词,得到改写后的待应答语句。
2.根据权利要求1所述的方法,其特征在于,所述确定所述本轮待应答语句的改写类型,包括:
获取预设的类型提示信息和第一识别模型,所述类型提示信息用于指示所述第一识别模型执行识别改写类型的任务;
将所述历史对话语句、本轮待应答语句和类型提示信息合并,得到类型数据集;
将所述类型数据集输入所述第一识别模型,得到所述改写类型。
3.根据权利要求2所述的方法,其特征在于,获取预设的第一识别模型之前,还包括:
将第一历史训练语句、第一待应答训练语句和类型提示信息合并,得到类型识别训练数据;
将所述类型识别训练数据输入初始第一识别模型,得到第一待应答训练语句对应的初始改写类型;
使用第一待应答训练语句对应的真实改写类型与所述初始改写类型进行比较,得到第一比较结果;
使用第一比较结果对初始第一识别模型进行训练,得到所述第一识别模型。
4.根据权利要求2所述的方法,其特征在于,获取预设的类型提示信息之前,还包括:
获取提示信息模板;
使用所述提示信息模板按照所述第一识别模型的识别目的生成提示信息,所述识别目的包括识别改写类型,相应地,所述提示信息包括所述类型提示信息。
5.根据权利要求1所述的方法,其特征在于,所述在所述历史对话语句中确定与所述改写类型相符的识别词,包括:
获取预设的抽取提示信息和第二识别模型,所述抽取提示信息用于指示所述第二识别模型执行抽取识别词的任务;
将所述历史对话语句、本轮待应答语句和抽取提示信息合并,得到抽取数据集;
将所述抽取数据集输入第二识别模型,得到所述识别词。
6.根据权利要求5所述的方法,其特征在于,获取预设的第二识别模型之前,还包括:
将第二历史训练语句、第二待应答训练语句和抽取提示信息合并,得到抽取训练数据;
将所述抽取训练数据输入初始第二识别模型,得到第二待应答训练语句对应的初始识别词;
使用第二待应答训练语句对应的真实识别词与所述初始识别词进行比较,得到第二比较结果;
使用第二比较结果对初始第二识别模型进行训练,得到所述第二识别模型。
7.根据权利要求1所述的方法,其特征在于,所述改写类型包括:替换和补全;
所述按照所述改写类型指示的改写方式使用所述抽取词改写所述识别词,得到改写后的待应答语句,包括:
在所述改写类型为替换的情况下,将所述抽取词替换为所述识别词;
在所述改写类型为补全的情况下,基于所述抽取词的位置添加所述识别词。
8.根据权利要求1所述的方法,其特征在于,所述获取用户与所述智能对话系统的历史对话语句和本轮待应答语句之前,还包括:
获取用户与所述智能对话系统的初始历史对话语句和初始本轮待应答语句;所述初始历史对话语句包括至少一次初始历史待应答语句和每次初始历史待应答语句对应的初始系统应答语句;
对所述初始历史对话语句进行语法纠错和/或类型变换,得到所述历史对话语句和本轮待应答语句。
9.一种电子设备,其特征在于,所述电子设备包括处理器和与所述处理器相连的存储器,所述存储器中存储有程序,所述处理器执行所述程序时用于实现如权利要求1至8任一所述的多轮对话改写方法。
10.一种计算机可读存储介质,其特征在于,所述存储介质中存储有程序,所述程序被处理器执行时用于实现如权利要求1至8任一所述的多轮对话改写方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211371860.7A CN115587598A (zh) | 2022-11-03 | 2022-11-03 | 多轮对话改写方法、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211371860.7A CN115587598A (zh) | 2022-11-03 | 2022-11-03 | 多轮对话改写方法、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115587598A true CN115587598A (zh) | 2023-01-10 |
Family
ID=84782332
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211371860.7A Pending CN115587598A (zh) | 2022-11-03 | 2022-11-03 | 多轮对话改写方法、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115587598A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116737756A (zh) * | 2023-08-15 | 2023-09-12 | 腾讯科技(深圳)有限公司 | 一种数据查询方法、装置、设备及存储介质 |
CN116881429A (zh) * | 2023-09-07 | 2023-10-13 | 四川蜀天信息技术有限公司 | 一种基于多租户的对话模型交互方法、装置及存储介质 |
-
2022
- 2022-11-03 CN CN202211371860.7A patent/CN115587598A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116737756A (zh) * | 2023-08-15 | 2023-09-12 | 腾讯科技(深圳)有限公司 | 一种数据查询方法、装置、设备及存储介质 |
CN116737756B (zh) * | 2023-08-15 | 2023-11-03 | 腾讯科技(深圳)有限公司 | 一种数据查询方法、装置、设备及存储介质 |
CN116881429A (zh) * | 2023-09-07 | 2023-10-13 | 四川蜀天信息技术有限公司 | 一种基于多租户的对话模型交互方法、装置及存储介质 |
CN116881429B (zh) * | 2023-09-07 | 2023-12-01 | 四川蜀天信息技术有限公司 | 一种基于多租户的对话模型交互方法、装置及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110096570B (zh) | 一种应用于智能客服机器人的意图识别方法及装置 | |
CN112100349B (zh) | 一种多轮对话方法、装置、电子设备及存储介质 | |
CN109271631B (zh) | 分词方法、装置、设备及存储介质 | |
CN108710704B (zh) | 对话状态的确定方法、装置、电子设备及存储介质 | |
CN115587598A (zh) | 多轮对话改写方法、设备及介质 | |
CN111062217B (zh) | 语言信息的处理方法、装置、存储介质及电子设备 | |
CN111402861B (zh) | 一种语音识别方法、装置、设备及存储介质 | |
CN109241330A (zh) | 用于识别音频中的关键短语的方法、装置、设备和介质 | |
CN111027291B (zh) | 文本中标点符号添加、模型训练方法、装置及电子设备 | |
WO2021143206A1 (zh) | 单语句自然语言处理方法、装置、计算机设备及可读存储介质 | |
CN112463942A (zh) | 文本处理方法、装置、电子设备及计算机可读存储介质 | |
CN110942774A (zh) | 一种人机交互系统、其对话方法、介质和设备 | |
CN110956958A (zh) | 搜索方法、装置、终端设备及存储介质 | |
CN113935331A (zh) | 异常语义截断检测方法、装置、设备及介质 | |
CN113326367A (zh) | 基于端到端文本生成的任务型对话方法和系统 | |
CN113012683A (zh) | 语音识别方法及装置、设备、计算机可读存储介质 | |
CN114783405B (zh) | 一种语音合成方法、装置、电子设备及存储介质 | |
CN112002325B (zh) | 多语种语音交互方法和装置 | |
CN112988996B (zh) | 知识库生成方法、装置、设备及存储介质 | |
CN114155832A (zh) | 基于深度学习的语音识别方法、装置、设备及介质 | |
CN113283218A (zh) | 一种语义文本压缩方法及计算机设备 | |
CN113761943A (zh) | 司法对话的生成方法和模型训练方法、装置以及存储介质 | |
CN113392645B (zh) | 一种韵律短语边界预测方法、装置、电子设备和存储介质 | |
CN113192487B (zh) | 支持多语言混合的语音识别方法、装置、设备及存储介质 | |
CN115934920B (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 |