一种解码网络中非关键词模型的构建方法和装置与流程

文档序号:19906901发布日期:2020-02-11 14:37
一种解码网络中非关键词模型的构建方法和装置与流程

本申请涉及数据处理领域,特别是涉及一种解码网络中非关键词模型的构建方法和装置。



背景技术:

关键词检索(keywordspotting,kws)是一种在连续的语音中检索出特定关键词的技术。一种可能的实现方式中,可以使用解码网络进行kws。解码网络是根据所需检索关键词对应关键词模型和非关键词对应的非关键词模型构成的。其中,非关键词存在的作用在于与关键词构成竞争关系,以起到提高解码网络从连续语音中检索出关键词的准确性和成功率。

然而,在一些场景下,kws主要是在设备本地实施的。而设备在本地的存储空间和数据处理能力有限,如果进行kws所依据的非关键词数量较多,会导致解码网络的容量较大,会提高设备的本地存储压力。而且设备在利用该解码网络进行kws时,非关键词模型需要针对较多非关键词,构建较多的非关键词解码路径,导致检索出关键词的计算量大大增加,并且,由于较多非关键词均与关键词构成竞争关系时,会对关键词的检索产生干扰,会导致检索出关键词的准确性和成功率下降。

可见,如何合理选择非关键词构建解码网络中的非关键词模型是目前亟需解决的问题。



技术实现要素:

为了解决上述技术问题,本申请提供了一种解码网络中非关键词模型的构建方法,以实现提高检索出关键词的准确性和成功率的作用。

本申请实施例公开了如下技术方案:

第一方面,本申请实施例提供了一种解码网络中非关键词模型的构建方法,所述方法包括:

获取待筛选的语料集合;

确定所述语料集合中所包括字符对应的发音元素的出现率;

将出现率满足预设阈值的发音元素构成非关键词集合,所述非关键词集合中发音元素的数量小于所述语料集合中所具有发音元素的数量,且所述非关键词集合中发音元素不包括关键词对应的发音元素;

根据所述非关键词集合构建解码网络中的非关键词模型。

可选的,所述语料集合包括多条语音样本,其中,任一语音样本包括至少一个字符对应的语音;

和/或,

所述语料集合包括多条文本样本,其中,任一文本样本包括至少一个字符。

可选的,在确定所述语料集合中所包括字符对应的发音元素的出现率的过程中,将发音元素相同但声调不同的发音元素作为同一个发音元素,或者,将发音元素相同且声调相同的发音元素作为同一个发音元素。

可选的,所述方法还包括:

在所述非关键词模型中建立虚拟解码路径,待检索语音通过所述虚拟解码路径得到匹配值;所述匹配值是根据所述待检索语音通过所述非关键词模型中的非关键词解码路径所得到的匹配值确定的。

可选的,所述待检索语音通过所述虚拟解码路径所得到的匹配值包括以下任意一种:

所述待检索语音通过所述非关键词模型中的非关键词解码路径所得到匹配值的平均值;

所述待检索语音通过所述非关键词模型中的非关键词解码路径所得到匹配值中的最大值或最小值;

所述平均值、最大值或最小值与预设系数的计算结果。

可选的,所述解码网络中还包括关键词模型,若所述待检索语音通过所述关键词模型所得到的匹配值,高于所述待检索语音通过任一非关键词解码路径所得到的匹配值,且高于所述虚拟解码路径所得到的匹配值,则确定所述待检索语音包括所述关键词对应的发音元素。

可选的,所述非关键词集合还包括拟声词对应的发音元素。

第二方面,本申请实施例提供了一种解码网络中非关键词模型的构建装置,所述装置包括:集合获取单元、出现率确定单元、集合构建单元和模型构建单元;

所述集合获取单元,用于获取待筛选的语料集合;

所述出现率确定单元,用于确定所述语料集合中所包括字符对应的发音元素的出现率;

所述集合构建单元,用于将出现率满足预设阈值的发音元素构成非关键词集合,所述非关键词集合中发音元素的数量小于所述语料集合中所具有发音元素的数量,且所述非关键词集合中发音元素不包括关键词对应的发音元素;

所述模型构建单元,用于根据所述非关键词集合构建解码网络中的非关键词模型。

可选的,所述语料集合包括多条语音样本,其中,任一语音样本包括至少一个字符对应的语音;

和/或,

所述语料集合包括多条文本样本,其中,任一文本样本包括至少一个字符。

可选的,在确定所述语料集合中所包括字符对应的发音元素的出现率的过程中,将发音元素相同但声调不同的发音元素作为同一个发音元素,或者,将发音元素相同且声调相同的发音元素作为同一个发音元素。

可选的,所述装置还包括:

在所述非关键词模型中建立虚拟解码路径,待检索语音通过所述虚拟解码路径得到匹配值;所述匹配值是根据所述待检索语音通过所述非关键词模型中的非关键词解码路径所得到的匹配值确定的。

