CN110910885A - 基于解码网络的语音唤醒方法和装置 - Google Patents
基于解码网络的语音唤醒方法和装置 Download PDFInfo
- Publication number
- CN110910885A CN110910885A CN201911274892.3A CN201911274892A CN110910885A CN 110910885 A CN110910885 A CN 110910885A CN 201911274892 A CN201911274892 A CN 201911274892A CN 110910885 A CN110910885 A CN 110910885A
- Authority
- CN
- China
- Prior art keywords
- decoding
- modeling unit
- result
- decoding network
- nbest
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 63
- 238000009499 grossing Methods 0.000 claims abstract description 29
- 238000012545 processing Methods 0.000 claims abstract description 23
- 238000004590 computer program Methods 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 238000013459 approach Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000006872 improvement Effects 0.000 description 3
- 238000010295 mobile communication Methods 0.000 description 3
- 235000003140 Panax quinquefolius Nutrition 0.000 description 2
- 240000005373 Panax quinquefolius Species 0.000 description 2
- 230000002618 waking effect Effects 0.000 description 2
- 101100004286 Caenorhabditis elegans best-5 gene Proteins 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 239000000945 filler Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/008—Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
- G10L2015/223—Execution procedure of a spoken command
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
- G10L2015/225—Feedback of the input speech
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Mathematical Physics (AREA)
- Quality & Reliability (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明公开基于解码网络的语音唤醒方法和装置,其中,一种基于解码网络的语音唤醒方法,包括:获取构建的解码网络中的多条解码路径,其中,所述解码路径中包含至少一个建模单元;基于各解码路径获取各解码路径中的各建模单元的边界;获取并计算待检测语音的每一时间帧语音的声学后验概率,将声学后验概率作为解码网络的输入;利用各建模单元的边界对每一时间帧语音的声学后验概率进行平滑处理;获取经过平滑处理后解码网络输出的解码结果。本申请的方法和装置提供的方案可以利用解码路径得到各建模单元的边界,根据建模单元边界对后验进行平滑,计算出的更加精确的置信度,从而提升唤醒精度。
Description
技术领域
本发明属于语音唤醒技术领域,尤其涉及基于解码网络的语音唤醒方法和装置。
背景技术
目前市面上的大部分产品用的语音唤醒都是基于Kws(Keyword Search,关键字检测)唤醒,很少有基于解码的方式。当前解决唤醒率的方式,还是主要基于提升声学模型的鲁棒性上。
Kws唤醒是基于深度模型计算出的声学后验,对唤醒词中的各个字按照固定时长进行加窗平滑后计算整个词的confidence(置信度),当confidence超过一定阈值时,执行唤醒。
发明人在实现本申请的过程中发现,上述方案至少存在以下缺陷:
基于固定时长的平滑窗,导致语速会对confidence造成很大影响。比如在快语速时,窗长范围内包含了一个以上的拼音,这样平滑出来的拼音后验在计算confidence时会产生很大误差,从而形成误判。
发明内容
本发明实施例提供一种基于解码网络的语音唤醒方法和装置,用于至少解决上述技术问题之一。
第一方面,本发明实施例提供一种基于解码网络的语音唤醒方法,包括:获取构建的解码网络中的多条解码路径,其中,所述解码路径中包含至少一个建模单元;基于各解码路径获取各解码路径中的各建模单元的边界;获取并计算待检测语音的每一时间帧语音的声学后验概率,将所述声学后验概率作为所述解码网络的输入;利用各建模单元的边界对所述每一时间帧语音的声学后验概率进行平滑处理;以及获取经过平滑处理后所述解码网络输出的解码结果。
第二方面,本发明实施例提供一种基于解码网络的语音唤醒装置,用于用户终端,包括:解码路径获取模块,配置为获取构建的解码网络中的多条解码路径,其中,所述解码路径中包含至少一个建模单元;建模单元边界获取模块,配置为基于各解码路径获取各解码路径中的各建模单元的边界;声学后验计算模块,配置为获取并计算待检测语音的每一时间帧语音的声学后验概率,将所述声学后验概率作为所述解码网络的输入;平滑处理模块,配置为利用各建模单元的边界对所述每一时间帧语音的声学后验概率进行平滑处理;以及解码结果输出模块,配置为获取经过平滑处理后所述解码网络输出的解码结果。
第三方面,提供一种电子设备,其包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例的基于解码网络的语音唤醒方法的步骤。
第四方面,本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行本发明任一实施例的基于解码网络的语音唤醒方法的步骤。
本申请的方法和装置提供的方案通过构建解码网络,使用声学后验作为解码网络的输入,利用解码路径得到各建模单元的边界,根据建模单元边界对后验进行平滑,之后可以计算出的更加精确的confidence,从而可以提升唤醒精度。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一实施例提供的一种基于解码网络的语音唤醒方法的流程图;
图2为本发明一实施例提供的另一种基于解码网络的语音唤醒方法的流程图;
图3为本发明一实施例提供的又一种基于解码网络的语音唤醒方法的流程图;
图4为本发明一实施例提供的再一种基于解码网络的语音唤醒方法的流程图;
图5为本发明一实施例提供的一种基于解码网络的语音唤醒方法的一个具体示例的流程图;
图6为本发明一实施例提供的一种基于解码网络的语音唤醒方法的一个构建的解码网络的示例图;
图7为本发明一实施例提供的一种基于解码网络的语音唤醒装置的框图;
图8是本发明一实施例提供的电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,其示出了本申请的基于解码网络的语音唤醒方法一实施例的流程图,本实施例的基于解码网络的语音唤醒方法可以适用于具备语音唤醒能力的终端、如智能语音电视、智能音箱、智能对话玩具以及其他现有的具备语音唤醒能力的智能终端等。
如图1所示,在步骤101中,响应于唤醒词构建的解码网络,获取所述解码网络中的多条解码路径;
在步骤102中,基于各解码路径获取各解码路径中的各建模单元的边界;
在步骤103中,获取并计算待检测语音的每一时间帧语音的声学后验概率,将声学后验概率作为解码网络的输入;
在步骤104中,利用各建模单元的边界对每一时间帧语音的声学后验概率进行平滑处理;
在步骤105中,获取经过平滑处理后解码网络输出的解码结果。
在本实施例中,对于步骤101,基于解码网络的语音唤醒装置唤醒词构建的解码网络,获取解码网络中的多条解码路径,其中,解码路径中包含至少一个建模单元。例如,对于空调的一些唤醒操作,也可以构建一个解码网络,该解码网络中例如包括以下多条解码路径,“da,kai,kong,tiao”、“da,kai,sheng,yin”、“da,kai,shang,wu,feng,gan”等。以上构建解码网络的方式比较现有,在此不再赘述。本申请的方案主要是将构建好的解码网络输入至本申请的基于解码网络的语音唤醒装置中,再获取该解码网络中的多条解码路径,以进行后续处理。
在一些可选的实施例中,解码网络例如是wfst(weighted finaite-statetransducer,加权有限状态转换器)解码网络。
之后,对于步骤102,基于解码网络的语音唤醒装置基于各解码路径获取各解码路径中的各建模单元的边界。其中,建模单元可以指音素、音节或者汉字之类的东西。例如,在“da,kai,kong,tiao”中,“da”可以是一个建模单元,“kai”可以是一个建模单元,以此类推,在此不再赘述。或者,在另一种实现中,在“da”中,“d”可以是一个建模单元,“a”也可以是一个建模单元,以此类推,在此不再赘述。
然后,对于步骤103,基于解码网络的语音唤醒装置获取并计算待检测语音的每一时间帧语音的声学后验概率,将声学后验概率作为解码网络的输入。接收到用户的待检测语音之后,会计算该待检测语音的每一时间帧语音的声学后验概率,然后将该声学后验概率作为解码网络的输入。其中每一时间帧可以是开发者定义的一个时间单元,并不一定与用户说一个汉字或一个音节的时间对应,所以可能会存在多个时间帧在同一个汉字或者音节上自环的现象,本申请在此没有限制。
之后,对于步骤104,基于解码网络的语音唤醒装置利用各建模单元的边界对每一时间帧语音的声学后验概率进行平滑处理,从而可以使得对各建模单元的边界的计算更加准确。其中,建模单元的边界可以是指建模单元的首尾。其中,这个***是利用声学进行解码的,通过解码路径确认每个建模单元的边界,如果可以确认边界对后续的声纹准确率的提升会有重大意义。
最后,对于步骤105,基于解码网络的语音唤醒装置获取经过平滑处理后解码网络输出的解码结果。因为经过了前面的对于建模单元边界的平滑处理,所以最后输出的解码结果更加准确。
在本实施例中,通过获取解码网络的解码路径,然后再获取各解码路径中各建模单元的边界,接收到用户的待检测语音之后,将每一时间帧语音的声学后验概率作为该解码网络的输入,利用各建模单元的边界对声学后验概率进行平滑处理,从而使得最后解码结果更加准确,对后续的声纹准确率的提升会有重大意义。
进一步参考图2,其示出了本申请提供的一种基于解码网络的语音唤醒方法另一实施例的流程图。该流程图主要是针对流程图1中步骤105“获取经过平滑处理后解码网络输出的解码结果”之后的步骤进一步限定的步骤的流程图。
如图2所示,在步骤201中,取解码结果中的nbest结果;
在步骤202中,判断nbest结果是否为空;
在步骤203中,若nbest结果不为空,分别基于nbest结果的顺序判断某一nbest结果是否包含唤醒词,并分别计算某一nbest结果的置信度;
在步骤204中,当且仅当某一nbest结果中包含唤醒词以及某一nbest结果的置信度大于预设唤醒阈值时,执行唤醒操作。
在本实施例中,对于步骤201,基于解码网络的语音唤醒装置获取解码网络输出的解码结果中的nbest结果,例如解码网络输出了10个结果,可以只取其中最好的5个结果。之后,对于步骤202,判断该nbest结果是否为空,当然,也可以在取nbest结果之前进行判空操作,这样,如果为空,就不用再进行取nbest结果的操作,本申请在此没有限制。然后,对于步骤203,若nbest结果不为空,则可以分别基于该nbest结果的顺序判断每一个nbest结果中是否包括预设唤醒词,并分别计算每一个nbest结果的置信度。最后,对于步骤204,当且仅当存在某一nbest结果中包含唤醒词并且该某一nbest结果的置信度大于预设唤醒词对应的唤醒阈值时,才可以执行唤醒操作。
本实施例的方法通过对解码结果进行判空之后如果不为空再判断解码结果中是否包括唤醒词以及最后计算的置信度是否大于预设唤醒阈值,当且仅当解码结果中即包含预设唤醒词并且计算的置信度也大于预设唤醒阈值的时候,才可以唤醒设备,当然,如果存在多个解码结果中包含预设唤醒词以及计算的置信度也大于预设唤醒阈值的时候,可以取其中概率最大的一个结果即可,本身请在此没有限制。
在一些可选的实施例中,在判断nbest结果是否为空之后,上述方法还包括:若nbest结果为空,不执行唤醒操作。
在一些可选的实施例中,上述方法还包括:若某一nbest结果不包含唤醒词和/或某一nbest结果的置信度小于等于预设唤醒阈值时,不执行唤醒操作。从而对于不包含唤醒词或者置信度小于等于预设唤醒阈值时,不执行唤醒操作。
在另一些可选的实施例中,构建解码网络包括:使用唤醒词和filler构建wfst解码网络,其中wfst解码网络中包括对应存储有多个状态的数据信息的建模单元,各建模单元之间通过边连接,边上存储有解码网络的输入,解码网络的输入包括之前提到的每一时间帧语音的声学后验概率。从而在构建唤醒词对应的wfst解码网络时,采用filler可以过滤一些和唤醒词无关的噪声,使得解码结果更加准确。
请参考图3,其示出了本申请提供的又一种基于解码网络的语音唤醒方法的实施例的流程图。本实施例的流程图主要是针对流程图图1中步骤104“利用各建模单元的边界对每一时间帧语音的声学后验概率进行平滑处理“进一步限定的步骤的流程图。
如图3所示,在步骤301中,遍历当前所有建模单元以及所有与当前建模单元临接的边;
在步骤302中,若临接的边的输入为0或者是filler时,生成与当前建模单元临接的新的建模单元,并将当前建模单元上的数据信息拷贝至新的建模单元上,数据信息包括分数。
在本实施例中,对于步骤301,基于解码网络的语音唤醒装置遍历当前所有建模单元,若建模单元的数量不为0,遍历所有与当前建模单元临接的边。之后,对于步骤302,若临接的边的输入为0或者是filler时,生成与当前建模单元临接的新的建模单元,并将当前建模单元上的数据信息拷贝至新的建模单元上,数据信息包括分数。其中,输入为0或者是filler时说明用户可能没有说话或者噪声过大只录进了噪声。
本实施例的方法通过遍历建模单元,然后通过与建模单元临接的边上存储的数据是否为0或者filler来判断是否存在有效数据,如果不存在要扩展出新的建模单元来存储数据并接收后续的输入,输入中包括待检测语音的某一时间帧语音的声学后验概率,从而不断地对用户的待检测语音数进行解码。
需要说明的是,与构建的解码网络中的建模单元不同的是,本实施例以及之后的实施例中的建模单元其实是动态变化的,数据不断更新的建模单元,可以称之为Token,是一种用于在解码过程中记录解码信息的数据结构。后续不再赘述。
进一步参考图4,其示出了本申请提供的再一种基于解码网络的语音唤醒方法的实施例的流程图。本实施例的流程图主要是针对流程图图3中步骤301中“遍历所有与当前建模单元临接的边”之后的附加步骤进一步限定的步骤的流程图。
如图4所示,在步骤401中,若临接的边的输入不为0且不为filler时,判断临接的边是否为自环;
在步骤402中,若是自环,基于第一预设方式更新当前建模单元的分数;
在步骤403中,若不是自环,基于第二预设方式更新当前建模单元的分数;
在步骤404中,基于解码网络输出的各解码路径上的各建模单元的分数计算各解码路径的最后得分。
在本实施例中,对于步骤401,基于解码网络的语音唤醒装置在判断临接的边的输入是否为0或filler时,若临接的边的输入不为0且不为filler时,判断该临接的边是否为自环,即声学后验概率的最大值是否一直停留在某一个音节、音素或者汉字上,如果一直停留说明是自环。之后,对于步骤402,若是自环,基于第一预设方式更新当前建模单元的分数。对于自环的情况,可以根据与自环相关的处理方式更新当前建模单元的分数,该方式可以是业内已有的方式也可以是未来开发的新的处理方式,本申请在此不做具体限制。然后,对于步骤403,若不是自环,基于第二预设方式更新当前建模单元的分数。最后,对于步骤404,基于解码网络输出的各解码路径上的各建模单元的分数计算各解码路径的最后得分。
本实施例的方法通过在判断临接的边的输入不为0且不为filler后,再判断是否自环,并根据是否自环采用不同的处理方式进行对声学后验的平滑处理,从而可以使得处理的结果更加具有针对性,更加精准。
下面对通过描述发明人在实现本发明的过程中遇到的一些问题和对最终确定的方案的一个具体实施例进行说明,以使本领域技术人员更好地理解本申请的方案。
发明人对现有技术进行仔细研究后发现,现有技术方案的缺陷主要是由于以下原因导致的:
基于固定时长的平滑窗,导致语速会对confidence造成很大影响。比如在快语速时,窗长范围内包含了一个以上的拼音,这样平滑出来的拼音后验在计算confidence时会产生很大误差,从而形成误判。
当前语音唤醒还是采用kws的方式,很少有基于解码的方式。当前解决唤醒率的方式,还是主要基于提升声学模型的鲁棒性上。
本申请的方案提出了一种基于解码网络的语音唤醒方案。
使用唤醒词和filler构建wfst(weighted finaite-state transducer,加权有限状态转换器)解码网络,使用声学后验作为解码器的输入。利用解码路径得到各建模单元的边界,根据建模单元边界对后验进行平滑,计算出的更加精确的confidence,从而提升唤醒精度。
请参考图5,其示出了本申请的方案的一个具体实施例的流程图,需要说明的是以下实施例中虽然提到了一些具体的例子,但并不用于限制本申请的方案。
如图5所示,详细的步骤如下:
struct wakeup_arc{
int ilabel;
int olabel;
float weight;
wakeup_fst_state_t*to_state;
struct wakeup_arc*next;
};
1、遍历当前所有token;
2、遍历token所有临接的arc;
1)arc的输入(ilabel)是0或者是filler时,在to_state上生成新的token并将当前state上的score相关信息原样拷贝过来;
2)arc的输入(ilabel)非0,非filler且是自环时,更新token的score
该节点前一帧的后验均值prior=char_post_sum/nframes
该节点最新的后验和char_post_sum=char_post_sum+post[ilabel]
自环的帧数nframes++
新得分score=score/prior*(char_post_sum/nframes)
该帧还是在自环,保存ilabel上一帧的平均得分,继续累加这个字的得分char_post_sum=char_post_sum+post[ilabel],并且该自环次数nframe++,然后重新计算这条路径的得分,先把ilabel上一帧的平均分除去上一帧的平均得分score/prior,再乘上这一帧的平均得分score/prior*(char_post_sum/nframes)
3)arc的输入(ilabel)非0,非filler且不是自环时,更新token的score该节点最新的得分char_post_sum=post[ilabel]
自环的帧数nframes=1
当前解码路径长度nchars++
新得分score=score*(score/nframes)
该帧传递到了一个新的arc,路径长度加1,nchars++,由于是新传递到的arc对应的nframes=1,这个字的得分的均值就是该帧对应ilabel的得分char_post_sum=post[ilabel],然后将前一条arc传递过来的score*当前字得分的均值score*(score/nframes)
3、解码结果取nbest结果,当解码结果与唤醒词一致时,计算confidence=pow(score,1.0/nchars),如果confidence>thresh则唤醒,否则返回step1。
其中,Filler表示用于吸收唤醒词之外的噪声。
Post表示使用深度模型计算出的拼音或者phoneme的后验概率。
Token表示解码过程中用于记录解码信息的结构。
自环表示由于计算声学后验采用的时间帧通常为10ms~20ms,所以每个拼音都会持续若干帧,多帧属于一个拼音就形成了自环。
本实施例的方法通过利用解码路径得到各建模单元的边界,根据建模单元边界对后验进行平滑,能够计算出更加精确的confidence,从而提升唤醒精度。
以下再举一个具体示例,以使得本领域技术人员能够更好地理解本申请的方案。
请参考图6,其示出了本申请一具体施例的解码网络的简化示意图。
如图6所示,其示出了一个wfst解码网络的简化示意图。需要说明的是,为了更好地说明与本申请方案相关的内容,这个网络并没有完全展开,其中weight(权重)值没有。在具体的实现过程中,权重值是需要的,本领域技术人员在了解本申请的方案之后,不需要付出任何创造性劳动就能得到包含权重值的方案,在此不再赘述。
例如,对应于图6中的各个阶段(1对应于下面描述的T1时刻),声学模型的每个时刻的输出如下:
由上述结果可知,在前T1~3个时刻,都是da的概率比较大,那么token就会在da这个位置保持,进行自环,T4~T6时刻,token会passing到kai上,这段时间在kai上自环,同理可知sheng和yin。
通过以上方式可以更精准地确定各建模单元的边界,之后对声学后验概率进行平滑处理,使得最终的解析结果更加准确,从而对后续的声纹准确率的提升也会有重大意义。
请参考图7,其示出了本发明一实施例提供的基于解码网络的语音唤醒装置的框图。
如图7所示,本申请提供的基于解码网络的语音唤醒装置700,包括解码网络构建模块710、建模单元边界获取模块720、声学后验计算模块730、平滑处理模块740和解码结果输出模块750。
其中,解码路径获取模块710,配置为获取构建的解码网络中的多条解码路径,其中,所述解码路径中包含至少一个建模单元;建模单元边界获取模块720,配置为基于各解码路径获取各解码路径中的各建模单元的边界;声学后验计算模块730,配置为获取并计算待检测语音的每一时间帧语音的声学后验概率,将所述声学后验概率作为所述解码网络的输入;平滑处理模块740,配置为利用各建模单元的边界对所述每一时间帧语音的声学后验概率进行平滑处理;以及解码结果输出模块750,配置为获取经过平滑处理后所述解码网络输出的解码结果。
应当理解,图7中记载的诸模块与参考图1、图2、图3和图4中描述的方法中的各个步骤相对应。由此,上文针对方法描述的操作和特征以及相应的技术效果同样适用于图7中的诸模块,在此不再赘述。
值得注意的是,本申请的实施例中的模块并不用于限制本申请的方案,例如模板生成模块可以描述为对每个字对应的语音段分别提取高斯后验特征,并基于每个语音段的高斯后验特征生成整个注册语音的特征模板的模块。另外,还可以通过硬件处理器来实现相关功能模块,例如苏模板生成模块也可以用处理器实现,在此不再赘述。
在另一些实施例中,本发明实施例还提供了一种非易失性计算机存储介质,计算机存储介质存储有计算机可执行指令,该计算机可执行指令可执行上述任意方法实施例中的基于解码网络的语音唤醒方法;
作为一种实施方式,本发明的非易失性计算机存储介质存储有计算机可执行指令,计算机可执行指令设置为:
获取构建的解码网络中的多条解码路径,其中,所述解码路径中包含至少一个建模单元;
基于各解码路径获取各解码路径中的各建模单元的边界;
获取并计算待检测语音的每一时间帧语音的声学后验概率,将所述声学后验概率作为所述解码网络的输入;
利用各建模单元的边界对所述每一时间帧语音的声学后验概率进行平滑处理;
获取经过平滑处理后所述解码网络输出的解码结果。
非易失性计算机可读存储介质可以包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需要的应用程序;存储数据区可存储根据基于解码网络的语音唤醒装置的使用所创建的数据等。此外,非易失性计算机可读存储介质可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,非易失性计算机可读存储介质可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至基于解码网络的语音唤醒装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
本发明实施例还提供一种计算机程序产品,计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,计算机程序包括程序指令,当程序指令被计算机执行时,使计算机执行上述任一项基于解码网络的语音唤醒方法。
图8是本发明实施例提供的电子设备的结构示意图,如图8所示,该设备包括:一个或多个处理器810以及存储器820,图8中以一个处理器810为例。基于解码网络的语音唤醒方法的设备还可以包括:输入装置830和输出装置840。处理器810、存储器820、输入装置830和输出装置840可以通过总线或者其他方式连接,图8中以通过总线连接为例。存储器820为上述的非易失性计算机可读存储介质。处理器810通过运行存储在存储器820中的非易失性软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例基于解码网络的语音唤醒方法。输入装置830可接收输入的数字或字符信息,以及产生与基于解码网络的语音唤醒装置的用户设置以及功能控制有关的键信号输入。输出装置840可包括显示屏等显示设备。
上述产品可执行本发明实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明实施例所提供的方法。
作为一种实施方式,上述电子设备应用于基于解码网络的语音唤醒装置中,包括:
至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够:
获取构建的解码网络中的多条解码路径,其中,所述解码路径中包含至少一个建模单元;
基于各解码路径获取各解码路径中的各建模单元的边界;
获取并计算待检测语音的每一时间帧语音的声学后验概率,将所述声学后验概率作为所述解码网络的输入;
利用各建模单元的边界对所述每一时间帧语音的声学后验概率进行平滑处理;
获取经过平滑处理后所述解码网络输出的解码结果。
本申请实施例的电子设备以多种形式存在,包括但不限于:
(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。
(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。
(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、***总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
(5)其他具有数据交互功能的电子装置。
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种基于解码网络的语音唤醒方法,包括:
获取构建的解码网络中的多条解码路径,其中,所述解码路径中包含至少一个建模单元;
基于各解码路径获取各解码路径中的各建模单元的边界;
获取并计算待检测语音的每一时间帧语音的声学后验概率,将所述声学后验概率作为所述解码网络的输入;
利用各建模单元的边界对所述每一时间帧语音的声学后验概率进行平滑处理;
获取经过平滑处理后所述解码网络输出的解码结果。
2.根据权利要求1所述的方法,其中,所述解码网络基于唤醒词构建,在所述获取经过平滑处理后所述解码网络输出的解码结果之后,所述方法还包括:
取所述解码结果中的nbest结果;
判断nbest结果是否为空;
若nbest结果不为空,分别基于所述nbest结果的顺序判断某一nbest结果是否包含所述唤醒词,并分别计算所述某一nbest结果的置信度;
当且仅当所述某一nbest结果中包含所述唤醒词以及所述某一nbest结果的置信度大于预设唤醒阈值时,执行唤醒操作。
3.根据权利要求2所述的方法,其中,在判断nbest结果是否为空之后,所述方法还包括:
若所述nbest结果为空,不执行唤醒操作。
4.根据权利要求2所述的方法,其中,所述方法还包括:
若所述某一nbest结果不包含所述唤醒词和/或所述某一nbest结果的置信度小于等于所述预设唤醒阈值时,不执行唤醒操作。
5.根据权利要求2-4中任一项所述的方法,其中,构建的解码网络包括采用以下方式构建:
使用唤醒词和filler构建wfst解码网络,其中所述wfst解码网络中包括对应存储有多个状态的数据信息的建模单元,各建模单元之间通过边连接,所述边上存储有所述解码网络的输入。
6.根据权利要求5所述的方法,其中,所述利用各建模单元的边界对所述每一时间帧语音的声学后验概率进行平滑处理包括:
遍历当前所有建模单元,若建模单元的数量不为0,遍历所有与当前建模单元临接的边;
若所述临接的边的输入为0或者是filler时,生成与所述当前建模单元临接的新的建模单元,并将所述当前建模单元上的数据信息拷贝至所述新的建模单元上,所述数据信息包括分数。
7.根据权利要求6所述的方法,其中,所述方法还包括:
若所述临接的边的输入不为0且不为filler时,判断所述临接的边是否为自环;
若是自环,基于第一预设方式更新所述当前建模单元的分数;
若不是自环,基于第二预设方式更新所述当前建模单元的分数;
基于所述解码网络输出的各解码路径上的各建模单元的分数计算所述各解码路径的最后得分。
8.一种基于解码网络的语音唤醒装置,包括:
解码路径获取模块,配置为获取构建的解码网络中的多条解码路径,其中,所述解码路径中包含至少一个建模单元;
建模单元边界获取模块,配置为基于各解码路径获取各解码路径中的各建模单元的边界;
声学后验计算模块,配置为获取并计算待检测语音的每一时间帧语音的声学后验概率,将所述声学后验概率作为所述解码网络的输入;
平滑处理模块,配置为利用各建模单元的边界对所述每一时间帧语音的声学后验概率进行平滑处理;
解码结果输出模块,配置为获取经过平滑处理后所述解码网络输出的解码结果。
9.一种电子设备,其包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至7任一项所述方法的步骤。
10.一种存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现权利要求1至7任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911274892.3A CN110910885B (zh) | 2019-12-12 | 2019-12-12 | 基于解码网络的语音唤醒方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911274892.3A CN110910885B (zh) | 2019-12-12 | 2019-12-12 | 基于解码网络的语音唤醒方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110910885A true CN110910885A (zh) | 2020-03-24 |
CN110910885B CN110910885B (zh) | 2022-05-27 |
Family
ID=69824948
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911274892.3A Active CN110910885B (zh) | 2019-12-12 | 2019-12-12 | 基于解码网络的语音唤醒方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110910885B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111161747A (zh) * | 2020-04-03 | 2020-05-15 | 深圳市友杰智新科技有限公司 | 基于Tensorflow唤醒模型的预测方法、装置和计算机设备 |
CN111640423A (zh) * | 2020-05-29 | 2020-09-08 | 北京声智科技有限公司 | 一种词边界估计方法、装置及电子设备 |
CN112652306A (zh) * | 2020-12-29 | 2021-04-13 | 珠海市杰理科技股份有限公司 | 语音唤醒方法、装置、计算机设备和存储介质 |
CN113327610A (zh) * | 2021-06-30 | 2021-08-31 | 北京有竹居网络技术有限公司 | 一种语音唤醒方法、装置及设备 |
CN113470646A (zh) * | 2021-06-30 | 2021-10-01 | 北京有竹居网络技术有限公司 | 一种语音唤醒方法、装置及设备 |
CN114220444A (zh) * | 2021-10-27 | 2022-03-22 | 安徽讯飞寰语科技有限公司 | 语音解码方法、装置、电子设备和存储介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105632486A (zh) * | 2015-12-23 | 2016-06-01 | 北京奇虎科技有限公司 | 一种智能硬件的语音唤醒方法和装置 |
CN107221326A (zh) * | 2017-05-16 | 2017-09-29 | 百度在线网络技术(北京)有限公司 | 基于人工智能的语音唤醒方法、装置和计算机设备 |
US20180190281A1 (en) * | 2016-12-29 | 2018-07-05 | Baidu Online Network Technology (Beijing) Co., Ltd. | Method and device for waking up via speech based on artificial intelligence |
CN108281137A (zh) * | 2017-01-03 | 2018-07-13 | 中国科学院声学研究所 | 一种全音素框架下的通用语音唤醒识别方法及*** |
CN108305634A (zh) * | 2018-01-09 | 2018-07-20 | 深圳市腾讯计算机***有限公司 | 解码方法、解码器及存储介质 |
US20190139540A1 (en) * | 2016-06-09 | 2019-05-09 | National Institute Of Information And Communications Technology | Speech recognition device and computer program |
CN110223678A (zh) * | 2019-06-12 | 2019-09-10 | 苏州思必驰信息科技有限公司 | 语音识别方法及*** |
CN110415699A (zh) * | 2019-08-30 | 2019-11-05 | 北京声智科技有限公司 | 一种语音唤醒的判断方法、装置及电子设备 |
CN110503944A (zh) * | 2019-08-29 | 2019-11-26 | 苏州思必驰信息科技有限公司 | 语音唤醒模型的训练和使用方法及装置 |
CN110534099A (zh) * | 2019-09-03 | 2019-12-03 | 腾讯科技(深圳)有限公司 | 语音唤醒处理方法、装置、存储介质及电子设备 |
-
2019
- 2019-12-12 CN CN201911274892.3A patent/CN110910885B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105632486A (zh) * | 2015-12-23 | 2016-06-01 | 北京奇虎科技有限公司 | 一种智能硬件的语音唤醒方法和装置 |
US20190139540A1 (en) * | 2016-06-09 | 2019-05-09 | National Institute Of Information And Communications Technology | Speech recognition device and computer program |
US20180190281A1 (en) * | 2016-12-29 | 2018-07-05 | Baidu Online Network Technology (Beijing) Co., Ltd. | Method and device for waking up via speech based on artificial intelligence |
CN108281137A (zh) * | 2017-01-03 | 2018-07-13 | 中国科学院声学研究所 | 一种全音素框架下的通用语音唤醒识别方法及*** |
CN107221326A (zh) * | 2017-05-16 | 2017-09-29 | 百度在线网络技术(北京)有限公司 | 基于人工智能的语音唤醒方法、装置和计算机设备 |
CN108305634A (zh) * | 2018-01-09 | 2018-07-20 | 深圳市腾讯计算机***有限公司 | 解码方法、解码器及存储介质 |
CN110223678A (zh) * | 2019-06-12 | 2019-09-10 | 苏州思必驰信息科技有限公司 | 语音识别方法及*** |
CN110503944A (zh) * | 2019-08-29 | 2019-11-26 | 苏州思必驰信息科技有限公司 | 语音唤醒模型的训练和使用方法及装置 |
CN110415699A (zh) * | 2019-08-30 | 2019-11-05 | 北京声智科技有限公司 | 一种语音唤醒的判断方法、装置及电子设备 |
CN110534099A (zh) * | 2019-09-03 | 2019-12-03 | 腾讯科技(深圳)有限公司 | 语音唤醒处理方法、装置、存储介质及电子设备 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111161747A (zh) * | 2020-04-03 | 2020-05-15 | 深圳市友杰智新科技有限公司 | 基于Tensorflow唤醒模型的预测方法、装置和计算机设备 |
CN111640423A (zh) * | 2020-05-29 | 2020-09-08 | 北京声智科技有限公司 | 一种词边界估计方法、装置及电子设备 |
CN111640423B (zh) * | 2020-05-29 | 2023-10-13 | 北京声智科技有限公司 | 一种词边界估计方法、装置及电子设备 |
CN112652306A (zh) * | 2020-12-29 | 2021-04-13 | 珠海市杰理科技股份有限公司 | 语音唤醒方法、装置、计算机设备和存储介质 |
CN112652306B (zh) * | 2020-12-29 | 2023-10-03 | 珠海市杰理科技股份有限公司 | 语音唤醒方法、装置、计算机设备和存储介质 |
CN113327610A (zh) * | 2021-06-30 | 2021-08-31 | 北京有竹居网络技术有限公司 | 一种语音唤醒方法、装置及设备 |
CN113470646A (zh) * | 2021-06-30 | 2021-10-01 | 北京有竹居网络技术有限公司 | 一种语音唤醒方法、装置及设备 |
CN113327610B (zh) * | 2021-06-30 | 2023-10-13 | 北京有竹居网络技术有限公司 | 一种语音唤醒方法、装置及设备 |
CN113470646B (zh) * | 2021-06-30 | 2023-10-20 | 北京有竹居网络技术有限公司 | 一种语音唤醒方法、装置及设备 |
CN114220444A (zh) * | 2021-10-27 | 2022-03-22 | 安徽讯飞寰语科技有限公司 | 语音解码方法、装置、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110910885B (zh) | 2022-05-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110910885B (zh) | 基于解码网络的语音唤醒方法和装置 | |
CN110473539B (zh) | 提升语音唤醒性能的方法和装置 | |
CN109473123B (zh) | 语音活动检测方法及装置 | |
US9899021B1 (en) | Stochastic modeling of user interactions with a detection system | |
JP6837298B2 (ja) | 音響点数を計算する装置及び方法、音声を認識する装置及び方法並びに電子装置 | |
CN110503944B (zh) | 语音唤醒模型的训练和使用方法及装置 | |
CN111312218B (zh) | 神经网络的训练和语音端点检测方法及装置 | |
CN111916061B (zh) | 语音端点检测方法、装置、可读存储介质及电子设备 | |
CN108932944B (zh) | 解码方法及装置 | |
CN111145732B (zh) | 多任务语音识别后的处理方法及*** | |
CN110875059B (zh) | 收音结束的判断方法、装置以及储存装置 | |
CN110600008A (zh) | 语音唤醒的优化方法及*** | |
CN110827858B (zh) | 语音端点检测方法及*** | |
CN111179915A (zh) | 基于语音的年龄识别方法及装置 | |
CN112581938B (zh) | 基于人工智能的语音断点检测方法、装置和设备 | |
CN111816216A (zh) | 语音活性检测方法和装置 | |
KR20150093059A (ko) | 화자 검증 장치 및 방법 | |
CN113658586B (zh) | 语音识别模型的训练方法、语音交互方法及装置 | |
CN110600029A (zh) | 用于智能语音设备的自定义唤醒方法和装置 | |
CN113205809A (zh) | 语音唤醒方法和装置 | |
CN112951219A (zh) | 噪声拒识方法和装置 | |
CN110890104B (zh) | 语音端点检测方法及*** | |
CN110706691B (zh) | 语音验证方法及装置、电子设备和计算机可读存储介质 | |
CN112614506B (zh) | 语音激活检测方法和装置 | |
CN111105803A (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 | ||
CB02 | Change of applicant information |
Address after: 215123 building 14, Tengfei Innovation Park, 388 Xinping street, Suzhou Industrial Park, Suzhou City, Jiangsu Province Applicant after: Sipic Technology Co.,Ltd. Address before: 215123 building 14, Tengfei Innovation Park, 388 Xinping street, Suzhou Industrial Park, Suzhou City, Jiangsu Province Applicant before: AI SPEECH Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |