智能语音切轴的方法、信息数据处理终端、计算机程序与流程

文档序号:14951841发布日期:2018-07-17 22:43阅读:188来源:国知局

本发明属于计算机软件技术领域,尤其涉及一种智能语音切轴的方法、信息数据处理终端、计算机程序。



背景技术:

目前,业内常用的现有技术是这样的:语言是人类交换信息最方便、最快捷的一种方式,伴随现代网络技术的飞速发展,视频流量逐渐成为现代网络世界主流,同时视频传播形式趋于多样化。视频由图像及语音组合而成,在今天越来越发达的技术支持下,语音识别技术成为研究热点。语音切分是语音识别技术必经的第一道关口,语音切分是指在一段语音文件中,利用计算机程序自动地分割出语音段中的基本单元。传统的语音切分方法都是采用手工进行的,手工切分当然具备更强的可靠性,但他也存在极大的个人主观性,首先手工切分对人才要求较高,另外,手工切分效率低下,无法满足市场需求。

而机器自动切分技术经过早期发展有初步成果,例如传统的基于能量和过零率的语音切分方法,这种方法的大致步骤如下:

(1)对语音x(n)分帧,每帧记为si(n)中n=1,2,…n,n是时间序列,n是帧长,i表示帧数。

(2)计算每帧的短时能量:

(3)计算每一帧的过零率:

(4)根据语音的短时能量设置门限t1,以确定语音的开始,然后根据背景噪声确定稍低的门限t2,以确定第一级中语音结束点,完成第一级判决。设置t3,确定语音段最终的起止点,完成第二级判决。

(5)检测出的语音段起始点的数值乘以帧移,就可以得到原始语音信号端点的时间信息,从而完成语音的切分。这种语音切分方法计算简单,运算量小,在语音端点检测中是很常用的方法,它在低噪声情况下,切分效果很好,正确率较高。但是这种算法最主要的缺陷就是,在信噪比不高的环境下很难达到理想的效果。通常情况下,需要识别的语音周围环境都有一定的噪声,当有噪声影响时,此方法不具有良好的鲁棒性。

综上所述,现有技术存在的问题是:

(1)手工切分对人才要求较高。

(2)手工切分效率低下,无法满足市场需求。

(3)现有语音切分技术不能在信噪比不高的情况下准确切分。

解决上述技术问题的难度和意义:

随着近年来语音识别系统的高性能需求,需要对大规模的语料进行智能识别,以满足几何数量级增长的视频需求,而采用人工切分工作量巨大,效率低下。利用机器自动切分技术可以大幅度提高切分效率,而传统的自动切分技术在准确度上无法满足现有需求,因此,找到一种快速、高效的语音自动切分方法十分重要。

要解决效率及准确度问题,需要解决以下难题:

(1)根据语言结构特征选择适合切分的语音基元。

(2)排除噪声和无声等非语音信号的干扰,减少运算量,节省处理时间,提高切分准确率。

(3)根据不同语言特征训练机器提取语音的声学特征,取出反映语音信号特征的关键特征参数形成特征矢量序列,去掉无关的信息。



技术实现要素:

针对现有技术存在的问题,本发明提供了一种智能语音切轴的方法、信息数据处理终端、计算机程序,对大量没有标注的音频数据进行标注,利用大量标注的数据对语音进行训练,得到量化模型,从而可以确定语音边界及杂音过滤,方案将深度学习运用于音频切轴的实际应用中,起到了非常好的效果。

本发明是这样实现的,一种智能语音切轴的方法,所述智能语音切轴的方法包括:预训练使用大量的没有标注的数据通过无监督学习的算法进行模型参数的初始化;模型精细调整使用较少量的标注数据,利用传统的神经网络的学习算法学习模型的参数。判断音频前面部分连续m0帧的能量值低于一个模型权重,接下来的连续m0帧能量值大于模型权重,则在语音能量值增大的地方就是语音的前端点。同样的,如果连续的若干帧语音能量值较大,随后的帧能量值变小,并且持续一定的时长,可以认为在能量值减小的地方即是语音的后端点。通过确定前后端点即可确定时间轴,在确定时间轴之前还要对音频进行背景降噪,方法首先将这一小段背景音进行分帧,并按照帧的先后顺序进行分组,每组的帧数可以为10或其他值,组的数量一般不少于5,随后对每组背景噪声数据帧使用傅里叶变换得到其频谱,再将各频谱求平均后得到背景噪声的频谱。

进一步,所述预训练通过逐层训练受限波尔兹曼机得到生成模型dbn;

所述模型精细调整对dbn添加一个与dnn模型训练目标相关的softmax输出层或线性回归层;采用传统的bp算法对模型参数进行调整。

本发明的另一目的在于提供一种实现所述智能语音切轴的方法的计算机程序。

本发明的另一目的在于提供一种实现所述智能语音切轴的方法的信息数据处理终端。

本发明的另一目的在于提供一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行所述的智能语音切轴的方法。

本发明的另一目的在于提供一所述智能语音切轴的方法的智能语音切轴的系统,所述智能语音切轴的系统包括:

加窗分帧模块,用于让窗序列沿着语音样点值序列逐帧从左向右移动,对语音信号进行分帧;

人为添加经验性约束模块。

信息熵的概念由香农首提出,最初是热力学中的一个概念,在信息论中,熵函数是用来表征信源输出的平均信息量的。一个系统混乱度越高,它的信息熵就越高,一个系统越是有一定规律可循,它的信息熵就越低。在语音信号中语音段因为是人发出的声音,帧与帧之间存在着一定的联系,所以语音段的信息熵就低。相反,背景噪声基本上都是随机的,所以信息熵就高。充分利用这个差异,就能实现基于谱熵的语音自动分割算法。

为了提高辨别语音段和噪声段的能力,需要人为做出一些经验性的约束。由于大部分语音信号都在250-3500hz的频带内,设第k条谱线频率为fk,有

yi(k)=0fk<250hz或fk>3500hz

为了避免某些噪声集中在某个频率对谱熵方法的影响,需设定归一化谱概率密度的上限:

pi(k)=0若pi(k)>0.9

为了消除每帧信号快速傅里叶变换(ftt)后的谱线幅值受噪声影响,把每条谱线的谱熵改为子带的谱熵,设含有噪声的语音信号时域波形为x(n),加窗分帧处理后得到的第i帧语音信号为xi(m),它的离散傅里叶变换(dft)为

求出子带谱熵模块。

子带谱熵的思想是将一帧又进一步分成几个子带,再分别求出每一个子带谱熵,这样一来就消除了每一条谱线幅值会受到噪声影响的问题。设每个子带由4条谱线组成,共有nb个子带,这样第i帧中的第m子带的子带能量为

相应地,子带能量的概率pb(m,i)和子带谱熵hb(i)分别为

在谱熵的计算中引入一个正常量k到概率分布式中得到新的子带能量的概率分布密度公式

比较可得出新的子带谱熵

综上所述,噪声负熵的减小程度与语音的负熵减少程度相比要明显很多,而且,不同的噪声的谱熵区别不是十分明显,这就使得容易设定自动分割的门限值。因此在噪声环境下,引入正常量k后语音信号和噪声信号的区分度能得以提高。

双门限法端点检测模块,用于从包含语音的一段信号中确定出语音的起点及结束点;

声学特征提取模块,用于提取出反映语音信号特征的关键特征参数形成特征矢量序列,去掉无关的信息;

进一步,所述双门限法端点检测模块对于每个特征参数都设定有两个门限,当语音信号参数值高于设定的第一个较低的门限时,说明有一定可能进入人声段,此时判决继续;当语音信号在此基础上超过预先设置好的第二个较高的门限,并且持续有几帧的时长时,认为语音信号进入了人声段;

所述声学特征提取模块包括:

线性预测系数单元,用于分别对应清音和浊音,每一段声管则对应一个lpc模型的极点;极点个数在12-16个,可清晰地描述信号的特征;

mel频率倒谱系数参数单元,用于用fft将时域信号转化成频域,对其对数能量谱用依照mel刻度分布的三角滤波器组进行卷积,对各个滤波器的输出构成的向量进行离散余弦变换dct,取前n个系数;在sphinx中也是用mfcc特征的,用帧frames去分割语音波形,每帧大概10ms,每帧提取代表该帧语音的39个数字,39个数字也就是该帧语音的mfcc特征,用特征向量来表示。

本发明的另一目的在于提供一种实现所述智能语音切轴的系统的计算机程序。

本发明的另一目的在于提供一种实现所述智能语音切轴的系统的信息数据处理终端。

本发明的另一目的在于提供一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如所述的智能语音切轴的系统。

综上所述,本发明的优点及积极效果为:通过加窗分帧技术得到有效的语音段,获得连续、稳定的语音信号,减小识别误差,提高识别速度。子带谱熵,有效增强语音信号,辨别非有用的语音信号的能力即排除噪声干扰,降低误差,可对语音识别准确率提高50%。双门限检测可以较为准确地检测出在高脉冲噪声环境中语音段的起始点,能够有效解决背景噪声问题,使语音识别准确率提高到93%。声学特征提取可以根据更为接近人的声学特征提取语音特征矢量序列,去除背景噪声、信道失真等情况,将语音识别准确率提高到94.7%。

附图说明

图1是本发明实施例提供的智能语音切轴的方法流程图。

图2是本发明实施例提供的智能语音切轴的系统结构示意图;

图中:1、加窗分帧模块;2、人为添加经验性约束模块;3、求出子带谱熵模块;4、双门限法端点检测模块;5、声学特征提取模块。

图3是本发明实施例提供的智能语音切轴的方法实现流程图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

在如今人工智能技术迅速发展的情况下,将人工智能技术应用在语音切分上成为一大热点。

如图1所示,本发明实施例提供的智能语音切轴的方法包括以下步骤:

s101:使用大量的没有标注的数据通过无监督学习的算法来进行模型参数的初始化,称为预训练(pre—training);

s102:使用较少量的标注数据,利用传统的神经网络的学习算法(如bp算法)来学习模型的参数,称为模型精细调整(fine—tuning)。