可选的,所述待检索语音通过所述虚拟解码路径所得到的匹配值包括以下任意一种:

所述待检索语音通过所述非关键词模型中的非关键词解码路径所得到匹配值的平均值;

所述待检索语音通过所述非关键词模型中的非关键词解码路径所得到匹配值中的最大值或最小值;

所述平均值、最大值或最小值与预设系数的计算结果。

可选的,所述解码网络中还包括关键词模型,若所述待检索语音通过所述关键词模型所得到的匹配值,高于所述待检索语音通过任一非关键词解码路径所得到的匹配值,且高于所述虚拟解码路径所得到的匹配值,则确定所述待检索语音包括所述关键词对应的发音元素。

可选的,所述非关键词集合还包括拟声词对应的发音元素。

第三方面,本申请实施例提供了一种解码网络中非关键词模型的构建装置,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:

获取待筛选的语料集合;

确定所述语料集合中所包括字符对应的发音元素的出现率;

将出现率满足预设阈值的发音元素构成非关键词集合,所述非关键词集合中发音元素的数量小于所述语料集合中所具有发音元素的数量,且所述非关键词集合中发音元素不包括关键词对应的发音元素;

根据所述非关键词集合构建解码网络中的非关键词模型。

第四方面,本申请实施例提供了一种非临时性计算机可读存储介质,其特征在于,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如第一方面中任意一项所述解码网络中非关键词模型的构建方法。

由上述技术方案可以看出,在建立解码网络中非关键词模型之前,可以从待筛选的语料集合中筛选出所需的非关键词。筛选的方式基于发音元素,由于发音元素是根据语音的自然属性划分出的语音单位,更关注于字符的读音,而不用考虑发音元素对应的字符的具体含义,故基于发音元素筛选非关键词更符合关键词检索的需求。故在确定出该语料集合中所包括字符对应发音元素的出现率后,可以将出现率满足预设阈值的发音元素构成非关键词集合,通过该预设阈值可以将出现率较高的发音元素确定为非关键词,相对于语料集合中包括的发音元素,非关键词集合中发音元素的数量不仅较少,而且属于较为容易出现在用户语音中的发音元素,故非关键词集合中的发音元素属于应用于关键词检索中的高质量发音元素,通过该非关键词集合构建出的非关键词模型不仅容量较小,能够缓解设备的本地存储压力,而且作为非关键词模型更容易命中用户语音中非关键词对应的语音,起到了提高检索出关键词的准确性和成功率的作用。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例提供的一种示例性应用场景的框架示意图;

图2为本申请实施例提供的一种解码网络中非关键词模型的构建方法的方法流程图;

图3为本申请实施例提供的一种解码网络中非关键词模型的构建装置的结构示意图;

图4为本申请实施例提供的一种解码网络中非关键词模型的构建装置的结构示意图;

图5为本申请实施例提供的一种服务器的结构示意图。

具体实施方式

下面结合附图,对本申请的实施例进行描述。

在传统的方式中,kws主要是在设备本地实施的。而设备在本地的存储空间和数据处理能力有限,如果进行kws所依据的非关键词数量较多,会导致解码网络的容量较大,会提高设备的本地存储压力。而且设备在利用该解码网络进行kws时,非关键词模型需要针对较多非关键词,构建较多的非关键词解码路径,导致检索出关键词的计算量大大增加,并且,由于较多非关键词均与关键词构成竞争关系时,会对关键词的检索产生干扰,导致检索出关键词的准确性和成功率下降。可见,如何合理选择非关键词构建解码网络中的非关键词模型是目前亟需解决的问题。

为此,本申请实施例提供了一种解码网络中非关键词模型的构建方法,以希望能够从大量的发音元素中确定出少量的、且较为容易出现在用户语音中的发音元素,并且通过这些少量的、且较为容易出现在用户语音中的发音元素构建出非关键词模型,以使得所构建出的非关键词模型不仅容量小,能够缓解设备的本地存储压力,而且更容易命中用户语音中非关键词对应的语音,起到了提高检索出关键词的准确性和成功率的作用。

其中,解码网络可以用于进行关键词检索,并且,解码网络的展示形式通常为有向无环图或者有向有环图。在本实施例中,解码网络所需要检索的对象可以称之为待检索语音,而在检索待检索语音过程中所需要检索出的字符(例如字、词)可以称之为关键词,相应地,可以将不属于关键词的字符(例如字、词)称之为非关键词。

需要说明的是,解码网络中可以包括非关键词模型和关键词模型。在非关键词模型中,可以针对非关键词集合中的各个非关键词分别建立非关键词解码路径,其中,待检索语音可以通过非关键词解码路径得到匹配值,该匹配值能够标识出该待检索语音包括非关键词的可能性。而关键词模型可以是根据关键词所构建的,待检索语音也可以通过关键词模型得到匹配值,该匹配值能够标识出该待检索语音包括关键词的可能性。其中,在本实施例中所提到的匹配值可以是分数,也可以是数值,还可以是概率值,当然还可以为其它可能的展示形式,在这里不对匹配值的展示形式做任何限定。

