一种技能选取的方法以及相关装置与流程

文档序号:19949185发布日期:2020-02-18 10:04阅读:126来源:国知局
一种技能选取的方法以及相关装置与流程

本申请实施例涉及语音识别技术领域,具体涉及一种技能选取的方法以及相关装置。



背景技术:

近年来,随着语音识别技术的快速发展,越来越多的领域都运用了该语音识别技术。语音识别技术一般都以语音助手的形式广泛地应用于各种智能终端中,语音助手中配置有多种技能,每一种技能都能够为用户提供相同的或不同的服务,因此用户可以使用语音助手采用语音说话的方式向终端发出请求消息,从而触发该请求消息相应的技能,而终端会对用户的语音进行识别和理解,进而实现相应的技能,为用户提供了极大的便利。

然而,目前在通过请求消息触发相应的技能时,通常是通过语义解析节点(naturallanguageprocessing,nlp)对请求消息进行语义解析后确定出该请求消息中的语义信息所对应的至少一个技能,并根据静态策略中不可调整的的静态权重从这些至少一个技能中选取优先权重较高的技能,并将该优先权重较高的技能作为为该语义信息所匹配的技能,而静态策略只管根据较高的优先权重为该语义信息匹配技能,而不管所匹配上的技能是否有相应的内容资源,也不管该内容资源的质量优劣。

因此,在随着技能的数量增加的趋势下,对于语义信息相匹配的技能的数量也会相应的增加,并且这些相匹配的技能之间会发生冲突,而静态策略只管根据较高的优先权重为该用户的请求消息中的语义信息匹配技能,而不管所匹配上的技能是否有相应的内容资源,也不管该内容资源的质量优劣,所以仍然继续使用现有的静态策略为语义信息匹配技能,无法选取较为合适的技能为用户提供优质的服务,用户体验感较差。



技术实现要素:

本申请实施例提供了一种技能选取的方法以及相关装置,用于实现在技能数量增加的情况下,解决语音关键信息相匹配的多个候选技能之间的冲突,并结合考虑了技能的资源情况的优劣来确定目标技能,从而利用目标技能为用户提供优质的服务,提升用户的体验。

第一方面,本申请实施例提供了一种技能选取的方法,包括:

技能分发服务器tskm接收nlp发送的语音关键信息和候选技能列表,所述候选技能列表由所述nlp根据所述语音关键信息得到的,所述候选技能列表包括至少一个候选技能;

所述tskm向技能节点发送所述候选技能列表和所述语音关键信息,以使所述技能节点确定所述候选技能列表中的每一个候选技能所对应的资源情况;

所述tskm接收所述技能节点发送的所述每一个候选技能所对应的资源情况;

所述tskm根据每一个所述候选技能对应的技能权重以及所述每一个候选技能所对应的资源情况从所述候选技能列表中确定目标技能,所述目标技能用于处理所述语音关键信息。

第二方面,本申请实施例提供了一种技能选取的方法,包括:

技能节点接收技能分发服务器tskm发送的候选技能列表和语音关键信息,所述候选技能列表包括至少一个候选技能;

所述技能节点确定所述候选技能列表中的每一个候选技能所对应的资源情况;

所述技能节点向所述tskm发送所述每一个候选技能所对应的资源情况,所述资源情况用于所述tskm确定目标技能,所述目标技能用于处理所述语音关键信息。

第三方面,本申请实施例提供了一种技能选取的方法,包括:

nlp获取用户请求消息;

所述nlp解析所述用户请求消息,以得到语音关键信息;

所述nlp基于所述语音关键信息确定候选技能列表,所述候选技能列表包括至少一个候选技能;

所述nlp向技能分发服务器tskm发送所述语音关键信息和所述候选技能列表,以用于所述tskm从所述候选技能列表中确定目标技能,所述目标技能用于处理所述语音关键信息。

第四方面,本申请实施例提供了一种技能分发服务器,所述技能分发服务器包括:

第一接收单元,用于接收nlp发送的语音关键信息和候选技能列表,所述候选技能列表由所述nlp根据所述语音关键信息得到的,所述候选技能列表包括至少一个候选技能;

发送单元,用于向技能节点发送所述第一接收单元接收的所述候选技能列表和所述语音关键信息,以使所述技能节点确定所述候选技能列表中的每一个候选技能所对应的资源情况;

第二接收单元,用于接收所述技能节点发送的所述每一个候选技能所对应的资源情况;

确定单元,用于根据每一个所述候选技能对应的技能权重以及所述第二接收单元接收的所述每一个候选技能所对应的资源情况从所述候选技能列表中确定目标技能,所述目标技能用于处理所述语音关键信息。

结合上述第四方面,在第一种可能的实现方式中,所述发送单元包括:

发送模块,用于向所述技能节点中的至少两个技能子节点分别发送所述候选技能列表和所述语音关键信息,以使每一个所述技能子节点确定所述候选技能列表中的所述每一个候选技能所对应的资源情况。

结合上述第四方面,在第二种可能的实现方式中,所述技能分发服务器还包括:

获取单元,用于在所述确定单元根据每一个所述候选技能对应的技能权重以及所述每一个候选技能所对应的资源情况从所述候选技能列表中确定目标技能之前,从技能权重服务器sdwc中获取所述每一个所述候选技能对应的技能权重。

结合上述第四方面,在第三种可能的实现方式中,所述获取单元,包括:

第一获取模块,用于在所述预设时长内从所述sdwc中获取每一个所述候选技能对应的技能权重。

结合上述第四方面,在第四种可能的实现方式中,所述确定单元,包括:

