首页 / 专利库 / 信号处理 / 梅尔频率倒谱 / 基于支持向量机的鼾声分类系统

基于支持向量机的鼾声分类系统

阅读:937发布:2020-05-12

专利汇可以提供基于支持向量机的鼾声分类系统专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种基于 支持向量机 的鼾声分类识别系统,包括录音模 块 、声音预处理模块、MFCC特征计算模块、SVM学习模块、模型调优模块。通过录音设备采集鼾声样本,再对鼾声 信号 进行预处理,然后导入到MFCC特征计算模块计算出特征数据,再将数据传入SVM模型中进行学习,最后进行参数的调优来得到最优的模型。该系统能为OSAHS患者的诊断提供帮助。,下面是基于支持向量机的鼾声分类系统专利的具体信息内容。

1.基于支持向量机的鼾声分类系统,其特征在于,包括如下模
录音模块,通过录音设备获取测试者整晚的鼾声;
声音预处理模块,通过对鼾声信号进行端点检测、预加重和分加窗处理,对鼾声信号进行预处理从而提取出每个鼾声信号;
MFCC特征计算模块,通过对预处理过后的鼾声信号进行MFCC特征的提取;
SVM学习模块,通过特征数据和鼾声样本,利用支持向量机进行正常鼾声和OSAHS患者鼾声的识别;
模型调优模块,通过网格搜索和交叉验证相结合的方法进行模型参数的调优,最终得到表现最好的模型。
2.根据权利要求1所述的基于支持向量机的鼾声分类系统,其特征在于,所述声音预处理模块使用端点检测确定鼾声段和无声段从而提取出每个鼾声信号,具体如下:
使用低信噪比下基于谱熵的端点检测算法确定鼾声段和无声段;
所述无声段是两个鼾声段之间的声音片段
3.根据权利要求1所述的基于支持向量机的鼾声分类,其特征在于,所述提取的特征包括:梅尔频率倒谱系数等特征信息。
4.根据权利要求1所述的基于支持向量机的鼾声分类,其特征在于,使用SVM对正常鼾声与OSAHS患者鼾声进行分类识别,具体包括:
训练特征数据得到SVM模型和SVM分类器;
根据训练好的SVM分类器,判断正常鼾声和OSAHS患者鼾声。
5.根据权利要求1所述的基于支持向量机的鼾声分类,其特征在于,所述模型调优模块使用模型调优模块进行参数调优,包括:网格搜索和交叉验证相结合的方法。

说明书全文

基于支持向量机的鼾声分类系统

技术领域

[0001] 本发明属于基于机器学习的分类识别领域,涉及机器学习中支持向量机这一模型的运用。

背景技术

[0002] 阻塞性睡眠呼吸暂停低通气综合症是睡眠呼吸疾病中最主要、发病率最高的一种疾病,打鼾是OSAHS患者中通常都会伴有的特征,患者在睡眠过程中由于上气道阻塞,容易导致窒息甚至是猝死的后果。多导睡眠图监测(PSG)是长期以来用于检查、监测和诊断睡眠呼吸紊乱疾病的一项现有技术手段,但是,这种设备存在着数量稀少、操作繁琐、耗费时间的缺点,而潜在的OSAHS患病的数量相对庞大,导致众多的潜在患者得不到及时的确诊和治疗
[0003] 因此,进行对鼾声的声学特性进行研究是必要的,试图利用鼾声分析技术探寻一种便携、低廉、能广泛用于OSAHS患者诊断的监测系统。鼾声信号包含和携带了人呼吸通道的结构特征和构造信息,本发明通过对多个正常鼾声和OSAHS患者的鼾声样本进行分析和研究,发现与正常鼾声相比,OSAHS患者的呼吸通道发生了结构性的变化,因此鼾声信号可以反应出这是正常鼾声还是OSAHS患者的鼾声,对鼾声信号的检测分析结果能够作为OSAHS患病的判断标准,本发明以MFCC参数作为支持向量机的特征参数,其中MFCC又名Mel频率倒谱系数,它是基于人的听觉机理,即依据人的听觉实验结果来分析语音的频谱,期望能获得好的语音特性。本发明通过把一部分正常鼾声和OSAHS患者的鼾声的MFCC参数作为训练特征输入到支持向量机中,训练好模型后,再通过测试数据进行模型评估,进行模型调整最终形成较好的模型。