作为一种示例,本申请实施例所提供的一种解码网络中非关键词模型的构建方法可以应用到如图1所示的场景中,该场景可以包括模型构建设备101。其中,该模型构建设备101可以为具有模型构建功能的终端,例如可以是具有模型构建功能的手机、笔记本电脑、台式电脑、平板电脑、电子书阅读器、动态影像专家压缩标准音频层面4(movingpictureexpertsgroupaudiolayeriv,mp4)播放器、膝上型便携计算机、车机、智能后视镜和智能音响等;或者,该模型构建设备101也可以为具有模型构建功能的服务器。需要说明的是,为便于描述,在本实施例中将主要以模型构建设备101为服务器进行举例说明。

具体地,模型构建设备101可以先获取待筛选的语料集合。其中,待筛选的语料集合可以为包括了大量字符的集合,且该语料集合中的字符可以是通过语音的形式或者文本的形式进行保存的。故此,在一些实现方式中,语料集合可以包括多条语音样本和/或多条文本样本,其中,任一语音样本可以包括至少一个字符对应的语音,任一文本样本可以包括至少一个字符。

在模型构建设备101建立解码网络中非关键词模型之前,可以确定该语料集合中所包括字符对应的发音元素的出现率。其中,发音元素的出现率可以理解为在语料集合所包括的全部字符对应的发音元素中,同一发音元素的出现频率。可以理解的是,一发音元素的出现率越高,说明在语料集合所包括的全部字符对应的发音元素中,该发音元素的出现频率越高(即出现的次数越多),从而能够反映该发音元素越符合用户的语言表达习惯,也就是说,发音元素越容易出现在用户语音中;反之,说明在语料集合所包括的全部字符对应的发音元素中,该发音元素的出现频率越低(即出现的次数越少),从而能够反映该发音元素越不符合用户的语言表达习惯,也就是说,发音元素越不容易出现在用户语音中。

需要说明的而是,本申请实施例中的发音元素可以为字符对应的读音,例如可以为字符对应的音节;字符可以是不同语种中的基础语义单位,例如在汉语中,字符可以是汉字,汉字对应的发音元素可以是拼音音节;在英语中,字符可以是单词,单词对应的发音元素可以是对应的音标或音标组合。。举例来说,当字符为汉字时,字符对应的发音元素可以为拼音音节,比如,字符为汉字“你”,该字符对应的发音元素可以为拼音音节“ni”;当字符为英文时,字符对应的发音元素可以为英文音节,比如,字符为英文单词“ball”,该字符对应的发音元素可以为英文音节需要说明的是,字符的语言种类和字符对应的发音元素的语言种类除了上述几种可能的方式以外,还可以为其它不同的语言种类,在此不对字符的语言种类做任何限定。为了便于描述,在之后的实施例中,将主要以字符为汉字,字符对应的发音元素为拼音音节为例进行说明。

模型构建设备101确定该语料集合中所包括字符对应的发音元素的出现率后,模型构建设备101可以将出现率满足预设阈值的发音元素构成非关键词集合,即模型构建设备101可以通过该预设阈值将出现率较高的发音元素确定为非关键词。这样,便可以使得非关键词集合中发音元素的数量小于语料集合中所具有发音元素的数量。需要强调的是,由于非关键词集合中的发音元素是用于命中用户语音中非关键词对应的语音,故此,在本实施例中,非关键词集合中的发音元素不包括关键词对应的发音元素。

并且,模型构建设备101筛选的方式基于发音元素,由于发音元素是根据语音的自然属性划分出的语音单位,更关注于字符的读音,而不用考虑发音元素对应的字符的具体含义,故模型构建设备101建立解码网络中非关键词模型之前,可以从待筛选的语料集合中筛选出所需的非关键词,即基于发音元素筛选出的非关键词更符合关键词检索的需求。

在模型构建设备101构成非关键词集合后,可以根据非关键词集合构建解码网络中的非关键词模型。需要说明的是,由于相对于语料集合中包括的发音元素,非关键词集合中发音元素的数量不仅较少,而且属于较为容易出现在用户语音中的发音元素,故非关键词集合中的发音元素属于应用于关键词检索中的高质量发音元素,从而通过该非关键词集合构建出的非关键词模型不仅容量较小,能够缓解设备的本地存储压力,而且作为非关键词模型更容易命中用户语音中非关键词对应的语音,确保检索出关键词的准确性和成功率的作用。

需要注意的是,上述应用场景仅是为了便于理解本申请而示出,本申请的实施方式在此方面不受任何限制。相反,本申请的实施方式可以应用于适用的任何场景。

下面结合附图,详细说明本申请的各种非限制性实施方式。