确定模块,用于根据所述每一个候选技能所对应的资源情况和每一个所述候选技能对应的技能权重确定所述每一个候选技能的综合技能得分;

所述确定模块,用于确定所述综合技能得分中的最大值所对应的候选技能为所述目标技能。

第五方面,本申请实施例提供了一种技能节点,所述技能节点包括:

接收单元,用于接收技能分发服务器tskm发送的候选技能列表和语音关键信息,所述候选技能列表包括至少一个候选技能;

确定单元,用于确定所述接收单元接收到的所述候选技能列表中的每一个候选技能所对应的资源情况;

发送单元,用于向所述tskm发送所述确定单元确定出的所述每一个候选技能所对应的资源情况,所述资源情况用于所述tskm确定目标技能,所述目标技能用于处理所述语音关键信息。

结合上述第五方面,在第一种可能的实现方式中,所述确定单元,包括:

确定模块,用于确定所述每一个候选技能对应的至少一个特征信息;

所述确定模块,用于确定每一个所述特征信息对应的特征值与特征权重;

所述确定模块,用于将所述每一个所述特征信息对应的特征值与特征权重相乘后求和,以确定所述每一个候选技能对应的资源情况。

第六方面,本申请实施例提供了一种语义解析节点,所述语义解析节点包括:

获取单元,用于获取用户请求消息;

解析单元,用于解析所述获取单元获取的所述用户请求消息,以得到语音关键信息;

确定单元,用于基于所述解析单元得到的所述语音关键信息确定候选技能列表,所述候选技能列表包括至少一个候选技能;

发送单元,用于向技能分发服务器tskm发送所述解析单元得到的所述语音关键信息和所述确定单元确定出的所述候选技能列表,以用于所述tskm根据每一个所述候选技能对应的技能权重以及所述每一个候选技能所对应的资源情况从所述候选技能列表中确定目标技能,所述目标技能用于处理所述语音关键信息。

第七方面,本申请实施例提供一种计算机设备,该计算机设备包括:

包括:输入/输出(i/o)接口、处理器和存储器,

存储器中存储有程序指令;

处理器用于执行存储器中存储的程序指令,以用于实现如上述第一方面、第二方面、第三方面、第一方面任意一种、第二方面任意一种可能实现方式的方法。

本申请第八方面提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机可执行指令,计算机可执行指令用于执行如第一方面、第二方面、第三方面、第一方面任意一种、第二方面任意一种可能实现方式的方法。

本申请实施例的第九方面提供了一种包含指令的计算机程序产品,当其在计算机或处理器上运行时,使得计算机或处理器执行上述任一方面的方法。

从以上技术方案可以看出,本申请实施例具有以下优点:

本申请实施例中,在语义解析节点nlp接收用户请求消息后解析出其中的语音关键信息,以通过技能分发服务器tskm接收nlp发送的语音关键信息和候选技能列表,并向技能节点发送候选技能列表和语音关键信息后,使得该技能节点确定出每一个候选技能所对应的资源情况,继而使tskm根据每一个候选技能所对应的资源情况和每一个候选技能所对应的技能权重确定出目标技能,能够在技能数量增加的情况下,解决语音关键信息相匹配的多个候选技能之间的冲突,并结合考虑了每一个技能的资源情况的优劣来确定目标技能,从而利用目标技能为用户提供优质的服务,提升用户的体验。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例。

图1是本申请实施例中技能选取的一个系统架构示意图;

图2是本申请实施例中提供的技能选取的方法的一个实施例示意图;

图3是本申请实施例中提供的技能选取的方法的另一个实施例示意图;

图4是本申请实施例中提供的技能选取的方法的另一个实施例示意图;

图5是本申请实施例中提供的技能分发服务器一个实施例示意图;

图6是本申请实施例中提供的技能节点一个实施例示意图;

图7是本申请实施例中提供的语义解析节点一个实施例示意图;

图8是本申请实施例提供的计算机设备的结构示意图。

具体实施方式

本申请实施例提供了一种技能选取的方法以及相关装置,用于实现在技能数量增加的情况下,解决语音关键信息相匹配的多个候选技能之间的冲突,并结合考虑了技能的资源情况的优劣来确定目标技能,从而利用目标技能为用户提供优质的服务,提升用户的体验。

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

本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。在本申请中出现的对步骤进行的命名或者编号,并不意味着必须按照命名或者编号所指示的时间/逻辑先后顺序执行方法流程中的步骤,已经命名或者编号的流程步骤可以根据要实现的技术目的变更执行次序,只要能达到相同或者相类似的技术效果即可。

下面对本申请实施例所适应的系统架构进行介绍:

本申请实施例所提出的方法主要应用于通过语音助手中的技能为用户提供服务的场景。例如,语音助手中配置有a听书技能、b听书技能、c有声技能,如果此时用户想要听xxxx小说,此时就可以通过a听书技能、b听书技能、c有声技能来获取到该xxxx小说相应的有声内容资源,从而提供给用户收听。除此之外,类似的还有其他的语音场景,也需要通过语音助手中的技能为用户提供服务。需要注意的是,上述所描述的语音助手中配置的a听书技能、b听书技能、c有声技能在本申请实施例中仅仅是一个示意性的举例,在实际应用中,应当还包括但不限于a听书技能、b听书技能、c有声技能,如还可以包括d有声播放技能等,具体此处不做限定。

