CN116129878A - 语音唤醒方法、设备及存储介质 - Google Patents
语音唤醒方法、设备及存储介质 Download PDFInfo
- Publication number
- CN116129878A CN116129878A CN202211601040.2A CN202211601040A CN116129878A CN 116129878 A CN116129878 A CN 116129878A CN 202211601040 A CN202211601040 A CN 202211601040A CN 116129878 A CN116129878 A CN 116129878A
- Authority
- CN
- China
- Prior art keywords
- wake
- voice
- character
- preset
- processed
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 63
- 238000012545 processing Methods 0.000 claims abstract description 37
- 239000011159 matrix material Substances 0.000 claims description 23
- 238000004590 computer program Methods 0.000 claims description 9
- 230000002618 waking effect Effects 0.000 claims 3
- 230000008569 process Effects 0.000 abstract description 15
- 238000004364 calculation method Methods 0.000 abstract description 3
- 230000000694 effects Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000009432 framing Methods 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000035945 sensitivity Effects 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000002459 sustained effect Effects 0.000 description 1
- 230000000007 visual effect Effects 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/02—Feature extraction for speech recognition; Selection of recognition unit
-
- 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/08—Speech classification or search
- G10L15/16—Speech classification or search using artificial neural networks
-
- 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/26—Speech to text systems
-
- 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
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/78—Detection of presence or absence of voice signals
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
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)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开涉及语音识别技术领域,提供一种语音唤醒方法、设备及存储介质,包括确定多个待处理语音帧对应的字符概率矩阵,其中,字符概率矩阵包括唤醒字符对应的唤醒字符概率值;基于预设滑窗对多个待处理语音帧进行滑窗处理,确定唤醒字符对应的平滑唤醒字符概率值;基于至少部分待处理语音帧确定的第一帧长度符合预设唤醒帧长度,且每一唤醒字符的平滑唤醒字符概率值符合预设门限,确定唤醒字符所组成的唤醒词的唤醒词概率值;在唤醒词概率值大于预设唤醒词概率值的情况下,执行语音唤醒操作,由此通过结合预设滑窗、预设唤醒帧长度、预设门限及预设唤醒词概率值实现少计算量、灵活的解码过程。
Description
技术领域
本公开涉及语音识别技术领域,尤其涉及一种语音唤醒方法、设备及存储介质。
背景技术
语音识别等技术已应用在多个技术领域中,在实际应用中,搭载了语音识别系统的设备在接收到语音信号后通常会对被唤醒后的语音信号进行响应。
现有基于神经网络声学模型的语音唤醒方式有多种,例如在提取语音特征之后,根据有无后端解码来分包括不需要解码的二分类模型及基于需要解码的唤醒模型等,对于需要解码的唤醒模型来说,由于唤醒词的字是固定的,字数少组合比较简单时解码算法的准确度不高,且当门限值进行调整时需要重新训练解码算法,使得解码算法的灵敏度不高。
发明内容
第一方面,本公开实施例提供一种语音唤醒方法,包括:
确定多个待处理语音帧对应的字符概率矩阵,其中,所述字符概率矩阵包括唤醒字符对应的唤醒字符概率值;
基于预设滑窗对多个所述待处理语音帧进行滑窗处理,确定所述唤醒字符对应的平滑唤醒字符概率值;
基于至少部分所述待处理语音帧确定的第一帧长度符合预设唤醒帧长度,且每一所述唤醒字符的平滑唤醒字符概率值符合预设门限,确定所述唤醒字符所组成的唤醒词的唤醒词概率值;
在所述唤醒词概率值大于预设唤醒词概率值的情况下,执行语音唤醒操作。
根据本公开实施例提供的一种语音唤醒方法,所述基于至少部分所述待处理语音帧确定的第一帧长度符合预设唤醒帧长度之后,包括:
基于当前处理的所述待处理语音帧之后的至少部分所述待处理语音帧确定的第二帧长度符合第二预设唤醒帧长度。
根据本公开实施例提供的一种语音唤醒方法,还包括:
每一所述唤醒字符的最大平滑唤醒字符概率值对应的语音帧顺序符合预设语序。
根据本公开实施例提供的一种语音唤醒方法,所述确定所述唤醒字符所组成的唤醒词的唤醒词概率值,包括:
根据所述唤醒字符的最大平滑唤醒字符概率值确定所述唤醒字符所组成的唤醒词的唤醒词概率值。
根据本公开实施例提供的一种语音唤醒方法,所述确定多个待处理语音帧对应的字符概率矩阵,包括:
将多个所述待处理语音帧的FBANK特征逐帧输入预设声学模型,获取所述预设声学模型输出的多个所述待处理语音帧中各唤醒字符的概率值。
根据本公开实施例提供的一种语音唤醒方法,所述确定多个待处理语音帧对应的字符概率矩阵,包括:
获取多个初始语音帧;
对多个所述初始语音帧进行帧拼接处理,得到多个拼接后语音帧;
对多个所述拼接后语音帧进行跳帧处理,得到多个待处理语音帧。
根据本公开实施例提供的一种语音唤醒方法,所述预设滑窗的大小等于所述待处理语音帧的帧长的N倍,所述预设滑窗的滑窗步长为大于等于1的正整数,其中,所述N为正整数。
根据本公开实施例提供的一种语音唤醒方法,还包括:
在接收到唤醒参数调整请求的情况下,调整相应的唤醒参数,其中,所述唤醒参数包括预设唤醒帧长度、预设门限及预设唤醒词概率值中的至少一个。
第二方面,本公开实施例还提供一种语音唤醒装置,包括:
字符单元,用于确定多个待处理语音帧对应的字符概率矩阵,其中,所述字符概率矩阵包括唤醒字符对应的唤醒字符概率值;
滑窗单元,用于基于预设滑窗对多个所述待处理语音帧进行滑窗处理,确定所述唤醒字符对应的平滑唤醒字符概率值;
第一唤醒单元,用于基于至少部分所述待处理语音帧确定的第一帧长度符合预设唤醒帧长度,且每一所述唤醒字符的平滑唤醒字符概率值符合预设门限,确定所述唤醒字符所组成的唤醒词的唤醒词概率值;
第二唤醒单元,用于在所述唤醒词概率值大于预设唤醒词概率值的情况下,执行语音唤醒操作。
第三方面,本公开实施例还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述语音唤醒方法。
第四方面,本公开实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述语音唤醒方法。
附图说明
为了更清楚地说明本公开或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本公开一个实施例提供的语音唤醒方法的流程示意图之一;
图2是本公开一个实施例提供的语音唤醒方法的场景示意图之一;
图3是本公开一个实施例提供的语音唤醒方法的场景示意图之二;
图4是本公开一个实施例提供的语音唤醒方法的场景示意图之三;
图5是本公开一个实施例提供的语音唤醒方法的流程示意图之二;
图6是本公开一个实施例提供的语音唤醒装置的结构示意图;
图7是本公开一个实施例提供的电子设备的结构示意图。
具体实施方式
为使本公开技术方案和优点更加清楚,下面将结合本公开中的附图,对本公开中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
在实际应用中,搭载了语音识别系统的设备在接收到语音信号后通常会对被唤醒后的语音信号进行响应,例如当用户发出“小H同学,室内空气不好,净化空气...”的语音信号后,当搭载了语音识别系统的设备对该语音信号进行分析处理后解析出其设定的唤醒词“净化空气”,进行相应功能的唤醒。
现有基于神经网络声学模型的语音唤醒方式有多种,目前普遍唤醒方式采用CTC解码唤醒,例如CTC贪心搜索(Greedy search)、CTC束搜索(beam search)和CTC前缀束搜索(prefix beam search),它们的解码过程相当于空间搜索,求取穷举的所有可能字符串序列中概率最大的那个结果,此过程需要搜索出若干个字符串序列并计算相应的概率,导致CTC解码计算量比较大,且还会出现找不到最佳结果的可能性。
此外,在实际应用中,在使用CTC解码之前,还必须预先使用大量的训练数据训练CTC解码过程,其解码结果与训练效果也息息相关,且在面对不同的解码效果,则需要重新训练CTC解码过程,使得CTC解码结果的灵敏度不方便控制。
本公开提供一种语音唤醒方法,其执行主体可以为任何一种可实现语音唤醒方法的移动终端或移动终端中的功能模块等,本公开提及的移动终端包括但不限于手机、平板电脑、可穿戴设备、车载设备、增强现实(augmented reality,AR)/虚拟现实(virtualreality,VR)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personal digital assistant,PDA)等,还可以包括数据库、服务器以及基于终端人工智能的服务响应系统,下面以移动终端作为执行主体为例对本公开提供的语音唤醒方法进行说明。需要说明的是,上述执行主体并不构成对本公开的限制。
下面结合图1描述本公开一个实施例提供的语音唤醒方法,图1为本公开一个实施例提供的语音唤醒方法的流程示意图,包括:
步骤101,确定多个待处理语音帧对应的字符概率矩阵;
其中,待处理语音帧可以为从实时采集到的所有的语音数据中提取出的语音帧,还可以为在符合预设语音激活条件后采集到的语音数据中提取出的语音帧。
例如,设置一个语音活动检测(Voice Activity Detection,VAD)模块,当通过VAD模块检测到出现人声特征数据时,判定达到预设语音激活条件,则从此刻采集到的语音数据中提取出的语音帧为待处理语音帧。
在一些实施例中,多个待处理语音帧的时间戳可以不存在重复的部分,例如,从头开始,语音数据每间隔10ms被切割成一帧,也即第一个待处理语音帧的时间戳为第t(ms)到第t+10(ms),第二个待处理语音帧的时间戳为第t+11(ms)到第t+20(ms)…以此类推。
在一些实施例中,多个待处理语音帧的时间戳也可以存在重复的部分,例如,为了避免后续对待处理语音帧进行处理时出现频谱泄漏,采取语音帧加窗的方式获取待处理语音帧,例如每个待处理语音帧的帧长为25ms,其中有15ms是历史信息,也就是与上一个待处理语音帧之间存在15ms的重叠数据,实际相邻两帧待处理语音帧中只移动了10ms。
在一些实施例中,待处理语音帧还可以为包含了有效语音数据的语音帧,其中,有效语音数据指代可用于唤醒操作的数据。
例如,采集到的语音数据中可能存在部分时长不含人声特征数据的无效数据,则为了减少解码过程中的计算量,在从采集到的语音数据中从头到尾依次提取出多个语音帧之后,可以剔除掉不包含人声特征数据的语音帧,或者杂音过多导致对人声特征数据存在干扰的语音帧,之后保留剩下的语音帧作为待处理语音帧,由此通过减少待处理语音帧的数量来实现后续减少解码过程中的计算量。
其中,字符概率矩阵包括唤醒字符对应的唤醒字符概率值,此外字符概率矩阵中还包括其他预测字符和其他预测字符概率值,例如空白标签字符等,在此不再赘述。
例如,字符概率矩阵为关于待处理语音帧预测结果的(T,C)的矩阵,其中,T指代经过预设声学模型处理的多个待处理语音帧的数量,C指代预设声学模型中所设置的预测字符的数量,而一个矩阵中的每一个元素则指代所对应的待处理语音帧中各预测字符的概率分布,也即矩阵中的第n行第m列的元素即为第m帧待处理语音帧中第n个预测字符的概率分布。
例如,当前获取到16帧待处理语音帧,预设声学模型中设置有100个预测字符,那么当前字符概率矩阵则可以表示为(16,100)的矩阵,假设矩阵中的第一行第二列的元素为0.02,则表示第一帧包含第二个字符的概率为0.02,其中,预测字符中即包括唤醒字符,又包括其他预设字符,在此不再赘述。
步骤102,基于预设滑窗对多个所述待处理语音帧进行滑窗处理,确定所述唤醒字符对应的平滑唤醒字符概率值;
由于在对语音数据进行分帧处理时的帧长可能会比较短,因此待处理语音帧可能会出现毛刺进而影响唤醒结果,比如某一待处理语音帧出现尖峰现象,因此采用预设滑窗对待处理语音帧进行平滑处理来清除掉毛刺等带来的干扰,具体地,采用预设滑窗对待处理语音帧中的每一个唤醒字符的唤醒字符概率值进行平滑处理。
作为一种可实施的方式,预设滑窗的大小等于待处理语音帧的帧长的N倍,预设滑窗的滑窗步长为大于等于1的正整数,其中,N为正整数,可以理解地,1即指代一帧待处理语音帧的帧长,也即预设滑窗的最小滑动步长为一帧待处理语音帧的帧长。
例如,滑窗是向后取的,大小是10,滑窗步长是1。则从第1帧到第10帧是第一个滑窗,用来确定第1帧的唤醒字符对应的平滑唤醒字符概率值,第2帧到第11帧是第二个滑窗,用来确定第2帧的唤醒字符对应的平滑唤醒字符概率值。
例如,滑窗是向前取的,大小是10,步长是1。则从第1帧到前第2帧是第一个滑窗,用来确定第1帧的唤醒字符对应的平滑唤醒字符概率值,从第2帧到前第8帧是第二个滑窗,用来确定第2帧的唤醒字符对应的平滑唤醒字符概率值。
由此得到的每个滑窗中的唤醒字符的平滑唤醒字符概率值与处理前的唤醒字符概率值之间的偏差近乎相等,从而一方面消除了某一帧出现毛刺等干扰因素时对其的预测结果的影响,又消除了滑窗处理时对各帧待处理语音帧的预测结果的影响,从而使得后续在根据平滑唤醒字符概率值进行语音唤醒时,语音唤醒结果准确性会更高。
步骤103,基于至少部分所述待处理语音帧确定的第一帧长度符合预设唤醒帧长度,且每一所述唤醒字符的平滑唤醒字符概率值符合预设门限,确定所述唤醒字符所组成的唤醒词的唤醒词概率值;
其中,第一帧长度指代指代语音唤醒阶段,从开始进行唤醒处理的第1帧待处理语音帧到当前正在进行唤醒处理的待处理语音帧之间的多个待处理语音帧的帧长度。
比如,图2中每一个竖条代表语音数据分帧后的待处理语音帧,竖条下方的字符代表第1帧、第2帧、第3帧…,箭头方向代表滑窗是向后取的,第50帧为当前正在进行唤醒处理的待处理语音帧,则第一帧长度可以基于从第1帧到第50帧确定的,可以是从中间某一帧到第50帧确定的,还可以是基于其他部分待处理语音帧确定的。
预设唤醒帧长度指代预先设置的该次语音唤醒操作下用于进行唤醒处理的部分待处理语音帧的最低帧长,也即用户说出唤醒词所需要持续的最低语音时长。
由于唤醒词通常需要持续一个特定的时间长度,低于特定长度的语音可以认为是毛刺干扰,比如,通常一个字需要耗时100~300ms,则对于唤醒字符有4个的唤醒词,则其所对应的部分待处理语音帧确定的第一帧长度应当要不小于400ms的情况下,才可以被语音唤醒。
本实施例中,仅在用于进行唤醒处理的至少部分待处理语音帧的帧长度确定的第一帧长度符合预设唤醒帧长度的情况下,才会继续执行后续语音唤醒操作,由此提高语音唤醒成功率。
在一实施例中,当确定的第一帧长度小于预设唤醒帧长度的情况下,判定唤醒失败,输出相应的唤醒失败提示,由此提示用户重新输入有效的语音数据。
其中,预设门限为平滑唤醒字符概率值的数值大小的门限,多个唤醒字符的预设门限可以相同,也可以不相同。
例如,设置四个唤醒字符的平滑唤醒字符概率值均要大于0.02,还可以设定第一个和第四个唤醒字符的平滑唤醒字符概率值要大于0.02,第二个和第三个唤醒字符的平滑唤醒字符的概率值要大于0.015。
在一些实施例中,可以根据唤醒字符的所有的平滑唤醒字符概率值来确定唤醒词的唤醒词概率值。
例如,当前唤醒词中包括四个唤醒字符,且每个唤醒字符的平滑唤醒字符概率值包括50个,则可以取所有的200个平滑唤醒字符概率值的平均值作为唤醒词的唤醒词概率值,还可以先取各个唤醒字的50个平滑唤醒字符概率值的平均值,之后将该四个平均值之和作为唤醒词的唤醒词概率值,还可以将该四个平均值连乘后开四次方的结果作为该唤醒词的唤醒词概率值等,对此不作限制。
在一些实施例中,为了减少计算量,还可以根据唤醒字符的最大平滑唤醒字符概率值确定唤醒字符所组成的唤醒词的唤醒词概率值。
例如,当前唤醒词中包括四个唤醒字符,则可以将该四个唤醒字符的最大平滑唤醒字符概率值连乘后开四次方的结果作为该唤醒词的唤醒词概率值,还可以将该四个唤醒字符的最大平滑唤醒字符概率值对应的平均值作为该唤醒词的唤醒词概率值等,对此不作限制。
步骤104,在所述唤醒词概率值大于预设唤醒词概率值的情况下,执行语音唤醒操作。
其中,语音唤醒操作为该唤醒词所表征的下一步需要进行的操作。
例如,当唤醒词为“录音”时,则终端启动麦克风进行录音,当唤醒词为“拍照”时,则终端启动摄像机进行拍照。
比如,图3中终端的唤醒词为“拍照”,终端当前的显示界面处于主界面,用户输出“拍照”的语音数据后,终端执行完上述步骤101、步骤102、步骤103及步骤104后,终端的显示界面切换至拍照界面。
例如,在一些实施例中,终端处于休眠模式时,终端可以先进入工作模式,再执行该唤醒词所表征的下一步需要进行的操作。
本实施例提出的语音唤醒方法,通过使用预设滑窗来减少后续计算量及降低毛刺等干扰因素对唤醒结果的影响,且在后续解码过程中通过设定的预设唤醒帧长度、预设门限及预设唤醒词概率值来进行唤醒解码,由于以上设定值可以动态调整,因此在唤醒解码时不需要再重新训练模型,由此增加了解码灵活性。
需要说明的是,本申请每一个实施方式可以自由组合、调换顺序或者单独执行,并不需要依靠或依赖固定的执行顺序。
在一些实施例中,所述确定多个待处理语音帧对应的字符概率矩阵,包括:
获取多个初始语音帧;
对多个所述初始语音帧进行帧拼接处理,得到多个拼接后语音帧;
对多个所述拼接后语音帧进行跳帧处理,得到多个待处理语音帧。
在一个示例中,可以基于各初始语音帧的前后帧对各始语音帧进行帧拼接处理,比如,“J个过去帧+当前帧+K个未来帧”一起作为当前帧的输入数据,从而推理出当前帧的预测标签。J和K是正整数。
本实施例中,由于一帧的特征预测一个标签有时候显得信息量不够,特别是标签发音比较长,例如,使用拼音作为标签要比使用音素作为标签所需要的语音帧的帧长要长,因此本实施例采用帧拼接来克服此缺陷。
在一些实施例中,拼接后语音帧可能存在信息量冗余,则可以通过跳帧采样来减少数据量和后续处理计算量。比如,从连续的两帧拼接后语音帧中取出一帧进行后续处理,或者从连续的三帧拼接后语音帧中取出一帧进行后续处理等。
在一个示例中,当采用“J个过去帧+当前帧+K个未来帧”一起作为当前帧的拼接后语音帧时,基于拼帧过程中的J、K值来决定跳帧长度,由此在确保处理后的待处理语音帧在具有足够的信息量的条件下降低信息量冗余,从而实现在减少数量及后续处理计算量的情况下还可提高解码效果的目的。
在一些实施例中,所述基于至少部分所述待处理语音帧确定的第一帧长度符合预设唤醒帧长度之后,包括:
基于当前处理的所述待处理语音帧之后的至少部分所述待处理语音帧确定的第二帧长度符合第二预设唤醒帧长度。
下面结合图4进行本实施例说明,如图4所示,图4中每一个竖条代表语音数据分帧后的待处理语音帧,竖条下方的字符代表第1帧、第2帧、第3帧…,箭头方向代表滑窗是向后取的,规定预设唤醒帧长度等于50帧待处理语音帧的帧长,第二预设唤醒帧长度等于10帧待处理语音帧的帧长。
在进行唤醒处理时,先进行第一次帧长度判断,比如,从预设滑窗进行滑窗处理的第1帧开始确定第一帧长度,判断从开始处理唤醒的第1帧到当前滑窗处理的第i帧对应的第一帧长度,在当前滑窗处理到了第50帧时,确定的第一帧长度(即从第1帧到第50帧)满足了预设唤醒帧长度,判定可以继续进行后续唤醒处理步骤。
接着继续第二次帧长度判断,即基于当前滑窗处理到的第50帧之后的待处理语音帧确定第二帧长度,比如,从第51帧开始确定第二帧长度,在第50帧之后还存在第51帧、第52帧、第53帧…第60帧的待处理唤醒语音帧时,则判定确定的第二帧长度(也即从第51帧到第60帧)符合第二预设唤醒帧长度。
本实施例中,由于待处理语音帧可能经过了前后帧拼帧处理,因此第50帧(即当前帧)的唤醒推理结果与其拼帧的帧长度有关,在一个示例中,当采用“J个过去帧+当前帧+K个未来帧”一起作为当前帧的拼接后语音帧时,通常第二预设唤醒帧长度等于J个过去帧的帧长度,或者等于K个未来帧的帧长度,比如,每帧的帧长度为10ms,拼帧时设置J=K=5,则在当前滑窗处理到了第50帧之后,继续等待50ms。
通常情况下,只有在最后一个唤醒字存在尾音的情况下,才加入第二预设唤醒帧长度来判断,比如为了防止“ka”和“kang”的误判,在截止到当前处理的待处理语音帧的帧长度符合预设唤醒帧长度后,继续加入当前处理的待处理语音帧之后的至少部分待处理语音帧进行二次判断,由此降低误唤醒,提高了灵活解码的解码结果精准性。
在一些实施例中,还包括:每一所述唤醒字符的最大平滑唤醒字符概率值对应的语音帧顺序符合预设语序。
例如,一个唤醒词为“你好小咖”,该唤醒词包括“你”、“好”、“小”和“咖”四个唤醒字符,则在获取到该四个唤醒字符的最大平滑唤醒字符概率值后,再根据各自最大平滑唤醒字符概率值对应的语音帧顺序进行排序后,需要分别为“你”、“好”、“小”和“咖”时,才判定可以进行语音唤醒操作,否则,不进行语音唤醒操作。
本实施例中,在唤醒过程中还可以对唤醒字符的最大平滑唤醒字符概率值对应的语音帧之间的顺序进行检测,来降低误唤醒。
作为一种可实施的方式,参考图5,本实施例提供的语音唤醒方法包括以下步骤:
步骤501,确定多个待处理语音帧对应的字符概率矩阵,其中,所述字符概率矩阵包括唤醒字符对应的唤醒字符概率值;
步骤502,基于预设滑窗对多个所述待处理语音帧进行滑窗处理,确定所述唤醒字符对应的平滑唤醒字符概率值;
步骤503,确定至少部分所述待处理语音帧确定的第一帧长度符合预设唤醒帧长度;
步骤504,确定当前处理的所述待处理语音帧之后的至少部分所述待处理语音帧确定的第二帧长度符合第二预设唤醒帧长度;
步骤505,确定每一所述唤醒字符的平滑唤醒字符概率值符合预设门限;
步骤506,确定所述唤醒字符所组成的唤醒词的唤醒词概率值;
步骤507,在所述唤醒词概率值大于预设唤醒词概率值的情况下,执行语音唤醒操作。
需要说明的是,以上步骤之间可以自由组合、调换顺序或者单独执行,并不需要依靠或依赖固定的执行顺序。
本实施例中的各步骤的实施方式同以上实施例中的一致,在此不再赘述。
在一些实施例中,所述确定多个待处理语音帧对应的字符概率矩阵,包括:
将多个所述待处理语音帧的FBANK特征逐帧输入预设声学模型,获取所述预设声学模型输出的多个所述待处理语音帧中各唤醒字符的概率值。
预设声学模型输入的可以为待处理语音帧的频域特征(Filter-Bank,FBANK),输出的为每一帧对应的预测字符及其概率值,其中,预测字符中包括唤醒字符及其他字符。
为了加快后续滑窗处理速度,在使用预设声学模型输出各帧对应的各预测字符的概率值之后,可以构建出相应的字符概率矩阵,例如对于16帧FBANK特征数据,预设声学模型中预设设置的字符共100个字符,则输出矩阵为[16,100],在实际应用中,预设声学模型输出的字符中除了为唤醒词,其他的都使用空白标签。
其中,本实施例中的预设声学模型为实现FBANK特征至字符的映射的模型,例如基于CNN、DFSMN、LSTM或transformer的神经网络的模型,对此不作限制。
需要说明的是,在对语音数据进行特征提取、模型预测及解码的过程中,在特征提取阶段对将一段时长内的语音数据进行分帧等处理,得到若干个时间节点下的待处理语音帧,例如这段语音数据有160ms长,则分成16帧,依次为开头至第10ms的第一帧待处理语音帧、第11ms至第20ms的第二帧待处理语音帧...第159ms至第160ms的第16帧待处理语音帧,且此过程中,各待处理语音帧依次先后被输入至上述模型中,经由上述模型再依次输出各时间节点对应的待处理语音帧中各预测字符的概率分布。
字符概率矩阵中的每一横行代表各预先设置的预测字符在各时间节点下的待处理语音帧中的概率值,每一纵行代表各时间节点下的待处理语音帧所对应的各预测字符的概率值。
其中,由于预测字符结果是预先设置好的,因此本实施例中字符概率矩阵的纵行的行数为固定不变的,而由于语音数据是源源不断地,因此字符概率矩阵的横行的行数会逐渐增加,也即字符概率矩阵中的第一纵行为第一时间节点次序下的待处理语音帧所对应的各预测字符的概率值,第二纵行为第二时间节点次序下的待处理语音帧所对应的各预测字符的概率值...依此类推,也即在字符概率矩中各待处理语音帧的左边为其所对应的过去时间节点的待处理语音帧,右边则为其所对应的未来时间节点的待处理语音帧。
在一些实施例中,在接收到唤醒参数调整请求的情况下,调整相应的唤醒参数,其中,所述唤醒参数包括预设唤醒帧长度、预设门限及预设唤醒词概率值中的至少一个。
其中,唤醒参数调整请求可以是输入的,也可以是经由其它硬件设备产生或者软件传输的。
所称的输入,例如可以是通过触摸输入、语音输入、手势输入、视觉输入、脑机输入等方式输入的。
所称的硬件设备产生,可以是终端被设置为在某种条件下产生的,例如终端在检测到语音唤醒失败次数达到上限次数时,自动产生唤醒参数调整请求。
本实施例中,以上各类唤醒条件参数的参数功能与以上实施例一致,在此不再赘述。
本实施例中,在进行语音唤醒的过程中,可根据实际需求灵活调整相应的唤醒参数,由此无需重新训练模型,仅需要调整相应的唤醒参数,即可达到不同的语音唤醒效果,解码过程更灵活。
下面对本公开提供的语音唤醒装置进行描述,下文描述的语音唤醒装置与上文描述的语音唤醒方法可相互对应参照。
参照图6,图6是本公开提供的语音唤醒装置的结构示意图,如图6所示,所述语音唤醒装置包括:字符单元610,用于字符单元,用于确定多个待处理语音帧对应的字符概率矩阵,其中,所述字符概率矩阵包括唤醒字符对应的唤醒字符概率值;滑窗单元620,用于基于预设滑窗对多个所述待处理语音帧进行滑窗处理,确定所述唤醒字符对应的平滑唤醒字符概率值;第一唤醒单元630,用于基于至少部分所述待处理语音帧确定的第一帧长度符合预设唤醒帧长度,且每一所述唤醒字符的平滑唤醒字符概率值符合预设门限,确定所述唤醒字符所组成的唤醒词的唤醒词概率值;第二唤醒单元640,用于在所述唤醒词概率值大于预设唤醒词概率值的情况下,执行语音唤醒操作。
在一些实施例中,第一唤醒单元,还用于基于当前处理的所述待处理语音帧之后的至少部分所述待处理语音帧确定的第二帧长度符合第二预设唤醒帧长度。
在一些实施例中,第一唤醒单元,还用于确定每一所述唤醒字符的最大平滑唤醒字符概率值对应的语音帧顺序符合预设语序。
在一些实施例中,第一唤醒单元,还用于根据所述唤醒字符的最大平滑唤醒字符概率值确定所述唤醒字符所组成的唤醒词的唤醒词概率值。
在一些实施例中,字符单元,还用于将多个所述待处理语音帧的FBANK特征逐帧输入预设声学模型,获取所述预设声学模型输出的多个所述待处理语音帧中各唤醒字符的概率值。
在一些实施例中,字符单元,还用于获取多个初始语音帧;对多个所述初始语音帧进行帧拼接处理,得到多个拼接后语音帧;对多个所述拼接后语音帧进行跳帧处理,得到多个待处理语音帧。
在一些实施例中,所述预设滑窗的大小等于所述待处理语音帧的N倍,所述预设滑窗的滑窗步长为大于等于1的正整数,其中,N为正整数。
在一些实施例中,所述第二唤醒单元,还用于在接收到唤醒参数调整请求的情况下,调整相应的唤醒参数,其中,所述唤醒参数包括预设唤醒帧长度、预设门限及预设唤醒词概率值中的至少一个。
本实施例提供的语音唤醒装置,通过使用预设滑窗来减少后续计算量及降低毛刺等干扰因素对唤醒结果的影响,且在后续解码过程中通过设定的预设唤醒帧长度、预设门限及预设唤醒词概率值来进行唤醒解码,由于以上设定值可以动态调整,因此在唤醒解码时不需要再重新训练模型,由此增加了解码灵活性。
图7示例了一种电子设备的实体结构示意图,如图7所示,该电子设备可以包括:处理器(processor)710、通信接口(Communications Interface)720、存储器(memory)730和通信总线740,其中,处理器710,通信接口720,存储器730通过通信总线740完成相互间的通信。处理器710可以调用存储器730中的逻辑指令,以执行语音唤醒方法,该方法包括:确定多个待处理语音帧对应的字符概率矩阵,其中,所述字符概率矩阵包括唤醒字符对应的唤醒字符概率值;基于预设滑窗对多个所述待处理语音帧进行滑窗处理,确定所述唤醒字符对应的平滑唤醒字符概率值;基于至少部分所述待处理语音帧确定的第一帧长度符合预设唤醒帧长度,且每一所述唤醒字符的平滑唤醒字符概率值符合预设门限,确定所述唤醒字符所组成的唤醒词的唤醒词概率值;在所述唤醒词概率值大于预设唤醒词概率值的情况下,执行语音唤醒操作。
此外,上述的存储器730中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本公开还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的语音唤醒方法,该方法包括:确定多个待处理语音帧对应的字符概率矩阵,其中,所述字符概率矩阵包括唤醒字符对应的唤醒字符概率值;基于预设滑窗对多个所述待处理语音帧进行滑窗处理,确定所述唤醒字符对应的平滑唤醒字符概率值;基于至少部分所述待处理语音帧确定的第一帧长度符合预设唤醒帧长度,且每一所述唤醒字符的平滑唤醒字符概率值符合预设门限,确定所述唤醒字符所组成的唤醒词的唤醒词概率值;在所述唤醒词概率值大于预设唤醒词概率值的情况下,执行语音唤醒操作。
又一方面,本公开还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的语音唤醒方法,该方法包括:确定多个待处理语音帧对应的字符概率矩阵,其中,所述字符概率矩阵包括唤醒字符对应的唤醒字符概率值;基于预设滑窗对多个所述待处理语音帧进行滑窗处理,确定所述唤醒字符对应的平滑唤醒字符概率值;基于至少部分所述待处理语音帧确定的第一帧长度符合预设唤醒帧长度,且每一所述唤醒字符的平滑唤醒字符概率值符合预设门限,确定所述唤醒字符所组成的唤醒词的唤醒词概率值;在所述唤醒词概率值大于预设唤醒词概率值的情况下,执行语音唤醒操作。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本公开的技术方案,而非对其限制;尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本公开各实施例技术方案的精神和范围。
Claims (10)
1.一种语音唤醒方法,其特征在于,包括:
确定多个待处理语音帧对应的字符概率矩阵,其中,所述字符概率矩阵包括唤醒字符对应的唤醒字符概率值;
基于预设滑窗对多个所述待处理语音帧进行滑窗处理,确定所述唤醒字符对应的平滑唤醒字符概率值;
基于至少部分所述待处理语音帧确定的第一帧长度符合预设唤醒帧长度,且每一所述唤醒字符的平滑唤醒字符概率值符合预设门限,确定所述唤醒字符所组成的唤醒词的唤醒词概率值;
在所述唤醒词概率值大于预设唤醒词概率值的情况下,执行语音唤醒操作。
2.根据权利要求1所述的语音唤醒方法,其特征在于,所述基于至少部分所述待处理语音帧确定的第一帧长度符合预设唤醒帧长度之后,包括:
基于当前处理的所述待处理语音帧之后的至少部分所述待处理语音帧确定的第二帧长度符合第二预设唤醒帧长度。
3.根据权利要求1所述的语音唤醒方法,其特征在于,还包括:
每一所述唤醒字符的最大平滑唤醒字符概率值对应的语音帧顺序符合预设语序。
4.根据权利要求1所述的语音唤醒方法,其特征在于,所述确定所述唤醒字符所组成的唤醒词的唤醒词概率值,包括:
根据所述唤醒字符的最大平滑唤醒字符概率值确定所述唤醒字符所组成的唤醒词的唤醒词概率值。
5.根据权利要求1所述的语音唤醒方法,其特征在于,所述确定多个待处理语音帧对应的字符概率矩阵,包括:
将多个所述待处理语音帧的FBANK特征逐帧输入预设声学模型,获取所述预设声学模型输出的多个所述待处理语音帧中各唤醒字符的概率值。
6.根据权利要求1所述的语音唤醒方法,其特征在于,所述确定多个待处理语音帧对应的字符概率矩阵,包括:
获取多个初始语音帧;
对多个所述初始语音帧进行帧拼接处理,得到多个拼接后语音帧;
对多个所述拼接后语音帧进行跳帧处理,得到多个待处理语音帧。
7.根据权利要求1所述的语音唤醒方法,其特征在于,所述预设滑窗的大小等于所述待处理语音帧的帧长的N倍,所述预设滑窗的滑窗步长为大于等于1的正整数,其中,所述N为正整数。
8.根据权利要求1至7任一项所述的语音唤醒方法,其特征在于,还包括:
在接收到唤醒参数调整请求的情况下,调整相应的唤醒参数,其中,所述唤醒参数包括预设唤醒帧长度、预设门限及预设唤醒词概率值中的至少一个。
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至8任一项所述语音唤醒方法。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至8任一项所述语音唤醒方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211601040.2A CN116129878A (zh) | 2022-12-12 | 2022-12-12 | 语音唤醒方法、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211601040.2A CN116129878A (zh) | 2022-12-12 | 2022-12-12 | 语音唤醒方法、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116129878A true CN116129878A (zh) | 2023-05-16 |
Family
ID=86299978
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211601040.2A Pending CN116129878A (zh) | 2022-12-12 | 2022-12-12 | 语音唤醒方法、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116129878A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117012206A (zh) * | 2023-10-07 | 2023-11-07 | 山东省智能机器人应用技术研究院 | 一种人机语音交互系统 |
-
2022
- 2022-12-12 CN CN202211601040.2A patent/CN116129878A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117012206A (zh) * | 2023-10-07 | 2023-11-07 | 山东省智能机器人应用技术研究院 | 一种人机语音交互系统 |
CN117012206B (zh) * | 2023-10-07 | 2024-01-16 | 山东省智能机器人应用技术研究院 | 一种人机语音交互系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3605537A1 (en) | Speech emotion detection method and apparatus, computer device, and storage medium | |
CN111916058B (zh) | 一种基于增量词图重打分的语音识别方法及系统 | |
CN114022882B (zh) | 文本识别模型训练、文本识别方法、装置、设备及介质 | |
CN106940998A (zh) | 一种设定操作的执行方法及装置 | |
CN107844481B (zh) | 识别文本检错方法及装置 | |
CN110942763B (zh) | 语音识别方法及装置 | |
CN104464723A (zh) | 一种语音交互方法及系统 | |
CN114627863B (zh) | 一种基于人工智能的语音识别方法和装置 | |
US12039982B2 (en) | Joint automatic speech recognition and speaker diarization | |
CN108959388B (zh) | 信息生成方法及装置 | |
WO2023098459A1 (zh) | 语音唤醒方法、装置、电子设备及可读存储介质 | |
CN111883137A (zh) | 基于语音识别的文本处理方法及装置 | |
CN110717027B (zh) | 多轮智能问答方法、系统以及控制器和介质 | |
CN116129878A (zh) | 语音唤醒方法、设备及存储介质 | |
CN113674746B (zh) | 人机交互方法、装置、设备以及存储介质 | |
CN114639386A (zh) | 文本纠错及文本纠错词库构建方法 | |
CN110364178A (zh) | 一种语音处理方法、装置、存储介质和电子设备 | |
CN115587598A (zh) | 多轮对话改写方法、设备及介质 | |
CN105869622B (zh) | 中文热词检测方法和装置 | |
CN112669818A (zh) | 语音唤醒方法及装置、可读存储介质、电子设备 | |
CN112783324B (zh) | 人机交互方法及设备、计算机存储介质 | |
CN112863518B (zh) | 一种语音数据主题识别的方法及装置 | |
CN113707137A (zh) | 解码实现方法及装置 | |
CN113096649B (zh) | 语音预测方法、装置、电子设备和存储介质 | |
CN117252152A (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 | ||
CB02 | Change of applicant information |
Address after: No. B1337, Chuanggu Initiation Zone, Taizihu Cultural Digital Creative Industry Park, No. 18 Shenlong Avenue, Wuhan Economic and Technological Development Zone, Wuhan, Hubei Province, 430058 Applicant after: Hubei Xingji Meizu Technology Co.,Ltd. Address before: 430014 No. b1337, chuanggu startup area, taizihu cultural Digital Creative Industry Park, No. 18, Shenlong Avenue, Wuhan Economic and Technological Development Zone, Wuhan, Hubei Province Applicant before: Hubei Xingji times Technology Co.,Ltd. |