人机对话方法、装置、计算机设备及可读存储介质与流程

文档序号:24501703发布日期:2021-03-30 21:31阅读:107来源:国知局
人机对话方法、装置、计算机设备及可读存储介质与流程

本申请涉及人机对话技术领域,具体而言,涉及一种人机对话方法、装置、计算机设备及可读存储介质。



背景技术:

随着科学技术的不断发展,人机对话技术在聊天机器人、手机助手、智能客服、语音导航等场景下得到了广泛应用,其中确保多轮人机会话正确且顺畅地实现便是人机对话技术所需达到的重要效果。但就实际而言,不同语种的开放领域多轮会话语料的丰富程度各自不同,高资源语种(例如,英文)的开放领域多轮会话语料极为丰富,但低资源语种(例如,中文、日文、韩文等)的开放领域多轮会话语料却相对贫乏,由此导致高资源语种所对应的多轮会话生成模型必定相较于低资源语种的多轮会话生成模型更为成熟,也更能实现正确且顺畅的多轮人机对话。在此情况下,如何针对低资源语种实现正确且顺畅地多轮人机会话,便是一项亟需解决的技术问题。



技术实现要素:

有鉴于此,本申请的目的在于提供一种人机对话方法、装置、计算机设备及可读存储介质,能够在借用高资源语种的多轮会话生成模型实现低资源语种的多轮人机会话的同时,提升低资源语种的多轮人机会话内容在语义及语境方面的表达衔接契合度。

为了实现上述目的,本申请实施例采用的技术方案如下:

第一方面,本申请提供一种人机对话方法,所述方法包括:

获取当前会话轮次的第一语种输入语句;

根据历史会话轮次的第一语种对话内容及与所述第一语种对话内容存在互译关系的第二语种对话内容,对所述当前会话轮次的第一语种输入语句进行翻译,得到当前会话轮次的第二语种输入语句,其中所述第一语种对话内容包括对应会话轮次的第一语种输入语句及第一语种输出语句,所述第二语种对话内容包括对应会话轮次的第二语种输入语句及第二语种输出语句;

调用预存的多轮会话生成模型根据所述历史会话轮次的第二语种对话内容对所述当前会话轮次的第二语种输入语句进行解析,生成当前会话轮次的第二语种输出语句,其中所述多轮会话生成模块基于第二语种的多轮会话语料训练得到;

根据所述历史会话轮次的第一语种对话内容及第二语种对话内容,以及所述当前会话轮次的第一语种输入语句和第二语种输入语句,对所述当前会话轮次的第二语种输出语句进行翻译,得到至少一个第一语种候选结果;

从至少一个第一语种候选结果中确定当前会话轮次的第一语种输出语句进行输出。

在可选的实施方式中,所述从至少一个第一语种候选结果中确定当前会话轮次的第一语种输出语句进行输出的步骤,包括:

针对每个第一语种候选结果,调用预存的连贯评估模型根据所述历史会话轮次的第一语种对话内容及当前会话轮次的第一语种输入语句,计算该第一语种候选结果的表达连贯度;

选取表达连贯度最大的第一语种候选结果,作为所述当前会话轮次的第一语种输出语句进行输出。

在可选的实施方式中,所述方法还包括:

获取多个使用第一语种的有效会话语料样本,其中每个有效会话语料样本包括多个连续会话轮次的第一语种对话内容;

针对每个有效会话语料样本,构建与所述有效会话语料样本对应的反面会话语料样本;

采用得到的多个所述有效会话语料样本及多个所述反面会话语料样本对初始分类模型进行训练,得到所述连贯评估模型。

在可选的实施方式中,所述构建与所述有效会话语料样本对应的反面会话语料样本的步骤,包括:

从所述有效会话语料样本中提取最后一个会话轮次所对应的目标第一语种输出语句;

对所述目标第一语种输出语句进行翻译,得到对应的第二语种表达语句;

对所述第二语种表达语句进行翻译,得到对应的第一语种表达语句;

计算所述目标第一语种输出语句与所述第一语种表达语句之间的最小编辑距离;

将计算出的所述最小编辑距离与预设距离阈值进行比较,并根据比较结果确定与所述目标第一语种输出语句匹配的反面第一语种输出语句;

采用所述反面第一语种输出语句对所述有效会话语料样本中的所述目标第一语种输出语句进行替换,得到所述反面会话语料样本。

在可选的实施方式中,所述根据比较结果确定与所述目标第一语种输出语句匹配的反面第一语种输出语句的步骤,包括:

若所述比较结果为所述最小编辑距离大于所述预设距离阈值,则将所述第一语种表达语句作为所述反面第一语种输出语句;

若所述比较结果为所述最小编辑距离等于所述预设距离阈值,则对所述第一语种表达语句中的至少一个词语进行同义词替换,得到所述反面第一语种输出语句。

第二方面,本申请提供一种人机对话装置,所述装置包括:

输入语句获取模块,用于获取当前会话轮次的第一语种输入语句;

输入语句翻译模块,用于根据历史会话轮次的第一语种对话内容及与所述第一语种对话内容存在互译关系的第二语种对话内容,对所述当前会话轮次的第一语种输入语句进行翻译,得到当前会话轮次的第二语种输入语句,其中所述第一语种对话内容包括对应会话轮次的第一语种输入语句及第一语种输出语句,所述第二语种对话内容包括对应会话轮次的第二语种输入语句及第二语种输出语句;

输出语句生成模块,用于调用预存的多轮会话生成模型根据所述历史会话轮次的第二语种对话内容对所述当前会话轮次的第二语种输入语句进行解析,生成当前会话轮次的第二语种输出语句,其中所述多轮会话生成模块基于第二语种的多轮会话语料训练得到;

输出语句翻译模块,用于根据所述历史会话轮次的第一语种对话内容及第二语种对话内容,以及所述当前会话轮次的第一语种输入语句和第二语种输入语句,对所述当前会话轮次的第二语种输出语句进行翻译,得到至少一个第一语种候选结果;

输出语句回复模块,用于从至少一个第一语种候选结果中确定当前会话轮次的第一语种输出语句进行输出。

在可选的实施方式中,所述输出语句回复模块包括:

语句连贯计算子模块,用于针对每个第一语种候选结果,调用预存的连贯评估模型根据所述历史会话轮次的第一语种对话内容及当前会话轮次的第一语种输入语句,计算该第一语种候选结果的表达连贯度;

