车载对话系统及用于其的处理方法和系统与流程

文档序号:17441410发布日期:2019-04-17 04:48阅读:364来源:国知局
车载对话系统及用于其的处理方法和系统与流程

本发明属于车载语音领域,具体提供一种车载对话系统及用于其的处理方法和系统。



背景技术:

现有的车载语音系统的处理方式通常为链式结构,即在一个语音查询信息可能涉及到多个任务领域时,系统需要先备份当前用户对话上下文,然后执行领域a的处理逻辑,领域a的处理逻辑执行完毕之后,再回退执行领域b的处理逻辑,最后决策使用领域a还是领域b的执行结果。

如,用户前一句的查询信息是“去天安门”,用户会进入导航领域的多轮对话,系统会等待用户进行列表选择。如果用户此时说“七里香”,系统认为用户既有可能是进行列表选择,也有可能是想听歌。因此,系统在备份用户对话上下文之后,会先执行导航多轮对话的处理逻辑。导航领域的逻辑处理完之后,系统会回退到领域匹配模块,并使用之前备份的用户对话上下文。领域匹配模块匹配出任务领域是媒体领域,后面就会走媒体领域的处理逻辑,然后再进行决策,决定最终使用导航领域还是媒体领域的执行结果。这种链式处理结构需要备份用户对话上下文,支持回退,逻辑比较复杂,可扩展性不好。

相应地,本领域需要一种车载语音系统及其处理方法来解决上述问题。



技术实现要素:

第一方面,本发明提供了一种用于车载对话系统的处理方法,所述处理方法包括如下步骤:根据语音请求数据识别出多个处理线程;使所述多个处理线程并行执行各自的操作;根据所述多个处理线程的执行结果,确定所述语音请求数据的处理结果。

在上述处理方法的优选技术方案中,若当前处理线程包括多个子线程,在“根据所述多个处理线程的执行结果,确定所述语音请求数据的处理结果”的步骤之前,所述方法还包括:根据所述语音请求数据识别出多个子线程;使所述多个子线程并行执行各自的操作;根据所述多个子线程的执行结果,确定所述当前处理线程的执行结果。

在上述处理方法的优选技术方案中,若所述当前子线程的执行结果包括多个选项,在“根据所述多个子线程的执行结果,确定所述当前处理线程的执行结果”的步骤之后,所述方法还包括:根据所述多个选项与用户当前输入的语音确认数据,确定所述当前处理线程的执行结果。

在上述处理方法的优选技术方案中,“根据所述语音请求数据识别出多个处理线程”的步骤包括:获取所述语音请求数据的语音关键词;基于预设的关键词和多个处理线程之间的对应关系,匹配与所述语音关键词对应的所有处理线程。

在上述处理方法的优选技术方案中,“根据所述语音请求数据识别出多个子线程”的步骤包括:对所述语音请求数据进行语义分析;根据所述语义分析的结果,确定相关的所有子线程。

第二方面,本发明还提供了一种用于车载对话系统的处理系统,所述处理系统包括第一识别模块,其用于根据语音请求数据识别出多个处理线程;第一处理模块,其用于使所述多个处理线程并行执行各自的操作;第一决策模块,其用于根据所述多个处理线程的执行结果,确定所述语音请求数据的处理结果。

在上述处理系统的优选技术方案中,若所述当前处理线程包括多个子线程,所述处理系统还包括第二识别模块,其用于根据所述语音请求数据识别出多个子线程;第二处理模块,其用于使所述多个子线程并行执行各自的操作;第二决策模块,其用于根据所述多个子线程的执行结果,确定所述当前处理线程的执行结果。

在上述处理系统的优选技术方案中,所述处理系统还包括状态跳转模块,若所述当前子线程的执行结果包括多个选项,所述状态跳转模块用于根据所述多个选项与用户当前输入的语音确认数据,确定所述当前处理线程的执行结果。

在上述处理系统的优选技术方案中,所述第一识别模块配置有分类模型,其用于基于预设的关键词和多个处理线程之间的对应关系,匹配与所述语音关键词对应的所有处理线程。

在上述处理系统的优选技术方案中,所述第二识别模块配置有语义理解模型,其用于对所述语音请求数据进行语义分析并根据所述语义分析的结果,确定相关的子线程。

第三方面,本发明还提供了一种车载对话系统,包括上述优选技术方案中任一项所述的用于车载对话系统的处理系统。

第四方面,本发明还提供了一种车机,所述车机包括语音输出模块和上述优选技术方案中所述的车载对话系统,所述语音输出模块用于将所述车载对话系统输出的语音数据信息转化为语音输出。

第五方面,本发明还提供了一种车辆,所述车辆包括上述优选技术方案中所述的车机。

第六方面,本发明还提供了一种存储装置,其中存储有多条程序,所述程序适于由处理器加载以执行上述优选技术方案中任一项所述的用于车载对话系统的处理方法。

第七方面,本发明还提供了一种控制装置,包括处理器、存储设备,所述存储设备适于存储多条程序,所述程序适于由所述处理器加载以执行上述优选技术方案中任一项所述的用于车载对话系统的处理方法。

与最接近的现有技术相比,本发明的技术方案至少具有如下

有益效果:

1、本发明在接收到用户的语音请求数据之后,会识别出与该语音请求数据相关的多个处理线程,并且使这相关的多个处理线程并行执行各自的操作,最终根据这多个处理线程的执行结果确定该语音请求数据的处理结果。使多条相关的处理线程同时执行,与单线程执行加多次回退相比提高了整个处理流程的执行速度,可以更快的得出相关的执行结果,提高了车载对话系统的使用体验。

2、本发明的与语音请求数据相关的处理线程包括多条子线程时,根据该语音请求数据使相关的子线程并行执行各自的操作,最终根据相关子线程的执行结果确定该处理线程的执行结果。使相关处理线程以及相关处理线程的子线程并行执行各自的操作,不仅提高了整个处理流程的执行速度,而且还可以很容易的扩展新的处理线程以及处理线程下的子线程等。

方案1、一种用于车载对话系统的处理方法,其特征在于,所述处理方法包括如下步骤:根据语音请求数据识别出多个处理线程;使所述多个处理线程并行执行各自的操作;根据所述多个处理线程的执行结果,确定所述语音请求数据的处理结果。

方案2、根据方案1所述的处理方法,其特征在于,若当前处理线程包括多个子线程,在“根据所述多个处理线程的执行结果,确定所述语音请求数据的处理结果”的步骤之前,所述方法还包括:根据所述语音请求数据识别出多个子线程;使所述多个子线程并行执行各自的操作;根据所述多个子线程的执行结果,确定所述当前处理线程的执行结果。

方案3、根据方案2所述的处理方法,其特征在于,若所述当前子线程的执行结果包括多个选项,在“根据所述多个子线程的执行结果,确定所述当前处理线程的执行结果”的步骤之后,所述方法还包括:根据所述多个选项与用户当前输入的语音确认数据,确定所述当前处理线程的执行结果。

方案4、根据方案1所述的处理方法,其特征在于,“根据所述语音请求数据识别出多个处理线程”的步骤包括:获取所述语音请求数据的语音关键词;基于预设的关键词和多个处理线程之间的对应关系,匹配与所述语音关键词对应的所有处理线程。

方案5、根据方案2所述的处理方法,其特征在于,“根据所述语音请求数据识别出多个子线程”的步骤包括:对所述语音请求数据进行语义分析;根据所述语义分析的结果,确定相关的所有子线程。

方案6、一种用于车载对话系统的处理系统,其特征在于,所述处理系统包括第一识别模块,其用于根据语音请求数据识别出多个处理线程;第一处理模块,其用于使所述多个处理线程并行执行各自的操作;第一决策模块,其用于根据所述多个处理线程的执行结果,确定所述语音请求数据的处理结果。

