掌桥专利:专业的专利平台
掌桥专利
首页

技术领域

本公开涉及人机对话技术。更具体地,本公开涉及一种对话生成方法及其装置。

背景技术

随着智能终端和信息网络技术的发展,基于语音/文本识别的各种人机交互应用应运而生。例如,通过向移动终端(例如,手机)输入语音或文本来进行内容搜索、通过向移动终端输入语音或文本来进行对电子设备的控制、通过向移动终端输入语音或文本来进行问答式聊天等。例如,以智能手机或智能音箱作为入口,通过语音/文本交互的方式使用电器/天气/股票/音乐/交通状况/闹钟/提醒等语音/文本交互应用来实现上述功能。其中,每种语音/文本交互应用又称为一种语义技能。

对于现有的人机对话系统(诸如智能音箱),用户可以输入自定义问答模板,例如,输入问句“I am Mike”以及相应的答句“Hello,Mike master”。当用户对人机对话系统输入语音“I am Mike”时,人机对话系统可输出语音“Hello,Mike master”。然而,当用户说出类似的问句(诸如“My name is Selina”)时,人机对话系统无法识别出“I am Mike”与“Myname is Selina”是相似的问句,而仅采用默认统一回复“Hello”,因此,无法输出用户期望的相似的回答“Hello,Selina master”。

发明内容

根据本公开的示例性实施例提供了一种对话生成方法以及对话生成装置,以至少解决上述提及的问题。

根据本公开的示例性实施例,提供一种对话生成方法,所述方法可包括:获取输入语音;确定所述输入语音的意图;根据所述意图来生成针对所述输入语音的答句。

可选地,确定所述输入语音的意图的步骤可包括将所述输入语音输入至第一人工智能模型以输出所述输入语音的意图。

可选地,第一人工智能模型可基于以下方式被训练成:利用预先定义的问句和与预先定义的问句的意图相应的扩展语句以及其他意图的干扰问句作为第一人工智能模型的输入并且利用预先定义的问句的意图作为第一人工智能模型的输出来训练第一人工智能模型。

可选地,根据所述意图来生成针对所述输入语音的答句的步骤可包括:确定是否存在与所述意图相匹配的问答模板;在确定存在与所述意图相匹配的问答模板的情况下,利用该问答模板来生成针对所述输入语音的答句,其中,问答模板是基于对预先定义的问句和相应答句生成的。

可选地,生成的答句可与预先定义的答句具有相同或相似的句式。

可选地,问答模板中的答句模板可与预先定义的答句具有相同或相似的句式。

可选地,问答模板可基于以下方式被生成:对预先定义的问句和相应答句进行分析以确定该问句和该答句中的可变词和句式;将可变词替换为通用符号并基于该问句和该答句的句式来生成问答模板。

可选地,对预先定义的问句和相应答句进行分析以确定该问句和该答句中的可变词以及该问句和该答句的句式的步骤包括对预先定义的问句和相应的答句进行句法分析和分词处理,并且根据句法分析结果和分词处理结果来确定该问句和该答句的可变词和句式。

可选地,确定该问句和该答句中的可变词的步骤可包括:将分词处理结果中的高频词作为可变词;或者将分词处理结果中由用户选择的词语作为可变词。

可选地,所述对话生成方法还可包括:在确定不存在与所述意图相匹配的回答模板的情况下,基于所述输入语音利用第二人工智能模型来输出对所述输入语音的答句。

可选地,第二人工智能模型可基于以下方式被训练成:获取问答样本,其中,每个问答样本包括问句和对问句的答句;将问句作为第二人工智能模型的输入并且将答句作为第二人工智能模型的输出来训练第二人工智能模型。

根据本公开的另一示例性实施例,提供一种对话生成装置,所述装置可包括:获取模块,被配置为获取输入语音;以及处理模块,被配置为确定所述输入语音的意图,并且根据所述意图来生成针对所述输入语音的答句。

可选地,处理模块可被配置为将所述输入语音输入至第一人工智能模型以输出所述输入语音的意图。