语句选取输出子模块,用于选取表达连贯度最大的第一语种候选结果,作为所述当前会话轮次的第一语种输出语句进行输出。

在可选的实施方式中,所述装置还包括:

有效样本获取模块,用于获取多个使用第一语种的有效会话语料样本,其中每个有效会话语料样本包括多个连续会话轮次的第一语种对话内容;

反面样本构建模块,用于针对每个有效会话语料样本,构建与所述有效会话语料样本对应的反面会话语料样本;

分类模型训练模块,用于采用得到的多个所述有效会话语料样本及多个所述反面会话语料样本对初始分类模型进行训练,得到所述连贯评估模型。

在可选的实施方式中,所述反面样本构建模块包括:

目标语句提取子模块,用于从所述有效会话语料样本中提取最后一个会话轮次所对应的目标第一语种输出语句;

目标语句翻译子模块,用于对所述目标第一语种输出语句进行翻译,得到对应的第二语种表达语句;

表达语句翻译子模块,用于对所述第二语种表达语句进行翻译,得到对应的第一语种表达语句;

编辑距离计算子模块,用于计算所述目标第一语种输出语句与所述第一语种表达语句之间的最小编辑距离;

反面语句确定子模块,用于将计算出的所述最小编辑距离与预设距离阈值进行比较,并根据比较结果确定与所述目标第一语种输出语句匹配的反面第一语种输出语句;

目标语句替换子模块,用于采用所述反面第一语种输出语句对所述有效会话语料样本中的所述目标第一语种输出语句进行替换,得到所述反面会话语料样本。

在可选的实施方式中,所述反面语句确定子模块根据比较结果确定与所述目标第一语种输出语句匹配的反面第一语种输出语句的方式,包括:

若所述比较结果为所述最小编辑距离大于所述预设距离阈值,则将所述第一语种表达语句作为所述反面第一语种输出语句;

若所述比较结果为所述最小编辑距离等于所述预设距离阈值,则对所述第一语种表达语句中的至少一个词语进行同义词替换,得到所述反面第一语种输出语句。

第三方面,本申请提供一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机程序,所述处理器可执行所述计算机程序,实现前述实施方式中任意一项所述的人机对话方法。

第四方面,本申请提供一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现前述实施方式中任意一项所述的人机对话方法。

本申请实施例的有益效果包括如下内容:

本申请在获取到当前会话轮次的第一语种输入语句后,会根据历史会话轮次的第一语种对话内容及与第一语种对话内容存在互译关系的第二语种对话内容,对当前会话轮次的第一语种输入语句进行翻译得到对应的第二语种输入语句,而后基于第二语种的多轮会话生成模型根据历史会话轮次的第二语种对话内容对当前会话轮次的第二语种输入语句解析生成对应的第二语种输出语句,再根据历史会话轮次的第一语种对话内容及第二语种对话内容,以及当前会话轮次的第一语种输入语句和第二语种输入语句,对当前会话轮次的第二语种输出语句进行翻译得到至少一个第一语种候选结果,最后从至少一个第一语种候选结果中确定当前会话轮次的第一语种输出语句进行输出,从而得以在借用高资源语种的多轮会话生成模型实现低资源语种的多轮人机会话的同时,通过结合已有对话内容的具体情况实现低资源语种语句与高资源语种语句之间的互译操作,提升低资源语种的多轮人机会话内容在语义及语境方面的表达衔接契合度。

为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本申请实施例提供的计算机设备的组成示意图;

图2为本申请实施例提供的人机对话方法的流程示意图之一;

图3为图2中的步骤s250包括的子步骤的流程示意图;

图4为本申请实施例提供的人机对话方法的流程示意图之二;

图5为图4中的步骤s270包括的子步骤的流程示意图;

图6为本申请实施例提供的人机对话装置的组成示意图之一;

图7为图6中的输出语句回复模块的组成示意图;

图8为本申请实施例提供的人机对话装置的组成示意图之二;

图9为图8中的反面样本构建模块的组成示意图。

附图:10-计算机设备;11-存储器;12-处理器;13-通信单元;100-人机对话装置;110-输入语句获取模块;120-输入语句翻译模块;130-输出语句生成模块;140-输出语句翻译模块;150-输出语句回复模块;151-语句连贯计算子模块;152-语句选取输出子模块;160-有效样本获取模块;170-反面样本构建模块;180-分类模型训练模块;171-目标语句提取子模块;172-目标语句翻译子模块;173-表达语句翻译子模块;174-编辑距离计算子模块;175-反面语句确定子模块;176-目标语句替换子模块。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。

因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

在本申请的描述中,需要理解的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请中的具体含义。

现有的针对低资源语种实现多轮人机会话的一种方案是利用机器翻译技术,先将低资源语种的问询文本直接翻译为高资源语种的问询文本,而后使用通过高资源语种的开放领域多轮会话语料训练出的多轮会话生成模型针对翻译出的高资源语种的问询文本,生成对应的高资源语种的回复文本,接着再将生成的高资源语种的回复文本直译成低资源语种的回复文本进行输出,从而完成一个会话轮次的低资源语种人机对话操作,此时一个会话轮次的低资源语种人机对话操作即可包括一次低资源语种的问询文本的输入操作,以及一次低资源语种的回复文本的输出操作。

但需要注意的是,这种方案在具体实现过程中所执行的低资源语种语句与高资源语种语句之间的互译操作,容易使低资源语种的问询文本与回复文本在语义及语境上存在明显突兀的状况,整体的表达衔接契合度不高,通常会出现词不达意的情况。

例如,假设存在一个中文问询文本“你喜欢游泳吗?”,通过机器翻译模型,它会被直译为英文问询文本“doyoulikeswimming?”,并通过英文的多轮会话生成模型处理,然后假设得到英文回复文本“yes,ido.”,此时再通过机器翻译模型对英文回复文本“yes,ido.”进行直译,此时可能会直接得到中文回复文本“是的,我做”或“是的,我愿意”,从而导致中文问询文本与中文回复文本之间的表达衔接契合度不高。