方案7、根据方案6所述的处理系统,其特征在于,若所述当前处理线程包括多个子线程,所述处理系统还包括第二识别模块,其用于根据所述语音请求数据识别出多个子线程;第二处理模块,其用于使所述多个子线程并行执行各自的操作;第二决策模块,其用于根据所述多个子线程的执行结果,确定所述当前处理线程的执行结果。

方案8、根据方案7所述的处理系统,其特征在于,所述处理系统还包括状态跳转模块,若所述当前子线程的执行结果包括多个选项,所述状态跳转模块用于根据所述多个选项与用户当前输入的语音确认数据,确定所述当前处理线程的执行结果。

方案9、根据方案6所述的处理系统,其特征在于,所述第一识别模块配置有分类模型,其用于基于预设的关键词和多个处理线程之间的对应关系,匹配与所述语音关键词对应的所有处理线程。

方案10、根据方案7所述的处理系统,其特征在于,所述第二识别模块配置有语义理解模型,其用于对所述语音请求数据进行语义分析并根据所述语义分析的结果,确定相关的子线程。

方案11、一种车载对话系统,其特征在于,包括上述方案6-10中任一项所述的用于车载对话系统的处理系统。

方案12、一种车机,其特征在于,所述车机包括语音输出模块和方案11所述的车载对话系统,所述语音输出模块用于将所述车载对话系统输出的语音数据信息转化为语音输出。

方案13、一种车辆,其特征在于,所述车辆包括方案12所述的车机。

方案14、一种存储装置,其中存储有多条程序,其特征在于,所述程序适于由处理器加载以执行方案1-5中任一项所述的用于车载对话系统的处理方法。

方案15、一种控制装置,包括处理器、存储设备,所述存储设备适于存储多条程序,其特征在于,所述程序适于由所述处理器加载以执行方案1-5中任一项所述的用于车载对话系统的处理方法。

附图说明

下面参照附图并结合车辆来描述本发明的优选实施方式,附图中:

图1是本发明一种实施例的用于车载对话系统的处理方法的主要步骤图;

图2是本发明一种实施例的用于车载对话系统的处理系统的主要结构框图。

附图标记列表:

1、第一识别模块;11、任务执行模块;12、闲聊执行模块;13、用户手册执行模块;2、第一决策模块;3、第二识别模块;31、领域匹配模块;32、意图匹配模块;33、行为执行模块;4、第二决策模块;5、状态跳转模块;6、结果输出模块。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

下面参照附图来描述本发明的优选实施方式。本领域技术人员应当理解的是,这些实施方式仅仅用于解释本发明的技术原理,并非旨在限制本发明的保护范围。

如图1所示,图1是本发明一种实施例的用于车载对话系统的处理方法的主要步骤图。参照图1,本实施例中用于车载对话系统的处理方法包括以下步骤:

步骤s10、根据语音请求数据识别出多个处理线程;

步骤s20、使多个处理线程并行执行各自的操作;

步骤s30、根据多个处理线程的执行结果,确定语音请求数据的处理结果。

在本发明的实施例中,预先设定了多个处理线程。示例性地,多个处理线程为任务执行处理线程、闲聊执行处理线程和用户手册执行处理线程。通过根据语音请求数据识别与该语音请求数据相关的多个处理线程,并使相关的多个处理线程并行执行各自的操作,最终根据这相关的多个处理线程各自的执行结果确定出语音请求数据的最终处理结果。这样使多条相关的处理线程同时执行,与单线程执行加多次回退相比提高了整个处理流程的执行速度,可以更快的得出相关的执行结果,提高了车载对话系统的使用体验。

步骤s10具体包括以下步骤:

步骤s101、获取语音请求数据的语音关键词;

步骤s102、基于预设的关键词和多个处理线程之间的对应关系,匹配与语音关键词对应的所有处理线程。

在本发明的实施例中,预先设定了与多个处理线程具有对应关系的大量语音关键词。但是由于语音关键词与相关处理线程的对应关系为模糊匹配,因此在获取语音关键词之后,可能会匹配出多个相关的处理线程。这样的设置可以同时匹配出与语音关键词相关的所有处理线程,提高了执行速度,而且在增加了执行结果的多样性的同时也保证了执行结果的可靠性。

步骤s30进一步包括:通过第一优先级策略从多个处理线程的执行结果中选择一个执行结果确定为语音请求数据的处理结果。其中,第一优选级策略可以为:任务执行处理线程执行成功>用户手册执行处理线程执行成功>闲聊执行处理线程执行成功>任务执行处理线程执行失败>用户手册执行处理线程执行失败>闲聊执行处理线程执行失败。

具体地,如用户是要做一些具体的事情,比如“导航去天安门”,出现了“导航”、“天安门”等有关具体执行操作和地点的关键词,那么用户的对话语句属于任务执行处理线程;如用户是要进行随意的聊天,比如“我累了”,那么对话语句属于闲聊执行处理线程;再如用户是要查询车辆用户手册的一些功能,比如“如何打开尾门”,出现了“如何”、“尾门”等关于询问和车辆的关键词,那对话语句属于用户手册执行处理线程。但若用户对话语句为“我饿了”,则可能是要寻找附近的餐馆,属于任务执行处理线程;也可能属于闲聊,属于闲聊执行处理线程,此时,就会匹配出这两个处理线程。使这两个处理线程并行执行后续的操作,如果两个处理线程均执行成功,那么根据第一优先级策略选择任务执行处理线程的处理线程的执行结果作为最后的处理结果。

在本发明的实施例中,任务执行处理线程包括多个子线程。在根据语音请求数据识别出的处理线程(即当前处理线程)是任务执行处理线程的情形下,在步骤s30之前,本实施例中用于车载对话系统的处理方法还包括以下步骤:

步骤s21、根据语音请求数据识别出多个子线程;

步骤s22、使多个子线程并行执行各自的操作;

步骤s23、根据多个子线程的执行结果,确定当前处理线程的执行结果。

使当前处理线程以及当前处理线程的子线程并行执行各自的操作,不仅提高了整个处理流程的执行速度,而且还可以很容易的扩展新的处理线程以及处理线程下的子线程等。

步骤s21具体包括以下步骤:

步骤s211、对语音请求数据进行语义分析;

步骤s212、根据语义分析的结果,确定相关的所有子线程。

在本发明的实施例中,任务执行处理线程包括导航子线程、媒体子线程、电话子线程、车控子线程以及天气子线程。在根据语音关键词识别出处理线程是任务执行处理线程之后,再对语音请求数据进行语义分析,确定语音请求数据的具体领域和意图,即确定出相关的所有子线程。这样的设置,可以更明确用户对话的意图,使执行结果更加精准。

步骤s23进一步包括:根据第二优选级策略从多个子线程的执行结果中选择一个执行结果确定为当前处理线程的执行结果。其中,第二优选级策略可以为:当前领域的执行结果>跳转到其他领域的执行结果。其中“领域”可以指子线程所属领域,如导航领域、媒体领域、电话领域、车控领域以及天气领域。

具体地,比如用户的第一个对话语句是“查找附近的餐馆”,这个时候先根据语音关键词识别出为任务执行处理线程,再根据语义分析的结果确定为导航子线程,导航子线程执行之后可能查找出附近的多个餐馆并形成列表,此时处理系统处于“列表选择”状态,等待用户选一个结果。用户接着说“七里香”,这个时候对语音请求数据进行语义分析并根据语义分析的结果,认为用户可能有两种意图,第一种是在列表中选择一个叫做“七里香”的餐厅,第二种是在查一首叫做“七里香”的歌,此时会确定出导航子线程和媒体子线程两个子线程。启动导航子线程和媒体子线程两个子线程分别来执行剩下的执行操作,如果两个子线程均执行成功,那么根据第二优先级策略选择当前领域(即导航子线程)的执行结果作为当前处理线程的最终执行结果。

