唤醒词识别的方法、装置及存储介质与流程
本公开涉及语音识别技术领域,特别是涉及一种唤醒词识别的方法、装置及存储介质。
背景技术:
如今,人工智能技术越来越多的出现在日常生活中,越来越多的产品设备可以通过语音交互实现产品的功能,语音交互的起始可以是接收到产品设备相应的唤醒词,当产品设备接收到相应的唤醒词时,该产品设备可以与用户进行正常的语音交互从而实现相应的功能。
在相关技术中,对于远场的唤醒词识别,通常是通过自动增益控制技术(automaticgaincontrol,agc),对前端接收到的语音信号直接进行幅度放大处理,然后将放大后的语音信号输入到网络模型中,根据模型输出的概率值,对语音信号是否为唤醒词进行判断。
然而,相关技术中的方案,直接对接收到的远场语音信号进行线性放大处理,这种方案会导致放大后的远场语音信号出现信号失真的情况,从而影响通过网络模型的输出结果,从而导致唤醒词识别的准确性不高。
技术实现要素:
本公开提供一种唤醒词识别的方法、装置及存储介质。所述技术方案如下:
一方面,提供了一种唤醒词识别的方法,所述方法包括:
获取目标语音数据;
通过唤醒词判断模型对所述目标语音数据进行处理,获得第一判断结果,所述第一判断结果用于指示所述目标语音数据是否满足第一判据;
响应于所述第一判断结果为满足所述第一判据,通过所述唤醒词判断模型对经过放大处理的所述目标语音数据进行处理,获得第二判断结果,所述第二判断结果用于指示所述目标语音数据是否满足第二判据;
根据所述第二判断结果,确定所述目标语音数据是否为唤醒词。
在一种可能的实现方式中,所述通过唤醒词判断模型对所述目标语音数据进行处理,获得第一判断结果,包括:
将所述目标语音数据输入到所述唤醒词判断模型;
获取输出的所述目标语音数据对应的唤醒概率值,所述唤醒概率值用于指示所述唤醒词判断模型输出的所述目标语音数据为唤醒词的概率;
将所述唤醒概率值与所述第一判据进行比较,确定所述第一判断结果。
在一种可能的实现方式中,所述响应于所述第一判断结果为满足所述第一判据,通过所述唤醒词判断模型对经过放大处理的所述目标语音数据进行处理,获得第二判断结果,包括:
响应于所述第一判断结果满足所述第一判据,获取所述目标语音数据对应的幅度值;
将所述目标语音数据对应的幅度值与所述唤醒词判断模型对应的指定幅度值的比值,确定为放大系数;
根据所述放大系数,对所述目标语音数据进行所述放大处理;
将经过所述放大处理的所述目标语音数据通过所述唤醒词判断模型进行处理,获得第二判断结果。
在一种可能的实现方式中,所述第一判据对应的概率值低于所述第二判据对应的概率值。
在一种可能的实现方式中,所述方法还包括:
在所述通过唤醒词判断模型对所述目标语音数据进行处理,获得第一判断结果之前,对所述目标语音数据进行降噪处理;
确定所述目标语音数据对应的幅度值。
在一种可能的实现方式中,所述方法还包括:
在所述通过唤醒词判断模型对所述目标语音数据进行处理,获得第一判断结果之前,将所述目标语音数据存储在指定的循环缓冲区中。
在一种可能的实现方式中,所述方法还包括:
在响应于所述第一判断结果为满足所述第一判据,通过所述唤醒词判断模型对经过放大处理的所述目标语音数据进行处理,获得第二判断结果之前,响应于所述第一判断结果为不满足所述第一判据,将所述循环缓冲区中的所述目标语音数据循环通过所述唤醒词判断模型,直到获得所述第一判断结果为满足所述第一判据。
一方面,提供了一种唤醒词识别的装置,所述装置包括:
数据获取模块,用于获取目标语音数据;
第一结果获取模块,用于通过唤醒词判断模型对所述目标语音数据进行处理,获得第一判断结果,所述第一判断结果用于指示所述目标语音数据是否满足第一判据;
第二结果获取模块,用于响应于所述第一判断结果为满足所述第一判据,通过所述唤醒词判断模型对经过放大处理的所述目标语音数据进行处理,获得第二判断结果,所述第二判断结果用于指示所述目标语音数据是否满足第二判据;
唤醒词确定模块,用于根据所述第二判断结果,确定所述目标语音数据是否为唤醒词。
在一种可能的实现方式中,所述第一结果获取模块,包括:
数据输入子模块,用于将所述目标语音数据输入到所述唤醒词判断模型;
概率获取子模块,用于获取输出的所述目标语音数据对应的唤醒概率值,所述唤醒概率值用于指示所述唤醒词判断模型输出的所述目标语音数据为唤醒词的概率;
概率比较子模块,用于将所述唤醒概率值与所述第一判据进行比较,确定所述第一判断结果。
在一种可能的实现方式中,所述第二结果获取模块,包括:
幅度获取子模块,用于响应于所述第一判断结果满足所述第一判据,获取所述目标语音数据对应的幅度值;
放大系数确定子模块,用于将所述目标语音数据对应的幅度值与所述唤醒词判断模型对应的指定幅度值的比值,确定为放大系数;
数据放大子模块,用于根据所述放大系数,对所述目标语音数据进行所述放大处理;
第二结果获取子模块,用于将经过所述放大处理的所述目标语音数据通过所述唤醒词判断模型进行处理,获得第二判断结果。
在一种可能的实现方式中,所述第一判据对应的概率值低于所述第二判据对应的概率值。
在一种可能的实现方式中,所述装置还包括:
数据降噪模块,用于在所述通过唤醒词判断模型对所述目标语音数据进行处理,获得第一判断结果之前,对所述目标语音数据进行降噪处理;
幅度值确定模块,用于确定所述目标语音数据对应的幅度值。
在一种可能的实现方式中,所述装置还包括:
数据存储模块,用于在所述通过唤醒词判断模型对所述目标语音数据进行处理,获得第一判断结果之前,将所述目标语音数据存储在指定的循环缓冲区中。
在一种可能的实现方式中,所述装置还包括:
循环比较模块,用于在响应于所述第一判断结果为满足所述第一判据,通过所述唤醒词判断模型对经过放大处理的所述目标语音数据进行处理,获得第二判断结果之前,响应于所述第一判断结果为不满足所述第一判据,将所述循环缓冲区中的所述目标语音数据循环通过所述唤醒词判断模型,直到获得所述第一判断结果为满足所述第一判据。
又一方面,提供了一种唤醒词识别的装置,所述装置包括:
处理器;
用于存储所述处理器的可执行指令的存储器;
其中,所述处理器被配置为:
获取目标语音数据;
通过唤醒词判断模型对所述目标语音数据进行处理,获得第一判断结果,所述第一判断结果用于指示所述目标语音数据是否满足第一判据;
响应于所述第一判断结果为满足所述第一判据,通过所述唤醒词判断模型对经过放大处理的所述目标语音数据进行处理,获得第二判断结果,所述第二判断结果用于指示所述目标语音数据是否满足第二判据;
根据所述第二判断结果,确定所述目标语音数据是否为唤醒词。
另一方面,提供了一种计算机设备可读存储介质,所述计算机设备可读存储介质中包含可执行指令,所述可执行指令由处理器调用执行,以实现上述第一方面或者第一方面的任一可选方案所述的唤醒词识别的方法。
至少一个方面涉及一种计算机程序产品,该计算机程序产品被配置为使得:在包括处理器和存储器的数据处理系统上执行时使数据处理系统执行上述方面的方法。该计算机程序产品可以被包括在有形的、非瞬时性的计算机可读介质中或在有形的、非瞬时性的计算机可读介质上提供。
本公开的实施例提供的技术方案可以包括以下有益效果:
通过对目标语音数据进行初步判断,初步判断通过的目标语音数据进行放大处理后,进行再次判断确定目标语音数据是否为唤醒词,从而解决了直接对目标语音数据进行线性放大导致数据失真的问题,保证了唤醒词识别的效果,提高了唤醒词识别的准确度。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并于说明书一起用于解释本公开的原理。
图1是根据一示例性实施例示出的一种唤醒词识别设备的示意图;
图2是根据一示例性实施例示出的一种唤醒词识别的方法的流程图;
图3是根据一示例性实施例示出的一种唤醒词识别的方法流程图;
图4是图3所示实施例涉及的一种唤醒词识别的框架流程图;
图5是图3所示实施例涉及的一种唤醒词识别过程的流程图;
图6是根据一示例性实施例示出的一种唤醒词识别的装置的框图;
图7是根据一示例性实施例示出的一种计算机设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
应当理解的是,在本文中提及的“若干个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
为了方便理解,下面对本公开实施例中涉及的名词进行说明。
1)人工智能
人工智能是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
2)语音技术(speechtechnology)
语音技术的关键技术有自动语音识别技术(automaticspeechrecognition,asr)和语音合成技术(text-to-speech,tts)以及声纹识别技术。让计算机能听、能看、能说、能感觉,是未来人机交互的发展方向,其中语音成为未来最被看好的人机交互方式之一。
3)机器学习(machinelearning,ml)
机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、示教学习等技术。
图1是根据一示例性实施例示出的一种唤醒词识别设备的示意图。如图1所示,该唤醒词识别设备100包括拾音器110以及处理器120。
其中,唤醒词识别设备100可以是具有声音信号接收能力与声音信号处理能力的终端或者计算机设备。
比如,唤醒词识别设备100可以是一种服务类型的机器人,如医院的导诊机器人和自助挂号机、地铁站的自助售票机、商场和超市的导购机器人、公共场所的问路机器人、银行的自助柜台,或者,智能电视、智能音箱等具有语音识别功能的人工智能设备。
拾音器110可以为单麦克风或者麦克风阵列。
在一种可能的实现方式中,拾音器110可以设置在唤醒词识别设备100的内部,或者设置在唤醒词识别设备100的外部。
其中,拾音器110可以通过有线或者无线的方式与唤醒词识别设备100进行数据传输。
在一种可能的实现方式中,拾音器110可以接收到语音数据,并且将语音数据传输给处理器120,通过处理器120按照预定的唤醒词判断模型对语音数据进行处理,根据处理结果对唤醒词进行判断。
在一种可能的实现方式中,上述的无线网络或有线网络使用标准通信技术和/或协议。网络通常为因特网、但也可以是任何网络,包括但不限于局域网(localareanetwork,lan)、城域网(metropolitanareanetwork,man)、广域网(wideareanetwork,wan)、移动、有线或者无线网络、专用网络或者虚拟专用网络的任何组合)。在一些实施例中,使用包括超文本标记语言(hypertextmark-uplanguage,html)、可扩展标记语言(extensiblemarkuplanguage,xml)等的技术和/或格式来代表通过网络交换的数据。此外还可以使用诸如安全套接字层(securesocketlayer,ssl)、传输层安全(transportlayersecurity,tls)、虚拟专用网络(virtualprivatenetwork,vpn)、网际协议安全(internetprotocolsecurity,ipsec)等常规加密技术来加密所有或者一些链路。在另一些实施例中,还可以使用定制和/或专用数据通信技术取代或者补充上述数据通信技术。
图2是根据一示例性实施例示出的一种唤醒词识别的方法的流程图。该唤醒词识别的方法可以应用于唤醒词识别设备中,以对接收到的语音数据进行唤醒词识别。如图2所示,该唤醒词识别的方法可以包括以下步骤:
在步骤201中,获取目标语音数据。
在步骤202中,通过唤醒词判断模型对目标语音数据进行处理,获得第一判断结果,第一判断结果用于指示目标语音数据是否满足第一判据。
在步骤203中,响应于第一判断结果为满足第一判据,通过唤醒词判断模型对经过放大处理的目标语音数据进行处理,获得第二判断结果,第二判断结果用于指示目标语音数据是否满足第二判据。
在步骤204中,根据第二判断结果,确定目标语音数据是否为唤醒词。
在一种可能的实现方式中,通过唤醒词判断模型对所述目标语音数据进行处理,获得第一判断结果,包括:
将目标语音数据输入到唤醒词判断模型;
获取输出的目标语音数据对应的唤醒概率值,唤醒概率值用于指示唤醒词判断模型输出的目标语音数据为唤醒词的概率;
将唤醒概率值与第一判据进行比较,确定第一判断结果。
在一种可能的实现方式中,响应于第一判断结果为满足第一判据,通过唤醒词判断模型对经过放大处理的目标语音数据进行处理,获得第二判断结果,包括:
响应于第一判断结果满足第一判据,获取目标语音数据对应的幅度值;
将目标语音数据对应的幅度值与唤醒词判断模型对应的指定幅度值的比值,确定为放大系数;
根据放大系数,对目标语音数据进行放大处理;
将经过放大处理的目标语音数据通过唤醒词判断模型进行处理,获得第二判断结果。
在一种可能的实现方式中,第一判据对应的概率值低于第二判据对应的概率值。
在一种可能的实现方式中,唤醒词判断模型是基于深度神经网络dnn的机器学习模型。
在一种可能的实现方式中,该方法还包括:
在通过唤醒词判断模型对目标语音数据进行处理,获得第一判断结果之前,对目标语音数据进行降噪处理;
确定目标语音数据对应的幅度值。
在一种可能的实现方式中,该方法还包括:
在通过唤醒词判断模型对目标语音数据进行处理,获得第一判断结果之前,将目标语音数据存储在指定的循环缓冲区中。
在一种可能的实现方式中,该方法还包括:
在响应于第一判断结果为满足第一判据,通过唤醒词判断模型对经过放大处理的目标语音数据进行处理,获得第二判断结果之前,响应于第一判断结果为不满足第一判据,将循环缓冲区中的目标语音数据循环通过唤醒词判断模型,直到获得第一判断结果为满足第一判据。
综上所述,通过对目标语音数据进行初步判断,初步判断通过的目标语音数据进行放大处理后,进行再次判断确定目标语音数据是否为唤醒词,从而解决了直接对目标语音数据进行线性放大导致数据失真的问题,保证了唤醒词识别的效果,提高了唤醒词识别的准确度。
图3是根据另一示例性实施例示出的一种唤醒词识别的方法流程图。该唤醒词识别方法可以由计算机设备执行,其中,该计算机设备可以包括上述图1所示的唤醒词识别设备100。如图3所示,该唤醒词识别方法可以包括如下步骤:
在步骤301中,获取目标语音数据。
在本公开实施例中,计算机设备可以通过语音识别技术接收到一段固定长度的语音数据,作为目标语音数据。
其中,固定长度的语音数据可以是以时间单位进行度量的,开发人员可以预先设置计算机设备实时的,或者,周期性的,接收固定长度的语音数据作为目标语音数据。
比如,计算机设备可以为具有语音识别功能的智能音箱,唤醒词识别设备可以通过麦克风矩阵实时接收外界的语音环境,可以将语音环境中的一整段语音数据分为固定长度为1s的各段语音数据,依次获取为目标语音数据。
其中,目标语音数据用来指示需要进行唤醒词识别的语音数据。目标语音数据可以是通过麦克风组件采集得到的语音数据。
比如,智能音箱设备可以通过预先设定固定的至少一个唤醒词,用来启动该智能音箱设备,从而使智能音箱可以通过语音识别技术实现该智能音箱的各个功能。
在步骤302中,将目标语音数据进行降噪处理。
在本公开实施例中,计算机设备可以将目标语音数据通过用于前端处理的模块,通过前端处理模块可以将目标语音数据进行降噪处理。
在一种可能的实现方式中,接收到的目标语音数据中包含噪声数据和语音数据,对目标语音数据进行降噪处理可以获得需要进行唤醒词识别的目标语音数据。
其中,进行降噪处理的方法可以是自适应滤波器法、谱减法或者维纳滤波法。
在步骤303中,将目标语音数据存储在指定的循环缓冲区中。
在本公开实施例中,经过降噪处理的目标语音数据可以存储在一个循环缓冲区中,以供计算机设备调取目标语音数据进行接下来的处理。
在一种可能的实现方式中,循环缓冲区用来暂时缓存全部或者部分目标语音数据。
其中,循环缓冲区可以是一个固定大小的存储空间。
在步骤304中,确定目标语音数据对应的幅度值。
在本公开实施例中,计算机设备可以通过将目标语音数据通过用于检测语音信号幅度的模块,检测出目标语音数据对应的幅度值。
在一种可能的实现方式中,目标语音数据对应的语音信号的幅度值可以通过检测进行确定。
在步骤305中,将目标语音数据输入到唤醒词判断模型中。
其中,唤醒词判断模型是一种神经网络模型。
比如,唤醒词判断模型是包括深度神经网络(deepneuralnetworks,dnn)在内的一种神经网络模型。唤醒词判断模型也可以是循环神经网络(recurrentneuralnetworks,rnn)模型、嵌入(embedding)模型、梯度提升决策树(gradientboostingdecisiontree,gbdt)模型等。
在一种可能的实现方式中,目标语音数据通过输入到唤醒词判断模型中,可以输出得到包括该段目标语音数据为唤醒词和为非唤醒词的概率值中的至少一种。
在步骤306中,获取输出的目标语音数据对应的唤醒概率值。
在本公开实施例中,计算机设备可以通过将目标语音数据输入到唤醒词判断模型中,获取输出的该目标语音数据对应的唤醒概率值。
其中,唤醒概率值可以用于指示唤醒词判断模型输出的目标语音数据为唤醒词的概率。
比如,当目标语音数据为a时,通过将该目标语音数据输入到唤醒词判断模型中,该唤醒词判断模型根据预先设置的唤醒词为a,对该目标语音数据a进行唤醒词判断,可以得到该目标语音数据a为唤醒词a的概率值,即唤醒概率值为0.6。
在一种可能的实现方式中,在目标语音数据输入到唤醒词判断模型之前,将该目标语音数据通过用于信号幅度放大的模块,将该目标语音数据进行放大系数为1的放大处理。
其中,放大系数为1可以表示对该目标语音数据对应的信号幅度不进行线性放大处理。
在步骤307中,将唤醒概率值与第一判据进行比较,确定第一判断结果。
在本公开实施例中,计算机设备通过将获取到的目标语音数据对应的唤醒概率值与预先设置的第一判据进行数值大小的比较,根据数值大小确定第一判断结果。
在一种可能的实现方式中,第一判据为预先设置的概率数值较小的概率值标准。
其中,当获取到的目标语音数据对应的唤醒概率值大于或者等于第一判据对应的概率值标准时,可以确定第一判断结果为满足第一判据,也可以表示该目标语音数据通过第一次的唤醒词判断,可以进行接下来的唤醒词判断。
比如,当获取到的目标语音数据a对应的唤醒概率值为0.7时,并且预先设定的第一判据的概率值为0.6时,根据0.7大于0.6,可以确定第一判断结果为满足第一判据。
其中,当获取到的目标语音数据对应的唤醒概率值小于第一判据对应的概率值标准时,可以确定第一判断结果为不满足第一判据,也可以表示该目标语音数据通过第一次的唤醒词判断的结果为非唤醒词,无法进行第二次的唤醒词判断。
比如,当获取到的目标语音数据a对应的唤醒概率值为0.5时,并且预先设定的第一判据的概率值为0.6时,根据0.5小于0.6可以确定第一判断结果为不满足第一判据。
在步骤308中,响应于第一判断结果为不满足第一判据,将循环缓冲区中的目标语音数据循环通过唤醒词判断模型,直到获得第一判断结果为满足第一判据。
在本申请实施例中,当根据第一判断结果不满足第一判据,可以调取缓存在循环缓冲区中的目标语音数据,继续进行步骤305至步骤307中的内容,直到获得第一判断结果为满足第一判据的情况,可以继续进行如下步骤。
通过循环进行目标语音数据的第一判断结果的获取判断,可以减少由于干扰对第一判断结果的获取失误情况,从而提高目标语音数据进行唤醒词判断的准确度。
在步骤309中,响应于第一判断结果满足第一判据,获取目标语音数据对应的幅度值。
在本公开实施例中,当获取到的第一判断结果满足第一判据时,可以获取该目标语音数据通过检测得到的语音信号幅度值。
其中,该幅度值可以在经过用于幅度检测的模块后,暂时存储在对应的缓存区域中。
比如,当获取到的目标语音数据a对应第一判断结果为满足第一判据时,计算机设备可以从缓存区域中调取该目标语音数据a经过用于幅度检测的模块后检测得到的幅度值m。
在步骤310中,将目标语音数据对应的幅度值与唤醒词判断模型对应的指定幅度值的比值,确定为放大系数。
在本公开实施例中,计算机设备可以将获取到的目标语音数据对应的幅度值与该唤醒词判断模型对应的指定幅度值进行比值计算,将计算结果确定为放大系数。
其中,唤醒词判断模型对应的指定幅度值可以用来指示该唤醒词判断模型对语音信号的唤醒词判断效果最好的语音信号对应的幅度值。
比如,计算机设备可以从缓存区域中调取该目标语音数据a经过用于幅度检测的模块后检测得到的幅度值m。并且可以获得该唤醒词判断模型对语音信号的唤醒词判断效果最好的语音信号对应的幅度值n,可以根据计算确定放大系数k的数值,计算方法为k=n/m。
在步骤311中,根据放大系数,对目标语音数据进行放大处理。
在本公开实施例中,计算机设备可以根据计算得到的放大系数,根据放大系数对目标语音数据对应的语音信号进行幅度线性放大。
在一种可能的实现方式中,通过从循环缓冲区调取目标语音数据,对目标语音数据进行放大处理。
比如,计算机设备可以从缓存区域中调取该目标语音数据a,根据计算确定的放大系数k,将该目标语音数据a对应的语音信号进行幅度线性放大,得到幅度线性放大后的目标语音数据a。
在步骤312中,将经过放大处理的目标语音数据通过唤醒词判断模型,获得第二判断结果。
在本公开实施例中,计算机设备可以将经过放大处理的目标语音数据输入到唤醒词判断模型中,可以输出得到至少包括该经过放大处理的目标语音数据为唤醒词和为非唤醒词的概率值作为第二判断结果。
其中,第二判断结果可以用于指示目标语音数据是否满足第二判据。
在一种可能的实现方式中,第二判据为预先设置的概率数值较大的概率值标准,并且,第一判据对应的概率值低于第二判据对应的概率值。
在一种可能的实现方式中,幅度线性放大后的目标语音数据输入到唤醒词判断模型中,输出得到的该目标语音数据对应的唤醒概率值,通过将将唤醒概率值与第二判据进行比较,确定第二判断结果。
其中,当获取到的幅度线性放大后的目标语音数据对应的唤醒概率值大于或者等于第二判据对应的概率值标准时,可以确定第二判断结果为满足第二判据,也可以表示该目标语音数据通过第一二次的唤醒词判断。
当获取到的幅度线性放大后的目标语音数据对应的唤醒概率值小于第二判据对应的概率值标准时,可以确定第二判断结果为不满足第二判据,也可以表示该目标语音数据通过第二次的唤醒词判断结果为非唤醒词。
比如,通过将幅度线性放大后的目标语音数据a输入到唤醒词判断模型中,输出得到的该目标语音数据a对应的唤醒概率值为0.95,并且预先设定的第二判据的概率值为0.9时,根据0.95大于0.9可以确定第二判断结果为满足第二判据。
在步骤313中,根据第二判断结果,确定目标语音数据是否为唤醒词。
在本公开实施例中,当第二判断结果为满足第二判据时,可以确定目标语音数据为唤醒词,当第二判断结果为不满足第二判据时,可以确定目标语音数据为非唤醒词。
其中,唤醒词可以是用于触发唤醒语音设备的词。
图4是本实施例涉及的一种唤醒词识别的框架流程图,如图4所示,将语音信号进行输入(s41),将语音信号经过前端处理进行降噪处理(s42),降噪处理之后的语音信号可以经过幅度检测模块进行幅度值检测(s43),然后,幅度线性放大模块根据幅度检测模块的结果以及唤醒词判断模型计算输出的判据来决定是否将信号进行放大(s44),最后,将放大后的信号输入给唤醒词判断模型(s45),唤醒词判断模型经过宽松判据的策略之后若判断唤醒(s46),将使线性放大模块对信号进行放大,然后再重新通过严格判据的策略,判断是否能够唤醒,如果能唤醒,确定此时唤醒,否则确定不会唤醒(s47)。
图5是本实施例涉及的一种唤醒词识别过程的流程图,如图5所示,语音数据通过幅度检测(s51)的同时缓冲在一个固定大小的循环缓冲区中(s56),接着通过放大系数为1的放大模块,也就是不对信号进行放大(s52),然后通过输入唤醒词判断模型(s53),然后用极为宽松的策略作为判据(s54),根据输出结果判断是否为唤醒词(s55),若没有唤醒,继续重复执行s52到s55的过程,若唤醒成功,将循环缓冲区中的语音数据调取出来,若模型对信号幅度值为n的信号唤醒效果最好,那么此时经过的放大器的系数为期待信号的幅度n检测到的信号幅度值为m,则放大系数可以确定为k=n/m(s57),接着通过输入唤醒词判断模型(s58),之后使用严格判据进行唤醒词第二次判断(s59),判断该语音数据是否可以唤醒(s510),若唤醒成功则该流程结束,否则重新开始唤醒词判断。
综上所述,通过对目标语音数据进行初步判断,初步判断通过的目标语音数据进行放大处理后,进行再次判断确定目标语音数据是否为唤醒词,从而解决了直接对目标语音数据进行线性放大导致数据失真的问题,保证了唤醒词识别的效果,提高了唤醒词识别的准确度。
图6是根据一示例性实施例示出的一种唤醒词识别的装置的框图,如图6所示,该唤醒词识别的装置可以通过硬件或者软硬结合的方式实现为计算机设备中的全部或者部分,以执行图2或图3对应实施例所示的方法的全部或部分步骤。该唤醒词识别的装置可以包括:
数据获取模块610,用于获取目标语音数据;
第一结果获取模块620,用于通过唤醒词判断模型对所述目标语音数据进行处理,获得第一判断结果,所述第一判断结果用于指示所述目标语音数据是否满足第一判据;
第二结果获取模块630,用于响应于所述第一判断结果为满足所述第一判据,通过所述唤醒词判断模型对经过放大处理的所述目标语音数据进行处理,获得第二判断结果,所述第二判断结果用于指示所述目标语音数据是否满足第二判据;
唤醒词确定模块640,用于根据所述第二判断结果,确定所述目标语音数据是否为唤醒词。
在一种可能的实现方式中,所述第一结果获取模块620,包括:
数据输入子模块,用于将所述目标语音数据输入到所述唤醒词判断模型;
概率获取子模块,用于获取输出的所述目标语音数据对应的唤醒概率值,所述唤醒概率值用于指示所述唤醒词判断模型输出的所述目标语音数据为唤醒词的概率;
概率比较子模块,用于将所述唤醒概率值与所述第一判据进行比较,确定所述第一判断结果。
在一种可能的实现方式中,所述第二结果获取模块630,包括:
幅度获取子模块,用于响应于所述第一判断结果满足所述第一判据,获取所述目标语音数据对应的幅度值;
放大系数确定子模块,用于将所述目标语音数据对应的幅度值与所述唤醒词判断模型对应的指定幅度值的比值,确定为放大系数;
数据放大子模块,用于根据所述放大系数,对所述目标语音数据进行所述放大处理;
第二结果获取子模块,用于将经过所述放大处理的所述目标语音数据通过所述唤醒词判断模型,获得第二判断结果。
在一种可能的实现方式中,所述第一判据对应的概率值低于所述第二判据对应的概率值。
在一种可能的实现方式中,所述唤醒词判断模型是基于深度神经网络dnn的机器学习模型。
在一种可能的实现方式中,所述装置还包括:
数据降噪模块,用于在所述通过唤醒词判断模型对所述目标语音数据进行处理,获得第一判断结果之前,对所述目标语音数据进行降噪处理;
幅度值确定模块,用于确定所述目标语音数据对应的幅度值。
在一种可能的实现方式中,所述装置还包括:
数据存储模块,用于在确定所述目标语音数据对应的幅度值之前,将所述目标语音数据存储在指定的循环缓冲区中。
在一种可能的实现方式中,所述装置还包括:
循环比较模块,用于在响应于所述第一判断结果为满足所述第一判据,通过所述唤醒词判断模型对经过放大处理的所述目标语音数据进行处理,获得第二判断结果之前,响应于所述第一判断结果为不满足所述第一判据,将所述循环缓冲区中的所述目标语音数据循环通过所述唤醒词判断模型,直到获得所述第一判断结果为满足所述第一判据。
综上所述,通过对目标语音数据进行初步判断,初步判断通过的目标语音数据进行放大处理后,进行再次判断确定目标语音数据是否为唤醒词,从而解决了直接对目标语音数据进行线性放大导致数据失真的问题,保证了唤醒词识别的效果,提高了唤醒词识别的准确度。
需要说明的一点是,上述实施例提供的装置在实现其功能时,仅以上述各个功能模块的划分进行举例说明,实际应用中,可以根据实际需要而将上述功能分配由不同的功能模块完成,即将设备的内容结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本公开一示例性实施例提供了一种唤醒词识别的装置,该唤醒词识别的装置可以通过硬件或者软硬结合的方式实现为计算机设备的全部或者部分,能够实现本公开上述图2或图3任一所示实施例中的全部或部分步骤,该唤醒词识别的方法可以由计算机设备执行,其中,该计算机设备可以为上述图1所示的唤醒词识别设备100。该唤醒词识别的装置还包括:处理器、用于存储处理器可执行指令的存储器;
其中,处理器被配置为:
获取目标语音数据;
通过唤醒词判断模型对所述目标语音数据进行处理,获得第一判断结果,所述第一判断结果用于指示所述目标语音数据是否满足第一判据;
响应于所述第一判断结果为满足所述第一判据,通过所述唤醒词判断模型对经过放大处理的所述目标语音数据进行处理,获得第二判断结果,所述第二判断结果用于指示所述目标语音数据是否满足第二判据;
根据所述第二判断结果,确定所述目标语音数据是否为唤醒词。
在一种可能的实现方式中,所述通过唤醒词判断模型对所述目标语音数据进行处理,获得第一判断结果,包括:
将所述目标语音数据输入到所述唤醒词判断模型;
获取输出的所述目标语音数据对应的唤醒概率值,所述唤醒概率值用于指示所述唤醒词判断模型输出的所述目标语音数据为唤醒词的概率;
将所述唤醒概率值与所述第一判据进行比较,确定所述第一判断结果。
在一种可能的实现方式中,所述响应于所述第一判断结果为满足所述第一判据,通过所述唤醒词判断模型对经过放大处理的所述目标语音数据进行处理,获得第二判断结果,包括:
响应于所述第一判断结果满足所述第一判据,获取所述目标语音数据对应的幅度值;
将所述目标语音数据对应的幅度值与所述唤醒词判断模型对应的指定幅度值的比值,确定为放大系数;
根据所述放大系数,对所述目标语音数据进行所述放大处理;
将经过所述放大处理的所述目标语音数据通过所述唤醒词判断模型进行处理,获得第二判断结果。
在一种可能的实现方式中,所述第一判据对应的概率值低于所述第二判据对应的概率值。
在一种可能的实现方式中,所述方法还包括:
在所述通过唤醒词判断模型对所述目标语音数据进行处理,获得第一判断结果之前,对所述目标语音数据进行降噪处理;
确定所述目标语音数据对应的幅度值。
在一种可能的实现方式中,所述方法还包括:
在所述通过唤醒词判断模型对所述目标语音数据进行处理,获得第一判断结果之前,将所述目标语音数据存储在指定的循环缓冲区中。
在一种可能的实现方式中,所述方法还包括:
在响应于所述第一判断结果为满足所述第一判据,通过所述唤醒词判断模型对经过放大处理的所述目标语音数据进行处理,获得第二判断结果之前,响应于所述第一判断结果为不满足所述第一判据,将所述循环缓冲区中的所述目标语音数据循环通过所述唤醒词判断模型,直到获得所述第一判断结果为满足所述第一判据。
综上所述,通过对目标语音数据进行初步判断,初步判断通过的目标语音数据进行放大处理后,进行再次判断确定目标语音数据是否为唤醒词,从而解决了直接对目标语音数据进行线性放大导致数据失真的问题,保证了唤醒词识别的效果,提高了唤醒词识别的准确度。
图7是根据一示例性实施例示出的一种计算机设备的结构示意图。所述计算机设备700包括中央处理单元(centralprocessingunit,cpu)701、包括随机存取存储器(randomaccessmemory,ram)702和只读存储器(read-onlymemory,rom)703的系统存储器704,以及连接系统存储器704和中央处理单元701的系统总线705。所述计算机设备700还包括帮助计算机设备内的各个器件之间传输信息的基本输入/输出系统(input/output,i/o系统)706,和用于存储操作系统713、应用程序714和其他程序模块715的大容量存储设备707。
所述基本输入/输出系统706包括有用于显示信息的显示器708和用于用户输入信息的诸如鼠标、键盘之类的输入设备709。其中所述显示器708和输入设备709都通过连接到系统总线705的输入输出控制器710连接到中央处理单元701。所述基本输入/输出系统706还可以包括输入输出控制器710以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器710还提供输出到显示屏、打印机或其他类型的输出设备。
所述大容量存储设备707通过连接到系统总线705的大容量存储控制器(未示出)连接到中央处理单元701。所述大容量存储设备707及其相关联的计算机设备可读介质为计算机设备700提供非易失性存储。也就是说,所述大容量存储设备707可以包括诸如硬盘或者只读光盘(compactdiscread-onlymemory,cd-rom)驱动器之类的计算机设备可读介质(未示出)。
不失一般性,所述计算机设备可读介质可以包括计算机设备存储介质和通信介质。计算机设备存储介质包括以用于存储诸如计算机设备可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机设备存储介质包括ram、rom、可擦除可编程只读存储器(erasableprogrammablereadonlymemory,eprom)、带电可擦可编程只读存储器(electricallyerasableprogrammableread-onlymemory,eeprom),cd-rom、数字视频光盘(digitalvideodisc,dvd)或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机设备存储介质不局限于上述几种。上述的系统存储器704和大容量存储设备707可以统称为存储器。
根据本公开的各种实施例,所述计算机设备700还可以通过诸如因特网等网络连接到网络上的远程计算机设备运行。也即计算机设备700可以通过连接在所述系统总线705上的网络接口单元711连接到网络712,或者说,也可以使用网络接口单元711来连接到其他类型的网络或远程计算机设备系统(未示出)。
所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序存储于存储器中,中央处理器701通过执行该一个或一个以上程序来实现图2或图3所示的方法的全部或者部分步骤。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本公开实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机设备可读介质中或者作为计算机设备可读介质上的一个或多个指令或代码进行传输。计算机设备可读介质包括计算机设备存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机设备程序的任何介质。存储介质可以是通用或专用计算机设备能够存取的任何可用介质。
本公开实施例还提供了一种计算机设备存储介质,用于储存为上述测试装置所用的计算机设备软件指令,其包含用于执行上述唤醒词识别的方法所设计的程序。
本公开实施例还提供了一种计算机程序产品,该计算机程序产品存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现上述图2或图3对应实施例所示的方法的全部或者部分步骤。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。
此文章来源于网络,如有侵权,请联系删除