在语音助手中的技能为用户提供服务的应用场景中,为了能够选取为用户提供服务的技能,目前存在一种根据静态策略来选取技能的方式。具体地,通过语义解析节点nlp对请求消息进行语义解析后确定出该请求消息中的语义信息所对应的至少一个技能,并根据静态策略中不可调整的的静态权重从这些至少一个技能中选取优先权重较高的技能,并将该优先权重较高的技能作为为该语义信息所匹配的技能,而静态策略只管根据较高的优先权重为该语义信息匹配技能,而不管所匹配上的技能是否有相应的内容资源,也不管该内容资源的质量优劣,从而导致用户在通过所匹配的技能来获取相应的服务时并不能得到优质的服务,使得用户体验感也较差。

因此,为了解决上述的问题,本申请实施例提供了一种技能选取的方法,该方法应用于图1所示的技能选取的系统架构中,请参阅图1,为本申请实施例中技能选取的一个系统架构示意图。如图1所示,该系统架构可以包括终端设备、语义解析节点nlp、技能分发服务器(tencentskillkeymanagement,tskm)、技能节点以及技能权重服务器(skilldynamicweightcalculation,sdwc)。当用户在终端设备中的语音助手上通过自然语言发出请求消息时,此时的nlp会从终端设备中获取到该请求消息并解析出相应的语音关键信息,以及确定出该语音关键信息的候选技能列表,那么nlp将语音关键信息和候选技能列表均发送给tskm,使得tskm利用技能分发的功能将每一个候选技能发给技能节点,使得技能节点获取并确定出每一个候选技能对应的资源情况,此时tskm会结合技能权重服务器sdwc动态调整的技能权重来确定目标技能,从而使得可以利用该目标技能承载用户请求消息中的语音关键信息。

应当理解的是,上述所描述的终端设备又可以称之为用户设备(userequipment,ue)、移动终端(mobileterminal,mt)、终端等,是一种向用户提供语音和/或数据连通性的设备,例如,具有无线连接功允许的手持式设备、车载设备等。目前,一些终端设备的举例为:手机(mobilephone)、平板电脑、笔记本电脑、掌上电脑、移动互联网设备(mobileinternetdevice,mid)、可穿戴设备等。所提及的nlp是一种可以对用户请求消息进行语义解析的节点,以用于获取并确定出该用户请求消息中的语义关键信息或语义参数。所描述的tskm和sdwc可以是本地的服务器,也可以是云端上的服务器还可以是其他服务器等,在本申请实施例中将不做限定。

本实施例中的技能选取的方法除了可以适用于上述图1所示的系统架构,还可以适用于其他系统架构,具体此处不作限定。

为便于更好地理解本申请实施例所提出的方案,下面对本实施例中的具体流程进行介绍,请参阅图2,为本申请实施例中提供的技能选取的方法的一个实施例示意图,该方法包括:

201、语义解析节点nlp获取用户请求消息。

本实施例中,当用户想要通过技能来获取到相应的服务时,那么用户就会通过终端设备中的语音助手,以语音的方式发出请求,此时终端设备在接收到用户发出的请求消息后,会将该用户请求消息发送给nlp,从而使得nlp在接收该用户请求消息。例如:用户想要通过收听的方式听“xxxx武侠小说”,此时用户发出的请求可以是:“我要收听xxxx武侠小说”,终端设备会将该“我要收听xxxx武侠小说”的用户请求消息发送给nlp。

202、nlp解析用户请求消息,以得到语音关键信息。

本实施例,nlp在接收了终端设备发送的用户请求消息后,会利用相应的语义解析功能对该用户请求消息进行解析,以得到其中的语音关键信息。例如,在步骤201的基础上,接收到的用户请求消息可以为“我要收听xxxx武侠小说”,那么解析得到的语音关键信息则为“收听、xxxx武侠小说”。

203、nlp基于语音关键信息确定候选技能列表,候选技能列表包括至少一个候选技能。

本实施例中,候选技能列表可以用来表示针对某一类的技能所形成的列表,如:所有的有声内容类的技能形成的候选技能列表、所有的无声阅读类的技能形成的候选技能列表等等。值得说明的是候选技能列表中至少包括了一个候选技能,该候选技能可以承载该语音关键信息相应的内容资源,也可以没有承载该语音关键信息相应的内容资源。

例如,在步骤202的基础上,nlp解析得到的语音关键信息为“收听、xxxx武侠小说”,那么nlp很容易根据相应的执行动作“收听”,确定出该语音关键信息相应的候选技能列表属于有声内容类的列表。上面所描述的有声内容类的技能可以包括但不限于“a有声小说技能”、“b有声读物技能”、“c听书技能”、“d听书技能”等等,在实际应用中,还可以包括其他的有声内容的技能,具体此处不做限定。

204、nlp向技能分发服务器tskm发送语音关键信息和候选技能列表。

本实施例中,nlp在确定出语音关键信息和相应的候选技能列表后可以将其发送给tskm,使tskm能够根据每一个候选技能对应的技能权重以及每一个候选技能所对应的资源情况从该候选技能列表中确定出目标技能。

205、tskm向技能节点发送候选技能列表和语音关键信息。

本实施例中,tskm在从nlp处接收了语音关键信息和相应的候选技能列表后,可以选择将该候选技能列表发送给能够确定该候选技能列表中的每一个候选技能的资源情况的技能节点。可以理解成不管是有声内容类的技能,还是属于无声阅读类的技能,又或者是由于需求而新增的其他技能等,均可以由该技能节点监管着所有的技能的相关情况。

可选地,在另一些实施例中,tskm可以采用如下的方式进行发送,即:所述tskm向所述技能节点中的至少两个技能子节点分别发送所述候选技能列表和所述语音关键信息,以使每一个所述技能子节点确定所述候选技能列表中的所述每一个候选技能所对应的资源情况。