在本发明的优选实施例中,步骤s102:其中pre—training主要是通过逐层训练受限波尔兹曼机(restrictedboltzmannmachine,rbm)得到一个生成模型dbn;fine—tuning过程是对dbn添加一个与dnn模型训练目标相关的softmax输出层或线性回归层;然后采用传统的bp算法对模型参数进行精细的调整。

如图2所示,本发明实施例提供的智能语音切轴的系统包括:

加窗分帧模块1,用于让窗序列沿着语音样点值序列逐帧从左向右移动,对语音信号进行分帧;

人为添加经验性约束模块2,用于人为添加经验性约束;

求出子带谱熵模块3,用于将一帧又进一步分成几个子带,再分别求出每一个子带谱熵;

双门限法端点检测模块4,用于从包含语音的一段信号中确定出语音的起点及结束点;

声学特征提取模块5,用于提取出反映语音信号特征的关键特征参数形成特征矢量序列,去掉那些相对无关的信息。

本发明实施例提供的加窗分帧模块1,加窗是语音信号分帧的基础,即采用可移动的窗长确定的窗口进行加权。一般地,每秒有33-100帧,分帧时设置一个帧移长度,采用交叠的方法进行。选取帧移与帧长的比值为0-1/2。加窗让窗序列沿着语音样点值序列逐帧从左向右移动。常用的窗有两种,一种是矩形窗,一种是汉明窗,两种窗均对应有各自的窗函数。在确定了窗函数以后,可以对语音信号进行分帧,之后要进行运算或变化就是对每一帧进行。通过加窗分帧技术得到有效的语音段,获得连续、稳定的语音信号,减小识别误差。

人为添加经验性约束模块2,人为添加一些经验性约束,如频谱范围设定在250~3500hz,归一化谱概率密度上限设置为0.9。

求出子带谱熵模块3,基于最基本的谱熵原理在语音信号中的应用,为了提高辨别语音信号和非语音段的能力、消除某些能量集中噪声某个特定频率对传统谱熵方法的影响,提出了改进的谱熵法语音自动分割算法。子带谱熵的思想是将一帧又进一步分成几个子带,再分别求出每一个子带谱熵,这样一来就消除了每一条谱线幅值会受到噪声影响的问题。不同的噪声的谱熵区别不是十分明显,使得容易设定自动分割的门限值。有效增强语音信号,辨别非有用的语音信号的能力即排除噪声干扰,降低误差,可对语音识别准确率提高50%。

双门限法端点检测模块4,从包含语音的一段信号中确定出语音的起点及结束点。有效的端点检测不仅能使处理时间减到最少,而且能抑制无声段的噪声干扰,提高语音信号质量。端点检测的常用方法有:能量阈值、基音检测、频谱分析、倒谱分析及lpc(linearpredictioncoeffi-cients)预测残差等。其中基于能量和过零率的双门限判决法最为常用。

与单门限的判断流程不同,双门限检测对于每个特征参数都设定有两个门限。当语音信号参数值高于设定的第一个较低的门限时,说明有一定可能进入人声段,此时判决继续。当语音信号在此基础上超过了预先设置好的第二个较高的门限,并且持续有几帧的时长时,认为语音信号进入了人声段。对人声段终止点的判决大体上就是它的逆过程。当语音信号的参数值低于设定的第一个较高的门限时,说明人声段有可能结束,算法继续对其进行检测,若参数值又低于了设定好的第二个较低的门限并持续了几帧的时长则说明语音信号进入了背景噪声段。可以较为准确地检测出在高脉冲噪声环境中语音段的起始点,能够有效解决背景噪声问题,使语音识别准确率提高到93%。

声学特征提取模块5的提取方法包括:

(1)线性预测系数(lpcc):很好的模拟语音信号,语音信号是由声带振动发出的,声带可以不振动也可以有周期的振动,分别对应清音(consonants)和浊音(vowels),每一段声管则对应一个lpc模型的极点。通常极点个数在12-16个左右,即可清晰地描述信号的特征了。

(2)mel频率倒谱系数(mfcc)参数

人的听觉系统是一种特殊的非线性系统,它对不同频率信号的响应灵敏度有较大区别。mfcc参数比lpc参数更能够充分利用人耳的感知特性提高系统的识别性能,因其良好的抗噪性和鲁棒性而应用广泛。mfcc的计算首先用fft将时域信号转化成频域,之后对其对数能量谱用依照mel刻度分布的三角滤波器组进行卷积,最后对各个滤波器的输出构成的向量进行离散余弦变换dct,取前n个系数。在sphinx中也是用mfcc特征的,用帧frames去分割语音波形,每帧大概10ms,然后每帧提取可以代表该帧语音的39个数字,这39个数字也就是该帧语音的mfcc特征,用特征向量来表示。

在采用最新的声学特征提取技术的情况下,可以根据更为接近人的声学特征提取语音特征矢量序列,去除背景噪声、信道失真等情况,将语音识别准确率提高到94.7%。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用全部或部分地以计算机程序产品的形式实现,所述计算机程序产品包括一个或多个计算机指令。在计算机上加载或执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输)。所述计算机可读取存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solidstatedisk(ssd))等。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

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