接下来,将以本申请的执行主体为服务器作为示例,对本申请所提供的一种解码网络中非关键词模型的构建方法进行介绍。参见图2,为本申请实施例提供的一种解码网络中非关键词模型的构建方法的方法流程图。如图2所示,可以包括如下步骤:

s201:获取待筛选的语料集合。

在本实施例中,若语料集合包括语音样本,那么,语音样本可以是在用户发出语音的场景中获取到的,例如,用户使用智能交互服务的场景、用户使用即时聊天工具语音聊天或者发送语音消息的场景等。若语料集合包括文本样本,那么,文本样本可以是在用户输入文本信息的场景中获取到的,例如,用户使用即时聊天工具发送文本消息的场景;当然,文本样本还可以是对语音样本进行文字识别得到的。需要说明的是,语料集合中的语音样本和文本样本除了上述几种可能的获取方式以外,还可以为其它的获取方式,在此不对语音样本和文本样本的获取方式做任何限定。

需要说明的是,为了能够充分体现每个用户的个人语言表达习惯,以便解码网络中的非关键词模型能够更加针对性地命中用户语音中非关键词对应的语音。在本实施例的一种实现方式中,语料集合中的样本可以是单个用户的历史数据。

当然,为了能够全面的体现大多数用户的文字表达习惯,以便解码网络中的非关键词模型能够更加全面、准确地命中用户语音中非关键词对应的语音。在本实施的一种实现方式中,语料集合中的样本可以是大量用户的历史数据,例如,可以是包括了不同年龄、不同性别、不同地区、不同种族和/或不同职业的用户的历史数据。

s202:确定所述语料集合中所包括字符对应的发音元素的出现率。

由于发音元素的出现率能够体现发音元素对于用户的语言表达习惯的符合程度,即发音元素出现在用户语音中的可能性大小。故此,在本申请实施例中,获取到待筛选的语料集合后,可以确定语料集合中所包括字符对应的发音元素的出现率,以便后续能够根据发音元素的出现率确定出较为容易出现在用户语音中的非关键词。

具体地,服务器获取到待筛选的语料集合后,服务器可以先确定该语料集合中所包括的多个字符分别对应的发音元素。作为一种示例,当语料集合包括语音样本时,服务器可以根据语音样本中字符对应的语音,确定字符对应的发音元素。比如,假设一个语音样本为两个汉字“你好”对应的语音,服务器可以根据该语音样本中汉字“你”对应的语音确定发音元素“ni”,以及根据该语音样本中汉字“好”对应的语音确定发音元素“hao”;当语料集合包括文本样本时,服务器可以根据文本样本中所包括的字符,确定字符对应的发音元素,比如,假设一个文本样本为词语“什么”,服务器可以根据该词语中的汉字“什”确定发音元素“shen”,以及可以根据该词语中的汉字“么”确定发音元素“me”。

然后,服务器可以确定不同发音元素分别对应的出现率。需要说明的是,本实施例提供了多种确定发音元素对应的出现率的方式。例如,在确定该语料集合中所包括字符对应的发音元素的出现率的过程中,可以考虑发音元素对应的声调,也可以不考虑发音元素对应的声调。即为,可以将发音结构相同但声调不同的发音元素作为同一个发音元素,或者,可以将发音结构相同且声调相同的发音元素作为同一个发音元素。接下来,将针对上述两种方式进行介绍。

第一种方式:在确定该语料集合中所包括字符对应的发音元素的出现率的过程中,可以将发音结构相同但声调不同的发音元素作为同一个发音元素。

在本方式中,获取到待筛选的语料集合后,在确定该语料集合中样本所包括字符对应的发音元素的出现率的过程中,可以将发音结构相同但声调不同的发音元素作为同一个发音元素。例如,假设语音样本中包括汉字“泥”对应的语音和汉字“逆”对应的语音,其中,汉字“泥”所对应的语音的发音元素为第二声调下的发音结构“ni”,汉字“逆”所对应的语音的发音元素为第四声调下的发音结构“ni”;可见,虽然汉字“泥”所对应的语音的发音元素的声调与汉字“逆”所对应的语音的发音元素的声调不同,但是汉字“泥”所对应的语音的发音元素的发音结构与汉字“逆”所对应的语音的发音元素的发音结构是相同的,。因此,可以将汉字“泥”所对应的语音的发音元素与汉字“逆”所对应的语音的发音元素作为同一个发音元素。

也就是说,在本方式中,在确定该语料集合中所包括字符对应的发音元素的出现率的过程中,可以将同一发音结构在不同声调下的出现率之和作为该发音结构对应发音元素的出现率。在这种情况下,以汉语为例进行说明,每个发音元素的出现率可以包括该发音元素对应发音结构在多种声调下的发音形态的出现率之和。