也就是理解成,由于技能节点可以监管着所有技能子节点,而每一个技能子节点又相应的维护和管理自身的技能资源情况,因此tskm可以直接向技能子节点分别同步地发送该候选技能列表和语音关键信息,使得每一个技能子节点可以确定出候选技能列表中的每一个候选技能所对应的资源情况,这样,便可以实现并发询问候选技能列表中的每一个候选技能。

206、技能节点确定候选技能列表中的每一个候选技能所对应的资源情况。

本实施例中,不管是有声内容类的技能,还是属于无声阅读类的技能,又或者是由于需求而新增的其他技能等,均可以由该技能节点监管着所有的技能的相关情况。

因此在技能节点接收到tskm发送的候选技能列表后,可以针对该候选技能列表所包括的候选技能来确定出每一个候选技能所对应的相关的资源情况。可以从多个维度来确定,如:拥有资源程度、付费程度或资源精品程度,在实际应用中,还可以包括用户评分、播放时长占比等其他维度,在本申请中将不做具体限定。

可选地,在另一些实施例中,应理解的是,在tskm向技能节点中的至少两个技能子节点发送候选技能列表和语音关键信息,并且每一个技能子节点在确定出候选技能列表中的每一个候选技能所对应的资源情况后,技能节点可以汇总或统计每一个技能子节点所确定出的每一个候选技能所对应的资源情况,从而将该每一个候选技能所对应的资源情况发送给tskm。

207、技能节点向tskm发送每一个候选技能所对应的资源情况。

本实施例中,技能节点在确定出每一个候选技能所对应的资源情况后,便可以将其发送给tskm,使得该tskm可以利用相应的资源情况来确定出目标技能。

208、tskm根据每一个候选技能对应的技能权重以及每一个候选技能所对应的资源情况从候选技能列表中确定目标技能,目标技能用于处理语音关键信息。

本实施例中,tskm在接收了技能节点发送的每一个候选技能所对应的资源情况后,可以将该每一个候选技能对应的技能权重和相应的资源情况进行结合来确定出目标技能。具体地,可以将该每一个候选技能对应的技能权重和相应的资源情况进行相乘来确定出综合技能得分,此时tskm便可以从该综合技能得分中确定出目标技能了。

应当注意的是,该目标技能一定是承载有该语音关键信息相关的内容资源的技能,因此,在确定出目标技能后该tskm仍然可以将该目标技能发送给技能节点,使得技能节点根据该目标技能确定出该语音关键信息在该目标技能中的相关内容资源,从而使tskm获取到该内容资源后反馈回给nlp,进一步地nlp将该内容资源反馈给终端设备,此时终端设备便可以通过语音助手中的目标技能播放该内容资源给用户,使得用户可以收听到相应的内容资源。

在上述图2所描述的实施例的基础上,由于每一个候选技能所对应的技能权重可以由sdwc动态调整得到,为便于更好地理解本申请实施例所提出的方案,下面对本实施例中的具体流程进行详细地介绍,请参阅图3,为本申请实施例中提供的技能选取的方法的另一个实施例示意图,该方法包括:

301、nlp获取用户请求消息。

本实施例中,当用户想要通过技能来获取到相应的服务时,那么用户就会通过终端设备中的语音助手,以语音的方式发出请求,此时终端设备在接收到用户发出的请求消息后,会将该用户请求消息发送给nlp,从而使得nlp在接收该用户请求消息。例如:用户想要通过收听的方式听“xxxx武侠小说”,此时用户发出的请求可以是:“我要收听xxxx武侠小说”,终端设备会将该“我要收听xxxx武侠小说”的用户请求消息发送给nlp。

302、nlp解析用户请求消息,以得到语音关键信息。

本实施例,nlp在接收了终端设备发送的用户请求消息后,会利用相应的语义解析功能对该用户请求消息进行解析,以得到其中的语音关键信息。例如,在步骤301的基础上,接收到的用户请求消息可以为“我要收听xxxx武侠小说”,那么解析得到的语音关键信息则为“收听、xxxx武侠小说”。

303、nlp基于语音关键信息确定候选技能列表,候选技能列表包括至少一个候选技能。

本实施例中,候选技能列表可以用来表示针对某一类的技能所形成的列表,如:所有的有声内容类的技能形成的候选技能列表、所有的无声阅读类的技能形成的候选技能列表等等。值得说明的是候选技能列表中至少包括了一个候选技能,该候选技能可以承载该语音关键信息相应的内容资源,也可以没有承载该语音关键信息相应的内容资源。

例如,在步骤302的基础上,nlp解析得到的语音关键信息为“收听、xxxx武侠小说”,那么nlp很容易根据相应的执行动作“收听”,确定出该语音关键信息相应的候选技能列表属于有声内容类的列表。上面所描述的有声内容类的技能可以包括但不限于“a有声小说技能”、“b有声读物技能”、“c听书技能”、“d听书技能”等等,在实际应用中,还可以包括其他的有声内容的技能,具体此处不做限定。

304、nlp向技能分发服务器tskm发送语音关键信息和候选技能列表。

本实施例中,nlp在确定出语音关键信息和相应的候选技能列表后可以将其发送给tskm,使tskm能够从该候选技能列表中确定出目标技能。

305、tskm向技能节点发送候选技能列表和语音关键信息。

本实施例中,tskm在从nlp处接收了语音关键信息和相应的候选技能列表后,可以选择将该候选技能列表发送给能够确定该候选技能列表中的每一个候选技能的资源情况的技能节点。可以理解成不管是有声内容类的技能,还是属于无声阅读类的技能,又或者是由于需求而新增的其他技能等,均可以由该技能节点监管着所有的技能的相关情况。