可选地,第一人工智能模型可基于以下方式被训练成:利用预先定义的问句和与预先定义的问句的意图相应的扩展语句以及其他意图的干扰问句作为第一人工智能模型的输入并且利用预先定义的问句的意图作为第一人工智能模型的输出来训练第一人工智能模型。

可选地,处理模块可被配置为:确定是否存在与所述意图相匹配的问答模板;在确定存在与所述意图相匹配的问答模板的情况下,利用该问答模板来生成针对所述输入语音的答句,其中,问答模板是基于对预先定义的问句和相应答句生成的。

可选地,生成的答句可与预先定义的答句具有相同或相似的句式。

可选地,问答模板中的答句模板可与预先定义的答句具有相同或相似的句式。

可选地,问答模板可由处理模块基于以下方式被生成:对预先定义的问句和相应答句进行分析以确定该问句和该答句中的可变词以及句式;将可变词替换为通用符号并基于该问句和该答句的句式来生成问答模板。

可选地,处理模块可对预先定义的问句和相应的答句进行句法分析和分词处理,并且根据句法分析结果和分词处理结果来确定该问句和该答句的可变词和句式。

可选地,处理模块可将分词处理结果中的高频词作为可变词,或者将分词处理结果中由用户选择的词语作为可变词。

可选地,处理模块可被配置为:在确定不存在与所述意图相匹配的回答模板的情况下,基于所述输入语音利用第二人工智能模型来输出对所述输入语音的答句。

可选地,第二人工智能模型可基于以下方式被训练成:获取问答样本,其中,每个问答样本包括问句和对问句的答句;将问句作为第二人工智能模型的输入并且将答句作为第二人工智能模型的输出来训练第二人工智能模型。

根据本公开的示例性实施例,提供一种计算机可读存储介质,其上存储有指令,当所述指令被处理器执行时,实现根据本公开的示例性实施例的对话生成方法。

根据本公开的示例性实施例,提供一种计算装置,包括:处理器;存储器,存储有指令,当所述指令被处理器执行时,实现根据本公开的示例性实施例的对话生成方法。

上述对话生成方法及其装置,通过预测用户输入语音的意图生成对用户输入语音的回答,避免了用户通过手动编辑多套问答模型的操作,提升了使用效率。此外,还能够改善用户与交互系统进行交互的体验。

将在接下来的描述中部分阐述本公开总体构思另外的方面和/或优点,还有一部分通过描述将是清楚的,或者可以经过本公开总体构思的实施而得知。

附图说明

通过结合附图,从实施例的下面描述中,本公开这些和/或其它方面及优点将会变得清楚,并且更易于理解,其中:

图1示出根据本公开示例性实施例的对话生成方法的流程图;

图2示出根据本公开示例性实施例的训练第一人工智能模型的方法的流程图;

图3示出根据本公开示例性实施例的训练第一人工智能模型的示意图;

图4示出根据本公开另一示例性实施例的对话生成方法的流程图;

图5示出根据本公开示例性实施例的对话生成装置的框图;

图6示出根据本公开示例性实施例的计算装置的示意图。

具体实施方式

提供下面的具体实施方式以帮助读者获得对在此描述的方法、设备和/或系统的全面理解。然而,在理解本申请的公开之后,在此描述的方法、设备和/或系统的各种改变、修改和等同物将是清楚的。例如,在此描述的操作的顺序仅是示例,并且不限于在此阐述的那些顺序,而是除了必须以特定的顺序发生的操作之外,可如在理解本申请的公开之后将是清楚的那样被改变。此外,为了更加清楚和简明,本领域已知的特征的描述可被省略。

在此描述的特征可以以不同的形式来实现,而不应被解释为限于在此描述的示例。相反,已提供在此描述的示例,以仅示出实现在此描述的方法、设备和/或系统的许多可行方式中的一些可行方式,所述许多可行方式在理解本申请的公开之后将是清楚的。