举例来说,假设语料集合中所包括字符对应的发音元素总共出现100次,且语料集合中的一个语音样本为“弟弟,你可以逆风翻盘的”对应的语音;那么,可以统计得到在该语音样本中,第四声调下的发音结构“di”的出现次数为2次,第三声调下的发音结构“ni”的出现次数为1次,第四声调下的发音结构“ni”的出现次数为1次;由于第三声调下的发音结构“ni”和第四声调下的发音结构“ni”为同一发音元素,因此,可以将第三声调下的发音结构“ni”和第四声调下的发音结构“ni”作为同一个发音元素“f[ni]”,故在该语音样本中,该发音元素f[ni]的出现次数为2次;另外,由于第三声调下的发音结构“ni”在该语料集合中的出现次数总共为10次(即在该语料集合中的出现率为10%),第四声调下的发音结构“ni”在该语料集合中的出现次数总共为10次(即在该语料集合中的出现率为10%),故而可以将第三声调下的发音结构“ni”的出现率和第四声调下的发音结构“ni”的出现率之和作为该发音元素f[ni]的出现率,从而可以确定该发音元素f[ni]在该预料集合中的出现率为20%。

可以理解的是,在本方式中,由于在确定该语料集合中所包括字符对应的发音元素的出现率的过程中,可以将发音结构相同但声调不同的发音元素作为同一个发音元素,即仅需要关心用户语音中非关键词对应的发音元素的发音结构,而并不需要关心非关键词对应发音元素的声调。因此,在非关键词模型中针对非关键词建立非关键词解码路径时,非关键词解码路径中仅需要建立与非关键词对应的发音元素的结构相关的节点即可,而不需要建立与非关键词对应的发音元素的声调相关的节点,这样,不同音调下的同一发音结构对应的发音元素通过该发音元素对应的非关键词解码路径,均可以得到相同的匹配值。可见,本方式在命中非关键词对应的语音过程中,需要考虑非关键词对应的发音元素,可以较为准确的命中非关键词对应的语音,并且,由于非关键词解码路径中仅包括与非关键词对应的发音元素相关的节点,而并不包括与非关键词对应的声调相关的节点,因此,可以减少检索出关键词的计算量。

第二种方式:在确定该语料集合中所包括字符对应的发音元素的出现率的过程中,可以将发音结构相同且声调相同的发音元素作为同一个发音元素。

在本方式中,获取到待筛选的语料集合后,在确定该语料集合中样本所包括字符对应的发音元素的出现率的过程中,可以将发音结构相同且声调相同的发音元素作为同一个发音元素。例如,假设文本样本中包括汉字“徐”和汉字“许”,虽然汉字“徐”对应的发音元素的发音结构与汉字“许”对应的发音元素的发音结构相同,但二者分别对应的声调不同,因此,可以将汉字“徐”对应的发音元素与汉字“许”对应的发音元素分别作为两个不同的发音元素。

也就是说,在本方式中,在确定该语料集合中文本样本所包括字符对应的发音元素的出现率的过程中,可以将同一发音结构在不同声调下的出现率分别作为不同发音元素的出现率。在这种情况下,以汉语为例进行说明,每个发音元素的出现率仅包括该发音元素对应发音结构在一种声调下的发音形态的出现率。

举例来说,假设语料集合中所包括字符对应的发音元素总共出现100次,且语料集合中的一个文本样本包括“弟弟,你可以逆风翻盘的”等多个汉字。那么,可以统计得到在该文本样本中,第四声调下的发音结构“di”的出现次数为2次,第三声调下的发音结构“ni”的出现次数为1次,第四声调下的发音结构“ni”的出现次数为1次;由于第三声调下的发音结构“ni”和第四声调下的发音结构“ni”为发音结构相同但声调不同的发音元素。因此,可以将第三声调下的发音结构“ni”和第四声调下的发音结构“ni”分别作为不同发音元素,故而在该语音样本中,发音元素“f[ni,三声]”的出现次数为1次,发音元素“f[ni,四声]”的出现次数为1次;另外,由于发音元素“f[ni,三声]”在该语料集合中的出现次数总共为10次,发音元素“f[ni,四声]”在该语料集合中的出现次数总共为10次,故而,可以确定发音元素“f[ni,三声]”在该语料集合中的出现率为10%,以及,发音元素“f[ni,四声]”在该语料集合中的出现率为10%。

可以理解的是,在本方式中,由于在确定该语料集合中所包括字符对应的发音元素的出现率的过程中,可以将发音结构相同且声调相同的发音元素作为同一个发音元素,即不仅需要关心用户语音中非关键词对应发音元素的发音结构,还需要关心非关键词对应发音元素的声调。因此,在非关键词模型中针对非关键词建立非关键词解码路径时,非关键词解码路径中不仅需要包括与非关键词对应发音元素的发音结构相关的节点,还需要包括与非关键词对应发音元素的声调相关的节点,这样,不同音调下的同一个发音结构对应的发音元素通过该非关键词解码路径,可以得到不相同的匹配值。可见,本方式与第一种方式相比较,在命中非关键词对应的语音过程中,需要同时考虑非关键词对应发音元素的结构和声调,提高了命中非关键词对应的语音的准确性,但是由于非关键词解码路径中包括了分别与非关键词对应发音元素的发音结构和声调相关的节点,因此,检索出关键词的计算量有所增加。