306、技能节点确定每一个候选技能对应的至少一个特征信息。

本实施例中,不管是有声内容类的技能,还是属于无声阅读类的技能,又或者是由于需求而新增的其他技能等,均可以由该技能节点监管着所有的技能的相关情况。而候选技能的特征信息从正面或侧面反映出每一个候选技能的情况,如:是否存在该语音关键信息的内容资源、是否付费、内容资源的质量优劣程度等等,因而可以通过不同的多个维度特征来确定每一个候选技能的情况,这些特征信息可以包括但不限于拥有资源程度、付费程度、资源精品程度或其他维度等,在实际应用中,该其他维度还可以包括用户评分、播放时长占比等,在本申请中将不做具体限定。

307、技能节点确定每一个特征信息对应的特征值与特征权重。

本实施例中,技能节点会根据每一个候选技能的实际情况动态计算并调整每一个特征信息对应的特征值和特征权重。

例如:针对语音关键信息“收听、xxxx武侠小说”,而相对应的候选技能列表包括的候选技能有“a有声小说技能”、“b有声读物技能”、“c听书技能”以及“d听书技能”,那么此时技能节点会分别进行动态查询上述四个技能的实际情况,比如,针对“a有声小说技能”,技能节点会查询该“a有声小说技能”中是否存在该“xxxx武侠小说”的内容资源,从而为拥有资源程度这个特征信息赋予相应的特征值v1和特征权重a1,进一步地,技能节点还会查询该“a有声小说技能”中的内容是否需要付费,从而为付费程度这个特征信息赋予相应的特征值v2和特征权重a2,还会查询该“a有声小说技能”中的内容资源的质量优劣程度,从而为资源精品程度这个特征信息赋予相应的特征值v3和特征权重a3,该技能节点还会查询该“a有声小说技能”中的内容资源的用户评分等其他信息,从而为其他维度这个特征信息赋予相应的特征值v4和特征权重a4。同理地,针对“b有声读物技能”、“c听书技能”以及“d听书技能”这三个技能的特征信息所对应的特征值和特征权重可以参考“a有声小说技能”进行理解,此处将不做具体赘述。

应理解的是,为了消除不同量纲的影响,上述描述的特征值和特征权重均为归一化成[0,1]之间的值。

308、技能节点将每一个特征信息对应的特征值与特征权重相乘后求和,以确定每一个候选技能对应的资源情况。

本实施例中,由于从多个维度特征上来反映出每一个候选技能的资源情况,因此,在得到每一个特征信息对应的特征值和特征权重后,可以通过预设公式来计算出相应的资源情况。

上述的预设公式为其中,v(k)表示特征值,a(k)表示特征权重,m则表示出相应的资源情况。

因此,针对“收听,xxxx武侠小说”的四个候选技能的“a有声小说技能”、“b有声读物技能”、“c听书技能”以及“d听书技能”的资源情况可以参照下表进行理解:

从上表中可以看出,“a有声小说技能”、“b有声读物技能”、“c听书技能”以及“d听书技能”的资源情况分别为0.29、0.39、0.21、0.62。

309、技能节点向tskm发送每一个候选技能所对应的资源情况。

本实施例中,技能节点在确定出每一个候选技能所对应的资源情况后,便可以将其发送给tskm,使得该tskm可以利用相应的资源情况来确定出目标技能。

310、tskm从技能权重服务器sdwc中获取每一个候选技能对应的技能权重。

本实施例中,技能权重服务器sdwc会定期的根据技能历史数据离线计算语音助手上配置的所有的技能所对应的技能权重。该技能历史数据主要包括但不限于内容特征,用户播放时长、用户评分等,所描述的内容特征包括但不限于文字长度、是否有错别字等等。

例如,针对“a有声小说技能”,假设sdwc根据内容特征、用户播放时长或用户评分可以计算该“a有声小说技能”的技能权重为0.4,针对“b有声读物技能”,假设sdwc根据内容特征、用户播放时长或用户评分可以计算该“b有声读物技能”的技能权重为0.2,针对“c听书技能”,假设sdwc根据内容特征、用户播放时长或用户评分可以计算该“c听书技能”的技能权重为0.5,针对“d听书技能”,假设sdwc根据内容特征、用户播放时长或用户评分可以计算该“d听书技能”的技能权重为0.5,在实际应用中,还可以是其他的技能权重,本申请实施例中将不做具体限定。

可选地,针对获取的方式可以从两个方面入手。

第一种,tskm在预设时长内从技能权重服务器sdwc中获取每一个候选技能对应的技能权重。

也就是理解成,tskm会自发地从sdwc中获取每一个候选技能对应技能权重,不管此时sdwc是否告知tskm可以获取了,而是采用一种经过预设时长时就自发地从sdwc中获取的方式,能够实时地获知每一个候选技能的技能权重,从而动态地调整并确定出目标技能。应理解的是,上述所描述的预设时长可以是用户根据需要自定义的,如3分钟,10分钟等,在此处将不做具体限定。

第二种,tskm接收sdwc发送的第一消息,第一消息用于指示tskm获取每一个候选技能对应的技能权重;

对应地,tskm从技能权重服务器sdwc中获取每一个候选技能对应的技能权重,包括:

tskm根据第一消息获取每一个候选技能对应的技能权重。

也就是理解成,本实施例中是由sdwc告知tskm可以获取的方式来进行获取技能权重的。在sdwc定期的根据技能历史数据离线计算语音助手上配置的所有的技能所对应的技能权重后,通过给tskm发送第一消息,使得tskm根据该第一消息从sdwc中所计算出的所有的技能所对应的技能权重中,获取到相应的每一个候选技能对应的技能权重,因此,上述不同的获取方式为本申请提供了多种可能性。