假设存在一个中文问询文本“你讨厌小孩吗?”,通过机器翻译模型,它会被直译为英文问询文本“doyouhatekids?”,并通过英文的多轮会话生成模型处理,然后假设得到英文回复文本“yes,ihatekids.”,此时再通过机器翻译模型对英文回复文本“yes,ihatekids.”进行直译,此时可能会直接得到中文回复文本“是的,我恨小孩。”或“是的,我恨小山羊。”(“kid”是个多义词,可以被翻译为“小孩”或“小山羊”),前者在意义上并没有什么大问题,因为“讨厌”和“恨”是近义词,但问询文本和回复文本用词不一致也会导致会话不自然,而后者则使问询文本和回复文本完全失去关联了,从而导致低资源语种的问询文本与回复文本在语义及语境上存在明显突兀的状况,整体的表达衔接契合度不高,出现了词不达意的情况。

在此情况下,为确保低资源语种能够借用高资源语种的多轮会话生成模型真正实现正确且顺畅的多轮人机会话操作,本申请实施例通过提供一种人机对话方法、装置、计算机设备及可读存储介质实现前述功能。

下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互结合。

请参照图1,图1是本申请实施例提供的计算机设备10的组成示意图。在本申请实施例中,所述计算机设备10在借用高资源语种的多轮会话生成模型实现低资源语种的多轮人机会话的同时,将已有对话内容的具体情况结合到低资源语种语句与高资源语种语句之间的互译过程中,使最终得到的低资源语种对话内容在语义及语境方面具有极好的表达衔接契合度,从而针对低资源语种能够借用高资源语种的多轮会话生成模型真正实现正确且顺畅的多轮人机会话操作。其中,所述计算机设备10可以是,但不限于,智能手机、平板电脑、个人计算机、服务器、对话机器人等。

在本实施例中,所述计算机设备10可以包括存储器11、处理器12、通信单元13及人机对话装置100。其中,所述存储器11、所述处理器12及所述通信单元13各个元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,所述存储器11、所述处理器12及所述通信单元13这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。

在本实施例中,所述存储器11可以是,但不限于,随机存取存储器(randomaccessmemory,ram),只读存储器(readonlymemory,rom),可编程只读存储器(programmableread-onlymemory,prom),可擦除只读存储器(erasableprogrammableread-onlymemory,eprom),电可擦除只读存储器(electricerasableprogrammableread-onlymemory,eeprom)等。其中,所述存储器11用于存储计算机程序,所述处理器12在接收到执行指令后,可相应地执行所述计算机程序。

其中,所述存储器11还用于存储多轮会话生成模型,所述多轮会话生成模型基于高资源语种所对应的开放领域多轮会话语料训练得到,由此所述多轮会话生成模型可以针对该资源语种的输入语句生成对应的作为回复内容的输出语句。

在本实施例中,所述处理器12可以是一种具有信号的处理能力的集成电路芯片。所述处理器12可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、图形处理器(graphicsprocessingunit,gpu)及网络处理器(networkprocessor,np)、数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件中的至少一种。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。

在本实施例中,所述通信单元13用于通过网络建立所述计算机设备10与其他电子设备之间的通信连接,并通过所述网络收发数据,其中所述网络包括有线通信网络及无线通信网络。例如,所述计算机设备10能够通过所述通信单元13从用户使用的客户端设备处获取低资源语种的问询文本,并在针对该低资源语种的问询文本生成对应的回复文本后,通过所述通信单元13向该用户使用的客户端设备输出所述回复文本;所述计算机设备10能够通过所述通信单元13将自身生成的低资源语种的回复文本传输给音频播放设备进行语音播放。

在本实施例中,所述人机对话装置100包括至少一个能够以软件或固件的形式存储于所述存储器11中或固化在所述计算机设备10的操作系统中的软件功能模块。所述处理器12可用于执行所述存储器11存储的可执行模块,例如所述人机对话装置100所包括的软件功能模块及计算机程序等。所述计算机设备10通过所述人机对话装置100在借用高资源语种的多轮会话生成模型实现低资源语种的多轮人机会话的同时,将已有对话内容的具体情况结合到低资源语种语句与高资源语种语句之间的互译过程中,提升低资源语种的多轮人机会话内容在语义及语境方面的表达衔接契合度。

可以理解的是,图1所示的框图仅为所述计算机设备10的一种组成示意图,所述计算机设备10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。

在本申请中,为确保所述计算机设备10能够在借用高资源语种的多轮会话生成模型实现低资源语种的多轮人机会话的同时,提升低资源语种的多轮人机会话内容在语义及语境方面的表达衔接契合度,本申请实施例通过提供人机对话方法实现前述目的。下面对本申请提供的人机对话方法进行详细描述。

可选地,请参照图2,图2是本申请实施例提供的人机对话方法的流程示意图之一。在本申请实施例中,图2所示的人机对话方法可以包括步骤s210~步骤s250。

步骤s210,获取当前会话轮次的第一语种输入语句。

在本实施例中,所述第一语种输入语句为用户采用低资源语种输入的作为问询文本的语句。其中,所述计算机设备10可通过控制外接的拾音设备对用户采用低资源语种说出的问询语音进行采集,并对所述拾音设备采集到的问询语音进行文本转换,得到对应的第一语种输入语句;所述计算机设备10也可通过向用户提供文本输入界面,使用户自行在该文本输入界面中输入当前会话轮次的第一语种输入语句。

步骤s220,根据历史会话轮次的第一语种对话内容及与第一语种对话内容存在互译关系的第二语种对话内容,对当前会话轮次的第一语种输入语句进行翻译,得到当前会话轮次的第二语种输入语句。

在本实施例中,所述第一语种对话内容包括对应会话轮次的第一语种输入语句及第一语种输出语句,所述第二语种对话内容包括对应会话轮次的第二语种输入语句及第二语种输出语句,其中同一会话轮次的第一语种输入语句与第二语种输入语句存在互译关系,同一会话轮次的第一语种输出语句与第二语种输出语句存在互译关系,所述第一语种属于低资源语种,所述第二语种属于高资源语种。

所述计算机设备10在获取到当前会话轮次的第一语种输入语句后,会结合当前会话轮次以前的历史会话轮次的第一语种对话内容及第二语种对话内容,对当前会话轮次的第一语种输入语句进行翻译,从而充分考虑第一语种的多轮人机会话过程中的上下文信息及用词表达,以及第二语种的多轮人机会话过程中的上下文信息及用词表达,使翻译出来的当前会话轮次的第二语种输入语句在用词方面能够充分地与历史会话轮次的第一语种对话内容及第二语种对话内容相契合。

在本实施例的一种实施方式中,所述计算机设备10内可存储有用于结合历史对话内容从第一语种到第二语种进行语句翻译的第一语句翻译模型。所述第一语句翻译模型可采用开放领域多轮连续会话的第二语种与第一语种之间的平行语料训练得到,训练所述第一语句翻译模型所需的每条平行语料可采用语料长序列进行表达:[…,lt-2,ht-2,lt-1,ht-1,lt,ht],其中h用于表示第二语种语句,l用于表示第一语种语句,下脚标相同的h属于对应l的翻译平行语料,同一会话轮次的第一语种对话操作包括该会话轮次下的第一语种输入语句的输入操作以及第一语种输出语句的输出操作,而同一会话轮次的第二语种对话操作也包括该会话轮次下的第二语种输入语句的输入操作以及第二语种输出语句的输出操作。其中若t为偶数,则lt用于表示第t/2个会话轮次的第一语种输出语句,lt-1用于表示第t/2个会话轮次的第一语种输入语句,ht用于表示第t/2个会话轮次的第二语种输出语句,ht-1用于表示第t/2个会话轮次的第二语种输入语句,ht-2用于表示第(t-2)/2个会话轮次的第二语种输出语句,lt-2用于表示第(t-2)/2个会话轮次的第一语种输出语句;若t为奇数,则lt用于表示第(t+1)/2个会话轮次的第一语种输入语句,lt-1用于表示第(t-1)/2个会话轮次的第一语种输出语句,ht用于表示第(t+1)/2个会话轮次的第二语种输入语句,ht-1用于表示第(t-1)/2个会话轮次的第二语种输出语句,ht-2用于表示第(t-1)/2个会话轮次的第二语种输入语句,lt-2用于表示第(t-1)/2个会话轮次的第一语种输入语句。

其中,每个语句在上述语料长序列中可以采用由第一语种或第二语种的文字及标点组成的语句序列进行表达,例如语句“你好,john”所对应的语句序列可表达为[“你”,“好”,“,”,“john”],此时该语句序列包括4个序列元素,每个序列元素用于表示对应语句的字符组成,每个所述序列元素可对第一语种或第二语种所对应的文字、词语及标点中的一种进行表示。

在对第一语句翻译模型的训练过程中,针对训练第一语句翻译模型所采用的每条平行语料的语料长序列来说,可将该语料长序列中的子序列[…,lt-2,ht-2,lt-1,ht-1,lt]作为模型输入而将子序列[ht]作为模型输出,来对第一语句翻译模型进行训练,以确保训练出的第一语句翻译模型能够结合历史对话内容实现第一语种到第二语种的语句翻译功能。

其中,训练所述第一语句翻译模型所采用的每条平行语料的语料长序列需要满足第一预设数目个序列元素令牌(token),每个序列元素令牌对应承载一个序列元素内容,所述第一预设数目可以是256。

因此,针对训练第一语句翻译模型的每条平行语料,需优先选取该平行语料中的某个会话轮次的第二语种输出语句或第二语种输入语句作为截止语句,接着在一个空白长序列中从右往左地且按照会话轮次时序倒序地依次填入截止语句的序列元素、与截止语句对应的第一语种输出语句或第一语种输入语句的序列元素,以及截止语句之前会话轮次的第一语种对话内容和第二语种对话内容各自的序列元素,使该长序列的表达形式与上述语料长序列保持一致。然后,对填入该长序列的有效语句的序列元素总数进行统计,判断序列元素总数是否为小于所述第一预设数目。

若所述序列元素总数小于所述第一预设数目,则需在该长序列左侧填充补位特定数目个空白序列元素,而后将补位完成的该长序列中的各序列元素从左到右地进行序列拼接,得到最终的与该平行语料的语料长序列。所述特定数目即为所述第一预设数目与所述序列元素总数之间的差值。

若所述序列元素总数大于或等于所述第一预设数目,则可直接在该长序列左侧进行语句截断,使该长序列中的序列元素数目等于所述第一预设数目,并确保上述截止语句的各项序列元素位于该长序列右侧,而后将语句截断后的该长序列中的各序列元素从左到右地进行序列拼接,得到最终的与该平行语料的语料长序列。

在此情况下,当需要使用上述第一语句翻译模型对当前会话轮次的第一语种输入语句进行翻译时,应选取当前会话轮次以前的连续会话轮次的第一语种对话内容及第二语种对话内容,配合当前会话轮次的第一语种输入语句按照会话轮次时序拼接成一个第一待翻译长序列,并将该第一待翻译长序列输入到所述第一语句翻译模型中,由该第一语句翻译模型充分考虑历史对话内容在第一语种及第二语种上各自的表达情况,对应翻译出在用词方面与当前会话轮次的第一语种输入语句匹配的第二语种输入语句。此时,包括当前会话轮次的第一语种输入语句的第一待翻译长序列可表达为:[…,lk-2,hk-2,lk-1,hk-1,lk],其中k的数值为奇数,lk用于表示当前会话轮次的第一语种输入语句,此时当前会话轮次即为第(k+1)/2个会话轮次,而hk即可用于表示通过第一语句翻译模型翻译得到的当前会话轮次的第二语种输入语句,所述第一待翻译长序列与训练所述第一语句翻译模型所采用的语料长序列具有相同的表达格式,且均需满足第一预设数目个序列元素令牌。

其中,需要注意的是,所述第一待翻译长序列在具体构建时,可在一个空白长序列中从右往左地且按照会话轮次时序倒序地依次填入当前会话轮次的第一语种输入语句的序列元素、当前会话轮次以前的历史会话轮次的第一语种对话内容和第二语种对话内容各自的序列元素,使填充序列元素后的长序列在表达形式上与上述语料长序列保持一致。而后,判断该长序列的已填序列元素数目是否小于第一预设数目。

若已填序列元素数目小于所述第一预设数目,则需在该长序列左侧填充补位特定数目个空白序列元素,而后将补位完成的该长序列中的各序列元素从左到右地进行序列拼接,得到最终的第一待翻译长序列,其中所述特定数目即为所述第一预设数目与所述已填序列元素数目之间的差值。例如,假设当前会话轮次为第1个会话轮次,则当前会话轮次以前的历史会话轮次为零,此时包括当前会话轮次的第一语种输入语句的第一待翻译长序列左端需补位第一预设数目减去第1个会话轮次中第一语种输入语句所涉及的序列元素数目个空白序列元素。

若已填序列元素数目等于或大于所述第一预设数目,则需在该长序列左侧及时地截断序列元素的填入操作,使该长序列的最大有效序列元素数目等于所述第一预设数目,而后将截断后的该长序列中的各序列元素从左到右地进行序列拼接,得到最终的第一待翻译长序列。