在此使用的术语仅用于描述各种示例,并不将用于限制公开。除非上下文另外清楚地指示,否则单数形式也意在包括复数形式。术语“包含”、“包括”和“具有”说明存在叙述的特征、数量、操作、构件、元件和/或它们的组合,但不排除存在或添加一个或多个其他特征、数量、操作、构件、元件和/或它们的组合。

除非另有定义,否则在此使用的所有术语(包括技术术语和科学术语)具有与由本公开所属领域的普通技术人员在理解本公开之后通常理解的含义相同的含义。除非在此明确地如此定义,否则术语(诸如,在通用词典中定义的术语)应被解释为具有与它们在相关领域的上下文和本公开中的含义一致的含义,并且不应被理想化或过于形式化地解释。

需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。

此外,在示例的描述中,当认为公知的相关结构或功能的详细描述将引起对本公开的模糊解释时,将省略这样的详细描述。

在下文中,将参照附图详细描述实施方式。然而,实施方式可以以各种形式实现,并且不限于在此描述的示例。

图1示出根据本公开示例性实施例的对话生成方法的流程图。其中,图1示出的对话生成方法可在与电子装置连接的网络端或在电子装置本地执行。

电子装置可以是任何具有语音/文本接收、语音/文本识别和执行命令等功能的可进行人机交互的电子设备,例如,用户可通过诸如安装在移动终端设备的语音助手(例如,Samsung的bixby、Apple的Siri等)来进行人机交互,但本申请不限于此。

在本公开的示例性实施例中,电子装置可包括例如但不限于便携式通信装置(例如,智能电话)、计算机装置、便携式多媒体装置、便携式医疗装置、相机、可穿戴装置等。根据本公开的实施例,电子装置不限于以上所述。

参照图1,在步骤S101,获取输入语音。例如,用户可对电子装置输入语音。

在步骤S102,确定输入语音的意图。作为示例,可将获取的输入语音输入至第一人工智能模型以输出该输入语音的意图。第一人工智能模型可基于以下方式被训练成:利用预先定义的问句和与预先定义的问句的意图相应的扩展语句以及其他意图的干扰问句作为第一人工智能模型的输入并且利用预先定义的问句的意图作为第一人工智能模型的输出来训练第一人工智能模型。

具体地,可利用自然语言处理技术对预先定义的问句进行句法分析和分词处理,然后利用自然语言理解技术从分析结果中解析出问句的意图。接下来,从知识图谱或大数据查找与解析出的意图相似的其他问句集合。例如,预先定义的问句是“I am Mike”,根据对该问句的分析获得该问句的意图是用户自我介绍,根据获得的意图“用户自我介绍”从知识图谱或大数据查找到近似的问句,诸如“My name is jack”or“This is QQ”或者“Jasonis me”。

可将上述获得的问句集合(包括预先定义的问句以及具有预先定义的问句的意图的相似语句)和问句集合的意图以及其他意图的干扰语句作为第一人工智能模型的训练样本。例如,将每个预先定义的问句和该问句的相似语句语句以及从知识库查询的干扰语句输入至第一人工智能模型,第一人工智能模型输出相应的意图标签。通过将真实的意图(真实数据)与模型输出的意图(预测数据)进行比较来训练第一人工智能模型。第一人工智能模型可以是但不限于SVN网络或NN网络。

作为示例,用户模板问句为“I am Mike”,可将其意图标签设为1,对应回复为“Hello,Mike master”,输入扩展语句集合中的相似意图语句,如”My name is Jack”等,以及加上干扰语句,开始对第一人工智能模型进行训练。如果经过第一人工智能模型后输出意图标签2,表明模型输出错误,则进行梯度下降对网络权重进行更新训练,第一人工智能模型经过多次迭代训练收敛后最终输出意图标签为1。

在步骤S103,根据确定的意图来生成针对输入语音的答句。具体地,在第一人工智能模型输出针对输入语音的意图后,首先可确定是否存在与输出的意图相匹配的问答模板,在确定存在与该意图相匹配的问答模板的情况下,利用该问答模板来生成针对输入语音的答句,其中,问答模板是基于对预先定义的问句和相应答句生成的。