311、tskm根据每一个候选技能所对应的资源情况和每一个候选技能对应的技能权重确定每一个候选技能的综合技能得分。

本实施例中,在从技能节点中接收了每一个候选技能所对应的资源情况,以及从sdwc中获取到每一个候选技能对应的技能权重后,便可以将该每一个候选技能对应的技能权重和相应的资源情况进行相乘来确定出综合技能得分。例如,在上述步骤308和步骤310中可以看出,“a有声小说技能”、“b有声读物技能”、“c听书技能”以及“d听书技能”的资源情况分别为0.29、0.39、0.21、0.62,而相应的技能权重分别为0.4、0.2、0.5、0.5,因此,“a有声小说技能”、“b有声读物技能”、“c听书技能”以及“d听书技能”的综合技能得分分别为0.116、0.078、0.105、0.31。应理解的是,上述描述的综合技能得分的相应数值仅仅是为了清楚地说明本申请中的方法,在实际还可以是其他的综合技能得分,在本申请实施例中将不做具体限定。

312、tskm确定综合技能得分中的最大值所对应的候选技能为目标技能。

本实施例中,由于已经通过将每一个候选技能利用可视化的直观的综合技能得分来表示出,因此可以将综合技能得分中的最大值所对应的候选技能作为为用户提供服务的目标技能。例如,从上述步骤311可以看出综合技能得分的最大值为0.31,因此目标技能则为该“d听书节能”。

应当注意的是,该目标技能一定是承载有该语音关键信息相关的内容资源的技能,因此,在确定出目标技能后该tskm仍然可以将该目标技能发送给技能节点,使得技能节点根据该目标技能确定出该语音关键信息在该目标技能中的相关内容资源,从而使tskm获取到该内容资源后反馈回给nlp,进一步地nlp将该内容资源反馈给终端设备,此时终端设备便可以通过语音助手中的目标技能播放该内容资源给用户,使得用户可以收听到相应的内容资源。

在上述图2或图3所描述的实施例的基础上,为便于更好地理解本申请实施例所提出的方案,下面对本实施例中的具体流程进行详细地介绍,请参阅图4,为本申请实施例中提供的技能选取的方法的另一个实施例示意图,该方法包括:

401、终端设备获取用户请求消息。

本实施例中,当用户想要通过技能来获取到相应的服务时,那么用户就会通过终端设备中的语音助手,以语音的方式发出请求,此时终端设备便可以接收到用户发出的请求消息。例如:用户想要通过收听的方式听“xxxx武侠小说”,此时用户发出的请求可以是:“我要收听xxxx武侠小说”,终端设备便会获取到该“我要收听xxxx武侠小说”的用户请求消息。

402、终端设备向nlp发送用户请求消息。

本实施例中,终端设备在接收到用户发出的请求消息后,会将该用户请求消息发送给nlp,从而使得nlp可以接收该用户请求消息。

403、nlp解析用户请求消息,以得到语音关键信息。

404、nlp基于语音关键信息确定候选技能列表,候选技能列表包括至少一个候选技能。

405、nlp向技能分发服务器tskm发送语音关键信息和候选技能列表。

406、tskm向技能节点发送候选技能列表和语音关键信息。

407、技能节点确定每一个候选技能对应的至少一个特征信息。

408、技能节点确定每一个特征信息对应的特征值与特征权重。

409、技能节点将每一个特征信息对应的特征值与特征权重相乘后求和,以确定每一个候选技能对应的资源情况。

410、技能节点向tskm发送每一个候选技能所对应的资源情况。

411、tskm从技能权重服务器sdwc中获取每一个候选技能对应的技能权重。

412、tskm根据每一个候选技能所对应的资源情况和每一个候选技能对应的技能权重确定每一个候选技能的综合技能得分。

413、tskm确定综合技能得分中的最大值所对应的候选技能为目标技能。

本实施例中的步骤403-步骤413可以参照上述图3中的步骤302-步骤312进行理解,本申请实施例中将不做赘述。

414、tskm向技能节点发送目标技能的技能标识。

本实施例中,在确定出目标技能后,还可以向技能节点发送目标技能的技能标识,从而使得技能节点确定出该语音关键信息在目标技能中的内容资源,从而将其内容资源反馈给nlp,进一步地nlp将该内容资源反馈给终端设备,此时终端设备便可以通过语音助手中的目标技能播放该内容资源给用户,使得用户可以收听到相应的内容资源。

415、技能节点根据所述技能标识确定语音关键信息在目标技能的内容资源。

本实施例中,在tskm向技能节点发送该目标技能后,此时技能节点便可以在该目标技能中查询该语音关键信息所相关的内容资源了。

416、技能节点向tskm发送内容资源。

417、tskm向nlp发送内容资源。

418、nlp向终端设备发送内容资源。

本实施例中,在tskm向nlp发送内容资源后,此时nlp便可以将该内容资源反馈给终端设备,此时终端设备便可以通过语音助手中的目标技能播放该内容资源给用户,使得用户可以收听到相应的内容资源。

本申请实施例中,在语义解析节点nlp接收用户请求消息后解析出其中的语音关键信息,以通过技能分发服务器tskm接收nlp发送的语音关键信息和候选技能列表,并向技能节点发送候选技能列表后,使得该技能节点确定出每一个候选技能所对应的资源情况,继而使tskm根据每一个候选技能所对应的资源情况和每一个候选技能所对应的技能权重确定出目标技能,能够在技能数量增加的情况下,解决语音关键信息相匹配的多个候选技能之间的冲突,并结合考虑了每一个技能的资源情况的优劣来确定目标技能,从而利用目标技能为用户提供优质的服务,提升用户的体验。