步骤s230,调用预存的多轮会话生成模型根据历史会话轮次的第二语种对话内容对当前会话轮次的第二语种输入语句进行解析,生成当前会话轮次的第二语种输出语句。

在本实施例中,所述多轮会话生成模型与第二语种相对应。当所述计算机设备10得到与当前会话轮次的第一语种输入语句存在互译关系的第二语种输入语句后,可选取当前会话轮次以前连续的历史会话轮次的第二语种对话内容,配合当前会话轮次的第二语种输入语句按照会话轮次时序拼接成一个会话长序列,并将该会话长序列输入到所述多轮会话生成模型,由所述多轮会话生成模型根据历史第二语种对话表达情况针对当前会话轮次的第二语种输入语句生成对应的第二语种输出语句,其中同一会话轮次的第二语种对话操作也包括该会话轮次下的第二语种输入语句的输入操作以及第二语种输出语句的输出操作。此时,包括当前会话轮次的第二语种输入语句的会话长序列可表示为:[…,hk-2,hk-1,hk],其中hk用于表示当前会话轮次的第二语种输入语句,此时当前会话轮次即为第(k+1)/2个会话轮次,而hk+1即可用于表示通过与第二语种对应的多轮会话生成模型生成的当前会话轮次的第二语种输出语句,k为奇数。

其中,输入所述多轮会话生成模型的会话长序列需要满足第二预设数目个序列元素令牌,所述第二预设数目可以是256。此时,所述会话长序列在具体构建时,可在一个空白长序列中从右往左地且按照会话轮次时序倒序地依次填入当前会话轮次的第二语种输入语句的序列元素、当前会话轮次以前连续的历史会话轮次的第二语种输出语句和第二语种输入语句各自的序列元素,使填充序列元素后的长序列在表达形式上与上述会话长序列保持一致。而后,判断该长序列的已填序列元素数目是否小于第二预设数目。

若已填序列元素数目小于所述第二预设数目,则需在该长序列左侧填充补位第二预设数目减去所述已填序列元素数目所得差值个空白序列元素,而后将补位完成的该长序列中的各序列元素从左到右地进行序列拼接,得到当前对应的会话长序列。

若已填序列元素数目等于或大于所述第二预设数目,则需在该长序列左侧及时地截断序列元素的填入操作,使该长序列的最大有效序列元素数目等于所述第二预设数目,而后将截断后的该长序列中的各序列元素从左到右地进行序列拼接,得到当前对应的会话长序列。

在本实施例的一种实施方式中,所述第一预设数目与所述第二预设数目相同。

步骤s240,根据历史会话轮次的第一语种对话内容及第二语种对话内容,以及当前会话轮次的第一语种输入语句和第二语种输入语句,对当前会话轮次的第二语种输出语句进行翻译,得到至少一个第一语种候选结果。

在本实施例中,所述计算机设备10在获取到当前会话轮次的第二语种输出语句后,会结合当前会话轮次以前的历史会话轮次的第一语种对话内容及第二语种对话内容,以及当前会话轮次的第一语种输入语句和第二语种输入语句,对当前会话轮次的第二语种输出语句进行翻译,从而充分考虑第一语种的多轮人机会话过程中的上下文信息及用词表达,以及第二语种的多轮人机会话过程中的上下文信息及用词表达,使翻译出来的当前会话轮次的每个第一语种候选结果均能在用词方面充分地与历史会话轮次的第一语种对话内容以及当前会话轮次的第一语种输入语句相契合,此时当前会话轮次的每个第一语种候选结果均与对应第二语种输出语句存在互译关系。

在本实施例的一种实施方式中,所述计算机设备10内可存储有用于结合历史对话内容从第二语种到第一语种进行语句翻译的第二语句翻译模型。所述第二语句翻译模型可采用开放领域多轮连续会话的第一语种与第二语种之间的平行语料训练得到,训练所述第二语句翻译模型所需的每条平行语料也可采用语料长序列进行表达:[…,ht-2,lt-2,ht-1,lt-1,ht,lt],其中h用于表示第二语种语句,l用于表示第一语种语句,下脚标相同的h属于对应l的翻译平行语料,同一会话轮次的第一语种对话操作包括该会话轮次下的第一语种输入语句的输入操作以及第一语种输出语句的输出操作,而同一会话轮次的第二语种对话操作也包括该会话轮次下的第二语种输入语句的输入操作以及第二语种输出语句的输出操作。训练所述第二语句翻译模型所需的语料长序列中各子序列的具体含义,与上述训练所述第一语句翻译模型所需的语料长序列中各子序列的具体含义相同,在此就不再一一赘述了。

在对第二语句翻译模型的训练过程中,针对训练第二语句翻译模型所采用的每条平行语料的语料长序列来说,可将该语料长序列中的子序列[…,ht-2,lt-2,ht-1,lt-1,ht]作为模型输入而将子序列[lt]作为模型输出,来对第二语句翻译模型进行训练,以确保训练出的第二语句翻译模型能够结合历史对话内容实现第二语种到第一语种的语句翻译功能。

其中,训练所述第二语句翻译模型所需的每条平行语料的语料长序列需要满足第三预设数目个序列元素令牌。针对训练第二语句翻译模型的每条平行语料,需优先选取该平行语料中的某个会话轮次的第一语种输出语句或第一语种输入语句作为截止语句,接着在一个空白长序列中从右往左地且按照会话轮次时序倒序地依次填入截止语句的序列元素、与截止语句对应的第二语种输出语句或第二语种输入语句的序列元素,以及截止语句之前会话轮次的第一语种对话内容和第二语种对话内容各自的序列元素,使该长序列的表达形式与上述语料长序列保持一致。然后,对填入该长序列的有效语句的序列元素总数进行统计,判断序列元素总数是否为小于所述第三预设数目。

若所述序列元素总数小于所述第三预设数目,则需在该长序列左侧填充补位特定数目个空白序列元素,而后将补位完成的该长序列中的各序列元素从左到右地进行序列拼接,得到最终的与该平行语料的语料长序列。所述特定数目即为所述第三预设数目与所述序列元素总数之间的差值。

若所述序列元素总数大于或等于所述第三预设数目,则可直接在该长序列左侧进行语句截断,使该长序列中的序列元素数目等于所述第三预设数目,并确保上述截止语句的各项序列元素位于该长序列右侧,而后将语句截断后的该长序列中的各序列元素从左到右地进行序列拼接,得到最终的与该平行语料的语料长序列。