根据本公开的的实施例,问答模板的中的回答句式可按照预定义的答句的句式相同地或相似地被生成。

例如,问答模板可基于以下方式被生成:对预先定义的问句和相应答句进行分析以确定该问句和该答句中的可变词以及句式,将可变词替换为通用符号并按照该问句和该答句的句式来生成问答模板。然而,上述示例仅是示例性的,本公开不限于此。

在进行分析时,可利用自然语言处理对预先定义的问句和相应的答句进行句法分析和分词处理。应注意的是,对于生成问答模板使用的预先定义的问句和答句与训练第一人工智能模型的预先定义的问句是相同的数据。也就是说,生成的问答模板与输出的意图相应。

作为示例,通过词法分析算法对预先定义的问句和回答(即样本问句和答句)进行分词处理。常见的中文分词算法可以包括基于字符串匹配(机械分词)的分词方法(如最大匹配法、基于词典的中文分词)、基于理解的分词方法(如神经网络分析算法)、基于统计的分词方法(如基于统计语言模型-共现率)。例如,样本问句“我是小花”可以分词为“我/是/小花”,其回答“小花主人你好”可以分词为“小花/主人/你/好”。

可将分词结果中的高频词作为可变词,或者将分词结果中由用户选择的词语作为可变词。

作为示例,分析词语在样本中的出现频率,将高频词作为可变词。例如,在样本问句“我是小花”和样本回答“小花主人你好”中词语“小花”出现2次,其余词语出现1次,可以将“小花”作为可变词。可选地,将分词结果向用户显示以供用户选择可以替换的词作为可变词,进一步地可以将问句中的可变词与回应/回答中的可变词进行关联。例如,在样本问句“客厅好热”中,显示分词结果“客厅/好/热”,供用户选择可变词,在样本回答“打开客厅空调”中,显示分词结果“打开/客厅/空调”,供用户选择可变词与样本问句中的可变词进行关联。

可利用自然语言理解技术基于分词处理结果和句法分析结果来确定样本问句和样本答句是什么句式以及每个词组的定义。例如,对于语句“Hello,Mike master”,根据自然语言理解技术可理解该语句的句式为“Hello/XX/master”,并且词组中“Hello”/“master”为固定词。

将确定的可变词替换为通用符号来生成问答模板。作为示例,将可变词替换为通用符号(诸如X)来创建问答模板。其中,X可以用于标记可变词的位置,并且X的长度可变。例如,假设样本问句为“我是小花”并且样本回答为“小花主人你好”,问答模板的形式可以为“问句-我是X,回答-X主人你好”。假设样本问句为“客厅好热”和其回答为“打开客厅空调”,问答模板的形式可以为“问句-X好热,回答-打开X空调”。或者,假设样本问句为“客厅好热”和其回答为“打开客厅空调”,如果用户选择了分词“热”作为可变词,而回答中的分词“打开”作为“热”的关联词,问答模板的形式可以为“问句-客厅好X,回答-X客厅空调”。然而上述示例仅是示例性的,本公开不限于此。

在确定存在与该意图相匹配的问答模板的情况下,将输入语音应用于问答模板来生成对语音输出的回答。例如,在确定输入语音的意图是用户自我介绍后,使用与意图“用户自我介绍”相应的问答模板来生成对该输入语音的回答。例如,假设新问句为“小草你好”并且与其意图相同的问答模板为“问句-X你好,回答-X主人你好”,利用自然语言处理技术根据问答模板得出回答模板中的“X”用“小草”替换,即生成“小草主人你好”,以进行DM输出。然而上述示例仅是示例性的,本公开不限于此。

在确定不存在与所述意图相匹配的回答模板的情况下,可基于输入语音利用第二人工智能模型来输出对输入语音的答句。

第二人工智能模型可基于以下方式被训练成:获取问答样本,其中,每个问答样本包括问句和对问句的答句,将问句作为第二人工智能模型的输入并且将答句作为第二人工智能模型的输出来训练第二人工智能模型。