进一步地,在本发明的实施例中,每条子线程在接收到语音请求数据之后均会匹配出语音请求数据所在领域;然后根据领域信息和语义分析的结果匹配语音请求数据的意图;最后根据意图信息执行具体的行为,比如查询地址、选择地址、翻页等等。

接收到语音请求数据之后,处理系统的用户对话上下文会保存对话过程的上下文数据(即语音请求数据、对语音请求数据的语义理解结果、语音请求数据所属领域、所属线程的执行状态以及所属线程的执行结果数据)。由于每一路线程在执行过程中均会产生不同的领域信息、执行状态以及执行结果,即产生不同的用户对话上下文,因此为了保证用户对话上下文的一致性,防止多路线程并行执行时用户对话上下文产生错乱,需要为每一路启动的线程拷贝一份用户对话上下文,使每一路线程都有自己的一个用户对话上下文。

需要说明的是,在根据语音请求数据确定处理线程的子线程时,如果先前已经发生一轮或几轮对话且该对话任务没有完成,则步骤s21具体包括以下步骤:

步骤s211、对语音请求数据进行语义分析;

步骤s212、根据语义分析的结果和历史用户对话上下文(即历史语音请求数据生成的用户对话上下文),确定相关的所有子线程。

结合语义分析和当前的用户对话上下文,可以更加精准的确定子线程,保证同一领域执行操作的连贯性。

在子线程的执行结果包括多个选项的情形下,步骤s23之后,所述处理方法还包括以下步骤:根据多个选项与用户当前输入的语音确认数据,确定当前处理线程的执行结果。

具体地,基于上述实施例,在导航子线程的执行结果作为当前处理线程的最终执行结果时,如导航子线程的执行结果为搜寻到名字为“七里香”的餐厅并生成导航线路列表。之后用户会对导航线路列表进行选择,如对话可以为“选择最近的导航线路”,根据用户当前输入的语音确认数据和多项导航线路确定出最近的导航线路作为当前处理线程的执行结果。

可以理解的是,虽然本发明的实施例中提前预设了任务执行处理线程、闲聊执行处理线程和用户手册执行处理线程,但是这并不是对处理线程的限制,还可以进行其他处理线程以及处理线程下的子线程的拓展。

基于上述用于车载对话系统的处理方法的实施例,本发明还提供了一种用于车载对话系统的处理系统。下面结合附图,对该处理系统进行说明。

如图2所示,图2是本发明一种实施例的用于车载对话系统的处理系统的主要结构框图。参照图2,在本发明的实施例中,处理系统包括:第一识别模块1,其用于根据语音请求数据识别出多个处理线程;第一处理模块(图中未示出),其用于使多个处理线程并行执行各自的操作;第一决策模块2,其用于根据多个处理线程的执行结果,确定语音请求数据的处理结果。

其中,第一识别模块1配置有分类模型,其用于基于预设的关键词和多个处理线程之间的对应关系,匹配与语音关键词对应的所有处理线程。

作为一种示例,第一处理模块包括任务执行模块11、闲聊执行模块12和用户手册执行模块13。预先设置第一优先级策略,第一优先级策略可以为:任务执行模块11执行成功>用户手册执行模块13执行成功>闲聊执行模块12执行成功>任务执行模块11执行失败>用户手册执行模块13执行失败>闲聊执行模块12执行失败。第一决策模块2可以根据第一优先级策略从多个处理线程的执行结果中选择一个执行结果作为语音请求数据的处理结果。

