CN110737765A - 多轮对话的对话数据处理方法及相关装置 - Google Patents
多轮对话的对话数据处理方法及相关装置 Download PDFInfo
- Publication number
- CN110737765A CN110737765A CN201911024914.0A CN201911024914A CN110737765A CN 110737765 A CN110737765 A CN 110737765A CN 201911024914 A CN201911024914 A CN 201911024914A CN 110737765 A CN110737765 A CN 110737765A
- Authority
- CN
- China
- Prior art keywords
- data
- information set
- current round
- control information
- analysis
- 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
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- Artificial Intelligence (AREA)
- Human Computer Interaction (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请的实施例提供了一种多轮对话的对话数据处理方法及相关装置,涉及人机交互领域。该方法包括:响应用户操作,获取本轮对话数据和解析控制信息集合;解析控制信息集合表征历史对话的对话状态,且对话状态用于控制本轮对话数据的解析过程;根据解析控制信息集合对本轮对话数据进行解析;根据得到的本轮解析数据以及解析控制信息集合更新解析控制信息集合,并生成本轮回答数据以回复用户。由于对话状态用于控制本轮对话数据的解析过程,在本轮对话中可以根据解析控制信息集合实现对本轮对话数据的解析以及跳转到下一轮对话,不需通过预先设计大量的固定流程模板来完成多轮对话的跳转,故而能够简化多轮对话技术的配置,提高对话效率。
Description
技术领域
本申请涉及人机交互领域,具体而言,涉及一种多轮对话的对话数据处理方法及相关装置。
背景技术
目前的多轮对话技术的实现方式主要是通过预先设置的固定流程模板或者是状态转移自动机实现。
通过预先设置固定流程模板的方式实现多轮对话技术主要存在的问题是:一方面需要预先设计大量不同场景下的固定流程模板,且各个场景下的固定流程模板需要配置有完整的多轮对话跳转逻辑,配置复杂,容易出现逻辑错误,表示能力有限;另一方面用户需要按照固定流程模板逐步进行对话,导致对话交互过程固定,效率低下。而通过状态转移自动机实现多轮对话技术实际是预先设置固定流程模板方式的加强版,存在同样的问题。
因此,如何简化多轮对话技术的配置,提高对话效率成为亟待解决的问题。
发明内容
本申请的目的包括,例如,提供了一种多轮对话的对话数据处理方法及相关装置,其能够简化多轮对话技术的配置,提高对话效率。
本申请的实施例可以这样实现:
第一方面,本申请实施例提供一种多轮对话的对话数据处理方法,应用于电子设备,所述方法包括:响应用户操作,获取本轮对话数据和解析控制信息集合;所述解析控制信息集合表征历史对话的对话状态,且所述对话状态用于控制所述本轮对话数据的解析过程;根据所述解析控制信息集合对所述本轮对话数据进行解析,得到本轮解析数据;根据所述本轮解析数据以及所述解析控制信息集合更新所述解析控制信息集合,并生成本轮回答数据;根据所述本轮回答数据回复用户。
在可选的实施方式中,所述根据所述本轮解析数据以及所述解析控制信息集合更新所述解析控制信息集合的步骤包括:当所述解析控制信息集合中存在补充信息集合时,根据所述本轮解析数据、所述补充信息集合更新所述解析控制信息集合;所述补充信息集合包括待补充槽位数据。
在可选的实施方式中,所述本轮解析数据包括本轮领域数据以及本轮槽位数据,当所述本轮领域数据对应的领域与上一轮对话的领域一致时,所述根据所述本轮解析数据、所述补充信息集合更新所述解析控制信息集合的步骤包括:将所述本轮槽位数据与所述补充信息集合的待补充槽位数据进行匹配,删除所述补充信息集合中与所述本轮槽位数据匹配的待补充槽位数据;根据所述本轮槽位数据更新历史槽位数据;当更新后的所述历史槽位数据中存在必选槽位数据缺失时,则根据缺失的必选槽位数据生成本轮补充信息集合,并将所述本轮补充信息集合加入所述解析控制信息集合。
在可选的实施方式中,所述本轮解析数据包括本轮领域数据以及本轮槽位数据,当所述本轮领域数据对应的领域与上一轮对话的领域不一致时,所述根据所述本轮解析数据、所述补充信息集合更新所述解析控制信息集合的步骤包括:删除所述解析控制信息集合中的补充信息集合;根据所述本轮解析数据更新所述解析控制信息集合。
在可选的实施方式中,所述根据所述解析控制信息集合对所述本轮对话数据进行解析,得到本轮解析数据的步骤之后,所述方法还包括:当所述本轮解析数据中包括领域控制数据时,根据所述领域控制数据更新所述解析控制信息集合;所述领域控制数据用于控制下一轮对话的解析领域。
在可选的实施方式中,所述根据所述解析控制信息集合对所述本轮对话数据进行解析,得到本轮解析数据的步骤包括:当所述解析控制信息集合中包括领域控制信息集合时,在所述领域控制信息集合对应的领域下对所述本轮对话数据进行解析,得到本轮解析数据。第二方面,本申请实施例提供一种多轮对话的对话数据处理装置,应用于电子设备,所述装置包括:获取模块,用于响应用户操作,获取本轮对话数据和解析控制信息集合;所述解析控制信息集合表征历史对话的对话状态,且所述对话状态用于控制所述本轮对话数据的解析过程;处理模块,用于根据所述解析控制信息集合对所述本轮对话数据进行解析,得到本轮解析数据;所述处理模块,还用于根据所述本轮解析数据以及所述解析控制信息集合更新所述解析控制信息集合,并生成本轮回答数据;回复模块,用于根据所述本轮回答数据回复用户。
在可选的实施方式中,所述处理模块用于当所述解析控制信息集合中存在补充信息集合时,根据所述本轮解析数据、所述补充信息集合更新所述解析控制信息集合;所述补充信息集合包括待补充槽位数据。
在可选的实施方式中,所述本轮解析数据包括本轮领域数据以及本轮槽位数据,当所述本轮领域数据对应的领域与上一轮对话的领域一致时,所述处理模块用于将所述本轮槽位数据与所述补充信息集合的待补充槽位数据进行匹配,删除所述补充信息集合中与所述本轮槽位数据匹配的待补充槽位数据;根据所述本轮槽位数据更新历史槽位数据;当更新后的所述历史槽位数据中存在必选槽位数据缺失时,则根据缺失的必选槽位数据生成本轮补充信息集合,并将所述本轮补充信息集合加入所述解析控制信息集合。
在可选的实施方式中,所述本轮解析数据包括本轮领域数据以及本轮槽位数据,当所述本轮领域数据对应的领域与上一轮对话的领域不一致时,所述处理模块用于删除所述解析控制信息集合中的补充信息集合;根据所述本轮解析数据更新所述解析控制信息集合。
在可选的实施方式中,所述处理模块还用于当所述本轮解析数据中包括领域控制数据时,根据所述领域控制数据更新所述解析控制信息集合;所述领域控制数据用于控制下一轮对话的解析领域。
在可选的实施方式中,所述处理模块用于当所述解析控制信息集合中包括领域控制信息集合时,在所述领域控制信息集合对应的领域下对所述本轮对话数据进行解析,得到本轮解析数据。
第二方面,本申请实施例提供一种多轮对话的对话数据处理装置,应用于电子设备,所述装置包括:获取模块,用于响应用户操作,获取本轮对话数据和解析控制信息集合;所述解析控制信息用于控制所述本轮对话数据的解析过程;处理模块,用于根据所述解析控制信息集合对所述本轮对话数据进行解析,得到本轮解析数据;所述处理模块,还用于根据所述本轮解析数据以及所述解析控制信息集合更新所述解析控制信息集合,并生成本轮回答数据;回复模块,用于根据所述本轮回答数据回复用户。
在可选的实施方式中,所述处理模块用于当所述解析控制信息集合中存在补充信息集合时,根据所述本轮解析数据、所述补充信息集合更新所述解析控制信息集合;所述补充信息集合包括待补充槽位数据。
在可选的实施方式中,所述本轮解析数据包括本轮领域数据以及本轮槽位数据,当所述本轮领域数据对应的领域与上一轮对话的领域一致时,所述处理模块用于将所述本轮槽位数据与所述补充信息集合的待补充槽位数据进行匹配,删除所述补充信息集合中与所述本轮槽位数据匹配的待补充槽位数据;以及用于根据所述本轮槽位数据更新历史槽位数据;以及用于当更新后的所述历史槽位数据中存在必选槽位数据缺失时,则根据缺失的必选槽位数据生成本轮补充信息集合,并将所述本轮补充信息集合加入所述解析控制信息集合。
在可选的实施方式中,所述本轮解析数据包括本轮领域数据以及本轮槽位数据,当所述本轮领域数据对应的领域与上一轮对话的领域不一致时,所述处理模块用于删除所述解析控制信息集合中的补充信息集合;以及用于根据所述本轮解析数据更新所述解析控制信息集合。
在可选的实施方式中,所述处理模块还用于当所述本轮解析数据中包括领域控制数据时,根据所述领域控制数据更新所述解析控制信息集合;所述领域控制数据用于控制下一轮对话的解析领域。
在可选的实施方式中,所述处理模块用于当所述解析控制信息集合中包括领域控制信息集合时,在所述领域控制信息集合对应的领域下对所述本轮对话数据进行解析,得到本轮解析数据。
第三方面,本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如前述实施方式中任一项所述的多轮对话的对话数据处理方法。
第四方面,本申请实施例提供一种电子设备,包括处理器和存储器,所述存储器存储有机器可执行指令,所述处理器用于执行所述机器可执行指令以实现如前述实施方式中任一项所述的多轮对话的对话数据处理方法。
本申请实施例所提供的多轮对话的对话数据处理方法及相关装置,方法应用于电子设备,该方法包括:响应用户操作,获取本轮对话数据和解析控制信息集合;解析控制信息集合表征历史对话的对话状态,且对话状态用于控制本轮对话数据的解析过程;根据解析控制信息集合对本轮对话数据进行解析,得到本轮解析数据;根据本轮解析数据以及解析控制信息集合更新解析控制信息集合,并生成本轮回答数据;根据本轮回答数据回复用户。由于解析控制信息集合表征历史对话的对话状态,且对话状态用于控制本轮对话数据的解析过程,在本轮对话中电子设备可以根据解析控制信息集合实现对本轮对话数据的解析以及跳转到下一轮对话,不需要通过预先设计大量不同场景下的固定流程模板来完成多轮对话的跳转,故而能够简化多轮对话技术的配置,提高对话效率。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为订火车票场景下的固定流程模板的流程示意图。
图2为本申请实施例提供的一种电子设备的硬件结构示意图。
图3为本申请实施例提供的一种电子设备的软件结构示意图。
图4为本申请实施例提供的多轮对话的对话数据处理方法的一种流程示意图。
图5为本申请实施例提供的多轮对话的一种用户界面示意图。
图6为本申请实施例提供的多轮对话的另一种用户界面示意图。
图7为本申请实施例提供的多轮对话的对话数据处理方法的另一种流程示意图。
图8为本申请实施例提供的多轮对话的对话数据处理方法的另一种流程示意图。
图9为本申请实施例提供的解析系统的逻辑结构示意图。
图10为本申请实施例提供的多轮对话的对话数据处理方法的另一种流程示意图。
图11为本申请实施例提供的多轮对话的对话数据处理装置的一种功能模块图。
图标:100-电子设备;110-处理器;120-外部存储器接口;121-内部存储器;130-通用串行总线接口;140-充电管理模块;141-电源管理模块;142-电池;150-移动通信模块;160-无线通信模块;170-音频模块;170A-扬声器;170B-受话器;170C-麦克风;170D-机接口;180-传感器模块;193-摄像头;194-显示屏;201-界面内容;202-“对话”应用程序的图标;203-界面;300-多轮对话的对话数据处理装置;310-获取模块;320-处理模块;330-回复模块。
具体实施方式
以下实施例中所使用的术语只是为了描述特定实施例的目的,而并非旨在作为对本申请的限制。如在本申请的说明书和所附权利要求书中所使用的那样,单数表达形式“一个”、“一种”、“所述”、“上述”、“该”和“这一”旨在也包括例如“一个或多个”这种表达形式,除非其上下文中明确地有相反指示。还应当理解,在本申请以下各实施例中,“至少一个”、“一个或多个”是指一个、两个或两个以上。术语“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系;例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A、B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。
在本说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
在实现本申请实施例的技术方案的过程中,本申请发明人发现:
在人机交互领域,电子设备可以通过语音或文字的交互帮助用户实现特定的任务,例如拨打电话、订火车票、订外卖、购物、导航、播放音乐等。上述任务通常是由用户发起,通过与电子设备的一轮或多轮交互完成,多轮对话技术是实现上述电子设备与用户交互的核心技术。基于多轮对话技术,电子设备可以通过与用户进行多轮对话,逐步理解和确认用户的意图和需求。当前基于多轮对话技术的人机交互系统通常包括Apple Siri、Google Assistant、Amazon Alexa、Huawei HiVoice等。
在多轮对话过程中,为了准确理解用户的意图和需求,通常通过解析系统对用户输入的语音数据和/或文本数据进行解析,得到解析数据,进而根据解析数据理解用户的意图和需求并回复用户,以帮助用户实现特定的任务。其中,该解析数据包括:领域数据、意图数据以及槽位数据,领域数据表征该轮对话中,用户的语音数据和/或文本数据指向的领域(例如,出行领域等);意图数据表征该轮对话中,用户的语音数据和/或文本数据指向的意图(例如,订火车票意图等);槽位数据表征该轮对话中,用户的语音数据和/或文本数据指向的槽位(例如,目的地槽位、出发地槽位等)。
现有的解析系统在得到用户输入的语音数据和/或文本数据后,通常通过预先设置的固定流程模板或者状态转移自动机(即有限状态自动机)实现与用户的多轮对话。
以通过预先设置的固定流程模板实现电子设备与用户的多轮对话为例,在电子设备与用户进行多轮对话之前,需要在电子设备的解析系统中预先配置大量不同场景下的固定流程模板,例如,在订火车票场景下的固定流程模板、在导航场景下的固定流程模板以及在订外卖场景下的固定流程模板等。
具体的,以图1所示的订火车票场景下的固定流程模板为例,当用户需要订火车票,并与电子设备进行多轮对话时,电子设备需要根据该固定流程模板回复用户。由于用户通常不会在一轮对话中就将包括完整槽位数据的语音数据和/或文本数据输入给电子设备,以及多轮对话过程中用户的回复具有随机性(例如用户可能随时转变对话的场景),工程师需要预先考虑好所有可能的槽位缺失情况、对话场景转移的情况,以及其他可能发生的情况,例如在图1中,工程师需要考虑订火车票场景下所有可能的缺失槽位情况以及可能发生的对话场景转移的情况,并设置相应的多轮对话跳转逻辑。
因此,可以理解,在通过预先设置的固定流程模板实现与用户的多轮对话时,需要工程师预先考虑好多个不同场景下可能发生的完整的多轮对话跳转逻辑,为每个不同的场景基于完整的多轮对话跳转逻辑配置不同的固定流程模板。用户在与电子设备进行多轮对话的过程中,实际必须按照固定流程模板逐步进行多轮对话才能使得电子设备理解用户的意图和需求,若用户的回复超出固定流程模板所能解答的范围,则电子设备将无法理解用户的意图和需求。
故而可以理解的是,现有的通过预先设置固定流程模板的方式实现多轮对话技术主要存在的问题是:一方面需要预先设计大量不同场景下的固定流程模板,且各个场景下的固定流程模板需要配置有完整的多轮对话跳转逻辑,配置复杂,容易出现逻辑错误,表示能力有限;另一方面用户需要按照固定流程模板逐步进行对话,导致对话交互过程固定,效率低下。而通过状态转移自动机实现多轮对话技术实际是预先设置固定流程模板方式的加强版,同样存在上述问题。
因此,为了改善上述缺陷,本申请实施例提出一种多轮对话的对话数据处理方法及相关装置,其能简化多轮对话技术的配置,提高对话效率。需要说明的是,以上现有技术中的方案所存在的缺陷,均是发明人在经过实践并仔细研究后得出的结果,因此,上述问题的发现过程以及下文中本发明实施例针对上述问题所提出的解决方案,都应该是发明人在本发明过程中对本发明做出的贡献。
本申请实施例提供的一种多轮对话的对话数据处理方法可应用于手机、平板电脑、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、手持计算机、上网本、个人数字助理(personal digital assistant,PDA)、可穿戴电子设备、虚拟现实设备、有线和/或无线耳机、汽车中控台等电子设备,本申请实施例对此不做任何限制。
应理解,在具备有与用户对话功能的电子设备(例如,手机、有线和/或无线耳机等)和/或获取用户输入以及显示输出功能的电子设备(例如,手机、平板电脑等)上,都可以应用本申请提供的多轮对话的对话数据处理方法。
示例性的,图2示出了电子设备100的结构示意图。
电子设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,摄像头193,显示屏194等。
可以理解的是,本发明实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
可以理解的是,本发明实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备100的结构限定。在本申请另一些实施例中,电子设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过电子设备100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
电源管理模块141用于连接电池142、充电管理模块140与处理器110。电源管理模块141可接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,显示屏194,摄像头193,和无线通信模块160等供电。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在电子设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括一个或多个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wirelesslocal area networks,WLAN),例如无线保真网络(wireless fidelity,Wi-Fi),蓝牙(Bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成一个或多个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,电子设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(codedivision multiple access,CDMA),宽带码分多址(wideband code division multipleaccess,WCDMA),时分码分多址(time-division code division multiple access,TDSCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidounavigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellitesystem,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
电子设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode的,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot lightemitting diodes,QLED)等。在一些实施例中,电子设备100可以包括1个或N个显示屏194,N为大于1的正整数。
电子设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头193中。
摄像头193用于捕获静态图像或视频。在一些实施例中,手机可以包括1个或N个摄像头,N为大于1的正整数。摄像头193可以是前置摄像头也可以是后置摄像头。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组1(moving picture experts group,MPEG),MPEG2,MPEG3,MPEG4等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储一个或多个计算机程序,该一个或多个计算机程序包括指令。处理器110可以通过运行存储在内部存储器121的上述指令,从而使得电子设备100执行本申请一些实施例中所提供的多轮对话的对话数据处理方法,以及各种功能应用和数据处理等。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统;该存储程序区还可以存储一个或多个应用程序(比如对话、设置等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如语音数据,文本数据等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如一个或多个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。在另一些实施例中,处理器110通过运行存储在内部存储器121的指令,和/或存储在设置于处理器中的存储器的指令,来使得电子设备100执行本申请实施例中所提供的多轮对话的对话数据处理方法,以及各种功能应用和数据处理。
电子设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。电子设备100可以通过扬声器170A收听音乐,或收听免提通话。
受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。当电子设备100接听电话或语音信息时,可以通过将受话器170B靠近人耳接听语音。
麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风170C发声,将声音信号输入到麦克风170C。电子设备100可以设置一个或多个麦克风170C。在另一些实施例中,电子设备100可以设置两个麦克风170C,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,电子设备100还可以设置三个,四个或更多麦克风170C,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
耳机接口170D用于连接有线耳机。耳机接口170D可以是USB接口130,也可以是3.5mm的开放移动电子设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
传感器模块180可以包括压力传感器,陀螺仪传感器,气压传感器,磁传感器,加速度传感器,距离传感器,接近光传感器,指纹传感器,温度传感器,触摸传感器,环境光传感器,骨传导传感器等,本申请实施例对此不做任何限制。
当然,本申请实施例提供的电子设备100还可以包括按键、马达、指示器以及SIM卡接口等一项或多项器件,本申请实施例对此不做任何限制。
上述电子设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。当然,本申请实施例提供的电子设备100的软件系统可以是Android、IOS系统以及其他操作系统,本申请实施例对此不做任何限制。
下面,本申请实施例以分层架构的Android系统为例,示例性说明电子设备100的软件结构。
图3是本申请实施例的电子设备100的软件结构框图。分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层、应用程序框架层、Android runtime(ART,Android运行环境ART)、系统库以及内核层。应用程序层可以包括一系列应用程序包。
如图3所示,应用程序包可以包括相机、图库、日历、通话、地图、导航、WLAN、蓝牙、音乐、视频、信息等应用程序。
应用程序框架层为应用程序层的应用程序提供应用编程接口(a pplicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
例如,在本申请中,多轮对话的对话数据处理的函数或者算法等都可以包括在应用程序框架层。
如图2所示,应用程序框架层可以包括窗口管理器、内容提供器、电话管理器、资源管理器、通知管理器、视图系统等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
例如,在本申请中,内容控制器可以实时获取预览界面中采集到的图像,并将处理之后的图像显示在预览界面中。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供电子设备100的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
Android runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager)、三维图形处理库(例如:OpenGL ES)、二维图形引擎(例如:SGL)、媒体库(media libraries)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
二维图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动、摄像头驱动、传感器驱动、音频驱动。
为了便于理解,本申请以下实施例将以具有图2和图3所示结构的电子设备为例,结合附图和应用场景,对本申请实施例提供的多轮对话的对话数据处理方法进行具体阐述。
请参照图4,图4为本申请实施例提供的多轮对话的对话数据处理方法的一种流程示意图。该方法可以应用于上述的电子设备,可以包括以下步骤:
S100,响应用户操作,获取本轮对话数据和解析控制信息集合;解析控制信息集合表征历史对话的对话状态,且对话状态用于控制本轮对话数据的解析过程。
如图5所示,以手机作为电子设备为例,该手机的屏幕显示系统显示了当前输出的界面内容201,该界面内容201为手机的主界面。该主界面上显示了多款应用程序,例如,“通讯录”、“定位”、“设备”、“便签”、“更新”、“信息”、“通话”、“设置”以及“对话”。应理解,该界面内容201还可以包括其他应用程序,本申请对此不作限定。
当手机检测到用户点击主界面上的“对话”应用程序的图标202的操作后,可以启动“对话”应用程序,在启动“对话”应用程序后,如图6所示,手机的界面内容201可以呈现如界面203的内容。此时,手机可以获取本轮对话数据以开启与用户的多轮对话,例如,可以获取用户的语音输入(例如,手机通过话筒获取用户的“查询去成都的火车票”的语音输入)、文本输入等作为本轮对话数据,应理解,本申请对获取本轮对话数据的形式不作限定。
在启动“对话”应用程序后,手机还可获取解析控制信息集合,该解析控制信息集合表征历史对话的对话状态。其中,由于用户与手机进行多轮对话时,通常需要一轮或多轮交互才能完成多轮对话的过程,进而历史对话可以理解为当前轮次(即本轮)之前的一轮或多轮对话,对话状态可以理解为手机根据历史对话的关键信息生成的并用于控制本轮对话数据的解析过程的信息。进而可以理解,手机可以根据该解析控制信息集合控制本轮对话数据的解析过程,并且由于随着手机与用户的对话轮次增加,历史对话的对话状态可能发生变化,解析控制信息集合可能会出现更新,进而在一次多轮对话过程中,各轮对话的解析控制信息集合可能不同。可选地,在多轮对话的首轮中,解析控制信息集合可以为预先设置且存储在手机的存储器中的数据。
下面,以表1所示的手机与用户进行的多轮对话为例,对上述S100做进一步解释。
表1
在第一轮对话的过程中,由于为首轮对话,暂不存在历史对话的对话状态,故该解析控制信息集合可以为空(即表征的历史对话的对话状态为空),在本轮对话中手机可以根据该为空的解析控制信息集合对本轮对话数据进行正常解析。
在第二轮对话的过程中,由于在上一轮对话中用户的意图为订火车票,且已填的槽位为目的地槽位,还缺少起始地槽位和时间槽位(即历史对话的对话状态为缺少起始地槽位和时间槽位的状态),故该解析控制信息集合可以为表征“缺少起始地槽位;缺少时间槽位”的信息(即表征的历史对话的对话状态为缺少起始地槽位和时间槽位的状态),在本轮对话(第二轮对话)中手机可以选择优先解析本轮对话数据中的起始地信息以及时间信息,进而实现了根据解析控制信息集合控制本轮对话数据的解析过程。
容易理解,在一些可能的实施例中,手机响应用户操作的过程也可以是用户直接通过预设的口令(例如,“嗨,开启多轮对话。”)唤醒手机,直接进入上述的“对话”应用程序,本申请实施例对于手机响应用户操作的过程不作限定。
需要补充的是,本申请发明人发现:在多轮对话领域的在语义理解中,每轮对话的对话解析结果可以理解为是一种状态,并且该状态能够为下一轮对话的对话解析提供支持,例如,假设某轮对话中的解析到用户的对话数据为询问天气的意图且缺少槽位时间时,此时该轮对话的对话解析结果可以理解为一种进入询问天气意图但是缺少时间槽位的状态,在下一轮对话中可以根据该对话解析结构进行对话解析。因此,在本申请中能够通过设置解析控制信息集合来表示上述状态,且根据上述状态来控制本轮对话数据的解析过程,即“解析控制信息集合表征历史对话的对话状态,且对话状态用于控制本轮对话数据的解析过程”,进而使得本申请能够实现根据解析控制信息集合控制本轮对话数据的解析过程。在实际应用中,本申请中的解析控制信息集合可以理解为一种根据历史对话的信息生成的用于运载历史对话的状态的信号,其中,该信号的具体实现形式可以是以特定数据结构组织的数据的形式实现(例如字符串、数组等)。
S110,根据解析控制信息集合对本轮对话数据进行解析,得到本轮解析数据。
继续以上述表1所示的多轮对话为例,在第一轮对话的过程中,由于该解析控制信息集合可以为空,手机可以根据该为空的解析控制信息集合对本轮对话数据进行正常解析,即对本轮对话数据“查询去成都的火车票”进行正常解析,可以得到表征“领域为订火车票;目的地为成都”的信息作为本轮解析数据。
在第二轮对话的过程中,该解析控制信息集合可以包括表征“缺少起始地槽位;缺少时间槽位”的信息,手机可以根据该解析控制信息集合选择优先解析本轮对话数据中的起始地信息以及时间信息,即优先解析本轮对话数据“明天的”中的起始地信息以及时间信息,得到表征“时间为明天”的信息作为本轮解析数据。
可选地,以图5、6所示的手机为例,在获取到本轮对话数据和解析控制信息集合后,手机可以通过自然语言理解解析系统(例如,NLU(Natural Language Understanding,自然语言理解)解析系统)结合解析控制信息集合对本轮对话数据进行解析。
例如,当解析控制信息集合中包括对话限定领域信息时,则手机可以通过解析系统仅在限定的领域对本轮对话数据进行解析;又如,当解析控制信息集合中包括对话的预测领域时,则手机可以通过解析系统优先在预测领域对本轮对话数据进行解析,因此,本申请对根据解析控制信息集合对本轮对话数据进行解析的具体形式不作限定。
应理解,解析系统可以是手机在进入“对话”应用程序之后由“对话”应用程序调用的预先存储在手机的存储器中的程序,或者是“对话”应用程序本身,本申请对此不作限定。
S120,根据本轮解析数据以及解析控制信息集合更新解析控制信息集合,并生成本轮回答数据。
可选地,以图5、6所示的手机为例,手机在得到本轮解析数据后,可以通过解析系统根据本轮解析数据以及解析控制信息集合更新解析控制信息集合,以及根据本轮解析数据以及解析控制信息集合生成本轮回答数据。
继续以上述表1所示的多轮对话为例,在第一轮对话的过程中,由于本轮解析数据为表征“领域为订火车票;目的地为成都”的信息,解析控制信息集合为空。手机可以根据上述本轮解析数据以及解析控制信息集合确定出缺少起始地槽位以及缺少时间槽位,进而可以在解析控制信息集合中加入表征“缺少起始地槽位;缺少时间槽位”的信息,以完成对解析控制信息集合的更新。然后,手机可以确定出本轮回答数据为表征需要起始地和时间的询问信息(即“请问要查询什么时候,从哪里去成都的火车票?”)。
在第二轮对话的过程中,由于本轮解析数据为表征“时间为明天”的信息,解析控制信息集合包括表征“缺少起始地槽位;缺少时间槽位”的信息,则手机可以根据该本轮解析数据以及该解析控制信息集合确定出时间已匹配,进而在解析控制信息集合中删除表征“缺少时间槽位”的信息,以完成对解析控制信息集合的更新。然后,手机可以确定出本轮回答数据为表征需要起始地的询问信息(即“请问要查询从哪里去成都的火车票?”)。
S130,根据本轮回答数据回复用户。
在一些可能的实施例中,继续以图5、6所示的手机为例,手机可以根据本轮回答数据通过扬声器回复用户(例如,当本轮回答数据为表示“请问要查询什么时候,从哪里去成都的火车票?”的数据时,手机可以通过扬声器播放“请问要查询什么时候,从哪里去成都的火车票?”的语音信息以回复用户),或者通过显示屏将本轮回答数据显示给用户(例如,当本轮回答数据为表示“请问要查询什么时候,从哪里去成都的火车票?”的数据时,手机可以通过显示屏显示“请问要查询什么时候,从哪里去成都的火车票?”的文本信息以回复用户),本申请对根据本轮回答数据回复用户的具体形式不作限定。
应理解,在上述表1所示的多轮对话的第一轮对话和第二轮对话中,手机可以根据第一轮对话中的解析控制信息集合对本轮对话数据进行解析、对解析控制信息集合进行更新以及跳转到第二轮对话,手机可以根据第一轮对话更新的解析控制信息集合实现对第二轮对话中的本轮对话数据进行解析、对解析控制信息集合进行更新以及跳转到第三轮对话,进而上述的S100-S130实现了本轮对话中电子设备可以根据解析控制信息集合控制本轮对话数据的解析过程以及跳转到下一轮对话的目的。
由于解析控制信息集合表征历史对话的对话状态,且对话状态用于控制本轮对话数据的解析过程,在本轮对话中电子设备可以根据解析控制信息集合控制本轮对话数据的解析过程以及跳转到下一轮对话,不需要通过预先设计大量不同场景下的固定流程模板来完成多轮对话的跳转,故而能够简化多轮对话技术的配置,提高对话效率。并且,由于每轮对话均会对解析控制信息集合进行更新,故本申请还实现了实时根据历史对话的对话状态对本轮对话数据进行解析,进而本申请还能够灵活实际地根据历史对话完成本轮对话到下一轮对话的跳转。
进一步的,在图4的基础上,下面给出一种完整方案可能的实现方式,具体请参照图7,图7示出了本申请实施例提供的多轮对话的对话数据处理方法的另一种流程图。需要说明的是,本发明实施例提供的多轮对话的对话数据处理方法并不以图7以及以下的具体顺序为限制,应当理解,在其它实施例中,本发明实施例提供的多轮对话的对话数据处理方法其中部分步骤的顺序可以根据实际需要相互交换,或者其中的部分步骤也可以省略或删除。下面将对图7所示的具体流程进行详细阐述。
对于如何根据解析控制信息集合对本轮对话数据进行解析,得到本轮解析数据,S110可以包括:
S111,当解析控制信息集合中包括领域控制信息集合时,在领域控制信息集合对应的领域下对本轮对话数据进行解析,得到本轮解析数据。
在一些可能的实施例中,解析控制信息集合中的每个解析控制信息的实现形式可以是以字符串的形式实现,例如,当解析控制信息集合中包括表征“询问天气意图;缺少时间槽位”的信息时,则解析控制信息集合可以包括字符串:“@intention:weather;@slot:miss_time”以表征历史对话的对话状态为询问天气意图和缺少时间槽位的状态。进而,领域控制信息集合可以是以字符串的形式被包括在解析控制信息集合中,例如,领域控制信息集合可以包括字符串:“@domain_only:meal ordering”以表征历史对话的对话状态为限定订餐领域的状态。
当解析控制信息集合中包括领域控制信息集合时,手机可以仅在领域控制信息集合对应的领域下对本轮对话数据进行解析,得到本轮解析数据。例如,当领域控制信息集合中包括字符串:“@domain_only:meal ordering”时,此时手机仅在订餐领域对本轮对话数据进行解析,得到本轮解析数据。
应理解,由于通过在领域控制信息集合对应的领域下对本轮对话数据进行解析,得到本轮解析数据,进而使得本申请的方法能够提前限定多轮对话过程中的对话数据的解析领域,提高多轮对话的解析效率。
在得到本轮解析数据之后,为了实现多轮对话中领域的灵活控制的目的,方法还可以包括:
S112,当本轮解析数据中包括领域控制数据时,根据领域控制数据更新解析控制信息集合;领域控制数据用于控制下一轮对话的解析领域。
在一些可能的实施例中,领域控制数据可以对应用户输入的对话数据所表征的领域控制意图。例如,当用户输入的对话数据为“我不想订票了,我想查路线”,则该对话数据所表征的领域控制意图为“删除限定订票领域,限定查路线领域”,领域控制数据可以为与“删除限定订票领域,限定查路线领域”对应的数据,当进行多轮对话的对话数据处理时,即可根据领域控制数据更新解析控制信息集合,然后根据更新的解析控制信息集合对下一轮对话的解析领域进行控制,进而领域控制数据可以用于控制下一轮对话的解析领域。
在一些可能的实施例中,领域控制数据可以包括增加限定领域数据和/或删除限定领域数据,进而S112可以包括:根据增加限定领域数据对应的领域生成领域控制信息集合,并将领域控制信息集合加入解析控制信息集合;以及删除解析控制信息集合中与删除限定领域数据的领域一致的信息。
例如,解析控制信息集合中预先包括有表征“限定D0、D1领域”的信息,在第一轮对话时,由于解析控制信息集合包括有表征“限定D0、D1领域”的信息,故第一轮对话中只能在D0、D1领域对本轮(即第一轮)对话数据进行解析。当第一轮中的本轮对话数据解析出领域控制数据,且该领域控制数据包括增加限定领域数据(表征增加限定D2领域)和删除限定领域数据(表征删除限定D0、D1领域)时,则将表征“限定D2领域”的信息加入解析控制信息集合中,并删除解析控制信息集合中表征“限定D0、D1领域”的信息,得到包括有表征“限定D2领域”的信息的解析控制信息集合。在第二轮对话中,由于解析控制信息集合包括有表征“限定D2领域”的信息,故第一轮对话中只能在D2领域对本领对话数据进行解析。进而完成了多轮对话中领域的灵活控制。
应理解,通过根据领域控制数据更新解析控制信息集合,本申请所提供的方法既能够实现在单个领域对对话数据进行解析,也可以在多个领域(即局部领域)对对话数据进行解析。
下面将结合解析系统的实际应用对上述S112作进一步解释。
对于如何实现在单个领域对对话数据进行解析,假设存在领域D0、D1、D2、D3,领域控制信息包括SD0和SD1,SD0表示限定D0、D2、D3领域,SD1表示限定D1领域,解析系统中的领域控制信息集合预设设置为包括SD0。在进行多轮对话时,由于领域控制信息集合包括SD0,则仅在D0、D2、D3领域对对话数据进行解析;若后续轮对话的对话数据的解析数据中包括“开启D1领域,删除D0、D2、D3领域”(即领域控制数据)时,则删除领域控制信息集合中的SD0,并在领域控制信息集合中增加SD1,以使后续轮对话仅在D1领域对对话数据进行解析;若后续轮对话的对话数据的解析数据中包括“开启D0、D2、D3领域,删除D1领域”(即领域控制数据)时,则删除领域控制信息集合中的SD1,并在领域控制信息集合中增加SD0,以使后续轮对话仅在D0、D2、D3领域对对话数据进行解析。
对于如何实现在多个领域对对话数据进行解析,假设存在领域D1、D2、D3、D4、D5、D6,领域控制信息包括SD1和SD2,SD1表示限定D1、D2、D3领域,SD2表示限定D4、D5、D6领域,解析系统中的领域控制信息集合预设设置为包括SD1。在进行多轮对话时,由于领域控制信息集合包括SD1,则仅在D1、D2、D3领域对对话数据进行解析;若后续轮对话的对话数据的解析数据中包括“开启D4、D5、D6领域,删除D1、D2、D3领域”(即领域控制数据)时,则删除领域控制信息集合中的SD1,并在领域控制信息集合中增加SD2,以使后续轮对话仅在D4、D5、D6领域对对话数据进行解析;若后续轮对话的对话数据的解析数据中包括“开启D1、D2、D3领域,删除D4、D5、D6领域”(即领域控制数据)时,则删除领域控制信息集合中的SD2,并在领域控制信息集合中增加SD1,以使后续轮对话仅在D4、D5、D6领域对对话数据进行解析。
进而可以理解,由于通过根据领域控制数据更新解析控制信息集合,本申请所提供的方法能够在多轮对话的过程中根据用户指示以及预先设定灵活地改变限定领域,提升用户体验感。
进一步的,对于如何根据本轮解析数据以及解析控制信息集合更新解析控制信息集合,S120可以包括:
S121,当解析控制信息集合中存在补充信息集合时,根据本轮解析数据、补充信息集合更新解析控制信息集合,其中,补充信息集合包括待补充槽位数据。
以上述表1所示的手机与用户进行的多轮对话为例,在第二轮对话中,补充信息集合包括的待补充槽位数据有表征“缺少起始地槽位;缺少时间槽位”的信息(即表示本轮对话中缺少起始地槽位和时间槽位),此时,手机根据该待补充槽位数据以及本轮解析数据更新解析控制信息集合,以实现对缺少的槽位的补充以及为下一轮对话数据的解析控制做准备。
应理解,本申请中的补充信息集合还可以包括待补充意图数据等,以便获取在本轮对话过程中缺少的意图以及其他信息,进而,本申请对于补充信息集合包括的数据种类不作限定。
应理解,S112与S121的执行顺序可以是,S112先于S121执行,也可以是S112后于S121执行,还可以是S112与S121同时执行,本申请对此不作限定。
进一步的,本轮解析数据包括本轮领域数据以及本轮槽位数据,对于如何根据本轮解析数据、补充信息集合更新解析控制信息集合,在图7的基础上,请参照图8,S121可以包括:
S121-1,判断本轮领域数据对应的领域与上一轮对话的领域是否一致;当本轮领域数据对应的领域与上一轮对话的领域一致时,执行S121-2;当本轮领域数据对应的领域与上一轮对话的领域不一致时,则执行S121-5。
以下表2所示的多轮对话为例,在第二轮对话的过程中,本轮领域数据对应的领域为:出行领域,与第一轮对话的领域一致,进而确定本轮领域数据对应的领域与上一轮对话的领域一致,执行S121-2。
表2
S121-2,将本轮槽位数据与补充信息集合的待补充槽位数据进行匹配,删除补充信息集合中与本轮槽位数据匹配的待补充槽位数据。
继续以表2所示的多轮对话为例,在第二轮对话的过程中,本轮槽位数据为表征“时间槽位”的信息,待补充槽位数据为表征“起始地槽位;时间槽位”的信息,由于本轮槽位数据的表征“时间槽位”的信息与待补充槽位数据表征“时间槽位”的信息匹配,故删除待补充槽位数据中的表征“时间槽位”的信息。
S121-3,根据本轮槽位数据更新历史槽位数据。
继续以表2所示的多轮对话为例,在第二轮对话的过程中,手机获取历史槽位数据(即第一轮对话获取的表征“目的地槽位”的信息),然后将本轮槽位数据表征“时间槽位”的信息加入历史槽位数据,以实现根据本轮槽位数据更新历史槽位数据。
应理解,将根据本轮槽位数据更新历史槽位数据的方式可以是:将本轮槽位数据加入历史槽位数据中,并删去重复的数据。
S121-4,当更新后的历史槽位数据中存在必选槽位数据缺失时,则根据缺失的必选槽位数据生成本轮补充信息集合,并将本轮补充信息集合加入解析控制信息集合。
继续以表2所示的多轮对话为例,在第二轮对话的过程中,更新后的历史槽位数据中包括表征“目的地槽位;时间槽位”的信息,此时由于更新后的历史槽位数据中依然存在必选槽位数据(表征“起始地槽位”的信息)缺失,手机根据缺失的必选槽位数据(表征“起始地槽位”的信息)生成本轮补充信息集合(表征“起始地槽位”的信息),并将本轮补充信息集合加入解析控制信息集合,为下一轮对话数据的解析控制做准备。
S121-5,删除解析控制信息集合中的补充信息集合。
以下表3所示的多轮对话为例,在第二轮对话的过程中,本轮领域数据对应的领域为:订餐领域,与第一轮对话的领域不一致,此时,删除解析控制信息集合中的补充信息集合,即删除待补充槽位数据中表征“起始地槽位;时间槽位”的信息。
表3
S121-6,根据本轮解析数据更新解析控制信息集合。
继续以表3所示的多轮对话为例,在第二轮对话的过程中,本轮解析数据包括本轮领域数据和本轮槽位数据,本轮领域数据为表征“订餐领域”的信息,本轮槽位数据为表征“订餐时间槽位,商家槽位”的信息,进而可以生成表征“限定订餐领域,订餐时间槽位,商家槽位”的解析控制信息并将该解析控制信息合加入解析控制信息集合,以实现解析控制信息集合的更新,应理解,根据本轮解析数据更新解析控制信息集合可以是:根据本轮解析数据生成解析控制信息,并将该解析控制信息加入解析控制信息集合。
进一步的,基于上述方法,本申请还提供一种解析系统,请参照图9。该解析系统可以应用于上述的电子设备,以实现上述的多轮对话的对话数据处理方法。该解析系统包括三类解析器,分别为:APP解析器、Domain解析器(即领域解析器)以及Intention解析器(即意图、槽位解析器)。其中,APP解析器、Domain解析器以及Intention解析器以树状逻辑结构进行组织,一个APP解析器可以与至少一个Domain解析器形成父子逻辑关系,一个Domain解析器可以与至少一个Intention解析器形成父子逻辑关系。其中,上述解析器可以以计算机程序、固件、集成电路等形式实现。
每类解析器在解析多轮对话的对话数据时,可以通过预先配置的信号池实现根据解析控制信息集合对对话数据进行解析,即每类解析器均将生成的解析控制信息存放至信号池中,该信号池中的所有解析控制信息即为解析控制信息集合。
在一些可能的实施例中,每类解析器在解析对话时,均先将生成的解析控制信息集合放入信号池中,然后根据该信号池中的解析控制信息集合进行解析。其中,每个解析器都可以包括一个信号预测器,当该信号预测器为预测状态时,该解析器才可以对对话数据进行解析。当父解析器的信号预测器为预测状态时,其可以询问其从属的子解析器,若子解析器的信号预测器为预测状态,则该父解析器会将该对话数据交给该子解析器进行解析。应理解,本申请提供的解析系统,可以在子解析器解析对话的时候提前知道父解析器发送的解析控制信息集合,方便子解析器进行解析,同时也能保证兄弟解析器间不互相影响。
为了进一步解释本申请提供的方法,下面将结合解析系统的实际应用对上述方法做进一步说明。请参照图10,在用户与电子设备进行多轮对话的过程中,每轮对话的对话数据处理包括如下步骤:解析系统响应用户操作,获取本轮对话数据和解析控制信息集合。然后解析系统根据解析控制信息集合选择合适的领域对对话数据进行解析。
其中,对于如何根据解析控制信息集合选择合适的领域对对话数据进行解析,解析系统可以判断解析控制信息集合中是否存在领域控制信息集合(即领域限定),当存在领域控制信息集合时,则确定在领域控制信息集合对应的限定领域对对话数据进行解析;当不存在领域控制信息集合时,则确定不限定领域直接对对话数据进行解析。
在确定限定领域后,解析系统还可以判断本轮对话的领域与上一轮是否一致(即本轮对话数据的领域与上轮对话的领域是否相同),当本轮对话数据的领域与上轮对话的领域一致时,则根据本轮解析数据、补充信息集合更新解析控制信息集合;当本轮对话数据的领域与上轮对话的领域不一致时,则根据本轮解析数据更新解析控制信息集合。
其中,对于如何根据本轮解析数据、补充信息集合更新解析控制信息集合,解析系统可以:获取历史槽位数据,然后根据解析控制信息集合选择解析器解析对话数据以得到本轮解析数据,最后根据本轮解析数据更新解析控制信息。具体的,获取历史槽位数据,以及根据解析控制信息集合选择解析器解析对话数据以得到本轮解析数据,然后根据本轮解析数据的本轮槽位数据更新历史槽位数据,以及将本轮槽位数据与补充信息集合的待补充槽位数据进行匹配,删除补充信息集合中与本轮槽位数据匹配的待补充槽位数据,最后当更新后的历史槽位数据中存在必选槽位数据缺失时,则根据缺失的必选槽位数据生成本轮补充信息集合,并将本轮补充信息集合加入解析控制信息集合。
对于如何根据本轮解析数据更新解析控制信息集合,解析系统可以:记录新的槽位数据,然后根据解析控制信息集合选择解析器解析对话数据以得到本轮解析数据,最后根据本轮解析数据更新解析控制信息。具体的,删除解析控制信息集合中的补充信息集合,然后根据解析控制信息集合选择解析器解析对话数据以得到本轮解析数据,记录本轮槽位数据中的新的槽位数据,最后根据本轮解析数据更新解析控制信息集合。
在得到本轮解析数据后,解析系统还可以判断本轮解析数据中是否存在领域控制数据,当存在领域控制数据时,则根据领域控制数据进一步更新解析控制信息集合。在更新解析控制信息集合后,解析系统还可以生成本轮回答数据以回复用户,进而完成本轮对话数据的处理,并跳转至下一轮对话。
需要说明的是,图10所示的方法,其基本原理及产生的技术效果和上述实施例相同,为简要描述,本实施例部分未提及之处,可参考上述的实施例中相应内容。
为了执行上述实施例及各个可能的方式中的相应步骤,下面给出一种多轮对话的对话数据处理装置的实现方式,请参阅图11,图11示出了本申请实施例提供的多轮对话的对话数据处理装置的一种功能模块图。需要说明的是,本实施例所提供的多轮对话的对话数据处理装置300,其基本原理及产生的技术效果和上述实施例相同,为简要描述,本实施例部分未提及之处,可参考上述的实施例中相应内容。该多轮对话的对话数据处理装置300包括:获取模块310、处理模块320、回复模块330。
可选地,上述模块可以软件或固件(Firmware)的形式存储于存储器中或固化于该电子设备的操作系统(Operating System,OS)中,并可由电子设备中的处理器执行。同时,执行上述模块所需的数据、程序的代码等可以存储在存储器中。
其中,获取模块310可以用于支持电子设备100执行上述S100等,和/或用于本文所描述的技术的其他过程。
处理模块320可以用于支持电子设备100执行上述S110、S120、S111、S121、S121-1至S121-6等,和/或用于本文所描述的技术的其他过程。
回复模块330可以用于支持电子设备100执行上述S130等,和/或用于本文所描述的技术的其他过程。
需要说明的是,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述实施例揭示的多轮对话的对话数据处理方法。
综上所述,本申请实施例所提供的多轮对话的对话数据处理方法及相关装置,方法应用于电子设备,该方法包括:响应用户操作,获取本轮对话数据和解析控制信息集合;解析控制信息集合表征历史对话的对话状态,且对话状态用于控制本轮对话数据的解析过程;根据解析控制信息集合对本轮对话数据进行解析,得到本轮解析数据;根据本轮解析数据以及解析控制信息集合更新解析控制信息集合,并生成本轮回答数据;根据本轮回答数据回复用户。由于解析控制信息集合表征历史对话的对话状态,且对话状态用于控制本轮对话数据的解析过程,在本轮对话中电子设备可以根据解析控制信息集合实现对本轮对话数据的解析以及跳转到下一轮对话,不需要通过预先设计大量不同场景下的固定流程模板来完成多轮对话的跳转,故而能够简化多轮对话技术的配置,提高对话效率。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种多轮对话的对话数据处理方法,其特征在于,应用于电子设备,所述方法包括:
响应用户操作,获取本轮对话数据和解析控制信息集合;所述解析控制信息集合表征历史对话的对话状态,且所述对话状态用于控制所述本轮对话数据的解析过程;
根据所述解析控制信息集合对所述本轮对话数据进行解析,得到本轮解析数据;
根据所述本轮解析数据以及所述解析控制信息集合更新所述解析控制信息集合,并生成本轮回答数据;
根据所述本轮回答数据回复用户。
2.根据权利要求1所述的方法,其特征在于,所述根据所述本轮解析数据以及所述解析控制信息集合更新所述解析控制信息集合的步骤包括:
当所述解析控制信息集合中存在补充信息集合时,根据所述本轮解析数据、所述补充信息集合更新所述解析控制信息集合;所述补充信息集合包括待补充槽位数据。
3.根据权利要求2所述的方法,其特征在于,所述本轮解析数据包括本轮领域数据以及本轮槽位数据,当所述本轮领域数据对应的领域与上一轮对话的领域一致时,所述根据所述本轮解析数据、所述补充信息集合更新所述解析控制信息集合的步骤包括:
将所述本轮槽位数据与所述补充信息集合的待补充槽位数据进行匹配,删除所述补充信息集合中与所述本轮槽位数据匹配的待补充槽位数据;
根据所述本轮槽位数据更新历史槽位数据;
当更新后的所述历史槽位数据中存在必选槽位数据缺失时,则根据缺失的必选槽位数据生成本轮补充信息集合,并将所述本轮补充信息集合加入所述解析控制信息集合。
4.根据权利要求2所述的方法,其特征在于,所述本轮解析数据包括本轮领域数据以及本轮槽位数据,当所述本轮领域数据对应的领域与上一轮对话的领域不一致时,所述根据所述本轮解析数据、所述补充信息集合更新所述解析控制信息集合的步骤包括:
删除所述解析控制信息集合中的补充信息集合;
根据所述本轮解析数据更新所述解析控制信息集合。
5.根据权利要求1所述的方法,其特征在于,所述根据所述解析控制信息集合对所述本轮对话数据进行解析,得到本轮解析数据的步骤之后,所述方法还包括:
当所述本轮解析数据中包括领域控制数据时,根据所述领域控制数据更新所述解析控制信息集合;所述领域控制数据用于控制下一轮对话的解析领域。
6.根据权利要求1所述的方法,其特征在于,所述根据所述解析控制信息集合对所述本轮对话数据进行解析,得到本轮解析数据的步骤包括:
当所述解析控制信息集合中包括领域控制信息集合时,在所述领域控制信息集合对应的领域下对所述本轮对话数据进行解析,得到本轮解析数据。
7.一种多轮对话的对话数据处理装置,其特征在于,应用于电子设备,所述装置包括:
获取模块,用于响应用户操作,获取本轮对话数据和解析控制信息集合;所述解析控制信息用于控制所述本轮对话数据的解析过程;
处理模块,用于根据所述解析控制信息集合对所述本轮对话数据进行解析,得到本轮解析数据;
所述处理模块,还用于根据所述本轮解析数据以及所述解析控制信息集合更新所述解析控制信息集合,并生成本轮回答数据;
回复模块,用于根据所述本轮回答数据回复用户。
8.根据权利要求7所述的装置,其特征在于,所述处理模块用于当所述解析控制信息集合中存在补充信息集合时,根据所述本轮解析数据、所述补充信息集合更新所述解析控制信息集合;所述补充信息集合包括待补充槽位数据。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-6中任一项所述的多轮对话的对话数据处理方法。
10.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有机器可执行指令,所述处理器用于执行所述机器可执行指令以实现如权利要求1-6中任一项所述的多轮对话的对话数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911024914.0A CN110737765A (zh) | 2019-10-25 | 2019-10-25 | 多轮对话的对话数据处理方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911024914.0A CN110737765A (zh) | 2019-10-25 | 2019-10-25 | 多轮对话的对话数据处理方法及相关装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110737765A true CN110737765A (zh) | 2020-01-31 |
Family
ID=69271398
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911024914.0A Pending CN110737765A (zh) | 2019-10-25 | 2019-10-25 | 多轮对话的对话数据处理方法及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110737765A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111611360A (zh) * | 2020-03-31 | 2020-09-01 | 北京文思海辉金信软件有限公司 | 多轮对话策略生成方法、装置、计算机设备和存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109086329A (zh) * | 2018-06-29 | 2018-12-25 | 出门问问信息科技有限公司 | 基于话题关键词引导的进行多轮对话方法及装置 |
CN109616108A (zh) * | 2018-11-29 | 2019-04-12 | 北京羽扇智信息科技有限公司 | 多轮对话交互处理方法、装置、电子设备及存储介质 |
CN109829036A (zh) * | 2019-02-12 | 2019-05-31 | 浙江核新同花顺网络信息股份有限公司 | 一种对话管理方法及相关装置 |
KR20190066156A (ko) * | 2017-12-05 | 2019-06-13 | (주)레드테이블 | 빅데이터 및 머신러닝 기반 스마트 관광 채팅로봇 시스템 |
JP2019101291A (ja) * | 2017-12-05 | 2019-06-24 | 株式会社日立製作所 | 成長型対話装置 |
CN109977209A (zh) * | 2019-03-22 | 2019-07-05 | 深圳狗尾草智能科技有限公司 | 多轮人机交互方法、系统、计算机及介质 |
CN110096516A (zh) * | 2019-03-25 | 2019-08-06 | 北京邮电大学 | 自定义的数据库交互的对话生成方法及系统 |
CN110196927A (zh) * | 2019-05-09 | 2019-09-03 | 大众问问(北京)信息科技有限公司 | 一种多轮人机对话方法、装置及设备 |
-
2019
- 2019-10-25 CN CN201911024914.0A patent/CN110737765A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190066156A (ko) * | 2017-12-05 | 2019-06-13 | (주)레드테이블 | 빅데이터 및 머신러닝 기반 스마트 관광 채팅로봇 시스템 |
JP2019101291A (ja) * | 2017-12-05 | 2019-06-24 | 株式会社日立製作所 | 成長型対話装置 |
CN109086329A (zh) * | 2018-06-29 | 2018-12-25 | 出门问问信息科技有限公司 | 基于话题关键词引导的进行多轮对话方法及装置 |
CN109616108A (zh) * | 2018-11-29 | 2019-04-12 | 北京羽扇智信息科技有限公司 | 多轮对话交互处理方法、装置、电子设备及存储介质 |
CN109829036A (zh) * | 2019-02-12 | 2019-05-31 | 浙江核新同花顺网络信息股份有限公司 | 一种对话管理方法及相关装置 |
CN109977209A (zh) * | 2019-03-22 | 2019-07-05 | 深圳狗尾草智能科技有限公司 | 多轮人机交互方法、系统、计算机及介质 |
CN110096516A (zh) * | 2019-03-25 | 2019-08-06 | 北京邮电大学 | 自定义的数据库交互的对话生成方法及系统 |
CN110196927A (zh) * | 2019-05-09 | 2019-09-03 | 大众问问(北京)信息科技有限公司 | 一种多轮人机对话方法、装置及设备 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111611360A (zh) * | 2020-03-31 | 2020-09-01 | 北京文思海辉金信软件有限公司 | 多轮对话策略生成方法、装置、计算机设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11880628B2 (en) | Screen mirroring display method and electronic device | |
CN112291764B (zh) | 一种内容接续系统 | |
CN111724775B (zh) | 一种语音交互方法及电子设备 | |
US11837217B2 (en) | Message playing method and terminal | |
CN113722027A (zh) | 一种通知消息的显示方法及电子设备 | |
CN110602686B (zh) | 一种使用远程sim模块的方法及电子设备 | |
CN112995727A (zh) | 一种多屏协同方法、系统及电子设备 | |
CN114422640B (zh) | 一种设备推荐方法及电子设备 | |
CN111382418B (zh) | 应用程序权限管理方法、装置、存储介质与电子设备 | |
CN113488042B (zh) | 一种语音控制方法及电子设备 | |
CN113225423A (zh) | 一种联系人的推荐方法及电子设备 | |
CN115550597A (zh) | 一种拍摄方法、系统及电子设备 | |
CN113391743B (zh) | 一种显示方法及电子设备 | |
WO2023005711A1 (zh) | 一种服务的推荐方法及电子设备 | |
CN110737765A (zh) | 多轮对话的对话数据处理方法及相关装置 | |
CN116032942A (zh) | 跨设备的导航任务的同步方法、装置、设备及存储介质 | |
CN113835802A (zh) | 设备交互方法、系统、设备及计算机可读存储介质 | |
CN113672404A (zh) | 一种显示方法和电子终端设备 | |
CN114244955A (zh) | 一种服务的分享方法、系统及电子设备 | |
CN116828102B (zh) | 录音方法、设备及存储介质 | |
CN115942253B (zh) | 一种提示方法及相关装置 | |
WO2024140279A1 (zh) | 传输文件的方法及电子设备 | |
CN115291960A (zh) | 一种车载电子设备的控制方法及车载电子设备 | |
CN117827758A (zh) | 文件打开方法及电子设备 | |
CN117667506A (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 |