作为示例,用于训练第二人工智能模型的样本集不仅可以包括先前用户创建的至少一个样本对话,而且可以包括干净目标词样本集、受干扰目标词的正负样本集、受干扰指令句子样本集中的至少一个。

可以对已有的样本集进行词法分析、句法分析、语义分析等自然语言处理NLP技术来处理对话文本,并提取出对话样本的特征,诸如可变词、关联信息等。通过寻找其中规律,将大量的自然语言进行打标签,也可以使用户在输入和反馈时打标签。以样本集中的问句作为输入使用第二人工智能模型进行训练来获得对相应问句的目标回答,并且通过使目标回答与样本集中的相应回答之间的损失函数最小化来获得第二人工智能模型。这里,可以采用神经网络模型作为第二人工智能模型,但本公开不限于此。

在训练第二人工智能模型之前,可以使用自然语言处理方法从样本集中提取特征数据,然后删除提取的特征数据中的冗余特征数据和不相关特征数据以获得有用特征数据,并且将有用特征数据分为训练数据和测试数据。使用训练数据训练出第二人工智能模型,然后使用测试数据来评估训练出的第二人工智能模型并且将符合评估条件的第二人工智能模型确定为最终的第二人工智能模型。

作为示例,使用深度学习神经网络模型进行训练,其中,输入为上述样本集的问句,输出为对问句/指令的目标回答/回应,深度学习神经网络模型中的每个节点的权值在训练的过程中会不断调整,目标函数为识别出的目标回应/回答与用户真实需要的回应/回答之间的损失函数最小化。网络的权重根据训练数据进行收敛,自动调节权重,从而拟合出输出。为了避免过拟合,可以在每次训练时只抽取少量历史样本数据,大部分使用新采样的样本数据。使用测试数据判断训练目标回应/回答的准确率,进行模型评估。如果测试结果符合预设条件,则将通过测试的模型确定为目标模型。如果测试结果不符合预设条件,则对目标模型重新训练。

根据本公开,在电子设备的对话生成方法中,用于识别用户的语音和解释用户意图方法可以通过例如麦克风接收作为模拟信号的语音信号,并使用自动语音识别(ASR)模型将语音部分转换成计算机可读文本。用户的话语意图可以通过使用自然语言理解(NLU)模型解释转换后的文本来获得。ASR模型或NLU模型可以是人工智能模型。人工智能模型可以由以指定用于人工智能模型处理的硬件结构设计的人工智能专用处理器来处理。

人工智能模型可以通过训练获得。这里,“通过训练获得”是指通过训练算法训练具有多个训练数据的基本人工智能模型,从而获得预定义的操作规则或人工智能模型,所述操作规则或人工智能模型被配置为执行所需的特征(或目的)。

作为示例,人工智能模型可以包括多个神经网络层。所述多个神经网络层中的每一个包括多个权重值,并且通过在前一层的计算结果和所述多个权重值之间的计算来执行神经网络计算。

语言理解是一种识别和应用/处理人类语言/文本的技术,包括例如自然语言处理、机器翻译、对话系统、问答或语音识别/合成。

图2是根据本公开的示例性实施例的训练第一人工智能模型的流程图。图3是根据本公开的示例性实施例的训练第一人工智能模型的示意图。

参照图2,在步骤S201,获取用户自定义的问答样本并将问答样本存入模板数据库。例如,在用户创建问答样本时,电子装置可以向用户提示将被输入的对话类型(诸如问句类型和回答类型),然后可以接收用户在相应对话类型下通过语音和/或文字输入的问句和回答,从而创建问答样本。

作为示例,可以首先通过用户界面向用户提示将被输入的对话类型,然后用户可以通过语音或文本的形式来输入相应类型的对话样本。例如,当用户界面显示“添加问法”时,表示此时用户可以输入问句类型的语音或文本,当用户界面显示“添加回复”时,表示此事用户可以输入回答类型的语音或文本。可以将用户创建的对话样本作为用户习惯存储到电子装置的存储器中或云存储器中。