因此,当需要使用上述第二语句翻译模型对当前会话轮次的第二语种输出语句进行翻译时,应选取当前会话轮次以前的连续会话轮次的第一语种对话内容及第二语种对话内容,配合当前会话轮次的第一语种输入语句、第二语种输入语句及第二语种输出语句按照会话轮次时序拼接成一个第二待翻译长序列,并将该第二待翻译长序列输入到所述第二语句翻译模型中,由该第二语句翻译模型充分考虑历史会话轮次对话内容及当前会话轮次输入语句分别在第一语种及第二语种上各自的表达情况,对应翻译出在用词方面与当前会话轮次的第二语种输出语句匹配的至少一个第一语种候选结果。此时,包括当前会话轮次的第二语种输入语句的第二待翻译长序列可表示为:[…,hk-2,lk-2,hk-1,lk-1,hk,lk,hk+1],其中hk+1用于表示当前会话轮次的第二语种输出语句,此时当前会话轮次即为第(k+1)/2个会话轮次,可用(lk+1’)i表示通过第二语句翻译模型翻译得到的当前会话轮次的第i个第一语种候选结果,其中i大于或等于1。其中,所述第二待翻译长序列与训练所述第二语句翻译模型所采用的语料长序列具有相同的表达格式,且均需满足第三预设数目个序列元素令牌。

其中,需要注意的是,所述第二待翻译长序列在具体构建时,可在一个空白长序列中从右往左地且按照会话轮次时序倒序地依次填入当前会话轮次的第二语种输出语句的序列元素、当前会话轮次的第一语种输入语句的序列元素、当前会话轮次的第二语种输入语句的序列元素、当前会话轮次以前连续的历史会话轮次的第一语种对话内容及第二语种对话内容各自的序列元素,使填充序列元素后的长序列在表达形式上与上述语料长序列保持一致。而后,判断该长序列的已填序列元素数目是否小于第三预设数目。

若已填序列元素数目小于所述第三预设数目,则需在该长序列左侧填充补位特定数目个空白序列元素,而后将补位完成的该长序列中的各序列元素从左到右地进行序列拼接,得到最终的第二待翻译长序列,其中所述特定数目即为所述第三预设数目与所述已填序列元素数目之间的差值。

若已填序列元素数目等于或大于所述第三预设数目,则需在该长序列左侧及时地截断序列元素的填入操作,使该长序列的最大有效序列元素数目等于所述第三预设数目,而后将截断后的该长序列中的各序列元素从左到右地进行序列拼接,得到最终的第二待翻译长序列。

步骤s250,从至少一个第一语种候选结果中确定当前会话轮次的第一语种输出语句进行输出。

在本实施例中,当所述计算机设备10确定出当前会话轮次的至少一个第一语种候选结果后,可采用某种特定规则或随机地从所述至少一个第一语种候选结果中,选取一个第一语种候选结果作为当前会话轮次的第一语种输出语句,以确保最终输出的当前会话轮次的第一语种输出语句与当前会话轮次的第一语种输入语句及历史会话轮次的第一语种对话内容在语义及语境方面具有极好的表达衔接契合度,从而针对第一语种(低资源语种)借用第二语种(高资源语种)所具有的更成熟的多轮会话生成模型真正实现正确且顺畅的多轮人机会话操作。

由此,本申请可通过执行上述步骤s210~步骤s250,在借用高资源语种的多轮会话生成模型实现低资源语种的多轮人机会话的同时,将已有对话内容的具体情况结合到低资源语种语句与高资源语种语句之间的互译过程中,使最终得到的低资源语种对话内容在语义及语境方面具有极好的表达衔接契合度,从而针对低资源语种能够借用高资源语种的多轮会话生成模型真正实现正确且顺畅的多轮人机会话操作。

可选地,请参照图3,图3是图2中的步骤s250包括的子步骤的流程示意图。在本实施例中,所述步骤s250可以包括子步骤s251及子步骤s252,以通过子步骤s251及子步骤s252进一步针对低资源语种(第一语种)提升人机会话过程中的语句回复质量。

子步骤s251,针对每个第一语种候选结果,调用预存的连贯评估模型根据历史会话轮次的第一语种对话内容及当前会话轮次的第一语种输入语句,计算该第一语种候选结果的表达连贯度。

在本实施例中,当所述计算机设备10得到当前会话轮次的一个第一语种候选结果后,可选取当前会话轮次以前连续的历史会话轮次的第一语种对话内容,以及当前会话轮次的第一语种输入语句,配合当前会话轮次的第一语种候选结果按照会话轮次时序拼接成一个待评估长序列,并将该待评估长序列输入到所述连贯评估模型内,由所述连贯评估模型根据历史第一语种对话表达情况以及当前会话轮次的第一语种输入语句,对当前会话轮次的该第一语种候选结果在语义及语境方面的表达连贯度进行计算,得到该第一语种候选结果的表达连贯度。此时,包括当前会话轮次的第一语种候选结果的待评估长序列可表示为:[…,lk-2,lk-1,lk,(lk+1’)i],其中(lk+1’)i表示当前会话轮次的第i个第一语种候选结果,其中i大于或等于1,lk用于表示当前会话轮次的第一语种输入语句,此时当前会话轮次即为第(k+1)/2个会话轮次,lk+1用于表示当前会话轮次最终确定出的第一语种输出语句,其中k的数值为奇数。

其中,输入所述连贯评估模型的待评估长序列需要满足第四预设数目个序列元素令牌,所述第四预设数目可以是256。此时,所述待评估长序列在具体构建时,可在一个空白长序列中从右往左地且按照会话轮次时序倒序地依次填入当前会话轮次的第一语种候选结果的序列元素、当前会话轮次的第一语种输入语句的序列元素以及当前会话轮次以前连续的历史会话轮次的第一语种对话内容各自的序列元素,使填充序列元素后的长序列在表达形式上与上述待评估长序列保持一致。而后,判断该长序列的已填序列元素数目是否小于第四预设数目。

若已填序列元素数目小于所述第四预设数目,则需在该长序列左侧填充补位第四预设数目减去所述已填序列元素数目所得差值个空白序列元素,而后将补位完成的该长序列中的各序列元素从左到右地进行序列拼接,得到当前对应的待评估长序列。