上述主要从交互的角度对本申请实施例提供的方案进行了介绍。可以理解的是为了实现上述功能,包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本申请中所公开的实施例描述的各示例的模块及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

本申请实施例可以根据上述方法示例对装置进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。

下面对本申请实施例中的技能分发服务器进行详细描述,请参阅图5,图5为本申请实施例中提供的技能分发服务器50一个实施例示意图,该技能分发服务器50可以包括:

第一接收单元501,用于接收nlp发送的语音关键信息和候选技能列表,所述候选技能列表由所述nlp根据所述语音关键信息得到的,所述候选技能列表包括至少一个候选技能;

发送单元502,用于向技能节点发送所述第一接收单元501接收的所述候选技能列表和所述语音关键信息,以使所述技能节点确定所述候选技能列表中的每一个候选技能所对应的资源情况;

第二接收单元503,用于接收所述技能节点发送的所述每一个候选技能所对应的资源情况;

确定单元504,用于根据每一个所述候选技能对应的技能权重以及所述第二接收单元503接收的所述每一个候选技能所对应的资源情况从所述候选技能列表中确定目标技能,所述目标技能用于处理所述语音关键信息。

可选地,在上述图5所对应的实施例的基础上,本申请实施例提供的技能分发服务器50的另一个实施例中,所述发送单元502,包括:

发送模块,用于向所述技能节点中的至少两个技能子节点分别发送所述候选技能列表和所述语音关键信息,以使每一个所述技能子节点确定所述候选技能列表中的所述每一个候选技能所对应的资源情况。

可选地,在上述图5或图5所对应的可选实施例的基础上,本申请实施例提供的技能分发服务器50的另一个实施例中,所述技能分发服务器50还包括:

获取单元,用于在所述确定单元504根据每一个所述候选技能对应的技能权重以及所述每一个候选技能所对应的资源情况从所述候选技能列表中确定目标技能之前,从技能权重服务器sdwc中获取所述每一个所述候选技能对应的技能权重。

可选地,在上述图5所对应的的可选实施例的基础上,本申请实施例提供的技能分发服务器50的另一个实施例中,所述获取单元,包括:

第一获取模块,用于在所述预设时长内从所述sdwc中获取每一个所述候选技能对应的技能权重。

可选地,在上述5、以及图5所对应的任一可选的实施例的基础上,本申请实施例提供的技能分发服务器50的另一实施例中,所述确定单元504,包括:

确定模块,用于根据所述每一个候选技能所对应的资源情况和每一个所述候选技能对应的技能权重确定所述每一个候选技能的综合技能得分;

所述确定模块,用于确定所述综合技能得分中的最大值所对应的候选技能为所述目标技能。

上面主要对技能分发服务器50进行了详细描述,下面将对本申请实施例中的技能节点进行详细描述,请参阅图6,图6为本申请实施例中提供的技能节点60一个实施例示意图,该技能节点60可以包括:

接收单元601,用于接收技能分发服务器tskm发送的候选技能列表和语音关键信息,所述候选技能列表包括至少一个候选技能;

确定单元602,用于确定所述接收单元601接收到的所述候选技能列表中的每一个候选技能所对应的资源情况;

发送单元603,用于向所述tskm发送所述确定单元602确定出的所述每一个候选技能所对应的资源情况,所述资源情况用于所述tskm确定目标技能,所述目标技能用于处理所述语音关键信息。

可选地,在上述图6所对应的的可选实施例的基础上,本申请实施例提供的技能节点60的另一个实施例中,所述确定单元602,包括:

确定模块,用于确定所述每一个候选技能对应的至少一个特征信息;

所述确定模块,用于确定每一个所述特征信息对应的特征值与特征权重;

所述确定模块,用于将所述每一个所述特征信息对应的特征值与特征权重相乘后求和,以确定所述每一个候选技能对应的资源情况。

上面主要对技能分发服务器50、技能节点60进行了详细描述,下面将对本申请实施例中的语义解析节点70进行详细描述,请参阅图7,图7为本申请实施例中提供的语义解析节点70一个实施例示意图,该语义解析节点70可以包括:

获取单元701,用于获取用户请求消息;

解析单元702,用于解析所述获取单元701获取的所述用户请求消息,以得到语音关键信息;

确定单元703,用于基于所述解析单元702得到的所述语音关键信息确定候选技能列表,所述候选技能列表包括至少一个候选技能;

发送单元704,用于向技能分发服务器tskm发送所述解析单元702得到的所述语音关键信息和所述确定单元703确定出的所述候选技能列表,以用于所述tskm根据每一个所述候选技能对应的技能权重以及所述每一个候选技能所对应的资源情况从所述候选技能列表中确定目标技能,所述目标技能用于处理所述语音关键信息。

本申请实施例中,在语义解析节点nlp接收用户请求消息后解析出其中的语音关键信息,以通过技能分发服务器tskm接收nlp发送的语音关键信息和候选技能列表,并向技能节点发送候选技能列表后,使得该技能节点确定出每一个候选技能所对应的资源情况,继而使tskm根据每一个候选技能所对应的资源情况和每一个候选技能所对应的技能权重确定出目标技能,能够在技能数量增加的情况下,解决语音关键信息相匹配的多个候选技能之间的冲突,并结合考虑了每一个技能的资源情况的优劣来确定目标技能,从而利用目标技能为用户提供优质的服务,提升用户的体验。