发明内容

[0004] 本发明的目的是现有技术的不足,提出一种基于支持向量机的鼾声分类系统,可以为OSAHS患者提供数据支持。
[0005] 本发明解决上述技术问题的技术方案如下:
[0006] 基于支持向量机的鼾声分类系统,所述方法包括:
[0007] 本发明系统包括录音模、声音预处理模块、MFCC特征计算模块、SVM学习模块、模型调优模块。其中录音模块把获取的鼾声信号传入到声音预处理模块,然后预处理模块将信号传入到MFCC特征计算模块,MFCC特征计算模块又将信号传入到SVM学习模块,最后进入模型调优模块进行模型调优。
[0008] 所诉的录音模块通过录音设备获取测试者整晚的鼾声,然后传入到声音预处理模块。
[0009] 所述的声音预处理模块通过对鼾声信号进行端点检测、预加重和分加窗处理,对鼾声信号进行预处理从而提取出每个鼾声信号,然后传入MFCC特征计算模块。
[0010] 所述的MFCC特征计算模块通过对预处理过后的信号进行MFCC特征的提取,然后将数据传入到SVM学习模块。
[0011] 所述的SVM学习模块通过特征数据和鼾声样本,利用支持向量机进行正常鼾声和OSAHS患者鼾声的识别,然后将数据导入到模型调优模块。
[0012] 所述的模型调优模块通过网格搜索和交叉验证相结合的方法进行模型参数的调优,最终得到表现最好的模型。
[0013] 本发明提出一种基于支持向量机的鼾声分类系统,通过录音设备采集鼾声样本,再对鼾声信号进行预处理,然后导入到MFCC特征计算模块计算出特征数据,再将数据传入SVM模型中进行学习,最后进行参数的调优来得到最优的模型。
[0014] 目前的端点检测算法在较高的信噪比下均能给出较高的检测率,但是在低信噪比下却不够理想。传统的能量和过零率特征在低信噪比下已不再稳健,因此本发明利用基于谱熵的端点检测算法,它是从语音信号的频域来进行计算,然后从频谱分布概率来进行语音端点的检测,此方法在较低的信噪比下也能够显著地提高端点检测的准确率,具体包括:
[0015] 先对鼾声数据进行预加重和加窗分帧,帧长为20ms,帧移为10ms,重叠率50%;
[0016] 然后通过快速傅立叶变换得到每一帧信号的频谱,其中每个频谱向量的系数表明了该帧信号在该频率点的大小分布。之后计算每个频谱分量在每帧总能量中所占的比例,将其作为信号能量集中在某频率点的概率,其概率密度函数定义为:
[0017]
[0018] i=1,…,N
[0019] 式中,S(fi)是fi的能量,Pi是相应的概率密度,N是FFT中频率成分的所有点数。由于语音信号的绝大部分能量集中200Hz~3500Hz之间,所以,为了集中计算谱熵以增加语音和非语音在概率密度函数中的区分性,我们把200Hz~3500Hz之外的频率分量置为0,即:
[0020] s(fi)=0,fi<200Hz或fi>3500Hz
[0021] 相应的每一帧的谱熵定义如下:
[0022]
[0023] 通过熵函数就可以计算每帧语音信号的谱熵,并跟阈值比较,就可以检测出语音的起止点。
[0024] 所述对鼾声信号进行其他预处理,具体包括:
[0025] 从语音信号的频谱图中可以看出,频率越高的地方,语音信号的成分越小,也就是说语音信号的高频处的频谱比低频处的频谱难求,为此要在语音信号的预处理中进行预加重处理,它的目的是提升高频部分,使语音信号变得平坦这样就能在低频到高频的整个频带中用同样的信噪比来求频谱。
[0026] 预加重通常使用具有6dB/倍频程的提升高频特性的预加重数字滤波器来实现,它一般是一阶有限冲激相应(FIR)滤波器:
[0027] H(z)=1-μz-1
[0028] 式中μ的取值范围是[0.4-1.0]。
[0029] 在进行过预加重处理的信号还要进行加窗和分帧处理。加窗和分帧是实现语音短时分析的手段。
[0030] 通过加窗处理可以把语音信号分为许多个短时的语音段,每个短时的语音段都被称为一帧。帧和帧之间既可以连续,也可以交叠,但是一般都采用有交叠的分帧方法,这样做的目的是为了使帧与帧之间平滑过渡,保持语音信号的连续性,前一帧和后一帧的交叠部分称为帧移。帧移和帧长的比值一般取为0-0.5之间。
[0031] 分帧是用可以移动的窗口进行加权的方法来实现的,窗口的长度是有限长的,设窗函数为w(n),用窗函数乘以语音信号s(n),从而形成加窗的语音信号:
[0032] sw(n)=s(n)*w(n)
[0033] 在语音信号数字处理中最常用的窗函数是矩形窗和汉明窗等,它们的表达式如下:
[0034] 矩形窗:
[0035]
[0036] 汉明窗:
[0037]
[0038] 窗函数的选取对于语音信号的短时参数的影响非常大。为此应该选择合适的窗函数,使语音信号的短时参数能更贴切地反映出语音信号的特征变化。
[0039] 汉明窗的主瓣宽度为 矩形窗的主瓣宽度为 由此可知汉明窗的主瓣宽度比矩形窗大一倍,即带宽约增加一倍,同时它的带外衰减也比矩形窗大。虽然矩形窗的谱平滑性能比较好,但是却损失了高频分量,从而造成了波形细节的部分丢失,所以从这一方面来看汉明窗比矩形窗更为适合应用于语音信号的加窗分帧。
[0040] 所述进行鼾声信号的特征提取,具体特征信息包括:
[0041] Mel频率倒谱系数的分析是基于人的听觉机理,即依据人的听觉实验结果来分析语音的频谱,期望能获得好的语音特性。MFCC分析依据的听觉机理有两个。
[0042] 第一,人的主观感知频域的划定并不是线性的,根据Stevens和Volkman的工作,有下面的公式:
[0043]
[0044] 式中,Fmel是以美尔(Mel)为单位的感知频率;f是以Hz为单位的实际频率。
[0045] 第二,临界带。频率带相应于人基底膜分成许多很小的部分,每一部分对应一个频率群,对应于同一频率群的那些频率的声音,在大脑中是叠加在一起进行评价的。按临界带的划分,将语音在频域上划分成一系列的频率群组成了滤波器组,即Mel滤波器组。
[0046] 在语音的频率范围内设置若干带通滤波器Hm(k),0≤m角形滤波特性,其中心频率为f(m),在Mel频率范围内,这些滤波器是等带宽的。每个带通滤波器的传递函数为
[0047]
[0048] 0≤m≤M F(m)可以用下面的方法加以定义:
[0049]
[0050] 式中,fl为滤波器频率范围的最低频率;fh为滤波器频率范围的最高频率;N为DFT(或FFT)时的长度;fs为采样频率;Fmel的逆函数 为
[0051]
[0052] MFCC特征提取分为五步:
[0053] (1)预处理:预加重、分帧、加窗。
[0054] (2)快速傅里叶变换
[0055] 对每一帧信号进行FFT变换,从时域数据转变为频域数据:
[0056] X(i,k)=FFT[xi(m)]
[0057] (3)计算谱线能量
[0058] 对每一帧FFT后的数据计算谱线的能量:
[0059] E(i,k)=|X(i,k)|2
[0060] (4)计算通过Mel滤波器的能量
[0061] 在频域中相当于把每帧的能量谱E(i,k)与Mel滤波器的频域响应Hm(k)相乘并相加:
[0062]
[0063] 0≤m
[0064] (5)计算DCT倒谱
[0065]
[0066] 式中, FT和FT-1表示傅里叶变换和傅里叶逆变换。
[0067]
[0068] k=0,1,…,N-1
[0069] 式中,参数N是序列x(n)的长度;C(k)是正交因子,可表示为
[0070]
[0071] 把Mel滤波器的能量取对数后计算DCT:
[0072]
[0073] 式中,S(i,m)是Mel滤波器能量;m是指第m个Mel滤波器(共有M个);i是指第i帧;n是DCT后的谱线,mfcc(i,n)就是所求MFCC特征。
[0074] 所述根据正常鼾声与OSAHS患者鼾声的特征信息,使用SVM对这两种鼾声进行分类识别,包括:
[0075] 训练数据得到SVM模型和SVM分类器,具体包括:
[0076] 确定训练样本集 X表示由所述特征信息组成的特征向量,y表示正常鼾声与OSAHS患者鼾声的类型标签,分别取值为+1(正样本)和-1(负样本),n表示训练样本数;
[0077] 在引入松弛变量和核函数的情况下,在超平面集 中寻找最佳分离超平面 使得训练样本集可容忍的情况下上正负样本间隔最大,得到SVM模型和分类器;
[0078] 根据训练好的SVM分类器,判断正常鼾声和OSAHS患者鼾声,具体包括:
[0079] 从鼾声信号中提取特征信息,通过分类器计算后得到一个数值,如果该数值大于0.5,则认为该信号为正常鼾声;如果该数值小于0.5,则认为是OSAHS患者鼾声。
[0080] 所述使用模型调优模块进行参数调优,具体方法包括:
[0081] 网格搜索算法是一种通过遍历给定的参数组合来优化模型表现的方法,以决策树为例,当我们确定了要使用决策树算法的时候,为了能够更好地拟合和预测,需要调整它的参数。在决策树算法中,通常选择的参数是决策树的最大深度。于是我们会给出一系列的最大深度的值,比如{'max_depth':[1,2,3,4,5]},尽可能包含最优最大深度。但是只用一次的结果不能说明某组的参数组合比另外的参数组合好,所以这里引入K折交叉验证,它将其中K-1份作为训练数据,剩下的一份作为验证数据输入到模型中,一共进行K次,将最后K次使用事先选择好的评分方式的评分求平均返回,然后找出最大的一个评分对用的参数组合即最优参数组合,这样能使训练出来的模型有很好的泛化能附图说明
[0082] 图1为本发明的基于支持向量机的鼾声分类系统模块图。

