一种语音中关键词的检索方法和装置
技术领域
本申请涉及数据处理领域,特别是涉及一种语音中关键词的检索方法和装置。
背景技术
关键词检索(Keyword Spotting,KWS)是一种在连续的语音中检索出特定关键词的技术。一种可能的实现方式中,可以使用解码网络进行KWS。解码网络由所需检索关键词对应的关键词模型和非关键词对应的非关键词模型构成,关键词模型包括关键词解码路径,非关键词模型包括非关键词解码路径。
针对关键词解码路径和非关键词解码路径,每个解码路径都由一系列节点有向的连接而成,根据网络构建方式的区别,每个节点对应的可以是音节、字、词等。解码网络还具有开始节点和结束节点,用于连接解码路径,从而使得整个解码网络的展示形式通常为有向无环图或者有向有环图。
当获取待检索语音包时,可以将待检索语音包逐个语音帧的输入解码网络,按照解码路径的方向依次计算在解码路径中节点的得分。其中,从开始节点开始对待检索语音包进行逐帧解码,在解码时,开始节点设置有令牌(Token),该令牌会基于令牌传递(TokenPassing)算法在解码网络中的解码路径上传递,令牌所处在解码路径中的节点会被标识为活跃节点,活跃节点用于对输入的语音帧进行匹配、打分。例如,当任一解码路径中第i个节点(活跃节点)将第j个语音帧传向第i+1个节点时,会对第j个语音帧基于匹配结果计算得分,原本处于第i个节点的令牌会将记录的原分数与针对第j个语音帧的得分进行累加,得到新的分数并记录,并随之传向第i+1个节点,使得第i+1个节点成为活跃节点,若第j+1个语音帧进入该解码路径中,会直接通过第i+1个节点继续进行匹配、打分。
然而,目前解码网络的上述机制对待检索语音中关键词的检出率并不高,用户体验不佳。
发明内容
为了解决上述技术问题,本申请提供了一种语音中关键词的检索方法及装置,有效提高了待检索语音中关键词的检出率。
本申请实施例公开了如下技术方案:
第一方面,本申请实施例提供了一种语音中关键词的检索方法,所述方法包括:
获取待检索语音;
根据解码网络对所述待检索语音中的语音帧进行关键词检索;所述解码网络中包括多个关键词解码路径;
在对所述待检索语音进行所述关键词检索的过程中,根据目标条件在目标解码路径的前部节点至少添加一次用于标识活跃节点的令牌;所述目标解码路径为所述多个关键词解码路径中的至少一个。
可选的,所述目标条件包括根据所述解码网络所处理的语音帧数量添加令牌,或者,所述目标条件包括根据所获取的所述待检索语音的语音片段数量添加令牌,所述语音片段包括多个连续语音帧。
可选的,根据所述目标条件所添加令牌中记录有初始得分,所添加令牌中的目标令牌的初始得分根据添加所述目标令牌时所述解码网络中剩余令牌所记录得分确定。
可选的,所述目标令牌的初始得分为添加所述目标令牌时所述解码网络中剩余令牌所记录得分中的最高分或最低分或平均分。
可选的,所述目标解码路径中不包括所述解码网络中的非关键词解码路径。
可选的,所述方法还包括:
在完成对所述待检索语音的所述关键词检索时,根据所述解码网络的结束节点中包括的令牌确定解码结果;
根据所述解码结果确定是否从所述待检索语音中检索出关键词。
第二方面,本申请实施例提供一种语音中关键词的检索装置,所述装置包括获取单元、检索单元和添加单元:
所述获取单元,用于获取待检索语音;
所述检索单元,用于根据解码网络对所述待检索语音中的语音帧进行关键词检索;所述解码网络中包括多个关键词解码路径;
所述添加单元,用于在对所述待检索语音进行所述关键词检索的过程中,根据目标条件在目标解码路径的前部节点至少添加一次用于标识活跃节点的令牌;所述目标解码路径为所述多个关键词解码路径中的至少一个。
可选的,所述目标条件包括根据所述解码网络所处理的语音帧数量添加令牌,或者,所述目标条件包括根据所获取的所述待检索语音的语音片段数量添加令牌,所述语音片段包括多个连续语音帧。
可选的,根据所述目标条件所添加令牌中记录有初始得分,所添加令牌中的目标令牌的初始得分根据添加所述目标令牌时所述解码网络中剩余令牌所记录得分确定。
可选的,所述目标令牌的初始得分为添加所述目标令牌时所述解码网络中剩余令牌所记录得分中的最高分或最低分或平均分。
可选的,所述目标解码路径中不包括所述解码网络中的非关键词解码路径。
可选的,所述装置还包括第一确定单元和第二确定单元:
所述第一确定单元,用于在完成对所述待检索语音的所述关键词检索时,根据所述解码网络的结束节点中包括的令牌确定解码结果;
所述第二确定单元,用于根据所述解码结果确定是否从所述待检索语音中检索出关键词。
第三方面,本申请实施例提供了一种语音中关键词的检索设备,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
获取待检索语音;
根据解码网络对所述待检索语音中的语音帧进行关键词检索;所述解码网络中包括多个关键词解码路径;
在对所述待检索语音进行所述关键词检索的过程中,根据目标条件在目标解码路径的前部节点至少添加一次用于标识活跃节点的令牌;所述目标解码路径为所述多个关键词解码路径中的至少一个。
可选的,所述目标条件包括根据所述解码网络所处理的语音帧数量添加令牌,或者,所述目标条件包括根据所获取的所述待检索语音的语音片段数量添加令牌,所述语音片段包括多个连续语音帧。
可选的,根据所述目标条件所添加令牌中记录有初始得分,所添加令牌中的目标令牌的初始得分根据添加所述目标令牌时所述解码网络中剩余令牌所记录得分确定。
可选的,所述目标令牌的初始得分为添加所述目标令牌时所述解码网络中剩余令牌所记录得分中的最高分或最低分或平均分。
可选的,所述目标解码路径中不包括所述解码网络中的非关键词解码路径。
可选的,所述处理器还执行所述一个或者一个以上程序包含用于进行以下操作的指令:
在完成对所述待检索语音的所述关键词检索时,根据所述解码网络的结束节点中包括的令牌确定解码结果;
根据所述解码结果确定是否从所述待检索语音中检索出关键词。
第四方面,本申请实施例提供了一种机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得装置执行如第一方面中一个或多个所述的语音中关键词的检索方法。
由上述技术方案可以看出,当获取待检索语音时,可以根据解码网络对待检索语音中的语音帧进行关键词检索。在进行关键词检索的过程中,可以根据目标条件从解码网络中的关键词解码路径中确定出目标解码路径,并在目标解码路径的前部节点主动添加令牌,使得被添加令牌的节点成为活跃节点,由此,之后进入解码网络的语音帧可以有机会从目标解码路径的这类前部节点开始进行解码,使得包括全部或部分关键词的语音帧通过尽可能完整的关键词解码路径的机会提高,从而提高了待检索语音中关键词的检出率,提升用户体验。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种语音中关键词的检索方法的流程图;
图2为本申请实施例提供的一种语音中关键词的检索装置的结构图;
图3为本申请实施例提供的一种用于语音中关键词的检索设备的结构图;
图4为本申请实施例提供的一种服务器的结构图。
具体实施方式
下面结合附图,对本申请的实施例进行描述。
目前,在应用基于令牌传递算法的解码网络为待检索语音进行关键词检索的过程中,出现如下情形的概率较大,该情形为:在包括全部或部分关键词的语音帧将进入解码网络时,当前的令牌已经传递至关键词解码路径的后部节点,由此包括关键词的语音帧只能从关键词解码路径的这部分节点开始进行解码,从而包括全部或部分关键词的语音帧通过的关键词解码路径不完整,由此对应于包括全部或部分关键词的语音帧所对应的分数较低,进而导致关键词的检出率不高,由此带来了不好的用户体验。
为此,本申请实施例提供了一种语音中关键词的检索方法,使得包括全部或部分关键词的语音帧通过尽可能完整的关键词解码路径的机会提高,从而提高了待检索语音中关键词的检出率。
首先,对本申请实施例的应用场景进行介绍。本申请实施例所提供的语音中关键词的检索方法可以应用于音频处理设备,例如可以是终端设备或服务器。
当音频处理设备为终端设备时,终端设备具体可以为智能手机、计算机、个人数字助理(Personal Digital Assistant,PDA)、平板电脑等。
在一些情况下应用场景中除了终端设备,还可以包括服务器,服务器可以获取来自终端设备的待检索语音,以便由服务器执行本申请实施例提供的语音中关键词的检索方法,并将检索出的语音中关键词的检索结果返回给终端设备。其中,服务器可以为独立服务器,也可以为集群服务器。需要说明的是,为了便于介绍,后续将以终端设备为执行主体为例对本申请实施例提供的语音中关键词的检索方法进行介绍。
该语音中关键词的检索方法包括:终端设备响应于关键词检索的请求后,获取待检索语音。其中,待检索语音可以为一段连续的、用于进行关键词检索的语音,例如:待检索语音可以为用户在与终端设备进行智能语音交互时说出的一段连续的、时长为5分钟的语音。终端设备在获取到待检测语音后,可以根据解码网络对待检索语音进行关键词检索。其中,在解码网络中可以包括有多个关键词解码路径,也可以包括有非关键词解码路径。
在对待检索语音进行关键词检索的过程中,即将待检索语音包括的语音帧逐个输入解码网络,解码网络对待检索语音中的每个语音帧进行关键词检索的过程中,可以根据目标条件,在目标解码路径的前部节点至少添加一次用于标识活跃节点的令牌。
这里所述的目标条件可以为向目标解码路径的前部节点添加令牌的条件,比如目标条件可以为在解码网络在每完成处理50个语音帧时添加一次令牌这一条件;目标解码路径可以为解码网络中包括的一个或多个关键词解码路径。而对于解码路径的前向节点,需要说明的是,每一条解码路径都是由一系列节点连接而成的有向路径,那么,对于每条解码路径来说,沿着解码路径的方向,解码路径中的越为靠近开始节点的节点可以作为解码路径的前部节点,比如:解码路径的前部节点可以为靠近开始节点的第一个节点,也可以为靠近开始节点的前百分之二十的节点等。
也就是说,对于目标解码路径的前部节点,也就是在有向的目标解码路径上的前半部分的任意节点,通过在目标解码路径的前部节点上添加令牌,使得原来不活跃的前部节点成为活跃的前部节点,从而,之后进入目标解码路径的语音帧就可以从该活跃的前部节点开始进行解码,由此,如果之后进入目标解码路径的语音帧为包括全部关键词或者部分关键词的语音帧,那么,这些包括全部关键词或者部分关键词的语音帧就可以通过从该前部节点开始的目标解码路径,从而提升了包括全部关键词或者部分关键词的语音帧在进行解码时通过目标解码路径的完整性。
由于包括全部关键词或者部分关键词的这部分语音帧在进行解码时通过的目标解码路径更完整,也就是包括全部关键词或者部分关键词的这些语音帧在进行解码时所通过的目标解码路径上的节点更多,那么,在为包括全部关键词或者部分关键词的这些语音帧在目标解码路径进行解码时,就可以将它们在更多的节点上进行匹配、并打分,从而提升了包括有关键词的待检测语音在目标解码路径上得到高分的机会,提高从待检索语音中关键词的检出率。
下面以一具体示例进行说明:假设在解码网络中包括一条对应于关键词“汪仔你好”的关键词解码路径,且该关键词解码路径由100个节点有向连接而成,假设待检索语音为用户说出的包括有100个语音帧的一段语音,且该待检索语音中的后50帧对应于用户说出的关键词“汪仔你好”。在为待检索语音进行关键词检索的过程中,将对应于关键词“汪仔你好”的关键词解码路径确定为目标解码路径,且设定当前的目标条件为根据解码网络每处理50个语音帧时添加一次令牌,那么,在目标解码路径对待检测语音的第50个语音帧完成解码,待检测语音的第51个语音帧即将进入目标解码路径之前,根据目标条件,可以在目标解码路径的前部节点,比如可以为关键词解码路径的第1个节点处添加一次用于标识活跃节点的令牌,使得目标解码路径的前部节点成为活跃节点,这样,之后进入解码网络的语音帧,也就是待检测语音中的、且对应于关键词“汪仔你好”的后50个语音帧就可以从目标解码路径的第1个节点开始进行解码,从而完整的通过目标解码路径。
由此可见,通过本申请实施例提供的主动添加令牌的机制,通过在目标解码路径的前部节点主动添加令牌,使得被添加令牌的节点成为活跃节点,由此,之后进入解码网络的语音帧可以有机会从目标解码路径的这类前部节点开始进行解码,使得包括全部或部分关键词的语音帧通过尽可能完整的关键词解码路径的机会提高,从而提高了待检索语音中关键词的检出率。
需要注意的是,上述应用场景仅是为了便于理解本申请而示出,本申请的实施方式在此方面不受任何限制。相反,本申请的实施方式可以应用于适用的任何场景。
下面结合附图,详细说明本申请的各种非限制性实施方式。
接下来,将以本申请的执行主体为终端设备作为示例,对本申请所提供的一种语音中关键词的检索方法进行介绍。参见图1,为本申请实施例提供的一种语音中关键词的检索方法的方法流程图。如图1所示,可以包括如下步骤:
S101:获取待检索语音。
这里所述的待检索语音可以为一段连续的、用于进行关键词检索的语音,在本申请实施例中,可以首先获取到待检索语音,进而为待检索语音进行关键词的检索。
S102:根据解码网络对所述待检索语音中的语音帧进行关键词检索。
在本申请实施例中,在获取待检索语音后,可以根据解码网络对待检索语音中的语音帧进行关键词检索。其中,这里所述的解码网络,可以包括有多个关键词解码路径,也可以包括有非关键词解码路径。
需要说明的是,本申请实施例提供的解码网络,在对待检索语音进行关键词的检索之前,已经根据预先确定的关键词和非关键词,完成了对解码网络的构建。而且,对于该解码网络中的关键词路径与非关键词路径,其中包括的各个节点都是已知的。此外,在应用该解码网络对关键词进行检索的过程中,该解码网络不会发生任何变化。
在本申请实施例中,用于为待检索语音进行解码的解码网络可以是基于令牌传递算法和束剪枝(Beam Search)的维特比(Viterbi)算法的解码网络,那么通过这样的解码网络为待检索语音的语音帧进行解码时,当出现多个令牌传递至同一个节点的情形时,该节点会只保留分数较高的一个或多个令牌,而过滤掉其余的令牌。则,针对于该解码网络对待检索语音中的语音帧进行关键词检索的过程可以为:
可以通过基于神经网络的前馈计算模型,为待检索语音中的每个语音帧计算其在解码网络上每个节点上进行解码的后验概率,并基于得到的后验概率确定出每个语音帧在每个节点上的后验分数。
在关键词检索过程中,可以根据该后验概率和在活跃节点上的匹配得分来确定关键词的检索。
另外,解码路径上的节点为输入该节点上的语音帧进行匹配和打分,可以是根据该节点所对应的文本信息与该语音帧对应的文本信息的匹配程度进行的。其中,文本信息比如可以是音节、字、词等信息。节点与语音帧的匹配度越高,则该节点对这个语音帧的打分也越高。
S103:在对所述待检索语音进行所述关键词检索的过程中,根据目标条件在目标解码路径的前部节点至少添加一次用于标识活跃节点的令牌。
在为待检索语音通过解码网络进行关键词检索的过程中,也就是将待检索语音包括的语音帧逐个输入解码网络,解码网络对待检索语音中的每个语音帧进行关键词检索的过程中,可以根据目标条件,在目标解码路径的前部节点至少添加一次用于标识活跃节点的令牌。
从而,之后进入目标解码路径的语音帧就可以从该活跃的前部节点开始进行解码,由此,如果之后进入目标解码路径的语音帧为对应于关键词的语音帧,那么,这些语音帧就可以通过从该前部节点开始的目标解码路径,从而提升了这些语音帧在进行解码时通过目标解码路径的完整性,进一步提升了包括有关键词的待检测语音在目标解码路径上得到高分的机会,进而提高从待检索语音中关键词的检出率。
另外,在对待检索语音进行关键词检索的过程中,可以在目标解码路径的前部节点添加一次或多次令牌。那么,如果待检索语音中包括有对应于关键词的语音帧,可以通过多次在目标解码路径的前部节点添加令牌的方式,以提升这些对应于关键词的语音帧从目标解码路径的前部节点开始解码的机会,从而提高包括这些语音帧在进行解码时通过目标解码路径的完整性,进而提高从待检索语音中关键词的检出率。
在本申请实施例中,在对待检索语音进行关键词检索的过程中,可以根据适合的目标条件,向目标解码路径的前部节点添加令牌,从而实现多次向目标解码路径的前部节点添加令牌。由此,在一种可能的实现方式中,目标条件可以包括根据解码网络所处理的语音帧数量添加令牌,或者,包括根据所获取的待检索语音的语音片段数量添加令牌,这里所述的语音片段可以包括多个连续语音帧,下面对这两种目标条件进行描述。
在具体实现中,在获取到待检索语音后,可能会出现如下场景:将待检索语音以逐语音帧的方式发送至解码网络的接收端,该接收端在接收到这些语音帧后,可以逐语音帧的输入至解码网络,以为这些语音帧进行解码。那么,在该种场景下,可以根据解码网络所处理的语音帧数量这一目标条件,向目标解码路径的前部节点添加令牌。例如:目标条件中包括有根据解码网络所处理的语音帧数量为50帧的整数倍时添加令牌,那么,在对待检索语音进行关键词检索的过程中,可以根据该目标条件,在解码网络分别处理50、100、150、200(50的整数倍)个语音帧时,在目标解码路径的前部节点添加一次令牌。可见,以解码网络所处理的语音帧数量作为对目标解码路径的前部节点添加令牌的目标条件,便于控制添加令牌的时间节点。
另外,在获取到待检索语音后,还可能会出现如下场景:将待检索语音分成多个语音片段,每个语音片段中可以包括多个连续的语音帧,从而将待检索语音以逐个语音片段的方式发送至解码网络的接收端,该接收端在接收到这些语音片段后,可以将这些语音片段逐个语音帧的输入至解码网络,以为这些语音帧进行解码,那么在该种场景下,可以根据所获取的待检索语音的语音片段数量这一目标条件,向目标解码路径的前部节点添加令牌。例如:假设所获取的待检索语音的语音片段为10个,则,目标条件中包括有在每个语音片段中的语音帧输入目标解码路径之前,向目标解码路径的前部节点添加令牌。可见,以待检索语音的语音片段数量作为对目标解码路径的前部节点添加令牌的目标条件,也可以便于控制添加令牌的时间节点。
需要注意的是,上述应用场景仅是为了便于理解本申请而示出,本申请的实施方式在此方面不受任何限制。相反,本申请的实施方式可以应用于适用的任何场景。比如在将待检索语音以逐个语音片段的方式发送至解码网络的接收端的场景下,也可以根据解码网络所处理的语音帧数量这一目标条件,向目标解码路径的前部节点添加令牌。
可以理解的是,本申请实施例所提供的语音中关键词的检索方法,是为了在待检索语音中包括有对应于关键词的语音帧的前提下,对于这些对应于关键词的语音帧,能够保证它们可以有较高的机会从关键词解码路径的前部节点进行解码,从而提升待检索语音的关键词检出率。由此,在一种可能的实现方式中,对于主动添加令牌的对象,即目标解码路径中不包括解码网络中的非关键词解码路径。也就是说,在本申请实施例中,仅以解码网络中的关键词解码路径作为目标解码路径,并在这些关键词解码路径的前部节点主动添加令牌,从而提升包括有关键词的待检测语音在关键词解码路径上得到高分的机会,进而提高待检索语音中的关键词检出率。另外,无需额外在非关键词路径上进行解码,还可以提升待检索语音的解码效率。
可以理解的是,在本申请实施例中,在根据目标条件,向目标解码路径的前部节点添加令牌时,可能会出现已经为待检索语音中的部分语音帧完成解码的情形,也就是说,在向目标解码路径的前部节点添加令牌时,当前解码网络的令牌中已经记录有分数,该分数可以是基于为待检索语音中的部分语音帧完成解码时得到的。
在这种情形下,可以为根据目标条件所添加的令牌中记录有初始得分,为了便于描述,将根据目标条件在目标解码路径的前部节点添加的任意一个令牌,记为目标令牌。其中,该目标令牌的初始得分可以根据在添加目标令牌时的解码网络中剩余令牌所记录得分确定,也就是说,在添加目标令牌时,可以根据当前解码网络中剩余令牌所记录的得分,为该目标令牌确定一个初始得分。
由此,在将目标令牌添加至目标解码路径时,该目标令牌中记录有初始得分,且该初始得分是根据当前解码网络中剩余令牌所记录得分确定的,从而使得目标令牌中的得分与当前解码网络中剩余令牌所记录的得分处于相对均衡的水平,保证了该目标令牌在为之后进入的语音帧记录得分时,是基于相对均衡的分数的基础上进行的,减少了如下情形出现的概率,即:目标令牌为之后进入的对应于关键词的语音帧记录了分数,但由于目标令牌中无初始得分,导致了目标令牌的最终得分较低,从而导致未在待检索语音中检索出关键词,影响了待检索语音的关键词检出率。
另外,由于本申请实施例提供的解码网络可以基于束剪枝的维特比算法,在应用基于该算法下的解码网络为语音帧进行解码时,通过为目标令牌确定初始得分,可以保证当目标令牌与其他令牌在传递至同一个节点时不会因为分数较低而被过滤掉,从而提升目标令牌被保留的几率。
本申请实施例提供了多种确定目标令牌的初始得分的方法,比如:可以将添加目标令牌时解码网络中剩余令牌所记录得分中的最高分、最低分或平均分,作为目标令牌的初始得分。接下来,将针对上述三种方法进行介绍。
第一种方法:可以将添加目标令牌时解码网络中剩余令牌所记录得分中的最高分,作为目标令牌的初始得分。
在本方法中,在添加目标令牌时,可以根据当前解码网络中剩余令牌所记录的最高分,确定为目标令牌的初始得分。也就是说,在添加目标令牌时,目标令牌中记录的初始得分高于当前解码网络中剩余令牌中的几乎全部令牌所记录的得分。
由此,如果之后进入目标解码路径的语音帧为对应于关键词的语音帧,那么,这些语音帧在进入目标解码路径上随着该目标令牌的传递进行解码时,由于该目标令牌是在初始得分的基础上对这些语音帧记录得分的,从而在完成对待检索语音的关键词检索后,使得该目标令牌所记录的分数高于解码网络结束节点上的大多数令牌中所记录分数的机会大大提高,从而增加了将该目标令牌确定为分数较高的令牌的机会,这样,根据该目标令牌确定出这部分语音帧所对应的关键词的机会也会提升,进而提升对待检索语音的关键词检出率。
第二种方法:可以将添加目标令牌时解码网络中剩余令牌所记录得分中的最低分,作为目标令牌的初始得分。
在本方法中,在添加目标令牌时,可以根据当前解码网络中剩余令牌所记录的最低分,确定为目标令牌的初始得分。也就是说,在添加目标令牌时,目标令牌中记录的初始得分低于当前解码网络中剩余令牌中的几乎全部令牌所记录的得分。
这种确定初始得分的方式,可以避免由于添加初始过高导致错误检出关键词的概率。
第三种方法:可以将添加目标令牌时解码网络中剩余令牌所记录得分中的平均分,作为目标令牌的初始得分。
在本方法中,在添加目标令牌时,可以根据当前解码网络中剩余令牌所记录的平均分,确定为目标令牌的初始得分。也就是说,在添加目标令牌时,目标令牌中记录的初始得分处于当前解码网络中剩余令牌中所记录得分的中等水平。
这种确定初始得分的方式,对于为待检索语音完成解码后的目标令牌所记录的最终分数,能够保证该初始得分不会对其造成太大影响,从而便于本申请实施例所提供的方法可以在该初始得分的基础上进行,以提升待检索语音的关键词检出率。
在本申请实施例中,在通过解码网络对待检索语音完成关键词的检索后,还需要确定出为待检索语音进行关键词检索的结果,也就是需要确定是否从待检索语音中检索出关键词,因此,在图1所对应的实施例的基础上,在一种可能的实现方式中,所述方法还包括:
S201:根据解码网络的结束节点中包括的令牌确定解码结果。
在本申请实施例中,可以在解码网络的结束节点中包括的令牌确定出分数较高的令牌,并根据确定出的这些分数较高的令牌,确定出这些令牌所经过的历史节点对应的文本信息。其中,确定令牌所经过的历史节点对应的文本信息的方式可以是,追溯令牌所经过的历史节点,将令牌所经过的历史节点组成一个序列,并将该序列作为该令牌对应的解码结果。由此,可以根据确定出的分数较高的令牌中的每一个令牌,都确定出一个解码结果,即由该令牌所经过的历史节点所组成的序列。
S202:根据解码结果确定是否从所述待检索语音中检索出关键词。
在本申请实施例中,可以根据确定出的解码结果,确定这些解码结果中是否包括关键词,若包括,则确定为待检索语音进行关键词检索的结果为从待检索语音中检索出关键词,若不包括,则确定为待检索语音进行关键词检索的结果为未从待检索语音中检索出关键词。这样,就可以根据关键词检索的结果,确定是否需要唤醒音频处理设备,如果确定结果为从待检索语音中检索出关键词,则对音频处理设备进行唤醒操作,如果确定结果为未从待检索语音中检索出关键词,则不对音频处理设备进行唤醒操作。
基于图1对应的实施例提供的语音中关键词的检索方法,本申请实施例提供一种语音中关键词的检索装置,参见图2,所述装置包括获取单元201、检索单元202和添加单元203:
所述获取单元201,用于获取待检索语音;
所述检索单元202,用于根据解码网络对所述待检索语音中的语音帧进行关键词检索;所述解码网络中包括多个关键词解码路径;
所述添加单元203,用于在对所述待检索语音进行所述关键词检索的过程中,根据目标条件在目标解码路径的前部节点至少添加一次用于标识活跃节点的令牌;所述目标解码路径为所述多个关键词解码路径中的至少一个。
可选的,所述目标条件包括根据所述解码网络所处理的语音帧数量添加令牌,或者,所述目标条件包括根据所获取的所述待检索语音的语音片段数量添加令牌,所述语音片段包括多个连续语音帧。
可选的,根据所述目标条件所添加令牌中记录有初始得分,所添加令牌中的目标令牌的初始得分根据添加所述目标令牌时所述解码网络中剩余令牌所记录得分确定。
可选的,所述目标令牌的初始得分为添加所述目标令牌时所述解码网络中剩余令牌所记录得分中的最高分或最低分或平均分。
可选的,所述目标解码路径中不包括所述解码网络中的非关键词解码路径。
可选的,所述装置还包括第一确定单元和第二确定单元:
所述第一确定单元,用于在完成对所述待检索语音的所述关键词检索时,根据所述解码网络的结束节点中包括的令牌确定解码结果;
所述第二确定单元,用于根据所述解码结果确定是否从所述待检索语音中检索出关键词。
可见,当获取待检索语音时,可以根据解码网络对待检索语音中的语音帧进行关键词检索。在进行关键词检索的过程中,可以根据目标条件从解码网络中的关键词解码路径中确定出目标解码路径,并在目标解码路径的前部节点主动添加令牌,使得被添加令牌的节点成为活跃节点,由此,之后进入解码网络的语音帧可以有机会从目标解码路径的这类前部节点开始进行解码,使得包括全部或部分关键词的语音帧通过尽可能完整的关键词解码路径的机会提高,从而提高了待检索语音中关键词的检出率,提升用户体验。
基于前述提供的语音中关键词的检索方法和装置,本实施例提供一种用于语音中关键词的检索设备,用于语音中关键词的检索设备可以是终端设备,
图3是根据一示例性实施例示出的一种终端终端设备300的框图。例如,终端设备300可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图3,终端设备300可以包括以下一个或多个组件:处理组件302,存储器304,电源组件306,多媒体组件308,音频组件310,输入/输出(I/O)的接口312,传感器组件314,以及通信组件316。
处理组件302通常控制终端设备300的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理元件302可以包括一个或多个处理器320来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件302可以包括一个或多个模块,便于处理组件302和其他组件之间的交互。例如,处理部件302可以包括多媒体模块,以方便多媒体组件308和处理组件302之间的交互。
存储器304被配置为存储各种类型的数据以支持在终端设备300的操作。这些数据的示例包括用于在装置300上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器304可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件306为终端设备300的各种组件提供电力。电源组件306可以包括电源管理系统,一个或多个电源,及其他与为装置300生成、管理和分配电力相关联的组件。
多媒体组件308包括在所述终端设备300和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件308包括一个前置摄像头和/或后置摄像头。当终端设备300处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件310被配置为输出和/或输入音频信号。例如,音频组件310包括一个麦克风(MIC),当装置300处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器304或经由通信组件316发送。在一些实施例中,音频组件310还包括一个扬声器,用于输出音频信号。
I/O接口312为处理组件302和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件314包括一个或多个传感器,用于为终端设备300提供各个方面的状态评估。例如,传感器组件314可以检测到终端设备300的打开/关闭状态,组件的相对定位,例如所述组件为终端设备300的显示器和小键盘,传感器组件314还可以检测终端设备300或终端设备300一个组件的位置改变,用户与终端设备300接触的存在或不存在,终端设备300方位或加速/减速和终端设备300的温度变化。传感器组件314可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件314还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件314还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件316被配置为便于终端设备300和其他设备之间有线或无线方式的通信。终端设备300可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信部件316经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信部件316还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,终端设备300可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器304,上述指令可由终端设备300的处理器320执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
一种非临时性计算机可读存储介质,当所述存储介质中的指令由移动终端的处理器执行时,使得移动终端能够执行一种语音中关键词的检索方法,所述方法包括:
获取待检索语音;
根据解码网络对所述待检索语音中的语音帧进行关键词检索;所述解码网络中包括多个关键词解码路径;
在对所述待检索语音进行所述关键词检索的过程中,根据目标条件在目标解码路径的前部节点至少添加一次用于标识活跃节点的令牌;所述目标解码路径为所述多个关键词解码路径中的至少一个。
图4是本发明实施例中服务器的结构示意图。该服务器400可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(centralprocessing units,CPU)422(例如,一个或一个以上处理器)和存储器432,一个或一个以上存储应用程序442或数据444的存储介质430(例如一个或一个以上海量存储设备)。其中,存储器432和存储介质430可以是短暂存储或持久存储。存储在存储介质430的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器422可以设置为与存储介质430通信,在服务器400上执行存储介质430中的一系列指令操作。
服务器400还可以包括一个或一个以上电源426,一个或一个以上有线或无线网络接口450,一个或一个以上输入输出接口458,一个或一个以上键盘456,和/或,一个或一个以上操作系统441,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质可以是下述介质中的至少一种:只读存储器(英文:read-only memory,缩写:ROM)、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备及系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的设备及系统实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述,仅为本申请的一种具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。