若已填序列元素数目等于或大于所述第四预设数目,则需在该长序列左侧及时地截断序列元素的填入操作,使该长序列的最大有效序列元素数目等于所述第四预设数目,而后将截断后的该长序列中的各序列元素从左到右地进行序列拼接,得到当前对应的待评估长序列。

子步骤s252,选取表达连贯度最大的第一语种候选结果,作为当前会话轮次的第一语种输出语句进行输出。

在本实施例中,当所述计算机设备10通过调用所述连贯评估模型针对当前会话轮次的每个第一语种候选结果计算出其对应的表达连贯度后,可通过选择表达连贯度最大的第一语种候选结果,作为当前会话轮次的第一语种输出语句进行输出,即在(lk+1’)i中选取表达连贯度最大的内容作为lk+1,以确保最终输出的当前会话轮次的第一语种输出语句与第一语种输入语句之间的内容衔接及文本表达最为自然,提升低资源语种人机会话过程中的语句回复质量。

由此,本申请可通过执行上述子步骤s251及子步骤s252,确保最终输出的当前会话轮次的第一语种输出语句与第一语种输入语句之间的内容衔接及文本表达最为自然,进一步提升低资源语种人机会话过程中的语句回复质量。

在本申请中,为确保所述计算机设备10内存储的连贯评估模型能够针对第一语种人机对话过程中的语句回复表达连贯度进行有效评估,本申请实施例通过提供一种连贯评估模型的训练方案实现前述目的,下面对所述连贯评估模型的训练方案的具体实现过程进行详细描述。

可选地,请参照图4,图4是本申请实施例提供的人机对话方法的流程示意图之二。在本申请实施例中,图4所示的人机对话方法可以包括步骤s260~步骤s280,以通过步骤s260~步骤s280训练出能够针对第一语种人机对话过程中的语句回复表达连贯度进行有效评估的连贯评估模型。

步骤s260,获取多个使用第一语种的有效会话语料样本,其中每个有效会话语料样本包括多个连续会话轮次的第一语种对话内容。

在本实施例中,每个有效会话语料样本可采用训练语料长序列进行表达,每个训练语料长序列对应包括多个连续会话轮次的第一语种对话内容,其中不同有效会话语料样本所对应的有效会话轮次数目可以不同。

其中,所述训练语料长序列与所述待评估长序列具有相同的表达格式,所述训练语料长序列需满足第四预设数目个序列元素令牌。针对每个有效会话语料样本,需优先选取该有效会话语料样本中的某个会话轮次的第一语种输出语句或第一语种输入语句作为截止语句,接着在一个空白长序列中从右往左地且按照会话轮次时序倒序地,依次填入截止语句的序列元素以及所述截止语句之前产生的第一语种对话内容的序列元素,使填充序列元素后的长序列在表达形式上与上述待评估长序列保持一致。而后,判断该长序列的已填序列元素数目是否小于第四预设数目。

若已填序列元素数目小于所述第四预设数目,则需在该长序列左侧填充补位第四预设数目减去所述已填序列元素数目所得差值个空白序列元素,而后将补位完成的该长序列中的各序列元素从左到右地进行序列拼接,得到与该有效会话语料样本对应的训练语料长序列。

若已填序列元素数目等于或大于所述第四预设数目,则需在该长序列左侧及时地截断序列元素的填入操作,使该长序列的最大有效序列元素数目等于所述第四预设数目,而后将截断后的该长序列中的各序列元素从左到右地进行序列拼接,得到与该有效会话语料样本对应的训练语料长序列。

步骤s270,针对每个有效会话语料样本,构建与有效会话语料样本对应的反面会话语料样本。

在本实施例中,所述反面会话语料样本用于充当所述有效会话语料样本的负样本,其中相互对应的反面会话语料样本与有效会话语料样本仅在最后一个会话轮次的第一语种输出语句存在差异。在本实施例的一种实施方式中,所述反面会话语料样本可与上述有效会话语料样本采用相同的序列表达格式进行表达,且均需满足第四预设数目个序列元素令牌,此时所述反面会话语料样本所对应的反面语料长序列与对应训练语料长序列相比,所述反面语料长序列与所述训练语料长序列在最后一个会话轮次的第一语种输出语句所对应的序列元素内容处存在差异。

可选地,请参照图5,图5是图4中的步骤s270包括的子步骤的流程示意图。在本实施例中,针对每个有效会话语料样本,所述步骤s270可以包括子步骤s271~子步骤s276。

子步骤s271,从有效会话语料样本中提取最后一个会话轮次所对应的目标第一语种输出语句。

子步骤s272,对目标第一语种输出语句进行翻译,得到对应的第二语种表达语句。

子步骤s273,对第二语种表达语句进行翻译,得到对应的第一语种表达语句。

子步骤s274,计算目标第一语种输出语句与第一语种表达语句之间的最小编辑距离。

子步骤s275,将计算出的最小编辑距离与预设距离阈值进行比较,并根据比较结果确定与目标第一语种输出语句匹配的反面第一语种输出语句。

子步骤s276,采用反面第一语种输出语句对有效会话语料样本中的所述目标第一语种输出语句进行替换,得到反面会话语料样本。

其中,在将所述目标第一语种输出语句翻译成所述第二语种表达语句时可采用上述的第一语句翻译模型实现,也可采用通用的机器翻译模型实现;在将所述第二语种表达语句翻译成所述第一语种表达语句时可采用上述的第二语句翻译模型实现,也可采用通用的机器翻译模型实现。在本实施例的一种实施方式中,可通过计算目标第一语种输出语句与第一语种表达语句之间的杰卡德相似度的方式,得到所述目标第一语种输出语句与所述第一语种表达语句之间的最小编辑距离。

其中,所述根据比较结果确定与目标第一语种输出语句匹配的反面第一语种输出语句的步骤包括:

若所述比较结果为所述最小编辑距离大于所述预设距离阈值,则将所述第一语种表达语句作为所述反面第一语种输出语句;

若所述比较结果为所述最小编辑距离等于所述预设距离阈值,则对所述第一语种表达语句中的至少一个词语进行同义词替换,得到所述反面第一语种输出语句。

由此,本申请可通过执行上述子步骤s271~子步骤s276,针对每个有效会话语料样本,构建出与该有效会话语料样本对应的反面会话语料样本。

步骤s280,采用得到的多个所述有效会话语料样本及多个所述反面会话语料样本对初始分类模型进行训练,得到连贯评估模型。