可选地,在用户创建完一个对话样本后,用户可以预览该对话样本,以确定输入的对话样本的内容是否准确或者符合用户习惯。

在步骤S202,对问答样本中每个问答样本的问句和相应的答句进行句法分析和分词处理。

在步骤S203,对句法分析和分词处理的结果进行自然语言理解以解析得到问答样本中每个问句的意图以及通用模板,并且将通用模板存入通用模板数据库。例如,根据自然语言处理分析得到的句法和分词词组,理解句子“Iam Mike”由词组“I”+“am”+“Mike”主谓宾组成,并且其意图为用户自我介绍。例如,根据自然语言处理分析得到的句法和分词词组,理解用户自定义回复语句是什么句式和各词组的定义,诸如句子“Hello,Mike master”的回复句式为Hello/XX/master,其中,词组中“Hello”/“master”为固定词。因此,可得到关于用户自我介绍的通用模板“用户自我介绍问句模板‘I/am/XX’以及相应的答句模板‘Hello,XX/master’”存储在数据库中。

在步骤S204,根据问答样本中每个问句的意图搜索意图相似的扩展语句集合,并且搜索其他意图的干扰语句。例如,根据问句意图“用户自我介绍”从知识图谱或大数据查找近似意图扩展语句集合(根据意图标签查找得到)。诸如“My name is jack”、“This isQQ”和“Jason is me”。

在步骤S205,根据问答样本中的问句和搜索的相似扩展语句集合以及干扰语句来训练第一人工智能模型。

参照图3,用于训练第一人工智能模型的训练数据由通用模板数据库的问句Q{Q1,Q2…Qn}加上相应的扩展语句集合以及干扰语句组成,n表示用户定义了n个样本。分类标签{1,2..n+1}对应于用户模板答句A{A1,A2..An}加上第n+1类“非模板类”,n表示用户定义了n个样本。第一人工智能模型可以是分类网路(诸如SVN或者NN网络)构建。分类网络对语句进行分类,输出类别。

作为示例,用户模板问句Q1为“I am XX”,其意图标签为1,对应答句A1为“Hello,XX master”,向第一人工智能模型输入前面得到的扩展语句集合中的相似意图语句如“Myname is Jack”等以及加上干扰语句,开始对第一人工智能模型进行训练。如果经过第一人工智能模型后输出为意图标签2,表明网络输出错误,则可采用梯度下降对网络权重进行更新训练,第一人工智能模型经过多次迭代训练收敛后最终输出意图标签为1。对于干扰语句集,诸如“I am hungry”,其不是通用模板数据库中问句的意图,则训练好的第一人工智能模型输出意图标签n+1,这表明该干扰语句对应非模板类。然而,上述示例仅是示例性的,本公开不限于此。

图4是根据本公开的另一示例性实施例的对话生成方法的流程图。图4所述方法可基于图3训练好的第一人工智能模型实现。

参照图4,在步骤S401,用户输入语音。

在步骤S402,利用第一人工智能模型输出该输入语音的类别(即意图标签)。

在步骤S403,确定输出的类别是否属于通用模板数据库中的模板类。如果输出的类别属于模板类,进行到步骤S404,否则进行到步骤S405。

在步骤S404,根据确定的模板来生成对该输入语音的答句。例如,电子装置接收到用户语音输入“My name is Selina”,在通用模板数据库中匹配到通用模板“I am XX&Hello,XX master”,然后用自然语言处理技术根据模板得出XX用Selina替换,即生成相应的答句“Hello,Selina master”。然而,上述示例仅是示例性的,本公开不限于此。

在步骤S405,可利用第二人工智能模型生成对输入语音的答句。可选地,可使用其他自然语言处理来获得对输入语音的答句。

图5示出根据本公开示例性实施例的对话生成装置的框图。参照图5,对话生成装置500可包括数据获取模块501和处理模块502。对话生成装置500中的每个模块可由一个或多个模块来实现,并且对应模块的名称可根据模块的类型而变化。在各种实施例中,可省略对话生成装置500中的一些模块,或者还可包括另外的模块。此外,根据本公开的各种实施例的模块/元件可以被组合以形成单个实体,并且因此可等效地执行相应模块/元件在组合之前的功能。