在本发明的实施例中,处理系统还包括:第二识别模块3,其用于根据语音请求数据识别出多个子线程;第二处理模块,其用于使多个子线程并行执行各自的操作;第二决策模块4,其用于根据多个子线程的执行结果,确定当前处理线程的执行结果。

其中,第二识别模块3配置有语义理解模型,其用于对语音请求数据进行语义分析并根据语义分析的结果,确定相关的子线程。

在根据语音请求数据确定处理线程的子线程时,如果先前已经存在用户对话上下文,即前面已经发生一轮或几轮对话时,语义理解模型还可以用于对语音请求数据进行语义分析并根据语义分析的结果和历史用户对话上下文,确定相关的子线程。

在本发明的实施例中,第二处理模块包括导航子线程、媒体子线程、电话子线程、车控子线程以及天气子线程,且每条子线程均包括领域匹配模块31、意图匹配模块32和行为执行模块33。其中领域匹配模块31用于匹配出语音请求数据所在的领域,并将领域信息传递给意图匹配模块32;意图匹配模块32用于接收领域信息,以及根据领域信息和语义理解模型进行语义理解的结果匹配出语音请求数据的意图,并将意图信息传递给行为执行模块33;行为执行模块33用于接收意图信息,以及根据意图信息执行具体的行为,比如查询poi,选择poi,翻页等等,并将执行的结果传递给第二决策模块4。

作为一种示例,预先设置第二优先级策略,第二优先级策略可以为:当前领域的执行结果>跳转到其他领域的执行结果。第二决策模块4可以根据第二优先级策略从多个子线程的执行结果选择一个执行结果作为当前处理线程的执行结果。

在本发明的实施例中,处理系统还包括状态跳转模块5和结果输出模块6。在子线程的执行结果包括多个选项的情形下,状态跳转模块5用于根据多个选项与用户当前输入的语音确认数据,确定当前处理线程的执行结果。结果输出模块6用于根据用户对话上下文、执行结果以及状态跳转的跳转结果产生语音数据信息输出至第一决策模块2。

基于上述用于车载对话系统的处理系统实施例,本发明还提供了一种车载对话系统,包括用于车载对话系统的处理系统。

在车载对话系统内配置该处理系统,可以在加快车载对话系统的运行速度的同时,保证车载对话系统的输出结果的准确性;而且还增加了车载对话系统的可拓展性,提高了车载对话系统的使用体验。

基于上述车载对话系统实施例,本发明还提供了一种车机,该车机包括语音输出模块和上述的车载对话系统,语音输出模块用于将车载对话系统输出的语音数据信息转化为语音输出。

基于上述车机实施例,本发明还提供了一种车辆,该车辆包括上述的车机。

基于上述方法实施例,本发明还提供了一种存储装置,其中存储有多条程序,该程序可以适于由处理器加载以执行上述的用于车载对话系统的处理方法。

基于上述方法实施例,本发明还提供了一种控制装置,包括处理器、存储设备;存储设备适于存储多条程序,该程序可以适于由处理器加载以执行上述的用于车载对话系统的处理方法。

所属技术领域的技术人员可以清楚地了解到,为了描述的方便和简洁,本发明装置、系统实施例的具体工作过程以及相关说明,可以参考前述方法实施例的对应过程,且与上述方法实施例具有相同的有益效果,在此不再赘述。

结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。

本领域技术人员应该能够意识到,结合本文中所公开的实施例描述的各示例的方法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明电子硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以电子硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不是用于描述或表示特定的顺序或先后次序。应该理解这样使用的数据在适当的情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。

至此,已经结合附图所示的优选实施方式描述了本发明的技术方案,但是,本领域技术人员容易理解的是,本发明的保护范围显然不局限于这些具体实施方式。在不偏离本发明的原理的前提下,本领域技术人员可以对相关技术特征作出等同的更改或替换,这些更改或替换之后的技术方案都将落入本发明的保护范围之内。

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