具体实施方式

[0083] 下面结合附图对本发明专利做进一步分析。
[0084] 如图1所示,本发明的基于支持向量机的鼾声分类系统包括录音模块、声音预处理模块、MFCC特征计算模块、SVM学习模块、模型调优模块。其中录音模块把获取的鼾声信号传入到声音预处理模块,然后预处理模块将信号传入到MFCC特征计算模块,MFCC特征计算模块又将信号传入到SVM学习模块,最后进入模型调优模块进行模型调优。
[0085] 所诉的录音模块通过录音设备获取测试者整晚的鼾声,然后传入到声音预处理模块。
[0086] 所述的声音预处理模块通过对鼾声信号进行端点检测、预加重和分帧加窗处理,对鼾声信号进行预处理从而提取出每个鼾声信号,然后传入MFCC特征计算模块。
[0087] 所述的MFCC特征计算模块通过对预处理过后的信号进行MFCC特征的提取,然后将数据传入到SVM学习模块。
[0088] 所述的SVM学习模块通过特征数据和鼾声样本,利用支持向量机进行正常鼾声和OSAHS患者鼾声的识别,然后将数据导入到模型调优模块。
[0089] 所述的模型调优模块通过网格搜索和交叉验证相结合的方法进行模型参数的调优,最终得到表现最好的模型。
[0090] 本发明提出一种基于支持向量机的鼾声分类系统,通过录音设备采集鼾声样本,再对鼾声信号进行预处理,然后导入到MFCC特征计算模块计算出特征数据,再将数据传入SVM模型中进行学习,最后进行参数的调优来得到最优的模型。
[0091] 目前的端点检测算法在较高的信噪比下均能给出较高的检测率,但是在低信噪比下却不够理想。传统的能量和过零率特征在低信噪比下已不再稳健,因此本发明利用基于谱熵的端点检测算法,它是从语音信号的频域来进行计算,然后从频谱分布概率来进行语音端点的检测,此方法在较低的信噪比下也能够显著地提高端点检测的准确率,具体包括:
[0092] 先对鼾声数据进行预加重和加窗分帧,帧长为20ms,帧移为10ms,重叠率50%;
[0093] 然后通过快速傅立叶变换得到每一帧信号的频谱,其中每个频谱向量的系数表明了该帧信号在该频率点的大小分布。之后计算每个频谱分量在每帧总能量中所占的比例,将其作为信号能量集中在某频率点的概率,其概率密度函数定义为:
[0094]
[0095] i=1,…,N
[0096] 式中,S(fi)是fi的能量,Pi是相应的概率密度,N是FFT中频率成分的所有点数。由于语音信号的绝大部分能量集中200Hz~3500Hz之间,所以,为了集中计算谱熵以增加语音和非语音在概率密度函数中的区分性,我们把200Hz~3500Hz之外的频率分量置为0,即:
[0097] s(fi)=0,fi<200Hz或fi>3500Hz
[0098] 相应的每一帧的谱熵定义如下:
[0099]
[0100] 通过熵函数就可以计算每帧语音信号的谱熵,并跟阈值比较,就可以检测出语音的起止点。
[0101] 所述对鼾声信号进行其他预处理,具体包括:
[0102] 从语音信号的频谱图中可以看出,频率越高的地方,语音信号的成分越小,也就是说语音信号的高频处的频谱比低频处的频谱难求,为此要在语音信号的预处理中进行预加重处理,它的目的是提升高频部分,使语音信号变得平坦这样就能在低频到高频的整个频带中用同样的信噪比来求频谱。
[0103] 预加重通常使用具有6dB/倍频程的提升高频特性的预加重数字滤波器来实现,它一般是一阶有限冲激相应(FIR)滤波器:
[0104] H(z)=1-μz-1
[0105] 式中μ的取值范围是[0.4-1.0]。
[0106] 在进行过预加重处理的信号还要进行加窗和分帧处理。加窗和分帧是实现语音短时分析的手段。
[0107] 通过加窗处理可以把语音信号分为许多个短时的语音段,每个短时的语音段都被称为一帧。帧和帧之间既可以连续,也可以交叠,但是一般都采用有交叠的分帧方法,这样做的目的是为了使帧与帧之间平滑过渡,保持语音信号的连续性,前一帧和后一帧的交叠部分称为帧移。帧移和帧长的比值一般取为0-0.5之间。分帧是用可以移动的窗口进行加权的方法来实现的,窗口的长度是有限长的,设窗函数为w(n),用窗函数乘以语音信号s(n),从而形成加窗的语音信号:
[0108] sw(n)=s(n)*w(n)
[0109] 在语音信号数字处理中最常用的窗函数是矩形窗和汉明窗等,它们的表达式如下:
[0110] 矩形窗:
[0111]
[0112] 汉明窗:
[0113]
[0114] 窗函数的选取对于语音信号的短时参数的影响非常大。为此应该选择合适的窗函数,使语音信号的短时参数能更贴切地反映出语音信号的特征变化。
[0115] 汉明窗的主瓣宽度为8π/N,矩形窗的主瓣宽度为4π/N,由此可知汉明窗的主瓣宽度比矩形窗大一倍,即带宽约增加一倍,同时它的带外衰减也比矩形窗大。虽然矩形窗的谱平滑性能比较好,但是却损失了高频分量,从而造成了波形细节的部分丢失,所以从这一方面来看汉明窗比矩形窗更为适合应用于语音信号的加窗分帧。
[0116] 所述进行鼾声信号的特征提取,具体特征信息包括:
[0117] Mel频率倒谱系数的分析是基于人的听觉机理,即依据人的听觉实验结果来分析语音的频谱,期望能获得好的语音特性。MFCC分析依据的听觉机理有两个。
[0118] 第一,人的主观感知频域的划定并不是线性的,根据Stevens和Volkman的工作,有下面的公式:
[0119]
[0120] 式中,Fmel是以美尔(Mel)为单位的感知频率;f是以Hz为单位的实际频率。第二,临界带。频率带相应于人耳基底膜分成许多很小的部分,每一部分对应一个频率群,对应于同一频率群的那些频率的声音,在大脑中是叠加在一起进行评价的。按临界带的划分,将语音在频域上划分成一系列的频率群组成了滤波器组,即Mel滤波器组。
[0121] 在语音的频率范围内设置若干带通滤波器Hm(k),0≤m
[0122]
[0123] 0≤m≤M F(m)可以用下面的方法加以定义:
[0124]
[0125] 式中,fl为滤波器频率范围的最低频率;fh为滤波器频率范围的最高频率;N为DFT(或FFT)时的长度;fs为采样频率;Fmel的逆函数 为
[0126]
[0127] MFCC特征提取分为五步:
[0128] (1)预处理:预加重、分帧、加窗。
[0129] (2)快速傅里叶变换
[0130] 对每一帧信号进行FFT变换,从时域数据转变为频域数据:
[0131] X(i,k)=FFT[xi(m)]
[0132] (3)计算谱线能量
[0133] 对每一帧FFT后的数据计算谱线的能量:
[0134] E(i,k)=|X(i,k)|2
[0135] (4)计算通过Mel滤波器的能量
[0136] 在频域中相当于把每帧的能量谱E(i,k)与Mel滤波器的频域响应Hm(k)相乘并相加:
[0137]
[0138] 0≤m
[0139] (5)计算DCT倒谱
[0140]
[0141] 式中, FT和FT-1表示傅里叶变换和傅里叶逆变换。
[0142]
[0143] k=0,1,…,N-1
[0144] 式中,参数N是序列x(n)的长度;C(k)是正交因子,可表示为
[0145]
[0146] 把Mel滤波器的能量取对数后计算DCT:
[0147]
[0148] 式中,S(i,m)是Mel滤波器能量;m是指第m个Mel滤波器(共有M个);i是指第i帧;n是DCT后的谱线,mfcc(i,n)就是所求MFCC特征。
[0149] 所述根据正常鼾声与OSAHS患者鼾声的特征信息,使用SVM对这两种鼾声进行分类识别,包括:
[0150] 训练数据得到SVM模型和SVM分类器,具体包括:
[0151] 确定训练样本集 X表示由所述特征信息组成的特征向量,y表示正常鼾声与OSAHS患者鼾声的类型标签,分别取值为+1(正样本)和-1(负样本),n表示训练样本数;
[0152] 在引入松弛变量和核函数的情况下,在超平面集 中寻找最佳分离超平面 使得训练样本集可容忍的情况下上正负样本间隔最大,得到SVM模型和分类器;
[0153] 根据训练好的SVM分类器,判断正常鼾声和OSAHS患者鼾声,具体包括:
[0154] 从鼾声信号中提取特征信息,通过分类器计算后得到一个数值,如果该数值大于0.5,则认为该信号为正常鼾声;如果该数值小于0.5,则认为是OSAHS患者鼾声。
[0155] 所述使用模型调优模块进行参数调优,具体方法包括:
[0156] 网格搜索算法是一种通过遍历给定的参数组合来优化模型表现的方法,以决策树为例,当我们确定了要使用决策树算法的时候,为了能够更好地拟合和预测,我们需要调整它的参数。在决策树算法中,我们通常选择的参数是决策树的最大深度。于是我们会给出一系列的最大深度的值,比如{'max_depth':[1,2,3,4,5]},我们会尽可能包含最优最大深度。但是只用一次的结果不能说明某组的参数组合比另外的参数组合好,所以这里引入K折交叉验证,它将其中K-1份作为训练数据,剩下的一份作为验证数据输入到模型中,一共进行K次,将最后K次使用事先选择好的评分方式的评分求平均返回,然后找出最大的一个评分对用的参数组合即最优参数组合,这样能使训练出来的模型有很好的泛化能力。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