QQ MESSENGER:

E-mail:liyuyang@egosai.com

TEL:400-656-6652

新闻中心/NEWS

壹鸽AI技术小贴士-语音识别前端处理介绍
2020-06-06 14:02:48

万物互联时代,语音识别被视为人机交互的新入口,人与机器人之间通过自然语言交互已成为可能,本周壹鸽科技站将在技术的角度上,为大家介绍语音识别前端处理。
 
前端语音处理,利用信号处理的方法对说话人的语音进行检测、降噪等预处理,以便得到最适合语音识别引擎处理的语音,其主要功能包括端点检测VAD、流式语音智能断句和噪音消除。
 
一、 端点检测
 
语音端点检测是对输入的音频流进行分析,确定客户说话的起点和终止点的处理过程。一旦检测到客户开始说话,语音开始流向识别引擎,直到检测到客户说话结束。这种方式能够使得识别引擎在客户说话的同时开始进行识别,做到最大限度的即时处理。
 
1.1 端点检测过程
1. 基于语音信号的特征,用能量,过零率,熵 (entropy) , 音高 (pitch) 等参数以及它们的衍生参数,来判断信号流中的语音/非语音信号。 
2. 在信号流中检测到语音信号后,判断此处是否是语句的开始或结束点。在商用语音系统中,由于信号多变的背景和自然对话模式而更容易使得句中有停顿(非语音),特别是在爆发声母前总会有无声间隙。因此,这种开始/结束的判定尤为重要。 
 
1.2 端点检测目的
1. 减少识别器的数据处理量。可以大量减少信号传输量及识别器的运算负载,对于语音对话的实时识别有重要作用。 
2. 拒绝非语音的信号,对非语音信号的识别不仅是一种资源浪费,而且有可能改变对话的状态,造成对用户的困扰。 
3. 在需要打断 (barge-in) 功能的系统中,语音的起始点是必须的,在端点检测找到语音的起始点时,系统将停止提示音的播放,完成打断功能。
 
1.3 端点检测对识别系统的影响
随着语音识别应用的发展,越来越多的系统将打断功能作为一种方便有效的应用模式。
而打断功能又直接依赖端点检测,端点检测对打断功能的影响发生在判断语音/非语音的过程出现错误时,表现在过于敏感的端点检测产生的语音信号的误警将产生错误的打断。
例如,提示音被很强的背景噪音或其它人的讲话打断,是因为端点检测错误的将这些信号作为有效语音信号造成的。反之,如果端点检测漏过了事实上的语音部分,而没有检测到语音,系统会表现出没有反应。
在用户讲话时还在播放提示音,端点检测对识别系统的识别效果影响也很大。语音信号的起始点和结束点判断有误,有可能影响整个信号的完整性。在语句的开头或结尾漏掉一些有用的数据。当这种情况发生时,很可能对识别的准确度有特别大影响,不完全的信息会使识别率降低。
 
1.4 商用端点检测应具备的特性: 
1. 端点检测的精确度高。 
2. 更好的背景噪声和语音模型:使系统对背景噪声,其它说话人和非语音的声音有很好的拒绝功能。 
3. 默认的系统相关参数有很好的适用性,而在有需要的现实环境中,可以通过系统调节来适应通话环境,改善端点检测的效果。 
4. 对信道有自适应能力:在对话开始后能很快适应当前的信道特征,使得端点检测的准确度有进一步提高。 
5. 独特的识别服务器的反馈和非语音持续时间双重结束点判定功能,有效的改善了语音结束点的判定。特别是对较长的语句效果更加突出。 
 
基于可靠的端点检测技术和智能反馈,智能打断功能不仅应该在一般的环境下工作出色,而且能有效的拒绝环境噪声,非语音的高强噪声(呼吸,关门等) 环境中其它人的声音。
 
二、流式语音智能断句
 
现有的语音处理方案是先用语音活动检测模块对语音进行断句,再将断开的语音进行自动语音识别。但是,在电话语音交互场景中,VAD面临着两个难题:
1. 如何可以成功检测到最低能量的语音(灵敏度)?
2. 如何在多变的复杂噪声环境下成功检测(漏检率和虚检率)?
 
漏检反应的是原本是语音但是没有检测出来,而虚检率反应的是不是语音信号而被检测成语音信号的概率。相对而言漏检是不可接受的,而虚检可以通过后端的ASR和NLP算法进一步过滤,但是虚检会带来系统资源利用率上升,以及造成响应不及时。
 
对于在目标人交互语音前发生虚检,主要问题是增加ASR识别处理数据量,如下图所示:


 
对于在目标人交互语音后发生虚检,不仅增加ASR识别处理数据量,还会造成响应不及时。现有语音处理方案存在断句不准确的问题,主要有两个主要缺点,一是无法过滤噪音和无效的语音;另外就是对说话人的要求较高,中间不能有停顿,如果句间停顿时长设置的太短,容易造成截断;句间停顿时长设置太长,又会造成响应不及时。如下图所示:


 
流式语音智能断句模块是主要由语音识别模块、信息流聚合模块、动态窗口设定模块、断句识别模块构成。其中:
 
1、语音识别模块用于接收并识别语音实时流,并按照指定的频率输出带有时序的语音识别结果;
2、信息流聚合模块用于对带有时序的语音识别结果进行优化处理,并整合经过优化处理后的带有时序的语音识别结果,以形成语音识别结果序列;
3、动态窗口设定模块用于从语音识别结果序列中选择指定范围的文本,进而将指定范围的文本用于断句分析;
4、断句识别模块用于分析指定范围的文本的语义,并根据语义确定是否进行断句。
 
 
 
三、噪音消除
 
引擎具备噪音消除功能,在实际应用过程中背景噪声对于语音识别应用是一个现实的挑战,即便说话人处理安静的办公室环境,在电话语音通话过程中也难免会有一定噪声,语音识别系统需具备高效的噪音消除能力,以适应客户在千差万别的环境中使用的要求。
 
关于语音识别前端处理的介绍就到这了,壹鸽科技后续将会为大家带来更多相关的技术讲解,敬请期待把!