获取模块501可被配置为获取输入语音。

处理模块502可被配置为确定输入语音的意图,并且根据意图来生成针对输入语音的答句。

可选地,处理模块502可被配置为将输入语音输入至第一人工智能模型以输出输入语音的意图。

可选地,第一人工智能模型可基于以下方式被训练成:利用预先定义的问句和与预先定义的问句的意图相应的扩展语句以及其他意图的干扰问句作为第一人工智能模型的输入并且利用预先定义的问句的意图作为第一人工智能模型的输出来训练第一人工智能模型。

可选地,处理模块502可被配置为确定是否存在与模型输出的意图相匹配的问答模板。在确定存在与意图相匹配的问答模板的情况下,处理模块502可利用该问答模板来生成针对输入语音的答句,其中,问答模板是基于对预先定义的问句和相应答句生成的。

可选地,生成的答句可与预先定义的答句具有相同或相似的句式。

可选地,问答模板中的答句模板可与预先定义的答句具有相同或相似的句式。

可选地,问答模板可由处理模块502基于以下方式被生成:对预先定义的问句和相应答句进行分析以确定该问句和该答句中的可变词以及句式;将可变词替换为通用符号并按照该问句和该答句的句式来生成问答模板。

可选地,处理模块502可对预先定义的问句和相应的答句进行句法分析和分词处理,并且根据句法分析结果和分词处理结果来确定该问句和该答句的可变词和句式。

可选地,处理模块502可将分词处理结果中的高频词作为可变词,或者将分词处理结果中由用户选择的词语作为可变词。

可选地,在确定不存在与意图相匹配的回答模板的情况下,处理模块502可基于输入语音利用第二人工智能模型来输出对输入语音的答句。

可选地,第二人工智能模型可基于以下方式被训练成:获取问答样本,其中,每个问答样本包括问句和对问句的答句;将问句作为第二人工智能模型的输入并且将答句作为第二人工智能模型的输出来训练第二人工智能模型。

多个模块中的至少一个可以通过AI模型实现。与AI相关联的功能可以通过非易失性存储器、易失性存储器和处理器来执行。