在介绍完本实施例提供的多种确定发音元素对应的出现率的方式后,需要说明的是,在本实施例中,确定发音元素对应的出现率的方式不同,检索出用户语音中关键词的方式也不同。在一种可能的实现方式中,若在确定语料集合中所包括字符对应的发音元素的出现率的过程中,将发音结构相同但声调不同的发音元素作为同一个发音元素,那么,在检索用户语音中的关键词对应的语音时,可以将包括了关键词对应的发音元素的语音作为关键词对应的语音,即仅需要关心用户语音中关键词对应的发音元素的结构即可,而不需要关心关键词对应发音元素的声调。在另一种可能的实现方式中,若在确定语料集合中所包括字符对应的发音元素的出现率的过程中,将发音结构相同且声调相同的发音元素作为同一个发音元素,那么,在检索用户语音中的关键词对应的语音时,可以将包括了关键词对应的发音元素的结构和声调的语音作为关键词对应的语音,即不仅需要关心用户语音中关键词对应的发音元素的结构,还需要关心关键词对应发音元素的声调。

s203:将出现率满足预设阈值的发音元素构成非关键词集合。

在确定出语料集合中所包括字符对应的发音元素的出现率后,可以通过预设阈值从语料集合中所包括字符对应的发音元素中确定出非关键词。需要说明的是,若发音元素的出现率大于或等于预设阈值,说明该发音元素属于较为容易出现在用户语音中的发音元素,反之,说明该发音元素不属于较为容易出现在用户语音中的发音元素。故此,在本实施例中,可以将出现率满足预设阈值的发音元素确定为非关键词,并且,可以将这些确定为非关键词的发音元素构成非关键词集合。

需要说明的是,在本实施例中,预设阈值可以是根据非关键词集合中非关键词的预设数量确定的。其中,非关键词集合中非关键词的预设数量可以根据kws的检索速度要求和检索准确性要求确定,可以理解的是,若kws的检索速度要求越快,则非关键词集合中非关键词的预设数量越少,反之,则非关键词集合中非关键词的预设数量越多;若kws的检索准确性要求越高,则非关键词集合中非关键词的预设数量越多,反之,则非关键词集合中非关键词的预设数量越少;在实际使用过程中,非关键词集合中非关键词的预设数量通常可以设置为60-100个。

接下来,将介绍如何根据非关键词集合中非关键词的预设数量确定预设阈值。在一种实现方式中,可以先根据发音元素的出现率,将语料集合中所包括字符对应的发音元素进行排序,例如,可以按照发音元素的出现率由高到低的顺序,对语料集合中所包括字符对应的发音元素进行排序;然后,可以根据非关键词集合中非关键词的预设数量n(n为正整数),确定出排序结果中出现率较高的前n个发音元素;接着,可以确定这n个发音元素中出现率最低的发音元素,并且可以将该出现率最低的发音元素的出现率作为预设阈值。

由于待检索语音中除了用户语音之外,通常还会包括一些噪音,例如汽车行驶的声音“嗖”、煤气燃烧的声音“嘶”。为了使得非关键词模型除了能够命中用户语音中非关键词对应的语音,还能够命中噪声中非关键词对应的语音,从而提高检索出关键词的准确性和成功性。在本实施例的一种实现方式中,非关键词集合中还可以包括拟声词对应的发音元素,例如拟声词可以包括“啊”、“吧”、“噗”、“嘶”、“嗖”等。

s204:根据所述非关键词集合构建解码网络中的非关键词模型。

在确定出非关键词集合后,可以根据该非关键词集合中的非关键词,构建解码网络中的非关键词模型,从而可以利用该非关键词模型命中待检索语音中非关键词对应的语音。

由上述技术方案可以看出,在建立解码网络中非关键词模型之前,可以从待筛选的语料集合中筛选出所需的非关键词。筛选的方式基于发音元素,由于发音元素是根据语音的自然属性划分出的语音单位,更关注于字符的读音,而不用考虑发音元素对应的字符的具体含义,故基于发音元素筛选非关键词更符合关键词检索的需求。故在确定出该语料集合中所包括字符对应发音元素的出现率后,可以将出现率满足预设阈值的发音元素构成非关键词集合,通过该预设阈值可以将出现率较高的发音元素确定为非关键词,相对于语料集合中包括的发音元素,非关键词集合中发音元素的数量不仅较少,而且属于较为容易出现在用户语音中的发音元素,故非关键词集合中的发音元素属于应用于关键词检索中的高质量发音元素,通过该非关键词集合构建出的非关键词模型不仅容量较小,能够缓解设备的本地存储压力,而且作为非关键词模型更容易命中用户语音中非关键词对应的语音,起到了提高检索出关键词的准确性和成功率的作用。

