技术领域
[0001] 本说明书实施例涉及计算机技术领域,特别涉及一种人机对话方法。本说明书一个或者多个实施例同时涉及一种对话数据集生成方法,人机对话模型的数据处理方法,一种人机对话装置,一种对话数据集生成装置,人机对话模型的数据处理装置,一种计算设备,一种计算机可读存储介质以及一种计算机程序。
相关背景技术
[0002] 随着互联网技术的发展,人们的生活模式随之发生了很大的变化,用户可以在线上与对话机器人对话,以解决日常生活中的需求,如线上聊天、线上缴费、线上教育等等。因此,对话机器人如何生成准确的回复内容逐渐成为研究重点。
[0003] 目前,通常利用传统的对话数据集训练对话模型,通过训练完成的对话模型进行人机对话。然而,上述对话数据集一般由人工打字构建,无法包括人机对话场景下的真实数据,进一步无法构建准确的人机对话模型,使得生成的回复内容准确性差。因此,亟需一种准确性高的人机对话方案。
具体实施方式
[0063] 在下面的描述中阐述了很多具体细节以便于充分理解本说明书。但是本说明书能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本说明书内涵的情况下做类似推广,因此本说明书不受下面公开的具体实施的限制。
[0064] 在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
[0065] 应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
[0066] 首先,对本说明书一个或多个实施例涉及的名词术语进行解释。
[0067] 音义双模态:在模型的训练和部署的环境中同时使用语音和文本两种模态的数据。
[0068] 任务型对话:旨在解决特定领域特定问题的人机对话系统,比如订餐厅、机票等等。
[0069] 槽位:人机对话过程中的一些关键实体信息,如订机票的时间、姓名、身份编码等。
[0070] 在智能客服或者人机对话系统中,对话往往发生在语音场景,如电话外呼、语音客服等。而传统的对话数据集构造的方式包括:通过人与人对话的聊天室的方式,一方模拟用户、一方模拟客服,进行打字构建数据集;或者,通过两台已经构建好的对话系统进行对话,生成对应的对话数据,之后再进行人工转写,提高对话质量。
[0071] 然而,上述方案无法得到真实语音场景下的人人对话数据集,无法建模人和人在口语场景下交流的特有现象,如对话重复、对话不流利等,同时无法收集到语音模态的对话数据,无法进一步构建更贴近应用场景的对话系统。
[0072] 为了解决上述问题,本说明书实施例提出一种音义双模态的人机对话方案。接收前端发送的用户对话内容;将用户对话内容输入预先训练的人机对话模型中,获得用户对话内容对应的回复内容,其中,人机对话模型基于多个样本对话组和样本对话组携带的样本关键槽位信息训练获得,样本对话组包括样本对话录音和样本对话录音对应的样本对话文本,样本关键槽位信息是对样本对话组中的口语特征标注获得。由于样本对话组包括样本对话录音和样本对话文本,通过样本对话录音可以对真实口语对话场景进行模拟,并且,样本关键槽位信息可以反映真实场景的对话特点,使得人机对话模型更加精准,提高了回复内容的准确性。
[0073] 在本说明书中,提供了一种人机对话方法,本说明书同时涉及一种对话数据集生成方法,人机对话模型的数据处理方法,一种人机对话装置,一种对话数据集生成装置,人机对话模型的数据处理装置,一种计算设备,一种计算机可读存储介质以及一种计算机程序,在下面的实施例中逐一进行详细说明。
[0074] 参见图1,图1示出了本说明书一个实施例提供的一种人机对话系统的框架图,其中,人机对话系统包括服务端100和前端200;
[0075] 前端200:向服务端100发送用户对话内容;
[0076] 服务端100:接收前端发送的用户对话内容;将用户对话内容输入预先训练的人机对话模型中,获得用户对话内容对应的回复内容,其中,人机对话模型基于多个样本对话组和样本对话组携带的样本关键槽位信息训练获得,样本对话组包括样本对话录音和样本对话录音对应的样本对话文本,样本关键槽位信息是对样本对话组中的口语特征标注获得;向前端200发送回复内容;
[0077] 前端200:接收服务端100发送的回复内容。
[0078] 应用本说明书实施例的方案,接收前端发送的用户对话内容;将用户对话内容输入预先训练的人机对话模型中,获得用户对话内容对应的回复内容,其中,人机对话模型基于多个样本对话组和样本对话组携带的样本关键槽位信息训练获得,样本对话组包括样本对话录音和样本对话录音对应的样本对话文本,样本关键槽位信息是对样本对话组中的口语特征标注获得。由于样本对话组包括样本对话录音和样本对话文本,通过样本对话录音可以对真实口语对话场景进行模拟,并且,样本关键槽位信息可以反映真实场景的对话特点,使得人机对话模型更加精准,进一步提高了回复内容的准确性。
[0079] 参见图2,图2示出了本说明书一个实施例提供的另一种人机对话系统的框架图,该系统可以包括服务端100以及多个前端200。多个前端200之间通过服务端100可以建立通信连接,在人机对话场景中,服务端100即用来在多个前端200之间提供回复内容生成服务,多个前端200可以分别作为发送端或接收端,通过服务端100实现实时通信。
[0080] 用户通过前端200可与服务端100进行交互以接收其它前端200发送的数据,或将数据发送至其它前端200等。在人机对话场景中,可以是用户通过前端200向服务端100发布数据流,服务端100根据该数据流生成回复内容,并将回复内容推送至其他建立通信的客户端中。
[0081] 其中,前端200与服务端100之间通过网络建立连接。网络为客户端与服务端之间提供了通信链路的介质。网络可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。前端200所传输的数据可能需要经过编码、转码、压缩等处理之后才发布至服务端100。
[0082] 前端200可以为浏览器、APP(Application,应用程序)、或网页应用如H5(HyperText Markup Language5,超文本标记语言第5版)应用、或轻应用(也被称为小程序,一种轻量级应用程序)或云应用等,前端200可以基于服务端提供的相应服务的软件开发工具包(SDK,Software Development Kit),如基于实时通信(RTC,Real Time
Communication)SDK开发获得等。前端200可以部署在电子设备中,需要依赖设备运行或者设备中的某些APP而运行等。电子设备例如可以具有显示屏并支持信息浏览等,如可以是个人移动终端如手机、平板电脑、个人计算机等。在电子设备中通常还可以配置各种其它类应用,例如人机对话类应用、模型训练类应用、文本处理类应用、网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
[0083] 服务端100可以包括提供各种服务的服务器,例如为多个客户端提供通信服务的服务器,又如为客户端上使用的模型提供支持的用于后台训练的服务器,又如对客户端发送的数据进行处理的服务器等。需要说明的是,服务端100可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。服务器也可以是云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(CDN,Content Delivery Network)以及大数据和人工智能平台等基础云计算服务的云服务器,或者是带人工智能技术的智能云计算服务器或智能云主机。
[0084] 值得说明的是,本说明书实施例中提供的人机对话方法一般由服务端执行,但是,在本说明书的其它实施例中,客户端也可以与服务端具有相似的功能,从而执行本说明书实施例所提供的人机对话方法。在其它实施例中,本说明书实施例所提供的人机对话方法还可以是由客户端与服务端共同执行。
[0085] 参见图3,图3示出了本说明书一个实施例提供的一种人机对话方法的流程图,具体包括以下步骤:
[0086] 步骤302:接收前端发送的用户对话内容。
[0087] 本说明书一个或多个实施例中,在人机对话场景中,服务端可以接收前端发送的用户对话内容,对用户对话内容进行处理,确定用户对话内容对应的回复内容。
[0088] 具体地,人机对话场景是指用户和机器人进行对话的场景,包括但不限于电话外呼场景、语音客服对话场景。用户对话内容包括但不限于对话音频内容、对话文本内容,具体根据实际情况进行选择,本说明书实施例对此不作任何限定。
[0089] 实际应用中,接收前端发送的用户对话内容的方式有多种,具体根据实际情况进行选择,本说明书实施例对此不作任何限定。本说明书一种可能的实现方式中,可以接收用户通过前端输入的用户对话内容。本说明书另一种可能的实现方式中,可以接收前端从其他数据获取设备或者数据库中读取的用户对话内容。
[0090] 步骤304:将用户对话内容输入预先训练的人机对话模型中,获得用户对话内容对应的回复内容,其中,人机对话模型基于多个样本对话组和样本对话组携带的样本关键槽位信息训练获得,样本对话组包括样本对话录音和样本对话录音对应的样本对话文本,样本关键槽位信息是对样本对话组中的口语特征标注获得。
[0091] 本说明书一个或多个实施例中,接收前端发送的用户对话内容之后,进一步地,可以将用户对话内容输入预先训练的人机对话模型中,经人机对话模型的处理,获得用户对话内容对应的回复内容。
[0092] 具体地,人机对话模型为机器学习模型,机器学习模型可以理解为经过训练的程序,可以在新数据中发现模式并进行预测。这些模型表示为一个数学函数,它以输入数据的形式接收请求,对输入数据进行预测,然后提供输出作为响应。样本对话组包括多模态的对话内容,如音义双模态的样本对话组包括样本对话录音和样本对话录音对应的样本对话文本。回复内容可以是回复文本,还可以是回复音频,具体根据实际情况进行选择,本说明书实施例对此不作任何限定。
[0093] 参见图4,图4示出了本说明书一个实施例提供的一种人机对话界面的界面示意图。
[0094] 人机对话界面分为对话内容输入界面和回复内容展示界面。对话内容输入界面中包括用户对话内容输入框、“确定”控件以及“取消”控件。回复内容展示界面中包括回复内容展示框。用户通过前端显示的用户对话内容输入框输入用户对话内容“您好,我想咨询一下A地的酒店信息”,点选“确定”控件,服务端接收前端发送的用户对话内容,将用户对话内容输入预先训练的人机对话模型中,获得用户对话内容对应的回复内容“您好,很高兴为您服务,请问您想要什么价位的酒店呢”,将回复内容发送至前端,以使前端在回复内容展示框中显示回复内容“您好,很高兴为您服务,请问您想要什么价位的酒店呢”。
[0095] 需要说明的是,用户对控件进行操作的方式包括点击、双击、触控、鼠标悬停、滑动、长按、语音控制或摇一摇等任一方式,具体根据实际情况进行选择,本说明书实施例对此不作任何限定。
[0096] 应用本说明书实施例的方案,接收前端发送的用户对话内容;将用户对话内容输入预先训练的人机对话模型中,获得用户对话内容对应的回复内容,其中,人机对话模型基于多个样本对话组和样本对话组携带的样本关键槽位信息训练获得,样本对话组包括样本对话录音和样本对话录音对应的样本对话文本,样本关键槽位信息是对样本对话组中的口语特征标注获得。由于样本对话组包括样本对话录音和样本对话文本,通过样本对话录音可以对真实口语对话场景进行模拟,并且,样本关键槽位信息可以反映真实场景的对话特点,使得人机对话模型更加精准,进一步提高了回复内容的准确性。
[0097] 本说明书一种可选的实施例中,上述人机对话模型的训练方式,具体包括以下步骤:
[0098] 获取样本集,其中,样本集包括多个样本对话组,样本对话组包括样本对话录音和样本对话录音对应的样本对话文本,样本对话组携带样本关键槽位信息;
[0099] 从样本集中提取第一样本对话组,其中,第一样本对话组为样本集中的任一个;
[0100] 将第一样本对话组输入对话模型中,获得第一样本对话组对应的第一预测回复内容;
[0101] 根据第一预测回复内容和第一样本对话组携带的第一样本关键槽位信息,计算第一损失值;
[0102] 根据第一损失值,调整对话模型的参数,并返回执行从样本集中提取第一样本对话组的步骤,直至达到预设停止条件,获得人机对话模型。
[0103] 本说明书实施例中,获取样本集的方式有多种,具体根据实际情况进行选择,本说明书实施例对此不作任何限定。本说明书一种可能的实现方式中,可以从其他数据获取设备或者数据库中读取大量多模态的对话内容组成样本集。本说明书另一种可能的实现方式中,可以获取大量样本对话录音,将录音按照角色分轨,然后使用语音识别工具将录音转化成文本,从而得到音频和文本完全对齐的双模态数据,也即样本对话组,根据多个样本对话组构建样本集。
[0104] 本说明书一种可能的实现方式中,预设停止条件包括第一损失值小于或等于第一预设阈值,其中,第一预设阈值具体根据实际情况进行选择,本说明书实施例对此不作任何限定。将第一样本对话组输入对话模型中,获得第一样本对话组对应的第一预测回复内容,在得到第一预测回复内容后,根据第一预测回复内容和第一样本对话组携带的第一样本关键槽位信息,计算第一损失值,将第一损失值与第一预设阈值进行比较。
[0105] 具体地,若第一损失值大于第一预设阈值,则说明第一预测回复内容和第一样本关键槽位信息的差异较大,对话模型对于回复内容的预测能力较差,此时可以调整对话模型的模型参数,并返回执行从样本集中提取第一样本对话组的步骤,继续对对话模型进行训练,直至第一损失值小于或等于第一预设阈值,说明第一预测回复内容和第一样本关键槽位信息的差异较小,达到预设停止条件,获得完成训练的人机对话模型。
[0106] 本说明书另一种可能的实现方式中,除了比较第一损失值和第一预设阈值的大小关系之外,还可以结合迭代次数,确定当前的对话模型是否训练完成。
[0107] 具体地,若第一损失值大于第一预设阈值,则调整对话模型的参数,并返回执行从样本集中提取第一样本对话组的步骤,继续对对话模型进行训练,在达到第一预设迭代次数的情况下,停止迭代,得到完成训练的人机对话模型,其中,第一预设迭代次数具体根据实际情况进行选择,本说明书实施例对此不作任何限定。
[0108] 应用本说明书实施例的方案,由于样本对话组包括样本对话录音和样本对话文本,通过样本对话录音可以对真实口语对话场景进行模拟,并且,样本关键槽位信息可以反映真实场景的对话特点,使得人机对话模型更加精准。
[0109] 进一步地,根据第一预测回复内容和第一样本对话组携带的第一样本关键槽位信息,计算第一损失值的方式有多种,具体根据实际情况进行选择,本说明书实施例对此不作任何限定。本说明书一种可能的实现方式中,计算第一损失值时,可以提取第一预测回复内容中的第一预测推理型槽位信息和/或第一预测复杂型槽位信息;进一步根据第一预测推理型槽位信息和/或第一预测复杂型槽位信息计算推理型槽位信息损失值和/或复杂型槽位信息损失值,根据推理型槽位信息损失值和复杂型槽位信息损失值,确定第一损失值。也即,样本关键槽位信息包括样本推理型槽位信息和/或样本复杂型槽位信息,第一损失值包括推理型槽位信息损失值和/或复杂型槽位信息损失值,样本推理型槽位信息为间接表达对话意图的槽位信息,样本复杂型槽位信息为对话中多次出现的槽位信息;上述根据第一预测回复内容和第一样本对话组携带的第一样本关键槽位信息,计算第一损失值,可以包括以下步骤:
[0110] 根据第一预测回复内容中的第一预测推理型槽位信息和第一样本推理型槽位信息,计算推理型槽位信息损失值;和/或
[0111] 根据第一预测回复内容中的第一预测复杂型槽位信息和第一样本复杂型槽位信息,计算复杂型槽位信息损失值。
[0112] 具体地,样本推理型槽位信息为口语中经常不会直接表述而是间接表达对话意图的槽位信息。按照推理目标的类型,推理型槽位信息的类型可以分为语义推理、数字推理和时间推理。语义推理型槽位信息为间接表达语义内容的信息,例如用户在表述“白日放歌须纵酒,青春作伴好还乡”时,表示将要归还家乡的高兴心情。数字推理型槽位信息为间接表达数字内容的信息,数字推理经常出现在如酒店入住人数中,比如用户在表述“我和父母入住”时,表示入住人数为3。时间推理型槽位信息为与时间相关的信息。时间推理如用户在表述“今天是周一,我明天入住”时,表示入住时间为周二。样本复杂型槽位信息为对话中多次出现的槽位信息,也可以理解为在多轮对话中反复追加、修改和确认的槽位信息。复杂型槽位信息主要是任务信息(profi le)领域的个人信息,包括但不限于手机号、身份编码、姓名、邮箱。参见下表1,表1为样本行为信息和样本槽位信息示例表。
[0113] 表1样本行为信息和样本槽位信息示例表
[0114]
[0115] 需要说明的是,表1中各信息的角标表示该信息所属的领域,其中,*为通用(universal),1为餐馆(restaurant),2为酒店(hotel),3为景点(attractions),4为出租车(taxi),5为火车(train),6为医院(hospital),7为任务信息(profile)。
[0116] 示例性地,以电话号为例,在对话过程中,关于电话号的对话内容经常出现多轮反复的追加和修改。具体可以为:
[0117] 客服:不客气,没问题,请让我知道你的电话号码。
[0118] 用户:是的,我的电话号码是8181。
[0119] 客服:8181。
[0120] 用户:是的,9622。
[0121] 客服:9622。
[0122] 客服:497。
[0123] 客服:497。
[0124] 用户:是的。
[0125] 实际应用中,提取第一预测回复内容中的第一预测推理型槽位信息和/或第一预测复杂型槽位信息的方式有多种,具体根据实际情况进行选择,本说明书实施例对此不作任何限定。本说明书一种可能的实现方式中,可以将第一预测回复内容和预设槽位信息库进行匹配,确定第一预测推理型槽位信息和/或第一预测复杂型槽位信息。本说明书另一种可能的实现方式中,可以将第一预测回复内容输入实体识别模型中,获得第一预测推理型槽位信息和第一预测复杂型槽位信息。
[0126] 进一步地,计算推理型槽位信息损失值、复杂型槽位信息损失值的函数有很多,如交叉熵损失函数、L1范数损失函数、最大损失函数、均方误差损失函数、对数损失函数等,具体根据实际情况进行选择,本说明书实施例对此不作任何限定。
[0127] 值得说明的是,在第一损失值包括推理型槽位信息损失值和复杂型槽位信息损失值的情况下,可以直接将推理型槽位信息损失值以及复杂型槽位信息损失值相加,获得第一损失值。还可以为推理型槽位信息损失值、复杂型槽位信息损失值分别设置对应的权重,根据权重对推理型槽位信息损失值以及复杂型槽位信息损失值进行加权,获得第一损失值。
[0128] 应用本说明书实施例的方案,根据推理型槽位信息损失值和/或复杂型槽位信息损失值,计算第一损失值。提高了计算第一损失值的效率,进一步提高了人机对话模型的训练效率。
[0129] 本说明书另一种可能的实现方式中,为了使得人机对话模型更加精准,可以准确生成与用户对话内容场景匹配的回复内容,基于口语对话的特点,在计算第一损失值时,还可以计算行为信息损失值,也即,上述样本关键槽位信息还包括样本行为信息,第一损失值还包括行为信息损失值;根据第一预测回复内容和第一样本对话组携带的第一样本关键槽位信息,计算第一损失值,可以包括以下步骤:
[0130] 提取第一预测回复内容中的第一预测行为信息;
[0131] 根据第一预测行为信息和第一样本行为信息,计算行为信息损失值。
[0132] 具体地,样本行为信息也可以理解为样本动作信息,如推荐、选择等等。需要说明的是,提取第一预测回复内容中的第一预测行为信息的方式有多种,具体根据实际情况进行选择,本说明书实施例对此不作任何限定。本说明书一种可能的实现方式中,可以将第一预测回复内容输入行为识别模型中,获得第一预测行为信息。本说明书另一种可能的实现方式中,可以将第一预测回复内容和预设行为信息库进行匹配,确定第一预测行为信息。
[0133] 实际应用中,计算行为信息损失值的函数有很多,如交叉熵损失函数、L1范数损失函数、最大损失函数、均方误差损失函数、对数损失函数等,具体根据实际情况进行选择,本说明书实施例对此不作任何限定。优选地,可以利用交叉熵损失函数计算行为信息损失值,通过利用交叉熵损失函数,计算第一预测行为信息和第一样本行为信息的交叉熵作为行为信息损失值,提高了计算行为信息损失值的效率,从而提高了人机对话模型的训练效率。
[0134] 进一步地,在第一损失值包括行为信息损失值、推理型槽位信息损失值以及复杂型槽位信息损失值的情况下,计算第一损失值时,可以直接将行为信息损失值、推理型槽位信息损失值以及复杂型槽位信息损失值相加,获得第一损失值。还可以为行为信息损失值、推理型槽位信息损失值、复杂型槽位信息损失值分别设置对应的权重,根据权重对行为信息损失值、推理型槽位信息损失值以及复杂型槽位信息损失值进行加权,获得第一损失值。
[0135] 应用本说明书实施例的方案,提取第一预测回复内容中的第一预测行为信息;根据第一预测行为信息和第一样本行为信息,计算行为信息损失值,提高了计算第一损失值的效率,进一步提高了人机对话模型的训练效率。
[0136] 本说明书一种可选的实施例中,上述获取样本集,可以包括以下步骤:
[0137] 获取多个样本对话录音;
[0138] 针对任一样本对话录音,对样本对话录音进行转换处理,获得样本对话录音对应的样本对话文本;
[0139] 识别样本对话文本中的样本关键槽位信息;
[0140] 根据样本关键槽位信息,对样本对话文本进行结构标注,获得标注后的样本对话文本;
[0141] 根据多个样本对话录音和标注后的样本对话文本,构建样本集。
[0142] 本说明书实施例中,获取多个样本对话录音的方式有多种,具体根据实际情况进行选择,本说明书实施例对此不作任何限定。本说明书一种可能的实现方式中,可以从其他数据获取设备或者数据库中读取大量样本对话录音。本说明书另一种可能的实现方式中,可以接收第一对象和第二对象基于对话提示模板进行模拟对话生成的样本对话录音,也即,上述获取多个样本对话录音,可以包括以下步骤:
[0143] 获取对话提示模板,其中,对话提示模板用于指导用户进行模拟对话;
[0144] 将对话提示模板发送至前端,以使前端显示对话提示模板;
[0145] 接收前端发送的对话提示模板对应的多个样本对话录音,其中,样本对话录音为第一对象和第二对象基于对话提示模板进行模拟对话生成。
[0146] 需要说明的是,对话提示模板也可以理解为对话目标。对话提示模板中包括对话相关的对话背景(Background),对话背景包含了对话所要解决的问题和所要达成的目标。进一步地,还可以包括注意事项(Attent ion Tips)。获取对话提示模板的方式有多种,具体根据实际情况进行选择,本说明书实施例对此不作任何限定。本说明书一种可能的实现方式中,可以从预设对话提示模板库中随机选择对话提示模板,其中,预设对话提示模板库中包括多个对话提示模板。本说明书另一种可能的实现方式中,可以利用目标提示信息对初始提示模板进行渲染,获得对话提示模板。
[0147] 实际应用中,第一对象和第二对象为不同的对象,将对话提示模板发送至前端之后,可以由至少两个对象(角色)分别扮演用户和客服进行模拟对话。假设第一对象为用户,第二对象为客服,第一对象和第二对象按照对话提示模板展开模拟对话,在对话过程中,可以采用电话或语音通话软件,在通话开始时开启录音功能采集样本对话录音。
[0148] 值得说明的是,多个样本对话录音可以通过一个对话提示目标生成,还可以通过多个对话提示模板生成,具体根据实际情况进行选择,本说明书实施例对此不作任何限定。
[0149] 应用本说明书实施例的方案,获取对话提示模板,其中,对话提示模板用于指导用户进行模拟对话;将对话提示模板发送至前端,以使前端显示对话提示模板;接收前端发送的对话提示模板对应的多个样本对话录音,其中,样本对话录音为第一对象和第二对象基于对话提示模板进行模拟对话生成。使得第一对象和第二对象可以在给定对话目标下自由发挥,从而采集到更具有多样性和真实性的样本对话录音。
[0150] 在获取多个样本对话录音之后,针对任一样本对话录音,可以通过语音识别工具对样本对话录音进行转换处理,获得样本对话录音对应的样本对话文本。在获得样本对话文本之后,可以识别样本对话文本中的样本关键槽位信息,其中,样本关键槽位信息包括样本行为信息、样本推理型槽位信息和样本复杂型槽位信息中的至少一种。
[0151] 需要说明的是,识别样本关键槽位信息的方式有多种,具体根据实际情况进行选择,本说明书实施例对此不作任何限定。本说明书一种可能的实现方式中,可以通过模型识别样本对话文本中的样本关键槽位信息,具体地,将样本对话文本输入行为识别模型中,获得样本行为信息。将样本对话文本输入实体识别模型中,获得样本推理型槽位信息和样本复杂型槽位信息。本说明书另一种可能的实现方式中,可以将样本对话文本和预设行为信息库进行匹配,确定样本行为信息,将样本对话文本和预设槽位信息库进行匹配,确定样本推理型槽位信息和样本复杂型槽位信息。
[0152] 进一步地,在获得样本对话文本中的样本关键槽位信息后,可以根据样本关键槽位信息,对样本对话文本进行结构标注,获得标注后的样本对话文本,根据多个样本对话录音和标注后的样本对话文本,构建样本集。需要说明的是,结构标注主要是标注样本对话文本中的结构化信息,包括样本行为信息、样本推理型槽位信息和样本复杂型槽位信息中的至少一种。
[0153] 实际应用中,对样本对话文本进行标注时,可以选取7个场景或领域,包括餐馆(restaurant)、酒店(hotel)、景点(attractions)、任务信息(profile)、火车(train)、出租车(taxi)、医院(hospital),定义了16种动作信息和36种槽位信息(具体参见表1),其中,槽位信息中包含了5种多轮复杂型槽位信息和25种推理型槽位信息。5种多轮复杂型槽位信息包括电话号、身份编码、车牌号、姓名和邮箱。25种推理型槽位信息包括语义推理、代数推理和日期推理。
[0154] 参见图5,图5示出了本说明书一个实施例提供的一种样本对话文本结构标注界面的界面示意图。由于每个对话领域对应的对话行为(act)和槽位(slots)有所不同,因此,可以设计如图5所示的层次化标注界面。通过录音转文本,将样本对话录音转换为样本对话文本之后,可以通过一个层次化的下拉框,选择用户侧和客服侧对应的领域‑动作标签‑槽位信息。其中,领域如景点、酒店、餐馆以及出租车。出租车对应的行为为告知内容,告知内容对应的槽位值为出发地、目的地以及出发时间。基于结构标注界面,可以标注出对话每一轮对应的对话动作,当前的对话状态(各个槽位对应的值)以及对自动语音识别技术(ASR,Automat ic Speech Recogn it ion)转录的内容进行修正。
[0155] 应用本说明书实施例的方案,获取多个样本对话录音;针对任一样本对话录音,对样本对话录音进行转换处理,获得样本对话录音对应的样本对话文本;识别样本对话文本中的样本关键槽位信息;根据样本关键槽位信息,对样本对话文本进行结构标注,获得标注后的样本对话文本;根据多个样本对话录音和标注后的样本对话文本,构建样本集。使得样本集完全口语化,并且,在样本集中引入了多轮槽位信息,更真实地反映人机对话模型对槽位的处理能力,提高人机对话模型的精准性。
[0156] 本说明书一种可选的实施例中,上述获取对话提示模板,可以包括以下步骤:
[0157] 获取初始提示模板,其中,初始提示模板包括对话提示位;
[0158] 从预设数据库中选择目标提示信息,将目标提示信息填充至对话提示位,获得对话提示模板,其中,预设数据库包括多个预设提示信息。
[0159] 具体地,初始提示模板为人工编辑好的模板,可以理解为陈述的句子序列,包括对话背景,进一步还可以包括注意事项。
[0160] 示例性地,初始提示模板为:注意事项:重要的信息用<>标记。消息“(使用隐藏表达式)”意味着这里需要隐藏表达式。请不要说太多。请向客户服务部门询问信息,并尝试以最短的转弯次数来解决问题。对话背景:您正在寻找A地的信息,您正在寻找镇上的<去处>,景点应该在<南方>,确保你得到<营业时间>,你也在寻找一个<火车>,火车应该<周五>从
在<19:15后出发>,(使用隐藏表达式)并应前往,(使用隐藏表达式),找到火车后,你想预订<5人>的火车票。其中,<>即为对话提示位,对话提示位中的信息可以根据预设数据库中的预设提示信息不断变化,从而获得不同的对话提示模板。[0161] 应用本说明书实施例的方案,获取初始提示模板,其中,初始提示模板包括对话提示位;从预设数据库中选择目标提示信息,将目标提示信息填充至对话提示位,获得对话提示模板,其中,预设数据库包括多个预设提示信息。通过将目标提示信息填充至对话提示位,用户只需要设置少量的初始提示模板,通过不断读取预设数据库中的目标提示信息,即可获得大量的对话提示模板,减轻了用户工作量,提高了获得对话提示模板的效率。
[0162] 本说明书一种可选的实施例中,上述样本关键槽位信息包括样本推理型槽位信息和/或样本复杂型槽位信息;识别样本对话文本中的样本关键槽位信息,可以包括以下步骤:
[0163] 将样本对话文本和预设槽位信息库进行匹配,获得样本对话文本中样本推理型槽位信息和/或样本复杂型槽位信息。
[0164] 需要说明的是,预设槽位信息库可以如上述表1所示,本说明书实施例便不再进行赘述。
[0165] 实际应用中,样本关键槽位信息还包括样本行为信息,可以对样本对话文本进行动作识别,获得样本对话文本中的样本行为信息。对样本对话文本进行动作识别的方式有多种,具体根据实际情况进行选择,本说明书实施例对此不作任何限定。本说明书一种可能的实现方式中,可以将样本对话文本和预设行为信息库进行匹配,确定样本预测行为信息,其中,预设行为信息库包括多个预设行为信息。本说明书另一种可能的实现方式中,可以将样本对话文本输入行为识别模型中,获得样本预测行为信息。
[0166] 应用本说明书实施例的方案,将样本对话文本和预设槽位信息库进行匹配,获得样本对话文本中样本推理型槽位信息和/或样本复杂型槽位信息。实现了准确获得样本推理型槽位信息和/或样本复杂型槽位信息,进一步根据样本推理型槽位信息和/或样本复杂型槽位信息准确训练获得人机对话模型。
[0167] 本说明书实时例中,由于可能会存在部分样本对话组没有完成对话目标以及对话录音质量偏差,如噪音较大、信号不好、包括无关内容等,所以在采集完成后,可以由人工对照对话提示模板进行内容质检,将不满足要求的样本对话组进行返工或删除,从而通过引入流水线型的质检方案以提高样本对话组的质量。
[0168] 参见图6,图6示出了本说明书一个实施例提供的一种对话数据集生成方法的流程图,具体包括以下步骤:
[0169] 步骤602:获取多个对话录音。
[0170] 步骤604:针对任一对话录音,对对话录音进行转换处理,获得对话录音对应的对话文本。
[0171] 步骤606:识别对话文本中的对话关键槽位信息,其中,对话关键槽位信息是对所述对话文本中的口语特征标注获得。
[0172] 步骤608:根据对话关键槽位信息,对对话文本进行结构标注,获得标注后的对话文本。
[0173] 步骤610:根据多个对话录音和标注后的对话文本,构建对话数据集。
[0174] 需要说明的是,对话关键槽位信息包括对话推理型槽位信息和/或对话复杂型槽位信息。本说明书一种可选的实施例中,对话关键槽位信息还可以包括对话行为信息。步骤602、步骤604、步骤606、步骤608、步骤610的具体实现方式与上述图3提供的人机对话方法的实现方式相同,本说明书实施例便不再赘述。
[0175] 应用本说明书实施例的方案,获取多个对话录音;针对任一对话录音,对对话录音进行转换处理,获得对话录音对应的对话文本;识别对话文本中的对话关键槽位信息,其中,对话关键槽位信息是对对话文本中的口语特征标注获得;根据对话关键槽位信息,对对话文本进行结构标注,获得标注后的对话文本;根据多个对话录音和标注后的对话文本,构建对话数据集。在对话数据集构建过程中,对真实口语对话场景进行模拟,通过对话关键槽位信息反映真实场景的对话特点,获得音义双模态、口语化并且带有口语新型关键槽位的数据集,使得对话数据集更加精准。
[0176] 参见图7,图7示出了本说明书一个实施例提供的一种人机对话模型的数据处理方法的流程图,具体包括以下步骤:
[0177] 步骤702:获取样本集。
[0178] 其中,样本集包括多个样本对话组,样本对话组包括样本对话录音和样本对话录音对应的样本对话文本,样本对话组携带样本关键槽位信息,样本关键槽位信息是对样本对话组中的口语特征标注获得。
[0179] 步骤704:将样本对话组输入初始对话模型中,获得样本对话组对应的测试回复内容。
[0180] 步骤706:根据测试回复内容中的测试关键槽位信息和样本关键槽位信息,确定初始对话模型的评测指标。
[0181] 步骤708:在评测指标满足预设评测条件的情况下,将初始对话模型作为人机对话模型,其中,预设评测条件用于评测初始对话模型的预测能力。
[0182] 需要说明的是,步骤702、步骤704的具体实现方式与上述图3提供的人机对话方法的实现方式相同,本说明书实施例便不再赘述。本说明书实施例中,评测指标也称为槽位信息评测指标,预设评测条件包括评测指标大于或等于预设指标阈值,预设指标阈值具体根据实际情况进行设置,本说明书实施例对此不作任何限定。评测指标大于或等于预设指标阈值,表示初始对话模型的精准性高,可以直接将初始对话模型作为人机对话模型;评测指标小于预设指标阈值,表示初始对话模型的精准性低,不能将初始对话模型作为人机对话模型。
[0183] 应用本说明书实施例的方案,获取样本集,其中,样本集包括多个样本对话组,样本对话组包括样本对话录音和样本对话录音对应的样本对话文本,样本对话组携带样本关键槽位信息,样本关键槽位信息是对样本对话组中的口语特征标注获得;将样本对话组输入初始对话模型中,获得样本对话组对应的测试回复内容;根据测试回复内容中的测试关键槽位信息和样本关键槽位信息,确定初始对话模型的评测指标;在评测指标满足预设评测条件的情况下,将初始对话模型作为人机对话模型,其中,预设评测条件用于评测初始对话模型的预测能力。由于样本对话组包括样本对话录音和样本对话文本,通过样本对话录音可以对真实口语对话场景进行模拟,并且,样本关键槽位信息可以反映真实场景的对话特点,因此,利用样本集对初始对话模型进行评测,可以准确确定初始对话模型的真实性与精准性。
[0184] 本说明书一种可选的实施例中,上述根据测试回复内容中的测试关键槽位信息和样本关键槽位信息,确定初始对话模型的评测指标之后,还可以包括以下步骤:
[0185] 在评测指标不满足预设评测条件的情况下,利用样本集,对初始对话模型进行微调,获得人机对话模型。
[0186] 需要说明的是,评测指标不满足预设评测条件,表示初始对话模型的精准性低,不能将初始对话模型作为人机对话模型,因此,可以利用样本集对初始对话模型进行微调,获得人机对话模型。具体的微调方式与上述人机对话模型的训练方式相同,本说明书实施例便不再进行赘述。
[0187] 应用本说明书实施例的方案,在评测指标不满足预设评测条件的情况下,利用样本集,对初始对话模型进行微调,获得人机对话模型,在初始对话模型的基础上,利用样本集进行微调,提高了人机对话模型的训练效率,使得人机对话模型更加精准。
[0188] 本说明书一种可选的实施例中,样本关键槽位信息包括样本推理型槽位信息和/或样本复杂型槽位信息,评测指标包括推理型槽位信息评测指标和/或复杂型槽位信息评测指标;上述根据测试回复内容中的测试关键槽位信息和样本关键槽位信息,确定初始对话模型的评测指标,可以包括以下步骤:
[0189] 根据测试回复内容中的测试推理型槽位信息和样本推理型槽位信息,确定初始对话模型的推理型槽位信息评测指标;和/或
[0190] 根据测试回复内容中的测试复杂型槽位信息和样本复杂型槽位信息,确定初始对话模型的复杂型槽位信息评测指标。
[0191] 具体地,可以根据测试关键槽位信息和样本槽位信息评价每一轮初始对话模型对当前状态的计算准确率。其中,当前状态是指各个槽位的值,测试关键槽位信息包括测试推理型槽位信息和/或测试复杂型槽位信息,样本槽位信息包括样本推理型槽位信息和/或样本复杂型槽位信息。实际应用中,槽位信息评测指标包括联合精度(joint accuracy)和槽精度(s lot accuracy):
[0192] 联合精度=状态正确轮数/总轮数。其中,状态正确是指当前轮所有槽位的值都正确。
[0193] 槽精度=正确的槽位数/总槽位数。其中,槽精度计算过程中,以槽位为粒度,槽位正确即加1。
[0194] 进一步地,槽位信息评测指标还可以包括回复成功指标(success rate),通过判断初始对话模型是否回答了所有用户请求的槽位信息,即可确定回复成功指标。值得说明的是,初始对话模型在生成测试回复内容时,可以给定样本关键槽位信息来预测,当然,初始对话模型还可以直接根据用户输入的用户对话内容直接预测,也即端到端的预测。
[0195] 应用本说明书实施例的方案,根据测试回复内容中的测试推理型槽位信息和样本推理型槽位信息,确定初始对话模型的推理型槽位信息评测指标;和/或根据测试回复内容中的测试复杂型槽位信息和样本复杂型槽位信息,确定初始对话模型的复杂型槽位信息评测指标。通过复杂型槽位信息评测指标和/或推理型槽位信息评测指标准确反映初始处理模型的处理能力,保证人机对话模型的真实性与精准性。
[0196] 本说明书另一种可选的实施例中,上述样本关键槽位信息还包括样本行为信息,评测指标还包括行为信息评测指标;根据测试回复内容中的测试关键槽位信息和样本关键槽位信息,确定初始对话模型的评测指标,可以包括以下步骤:
[0197] 提取测试回复内容中的测试行为信息;
[0198] 根据测试行为信息和样本行为信息,计算初始对话模型的行为信息评测指标。
[0199] 实际应用中,可以根据测试行为信息和样本行为信息计算告知准确指标(I nform rate),告知准确指标为测试行为信息与样本行为信息是否匹配的相关指标。若匹配,则表示初始对话模型可以向用户提供合适的实体,也即对话场景相匹配;若不匹配,则表示初始对话模型不能向用户提供合适的实体,也即对话场景不匹配。进一步地,还可以通过双语评估替补指标(BLEU,Bi l ingua l Eva l uat ion Understudy)评测初始对话模型的回复是否流畅。
[0200] 示例性地,假设测试行为信息为“支付”,样本行为信息为“跳舞”,则表示初始对话模型向用户提供的实体不合适,对话场景不匹配。
[0201] 本说明书实施例中,在确定推理型槽位信息评测指标、复杂型槽位信息评测指标和行为信息评测指标之后,可以将推理型槽位信息评测指标、复杂型槽位信息评测指标和行为信息评测指标相加,获得目标评测指标。或者,分别为推理型槽位信息评测指标、复杂型槽位信息评测指标和行为信息评测指标设置对应的权重,根据权重,对推理型槽位信息评测指标、复杂型槽位信息评测指标和行为信息评测指标进行加权,获得目标评测指标。进一步将目标评测指标和预设评测条件进行比较,从而确定是否要对初始对话模型进行微调,获得人机对话模型。
[0202] 应用本说明书实施例的方案,提取测试回复内容中的测试行为信息;根据测试行为信息和样本行为信息,计算初始对话模型的行为信息评测指标。在考虑推理型槽位信息评测指标和复杂型槽位信息评测指标的基础上,考虑了行为信息评测指标,提高了对初始对话模型评测的准确性。
[0203] 参见图8,图8示出了本说明书一个实施例提供的另一种人机对话模型的数据处理方法的流程图,该人机对话模型的数据处理方法应用于云侧设备,具体包括以下步骤:
[0204] 步骤802:获取样本集。
[0205] 其中,样本集包括多个样本对话组,样本对话组包括样本对话录音和样本对话录音对应的样本对话文本,样本对话组携带样本关键槽位信息,样本关键槽位信息是对样本对话组中的口语特征标注获得。
[0206] 步骤804:将样本对话文本输入对话模型中,获得样本对话文本对应的预测回复内容。
[0207] 步骤806:根据预测回复内容和样本关键槽位信息,对对话模型进行训练,在达到预设停止条件的情况下,获得训练得到的人机对话模型的模型参数。
[0208] 步骤808:向端侧设备发送训练得到的人机对话模型的模型参数。
[0209] 需要说明的是,步骤802、步骤804、步骤806的具体实现方式与上述图3提供的人机对话方法的实现方式相同,本说明书实施例便不再赘述。
[0210] 进一步地,云侧设备获得人机对话模型的模型参数之后,可以将人机对话模型的模型参数发送至端侧设备,端侧设备接收到人机对话模型的模型参数之后,可以根据人机对话模型的模型参数还原得到人机对话模型,进一步在本地利用人机对话模型实现人机对话。
[0211] 应用本说明书实施例的方案,获取样本集,其中,样本集包括多个样本对话组,样本对话组包括样本对话录音和样本对话录音对应的样本对话文本,样本对话组携带样本关键槽位信息,样本关键槽位信息是对样本对话组中的口语特征标注获得;将样本对话文本输入对话模型中,获得样本对话文本对应的预测回复内容;根据预测回复内容和样本关键槽位信息,对对话模型进行训练,在达到预设停止条件的情况下,获得训练得到的人机对话模型的模型参数;向端侧设备发送训练得到的人机对话模型的模型参数。由于样本对话组包括样本对话录音和样本对话文本,通过样本对话录音可以对真实口语对话场景进行模拟,并且样本关键槽位信息可以反映真实场景的对话特点,使得获得的人机对话模型更加精准。
[0212] 参见图9,图9示出了本说明书一个实施例提供的一种人机对话数据集的采集、标注及评测方法的流程图。
[0213] 对话内容采集:先根据初始提示模板(脚本)自动构建大量的对话提示模板,其中,对话提示模板中包括对话目标,然后邀请采集人员扮演客户和用户两个角色,完成以对话目标为目的语音对话(为了便于采集音频,一般可以直接采用打电话完成)。语音对话完成后的录音就是对话的基础内容,将基础内容进行按角色分轨后,就可以得到具体对话内容。
[0214] 结构化信息标注:得到具体对话内容之后,需要对内容进行对话的结构化信息标注。可以通过餐馆、酒店、景点等8个场景下,定义的16种用户和系统动作和36种槽位对对话内容进行标注。在完成该部分标注后,得到类似客服数据库的对话数据库,其中,对话数据库中包含各个不同对话领域中涉及到的各种资源信息,比如餐馆场景包含其餐馆名、区域、餐类、价位等。
[0215] 人机对话系统评测:在对人机对话系统进行评测时,系统扮演的是数据集标注中的客服侧,也就是说用客服侧的实际回答和作为真实答案的标注信息,来计算系统的相关评测指标。实际应用中,可以基于对话状态跟踪(DST,Dia log State Tracking)和回复生成两个任务对系统进行评测。对话状态跟踪任务:评价在每一轮系统侧对当前状态的计算准确率,当前状态是指各个槽位的值,具体指标采用联合精度和槽精度。回复生成任务:判断最终生成的回复的质量,可以使用回复成功指标、告知准确指标以及双语评估替补指标对回复质量进行评估。
[0216] 应用本说明书实施例的方案,提出一种构建语音场景下的音义双模态的任务型对话数据集的方法,对话数据集中同时包含了语音数据和文本数据两个模态数据的平行数据。在数据集构建过程中,对真实口语客服问答场景进行模拟,因此,构建的数据集建模了人和人在口语场景下交流的特有现象(例如:对话重复、对话不流利),实现了对话口语化。在语音对话中引入了多轮复杂型槽位信息和推理型槽位信息,更真实地反映和评测任务对话系统对槽位的处理能力。
[0217] 需要说明的是,本说明书实施例中可能会涉及到对用户数据的使用,在实际应用中,可以在符合所在国的适用法律法规要求的情况下(例如,用户明确同意,对用户切实通知,等),在适用法律法规允许的范围内在本文描述的方案中使用用户特定的个人数据。
[0218] 与上述人机对话方法实施例相对应,本说明书还提供了人机对话装置实施例,图10示出了本说明书一个实施例提供的一种人机对话装置的结构示意图。如图10所示,该装置包括:
[0219] 第一接收模块1002,被配置为接收前端发送的用户对话内容;
[0220] 第一输入模块1004,被配置为将用户对话内容输入预先训练的人机对话模型中,获得用户对话内容对应的回复内容,其中,人机对话模型基于多个样本对话组和样本对话组携带的样本关键槽位信息训练获得,样本对话组包括样本对话录音和样本对话录音对应的样本对话文本,样本关键槽位信息是对样本对话组中的口语特征标注获得。
[0221] 可选地,该装置还包括:人机对话模型训练模块,被配置为获取样本集,其中,样本集包括多个样本对话组,样本对话组包括样本对话录音和样本对话录音对应的样本对话文本,样本对话组携带样本关键槽位信息;从样本集中提取第一样本对话组,其中,第一样本对话组为样本集中的任一个;将第一样本对话组输入对话模型中,获得第一样本对话组对应的第一预测回复内容;根据第一预测回复内容和第一样本对话组携带的第一样本关键槽位信息,计算第一损失值;根据第一损失值,调整对话模型的参数,并返回执行从样本集中提取第一样本对话组的步骤,直至达到预设停止条件,获得人机对话模型。
[0222] 可选地,样本关键槽位信息包括样本推理型槽位信息和/或样本复杂型槽位信息,第一损失值包括推理型槽位信息损失值和/或复杂型槽位信息损失值,样本推理型槽位信息为间接表达对话意图的槽位信息,样本复杂型槽位信息为对话中多次出现的槽位信息;人机对话模型训练模块,进一步被配置为根据第一预测回复内容中的第一预测推理型槽位信息和第一样本推理型槽位信息,计算推理型槽位信息损失值;和/或根据第一预测回复内容中的第一预测复杂型槽位信息和第一样本复杂型槽位信息,计算复杂型槽位信息损失值。
[0223] 可选地,样本关键槽位信息还包括样本行为信息,第一损失值还包括行为信息损失值;人机对话模型训练模块,进一步被配置为提取第一预测回复内容中的第一预测行为信息;根据第一预测行为信息和第一样本行为信息,计算行为信息损失值。
[0224] 可选地,人机对话模型训练模块,进一步被配置获取多个样本对话录音;针对任一样本对话录音,对样本对话录音进行转换处理,获得样本对话录音对应的样本对话文本;识别样本对话文本中的样本关键槽位信息;根据样本关键槽位信息,对样本对话文本进行结构标注,获得标注后的样本对话文本;根据多个样本对话录音和标注后的样本对话文本,构建样本集。
[0225] 可选地,样本关键槽位信息包括样本推理型槽位信息和/或样本复杂型槽位信息;人机对话模型训练模块,进一步被配置为将样本对话文本和预设槽位信息库进行匹配,获得样本对话文本中样本推理型槽位信息和/或样本复杂型槽位信息。
[0226] 可选地,人机对话模型训练模块,进一步被配置为获取对话提示模板,其中,对话提示模板用于指导用户进行模拟对话;将对话提示模板发送至前端,以使前端显示对话提示模板;接收前端发送的对话提示模板对应的多个样本对话录音,其中,样本对话录音为第一对象和第二对象基于对话提示模板进行模拟对话生成。
[0227] 应用本说明书实施例的方案,接收前端发送的用户对话内容;将用户对话内容输入预先训练的人机对话模型中,获得用户对话内容对应的回复内容,其中,人机对话模型基于多个样本对话组和样本对话组携带的样本关键槽位信息训练获得,样本对话组包括样本对话录音和样本对话录音对应的样本对话文本,样本关键槽位信息是对样本对话组中的口语特征标注获得。由于样本对话组包括样本对话录音和样本对话文本,通过样本对话录音可以对真实口语对话场景进行模拟,并且,样本关键槽位信息可以反映真实场景的对话特点,使得人机对话模型更加精准,进一步提高了回复内容的准确性。
[0228] 上述为本实施例的一种人机对话装置的示意性方案。需要说明的是,该人机对话装置的技术方案与上述的人机对话方法的技术方案属于同一构思,人机对话装置的技术方案未详细描述的细节内容,均可以参见上述人机对话方法的技术方案的描述。
[0229] 与上述对话数据集生成方法实施例相对应,本说明书还提供了对话数据集生成装置实施例,图11示出了本说明书一个实施例提供的一种对话数据集生成装置的结构示意图。如图11所示,该装置包括:
[0230] 获取模块1102,被配置为获取多个对话录音;
[0231] 转换模块1104,被配置为针对任一对话录音,对对话录音进行转换处理,获得对话录音对应的对话文本;
[0232] 识别模块1106,被配置为识别对话文本中的对话关键槽位信息,其中,对话关键槽位信息是对对话文本中的口语特征标注获得;
[0233] 标注模块1108,被配置为根据对话关键槽位信息,对对话文本进行结构标注,获得标注后的对话文本;
[0234] 构建模块1110,被配置为根据多个对话录音和标注后的对话文本,构建对话数据集。
[0235] 应用本说明书实施例的方案,获取多个对话录音;针对任一对话录音,对对话录音进行转换处理,获得对话录音对应的对话文本;识别对话文本中的对话关键槽位信息,其中,对话关键槽位信息是对对话文本中的口语特征标注获得;根据对话关键槽位信息,对对话文本进行结构标注,获得标注后的对话文本;根据多个对话录音和标注后的对话文本,构建对话数据集。在对话数据集构建过程中,对真实口语对话场景进行模拟,通过对话关键槽位信息反映真实场景的对话特点,获得音义双模态、口语化并且带有口语新型槽位信息的数据集,使得对话数据集更加精准。
[0236] 上述为本实施例的一种对话数据集生成装置的示意性方案。需要说明的是,该对话数据集生成装置的技术方案与上述的对话数据集生成方法的技术方案属于同一构思,对话数据集生成装置的技术方案未详细描述的细节内容,均可以参见上述对话数据集生成方法的技术方案的描述。
[0237] 与上述人机对话模型的数据处理方法实施例相对应,本说明书还提供了人机对话模型的数据处理装置实施例,图12示出了本说明书一个实施例提供的一种人机对话模型的数据处理装置的结构示意图。如图12所示,该装置包括:
[0238] 第二获取模块1202,被配置为获取样本集,其中,样本集包括多个样本对话组,样本对话组包括样本对话录音和样本对话录音对应的样本对话文本,样本对话组携带样本关键槽位信息,样本关键槽位信息是对样本对话组中的口语特征标注获得;
[0239] 第二输入模块1204,被配置为将样本对话组输入初始对话模型中,获得样本对话组对应的测试回复内容;
[0240] 确定模块1206,被配置为根据测试回复内容中的测试关键槽位信息和样本关键槽位信息,确定初始对话模型的评测指标;
[0241] 判断模块1208,被配置为在评测指标满足预设评测条件的情况下,将初始对话模型作为人机对话模型,其中,预设评测条件用于评测初始对话模型的预测能力。
[0242] 可选地,该装置还包括:微调模块,被配置为在评测指标不满足预设评测条件的情况下,利用样本集,对初始对话模型进行微调,获得人机对话模型。
[0243] 可选地,样本关键槽位信息包括样本推理型槽位信息和/或样本复杂型槽位信息,评测指标包括推理型槽位信息评测指标和/或复杂型槽位信息评测指标;确定模块1206,进一步被配置为根据测试回复内容中的测试推理型槽位信息和样本推理型槽位信息,确定初始对话模型的推理型槽位信息评测指标;和/或根据测试回复内容中的测试复杂型槽位信息和样本复杂型槽位信息,确定初始对话模型的复杂型槽位信息评测指标。
[0244] 应用本说明书实施例的方案,获取样本集,其中,样本集包括多个样本对话组,样本对话组包括样本对话录音和样本对话录音对应的样本对话文本,样本对话组携带样本关键槽位信息,样本关键槽位信息是对样本对话组中的口语特征标注获得;将样本对话组输入初始对话模型中,获得样本对话组对应的测试回复内容;根据测试回复内容中的测试关键槽位信息和样本关键槽位信息,确定初始对话模型的评测指标;在评测指标满足预设评测条件的情况下,将初始对话模型作为人机对话模型,其中,预设评测条件用于评测初始对话模型的预测能力。由于样本对话组包括样本对话录音和样本对话文本,通过样本对话录音可以对真实口语对话场景进行模拟,并且,样本关键槽位信息可以反映真实场景的对话特点,因此,利用样本集对初始对话模型进行评测,可以准确确定初始对话模型的真实性与精准性。
[0245] 上述为本实施例的一种人机对话模型的数据处理装置的示意性方案。需要说明的是,该人机对话模型的数据处理装置的技术方案与上述的人机对话模型的数据处理方法的技术方案属于同一构思,人机对话模型的数据处理装置的技术方案未详细描述的细节内容,均可以参见上述人机对话模型的数据处理方法的技术方案的描述。
[0246] 与上述应用于云侧设备的人机对话模型的数据处理方法实施例相对应,本说明书还提供了应用于云侧设备的人机对话模型的数据处理装置实施例,图13示出了本说明书一个实施例提供的另一种人机对话模型的数据处理装置的结构示意图。如图13所示,该装置应用于云侧设备,包括:
[0247] 第三获取模块1302,被配置为获取样本集,其中,样本集包括多个样本对话组,样本对话组包括样本对话录音和样本对话录音对应的样本对话文本,样本对话组携带样本关键槽位信息,样本关键槽位信息是对样本对话组中的口语特征标注获得;
[0248] 第三输入模块1304,被配置为将样本对话文本输入对话模型中,获得样本对话文本对应的预测回复内容;
[0249] 训练模块1306,被配置为根据预测回复内容和样本关键槽位信息,对对话模型进行训练,在达到预设停止条件的情况下,获得训练得到的人机对话模型的模型参数;
[0250] 发送模块1308,被配置为向端侧设备发送训练得到的人机对话模型的模型参数。
[0251] 应用本说明书实施例的方案,获取样本集,其中,样本集包括多个样本对话组,样本对话组包括样本对话录音和样本对话录音对应的样本对话文本,样本对话组携带样本关键槽位信息,样本关键槽位信息是对样本对话组中的口语特征标注获得;将样本对话文本输入对话模型中,获得样本对话文本对应的预测回复内容;根据预测回复内容和样本关键槽位信息,对对话模型进行训练,在达到预设停止条件的情况下,获得训练得到的人机对话模型的模型参数;向端侧设备发送训练得到的人机对话模型的模型参数。由于样本对话组包括样本对话录音和样本对话文本,通过样本对话录音可以对真实口语对话场景进行模拟,并且,样本关键槽位信息可以反映真实场景的对话特点,使得获得的人机对话模型更加精准。
[0252] 上述为本实施例的一种人机对话模型的数据处理装置的示意性方案。需要说明的是,该人机对话模型的数据处理装置的技术方案与上述应用于云侧设备的人机对话模型的数据处理方法的技术方案属于同一构思,人机对话模型的数据处理装置的技术方案未详细描述的细节内容,均可以参见上述应用于云侧设备的人机对话模型的数据处理方法的技术方案的描述。
[0253] 图14示出了本说明书一个实施例提供的一种计算设备的结构框图。该计算设备1400的部件包括但不限于存储器1410和处理器1420。处理器1420与存储器1410通过总线
1430相连接,数据库1450用于保存数据。
[0254] 计算设备1400还包括接入设备1440,接入设备1440使得计算设备1400能够经由一个或多个网络1460通信。这些网络的示例包括公用交换电话网(PSTN,Pub l ic Switched Te lephone Network)、局域网(LAN,Loca l Area Network)、广域网(WAN,Wide Area Network)、个域网(PAN,Persona l Area Network)或诸如因特网的通信网络的组合。接入设备1440可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC,Network I nterface Card))中的一个或多个,诸如I EEE802.11无线局域网(WLAN,Wi re less Loca l Area Networks)无线接口、全球微波互联接入(Wi‑MAX,Wor ld I nteroperabi l ity for Microwave Access)接口、以太网接口、通用串行总线(USB,Un iversa l Ser ia l Bus)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC,Near Fie ld Commun icat ion)接口,等等。
[0255] 在本说明书的一个实施例中,计算设备1400的上述部件以及图14中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图14所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
[0256] 计算设备1400可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或个人计算机(PC,Persona l Computer)的静止计算设备。计算设备1400还可以是移动式或静止式的服务器。
[0257] 其中,处理器1420用于执行如下计算机可执行指令,该计算机可执行指令被处理器执行时实现上述人机对话方法或者对话数据集生成方法或者人机对话模型的数据处理方法的步骤。
[0258] 上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的人机对话方法、对话数据集生成方法和人机对话模型的数据处理方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述人机对话方法或者对话数据集生成方法或者人机对话模型的数据处理方法的技术方案的描述。
[0259] 本说明书一实施例还提供一种计算机可读存储介质,其存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现上述人机对话方法或者对话数据集生成方法或者人机对话模型的数据处理方法的步骤。
[0260] 上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的人机对话方法、对话数据集生成方法和人机对话模型的数据处理方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述人机对话方法或者对话数据集生成方法或者人机对话模型的数据处理方法的技术方案的描述。
[0261] 本说明书一实施例还提供一种计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行上述人机对话方法或者对话数据集生成方法或者人机对话模型的数据处理方法的步骤。
[0262] 上述为本实施例的一种计算机程序的示意性方案。需要说明的是,该计算机程序的技术方案与上述的人机对话方法、对话数据集生成方法和人机对话模型的数据处理方法的技术方案属于同一构思,计算机程序的技术方案未详细描述的细节内容,均可以参见上述人机对话方法或者对话数据集生成方法或者人机对话模型的数据处理方法的技术方案的描述。
[0263] 上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
[0264] 所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read‑On ly Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。
[0265] 需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本说明书实施例并不受所描述的动作顺序的限制,因为依据本说明书实施例,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本说明书实施例所必须的。
[0266] 在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
[0267] 以上公开的本说明书优选实施例只是用于帮助阐述本说明书。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书实施例的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本说明书实施例的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本说明书。本说明书仅受权利要求书及其全部范围和等效物的限制。