由此,本申请可通过执行上述步骤s260~步骤s280,确保训练出的连贯评估模型能够针对第一语种人机对话过程中的语句回复表达连贯度进行有效评估。

在本申请中,为确保所述计算机设备10能够通过所述人机对话装置100执行上述人机对话方法,本申请通过对所述人机对话装置100进行功能模块划分的方式实现前述功能。下面对本申请提供的人机对话装置100的具体组成进行相应描述。

可选地,请参照图6,图6是本申请实施例提供的人机对话装置100的组成示意图之一。在本申请实施例中,所述人机对话装置100可以包括输入语句获取模块110、输入语句翻译模块120、输出语句生成模块130、输出语句翻译模块140及输出语句回复模块150。

输入语句获取模块110,用于获取当前会话轮次的第一语种输入语句。

输入语句翻译模块120,用于根据历史会话轮次的第一语种对话内容及与所述第一语种对话内容存在互译关系的第二语种对话内容,对所述当前会话轮次的第一语种输入语句进行翻译,得到当前会话轮次的第二语种输入语句,其中所述第一语种对话内容包括对应会话轮次的第一语种输入语句及第一语种输出语句,所述第二语种对话内容包括对应会话轮次的第二语种输入语句及第二语种输出语句。

输出语句生成模块130,用于调用预存的多轮会话生成模型根据所述历史会话轮次的第二语种对话内容对所述当前会话轮次的第二语种输入语句进行解析,生成当前会话轮次的第二语种输出语句,其中所述多轮会话生成模块基于第二语种的多轮会话语料训练得到。

输出语句翻译模块140,用于根据所述历史会话轮次的第一语种对话内容及第二语种对话内容,以及所述当前会话轮次的第一语种输入语句和第二语种输入语句,对所述当前会话轮次的第二语种输出语句进行翻译,得到至少一个第一语种候选结果。

输出语句回复模块150,用于从至少一个第一语种候选结果中确定当前会话轮次的第一语种输出语句进行输出。

可选地,请参照图7,图7是图6中的输出语句回复模块150的组成示意图。在本实施例中,所述输出语句回复模块150可以包括语句连贯计算子模块151及语句选取输出子模块152。

语句连贯计算子模块151,用于针对每个第一语种候选结果,调用预存的连贯评估模型根据所述历史会话轮次的第一语种对话内容及当前会话轮次的第一语种输入语句,计算该第一语种候选结果的表达连贯度。

语句选取输出子模块152,用于选取表达连贯度最大的第一语种候选结果,作为所述当前会话轮次的第一语种输出语句进行输出。

可选地,请参照图8,图8是本申请实施例提供的人机对话装置100的组成示意图之二。在本申请实施例中,所述人机对话装置100还可以包括有效样本获取模块160、反面样本构建模块170及分类模型训练模块180。

有效样本获取模块160,用于获取多个使用第一语种的有效会话语料样本,其中每个有效会话语料样本包括多个连续会话轮次的第一语种对话内容。

反面样本构建模块170,用于针对每个有效会话语料样本,构建与所述有效会话语料样本对应的反面会话语料样本。

分类模型训练模块180,用于采用得到的多个所述有效会话语料样本及多个所述反面会话语料样本对初始分类模型进行训练,得到所述连贯评估模型。

可选地,请参照图9,图9是图8中的反面样本构建模块170的组成示意图。在本实施例中,所述反面样本构建模块170可以包括目标语句提取子模块171、目标语句翻译子模块172、表达语句翻译子模块173、编辑距离计算子模块174、反面语句确定子模块175及目标语句替换子模块176。

目标语句提取子模块171,用于从所述有效会话语料样本中提取最后一个会话轮次所对应的目标第一语种输出语句。

目标语句翻译子模块172,用于对所述目标第一语种输出语句进行翻译,得到对应的第二语种表达语句。

表达语句翻译子模块173,用于对所述第二语种表达语句进行翻译,得到对应的第一语种表达语句。

编辑距离计算子模块174,用于计算所述目标第一语种输出语句与所述第一语种表达语句之间的最小编辑距离。

反面语句确定子模块175,用于将计算出的所述最小编辑距离与预设距离阈值进行比较,并根据比较结果确定与所述目标第一语种输出语句匹配的反面第一语种输出语句。

目标语句替换子模块176,用于采用所述反面第一语种输出语句对所述有效会话语料样本中的所述目标第一语种输出语句进行替换,得到所述反面会话语料样本。

其中,所述反面语句确定子模块175根据比较结果确定与所述目标第一语种输出语句匹配的反面第一语种输出语句的方式,包括:

若所述比较结果为所述最小编辑距离大于所述预设距离阈值,则将所述第一语种表达语句作为所述反面第一语种输出语句;

若所述比较结果为所述最小编辑距离等于所述预设距离阈值,则对所述第一语种表达语句中的至少一个词语进行同义词替换,得到所述反面第一语种输出语句。

其中,需要说明的是,本申请实施例所提供的人机对话装置100,其基本原理及产生的技术效果与前述的人机对话方法相同,为简要描述,本实施例部分未提及之处,可参考上述的针对人机对话方法的描述内容。

在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个可读存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个可读存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的可读存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

综上所述,在本申请提供的一种人机对话方法、装置、计算机设备及可读存储介质中,本申请在获取到当前会话轮次的第一语种输入语句后,会根据历史会话轮次的第一语种对话内容及与第一语种对话内容存在互译关系的第二语种对话内容,对当前会话轮次的第一语种输入语句进行翻译得到对应的第二语种输入语句,而后基于第二语种的多轮会话生成模型根据历史会话轮次的第二语种对话内容对当前会话轮次的第二语种输入语句解析生成对应的第二语种输出语句,再根据历史会话轮次的第一语种对话内容及第二语种对话内容,以及当前会话轮次的第一语种输入语句和第二语种输入语句,对当前会话轮次的第二语种输出语句进行翻译得到至少一个第一语种候选结果,最后从至少一个第一语种候选结果中确定当前会话轮次的第一语种输出语句进行输出,从而得以在借用高资源语种的多轮会话生成模型实现低资源语种的多轮人机会话的同时,通过结合已有对话内容的具体情况实现低资源语种语句与高资源语种语句之间的互译操作,提升低资源语种的多轮人机会话内容在语义及语境方面的表达衔接契合度。

以上所述,仅为本申请的各种实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应当以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1