需要说明的是,当待检测语音中包括关键词时,有可能会出现该待检测语音通过非关键词模型中一条非关键词解码路径得到的匹配值,高于该待检测语音通过关键词模型得到的匹配值,这样,便会导致将该待检索语音错误地确定为不包括关键词。故此,为了减少非关键词模型错误命中待检索语音中关键词对应的语音的概率,从而提高解码网络从待检索语音中检索出关键词的准确性和成功性。在本实施例的一种实现方式中,在图2对应的实施例的基础上,所述方法还可以包括:在非关键词模型中建立虚拟解码路径,待检索语音通过所述虚拟解码路径得到匹配值。

在本实施例中,可以在非关键词模型中建立虚拟解码路径,其中,虚拟解码路径并不对应任何具体的字符或者发音元素。并且,待检索语音通过非关键词模型中的虚拟解码路径可以得到匹配值。需要说明的是,该匹配值可以是根据该待检索语音通过该非关键词模型中的非关键词解码路径所得到的匹配值确定的。

接下来,将具体介绍如何根据待检索语音通过该非关键词模型中的非关键词解码路径所得到的匹配值,确定该待检索语音通过该非关键词模型中的虚拟解码路径所得到的匹配值。

具体地,可以先获取待检索语音通过各条非关键词解码路径分别得到的匹配值。然后,可以根据该待检索语音通过各条非关键词解码路径分别得到的匹配值,确定该待检索语音通过虚拟解码路径所得到的匹配值;例如,可以将该待检索语音通过各条非关键词解码路径分别得到的匹配值的平均值,作为该待检索语音通过虚拟解码路径所得到的匹配值,或者,可以将该平均值与预设系数的计算结果(比如乘积)作为该待检索语音通过虚拟解码路径所得到的匹配值;又例如,可以将该待检索语音通过各条非关键词解码路径分别得到的匹配值中的最大值或最小值,作为该待检索语音通过虚拟解码路径所得到的匹配值,或者,可以将该最大值或该最小值与预设系数的计算结果(比如乘积)作为该待检索语音通过虚拟解码路径所得到的匹配值。

需要说明的是,若待检索语音通过该关键词模型所得到的匹配值,高于该待检索语音通过非关键词模型中任一非关键词解码路径所得到的匹配值,且高于该待检索语音通过该非关键词模型中虚拟解码路径所得到的匹配值,则可以确定该待检索语音包括关键词对应的发音元素。反之,若待检索语音通过该关键词模型所得到的匹配值,低于或等于该待检索语音通过非关键词模型中任一非关键词解码路径所得到的匹配值,或者低于或等于该待检索语音通过该非关键词模型中虚拟解码路径所得到的匹配值,则可以确定该待检索语音包括非关键词集合中的关键词。

由上述技术方案可以看出,由于非关键词模型中还包括了虚拟解码路径,并且,待检索语音通过非关键词模型中的虚拟解码路径可以得到匹配值。由于待检索语音通过非关键词模型中的虚拟解码路径所得到的匹配值,是根据该待检索语音通过该非关键词模型中的非关键词解码路径所得到的匹配值确定的。故待检索语音通过虚拟解码路径所得到的匹配值可以在对待检索语音检索关键词的过程中随时改变,并且该匹配值属于待检索语音与非关键词之间较优的匹配值。因此,非关键词模型也能够根据待检索语音通过虚拟解码路径所得到的匹配值,较大概率的命中非关键词集合中非关键词对应的语音,从而能够减少非关键词模型根据非关键词解码路径得到的匹配值,错误命中待检索语音中关键词对应的语音的概率,从而提高解码网络从待检索语音中检索出关键词的准确性和成功性。

参见图3,示出了本申请实施例中一种解码网络中非关键词模型的构建装置,所述装置包括:集合获取单元301、出现率确定单元302、集合构建单元303和模型构建单元304;

所述集合获取单元301,用于获取待筛选的语料集合;

所述出现率确定单元302,用于确定所述语料集合中所包括字符对应的发音元素的出现率;

所述集合构建单元303,用于将出现率满足预设阈值的发音元素构成非关键词集合,所述非关键词集合中发音元素的数量小于所述语料集合中所具有发音元素的数量,且所述非关键词集合中发音元素不包括关键词对应的发音元素;

所述模型构建单元304,用于根据所述非关键词集合构建解码网络中的非关键词模型。

可选的,所述语料集合包括多条语音样本,其中,任一语音样本包括至少一个字符对应的语音;

和/或,

所述语料集合包括多条文本样本,其中,任一文本样本包括至少一个字符。

可选的,在确定所述语料集合中所包括字符对应的发音元素的出现率的过程中,将发音元素相同但声调不同的发音元素作为同一个发音元素,或者,将发音元素相同且声调相同的发音元素作为同一个发音元素。

可选的,所述装置还包括:

在所述非关键词模型中建立虚拟解码路径,待检索语音通过所述虚拟解码路径得到匹配值;所述匹配值是根据所述待检索语音通过所述非关键词模型中的非关键词解码路径所得到的匹配值确定的。