上面从模块化功能实体的角度对本申请实施例中的技能分发服务器50、技能节点60、语义解析节点70进行描述,下面从硬件处理的角度对本申请实施例中的计算机设备进行描述。图8是本申请实施例提供的计算机设备的结构示意图,该计算机设备可以包括上述所描述的技能分发服务器50、技能节点60、语义解析节点70等,该计算机设备可因配置或性能不同而产生比较大的差异,该计算机设备可以包括至少一个处理器801,通信线路807,存储器803以及至少一个通信接口804。

处理器801可以是一个通用中央处理器(centralprocessingunit,cpu),微处理器,特定应用集成电路(application-specificintegratedcircuit,服务器ic),或一个或多个用于控制本申请方案程序执行的集成电路。

通信线路807可包括一通路,在上述组件之间传送信息。

通信接口804,使用任何收发器一类的装置,用于与其他装置或通信网络通信,如以太网,无线接入网(radioaccessnetwork,ran),无线局域网(wirelesslocalareanetworks,wlan)等。

存储器803可以是只读存储器(read-onlymemory,rom)或可存储静态信息和指令的其他类型的静态存储装置,随机存取存储器(randomaccessmemory,ram)或者可存储信息和指令的其他类型的动态存储装置,存储器可以是独立存在,通过通信线路807与处理器相连接。存储器也可以和处理器集成在一起。

其中,存储器803用于存储执行本申请方案的计算机执行指令,并由处理器801来控制执行。处理器801用于执行存储器803中存储的计算机执行指令,从而实现本申请上述实施例提供的技能选取的方法。

可选的,本申请实施例中的计算机执行指令也可以称之为应用程序代码,本申请实施例对此不作具体限定。

在具体实现中,作为一种实施例,该计算机设备可以包括多个处理器,例如图8中的处理器801和处理器802。这些处理器中的每一个可以是一个单核(single-cpu)处理器,也可以是一个多核(multi-cpu)处理器。这里的处理器可以指一个或多个装置、电路、和/或用于处理数据(例如计算机程序指令)的处理核。

在具体实现中,作为一种实施例,该计算机设备还可以包括输出设备805和输入设备806。输出设备805和处理器801通信,可以以多种方式来显示信息。输入设备806和处理器801通信,可以以多种方式接收用户的输入。例如,输入设备806可以是鼠标、触摸屏装置或传感装置等。

上述的计算机设备可以是一个通用装置或者是一个专用装置。在具体实现中,该计算机设备可以是台式机、便携式电脑、nas服务器、无线终端装置、嵌入式装置或有图8中类似结构的装置。本申请实施例不限定该计算机设备的类型。

在本申请实施例中,该计算机设备所包括的处理器801还具有以下功能:

接收nlp发送的语音关键信息和候选技能列表,所述候选技能列表由所述nlp根据所述语音关键信息得到的,所述候选技能列表包括至少一个候选技能;

向技能节点发送所述候选技能列表和所述语音关键信息,以使所述技能节点确定所述候选技能列表中的每一个候选技能所对应的资源情况;

接收所述技能节点发送的所述每一个候选技能所对应的资源情况;

根据每一个所述候选技能对应的技能权重以及所述每一个候选技能所对应的资源情况从所述候选技能列表中确定目标技能,所述目标技能用于处理所述语音关键信息。

可选地,在本申请的一些实施例中,该处理器801还可以具体用于,

向所述技能节点中的至少两个技能子节点分别发送所述候选技能列表和所述语音关键信息,以使每一个所述技能子节点确定所述候选技能列表中的所述每一个候选技能所对应的资源情况。

可选地,在本申请的一些实施例中,该处理器801还可以具体用于,

在根据每一个所述候选技能对应的技能权重以及所述每一个候选技能所对应的资源情况从所述候选技能列表中确定目标技能之前,还包括:从技能权重服务器sdwc中获取所述每一个所述候选技能对应的技能权重。

可选地,在本申请的一些实施例中,该处理器801还可以用于,

在预设时长内从所述sdwc中获取每一个所述候选技能对应的技能权重。

可选地,在本申请的一些实施例中,该处理器801还可以具体用于,

根据所述每一个候选技能所对应的资源情况和每一个所述候选技能对应的技能权重确定所述每一个候选技能的综合技能得分;

确定所述综合技能得分中的最大值所对应的候选技能为所述目标技能。

在本申请的一些实施例中,该计算机设备所包括的处理器801还具有以下功能:

接收技能分发服务器tskm发送的候选技能列表和语音关键信息,所述候选技能列表包括至少一个候选技能;

确定所述候选技能列表中的每一个候选技能所对应的资源情况;

向所述tskm发送所述每一个候选技能所对应的资源情况,所述资源情况用于所述tskm确定目标技能,所述目标技能用于处理所述语音关键信息。

在本申请的一些实施例中,该处理器801还可以具体用于,

确定所述每一个候选技能对应的至少一个特征信息;

确定每一个所述特征信息对应的特征值与特征权重;

将所述每一个所述特征信息对应的特征值与特征权重相乘后求和,以确定所述每一个候选技能对应的资源情况。

在本申请实施例中,该计算机设备所包括的处理器801还具有以下功能:

获取用户请求消息;

解析所述用户请求消息,以得到语音关键信息;

基于所述语音关键信息确定候选技能列表,所述候选技能列表包括至少一个候选技能;

向技能分发服务器tskm发送所述语音关键信息和所述候选技能列表,以用于所述tskm根据每一个所述候选技能对应的技能权重以及所述每一个候选技能所对应的资源情况从所述候选技能列表中确定目标技能,所述目标技能用于处理所述语音关键信息。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

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

以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

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