处理器可以包括一个或多个处理器。此时,一个或多个处理器可以是通用处理器,例如中央处理器(CPU)、应用处理器(AP)等,仅用于图形的处理器(例如图形处理器(GPU)、视觉处理器(VPU)和/或AI专用处理器(例如神经处理单元(NPU))。

一个或多个处理器根据存储在非易失性存储器和易失性存储器中的预定义操作规则或人工智能(AI)模型来控制输入数据的处理。预定义的操作规则或人工智能模型可通过训练或学习提供。这里,通过学习提供意味着,通过将学习算法应用于多个学习数据,形成具有期望特性的预定义操作规则或AI模型。学习可以在根据实施例的执行AI的设备本身中执行,和/或可以通过单独的服务器/设备/系统来实现。

作为示例,人工智能模型可以由多个神经网络层组成。每一层具有多个权重值,并且通过前一层的计算和多个权重值的操作来执行层操作。神经网络的例子包括但不限于卷积神经网络(CNN)、深度神经网络(DNN)、递归神经网络(RNN)、受限玻尔兹曼机(RBM)、深度置信网络(DBN)、双向递归深度神经网络(BRDNN)、生成式对抗网络(GAN)和深度Q网络。

学习算法是使用多个学习数据来训练预定目标设备(例如,机器人)以使得、允许或控制目标设备做出确定或预测的方法。学习算法的例子包括但不限于有监督学习、无监督学习、半监督学习或强化学习。

图6示出根据本公开示例性实施例的计算装置的示意图。

参照图6,根据本公开示例性实施例的计算装置600,包括存储器601和处理器602,存储器601上存储有计算机程序,当所述计算机程序被处理器602执行时,实现根据本公开的示例性实施例的对话生成方法。

作为示例,当所述计算机程序被处理器602执行时,可实现以下步骤:创建至少一个对话样本,其中,所述至少一个对话样本中的每一个包括问句和对问句的回答;接收不同于至少一个对话样本中包括的问句的新问句;以及通过对至少一个对话样本进行智能处理来生成对新问句的回答。

本公开实施例中的计算装置可以包括但不限于诸如移动电话、笔记本电脑、PDA(个人数字助理)、PAD(平板电脑)、台式计算机等的装置。图6示出的计算装置仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。

如这里所使用的,术语“模块”可包括以硬件、软件或固件实现的单元,并可与其他术语(例如,“逻辑”、“逻辑块”、“部分”或“电路”)可互换地使用。模块可以是被适配为执行一个或更多个功能的单个集成部件或者是该单个集成部件的最小单元或部分。例如,根据实施例,可以以专用集成电路(ASIC)的形式来实现模块。

可将在此阐述的各种实施例实现为包括存储在存储介质中的可由机器(例如,移动装置)读取的一个或更多个指令的软件。例如,在处理器的控制下,所述机器的处理器可在使用或无需使用一个或更多个其它部件的情况下调用存储在存储介质中的所述一个或更多个指令中的至少一个指令并运行所述至少一个指令。这使得所述机器能够操作用于根据所调用的至少一个指令执行至少一个功能。所述一个或更多个指令可包括由编译器产生的代码或能够由解释器运行的代码。可以以非暂时性存储介质的形式来提供机器可读存储介质。其中,术语“非暂时性”仅意味着所述存储介质是有形装置,并且不包括信号(例如,电磁波),但是该术语并不在数据被半永久性地存储在存储介质中与数据被临时存储在存储介质中之间进行区分。

根据实施例,可在计算机程序产品中包括和提供根据本公开的各种实施例的方法。计算机程序产品可作为产品在销售者和购买者之间进行交易。可以以机器可读存储介质(例如,紧凑盘只读存储器(CD-ROM))的形式来发布计算机程序产品,或者可经由应用商店(例如,Play StoreTM)在线发布(例如,下载或上传)计算机程序产品,或者可直接在两个用户装置(例如,智能电话)之间分发(例如,下载或上传)计算机程序产品。如果是在线发布的,则计算机程序产品中的至少部分可以是临时产生的,或者可将计算机程序产品中的至少部分至少临时存储在机器可读存储介质(诸如制造商的服务器、应用商店的服务器或转发服务器的存储器)中。

根据各种实施例,上述部件中的每个部件(例如,模块或程序)可包括单个实体或多个实体(例如,在图6中,存储器601可包括一个或多个存储器,处理器602可包括一个或多个处理器)。根据各种实施例,可省略上述部件中的一个或更多个部件,或者可添加一个或更多个其它部件。可选择地或者另外地,可将多个部件(例如,模块或程序)集成为单个部件。在这种情况下,根据各种实施例,该集成部件可仍旧按照与所述多个部件中的相应一个部件在集成之前执行一个或更多个功能相同或相似的方式,执行所述多个部件中的每一个部件的所述一个或更多个功能。根据各种实施例,由模块、程序或另一部件所执行的操作可顺序地、并行地、重复地或以启发式方式来执行,或者所述操作中的一个或更多个操作可按照不同的顺序来运行或被省略,或者可添加一个或更多个其它操作。

根据本公开的实施例,通过预测用户输入语音的意图生成对用户输入语音的回答,避免了用户通过手动编辑多套问答模型的操作,提升了使用效率,减少了人工成本。此外,还能够改善用户与交互系统进行交互的体验。

尽管已经参照其示例性实施例具体显示和描述了本公开,但是本领域的技术人员应该理解,在不脱离权利要求所限定的本公开的精神和范围的情况下,可以对其进行形式和细节上的各种改变。

相关技术
  • 对话生成方法、对话生成装置、对话机器人和存储介质
  • 对话生成模型的训练方法、对话生成方法及装置
技术分类

06120112774201