可选的,所述待检索语音通过所述虚拟解码路径所得到的匹配值包括以下任意一种:

所述待检索语音通过所述非关键词模型中的非关键词解码路径所得到匹配值的平均值;

所述待检索语音通过所述非关键词模型中的非关键词解码路径所得到匹配值中的最大值或最小值;

所述平均值、最大值或最小值与预设系数的计算结果。

可选的,所述解码网络中还包括关键词模型,若所述待检索语音通过所述关键词模型所得到的匹配值,高于所述待检索语音通过任一非关键词解码路径所得到的匹配值,且高于所述虚拟解码路径所得到的匹配值,则确定所述待检索语音包括所述关键词对应的发音元素。

可选的,所述非关键词集合还包括拟声词对应的发音元素。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

图4是根据一示例性实施例示出的一种解码网络中非关键词模型的构建装置400的框图。例如,装置400可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。

参照图4,装置400可以包括以下一个或多个组件:处理组件402,存储器404,电源组件406,多媒体组件408,音频组件410,输入/输出(i/o)的接口412,传感器组件414,以及通信组件416。

处理组件402通常控制装置400的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理元件402可以包括一个或多个处理器420来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件402可以包括一个或多个模块,便于处理组件402和其他组件之间的交互。例如,处理部件402可以包括多媒体模块,以方便多媒体组件408和处理组件402之间的交互。

存储器404被配置为存储各种类型的数据以支持在设备400的操作。这些数据的示例包括用于在装置400上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器404可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。

电源组件406为装置400的各种组件提供电力。电源组件406可以包括电源管理系统,一个或多个电源,及其他与为装置400生成、管理和分配电力相关联的组件。

多媒体组件408包括在所述装置400和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(lcd)和触摸面板(tp)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件408包括一个前置摄像头和/或后置摄像头。当设备400处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。

音频组件410被配置为输出和/或输入音频信号。例如,音频组件410包括一个麦克风(mic),当装置400处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器404或经由通信组件416发送。在一些实施例中,音频组件410还包括一个扬声器,用于输出音频信号。

i/o接口412为处理组件402和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。

传感器组件414包括一个或多个传感器,用于为装置400提供各个方面的状态评估。例如,传感器组件414可以检测到设备400的打开/关闭状态,组件的相对定位,例如所述组件为装置400的显示器和小键盘,传感器组件414还可以检测装置400或装置400一个组件的位置改变,用户与装置400接触的存在或不存在,装置400方位或加速/减速和装置400的温度变化。传感器组件414可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件414还可以包括光传感器,如cmos或ccd图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件414还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。

通信组件416被配置为便于装置400和其他设备之间有线或无线方式的通信。装置400可以接入基于通信标准的无线网络,如wifi,2g或3g,或它们的组合。在一个示例性实施例中,通信部件416经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信部件416还包括近场通信(nfc)模块,以促进短程通信。例如,在nfc模块可基于射频识别(rfid)技术,红外数据协会(irda)技术,超宽带(uwb)技术,蓝牙(bt)技术和其他技术来实现。

在示例性实施例中,装置400可以被一个或多个应用专用集成电路(asic)、数字信号处理器(dsp)、数字信号处理设备(dspd)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。

图5是本发明实施例中服务器的结构示意图。该服务器500可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(centralprocessingunits,cpu)522(例如,一个或一个以上处理器)和存储器532,一个或一个以上存储应用程序542或数据544的存储介质530(例如一个或一个以上海量存储设备)。其中,存储器532和存储介质530可以是短暂存储或持久存储。存储在存储介质530的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器522可以设置为与存储介质530通信,在服务器500上执行存储介质530中的一系列指令操作。

服务器500还可以包括一个或一个以上电源526,一个或一个以上有线或无线网络接口550,一个或一个以上输入输出接口558,一个或一个以上键盘556,和/或,一个或一个以上操作系统541,例如windowsservertm,macosxtm,unixtm,linuxtm,freebsdtm等等。

在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器404,上述指令可由装置400的处理器420执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。

一种非临时性计算机可读存储介质,当所述存储介质中的指令由移动终端的处理器执行时,使得移动终端能够执行一种解码网络中非关键词模型的构建方法,所述方法包括:

获取待筛选的语料集合;

确定所述语料集合中所包括字符对应的发音元素的出现率;

将出现率满足预设阈值的发音元素构成非关键词集合,所述非关键词集合中发音元素的数量小于所述语料集合中所具有发音元素的数量,且所述非关键词集合中发音元素不包括关键词对应的发音元素;

根据所述非关键词集合构建解码网络中的非关键词模型。

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质可以是下述介质中的至少一种:只读存储器(英文:read-onlymemory,缩写:rom)、ram、磁碟或者光盘等各种可以存储程序代码的介质。

需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备及系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的设备及系统实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

以上所述,仅为本申请的一种具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。

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