基于支持向量机的煤矸识别研究
2021-12-24荆瑞俊
李 黎,熊 英,荆瑞俊
(1.湖北工业大学,湖北 武汉 430068;2.山西农业大学,山西 晋中 030801)
0 引言
每年地下开的煤层产量占煤炭总产量的45%左右,综采工作面在回采过程中,由于断层或煤层厚度变化等出现矸石,是影响采煤质量重要因素[1]。顶煤放落时,依靠工人的耳听、眼观等方式来判断,并以此声音来确定是否放完顶煤。
放煤过程存在粉尘大、光线弱、空间狭窄等现象,难以准确地确定放煤状态;环境条件的恶劣,会严重损害工组人员的身心健康。煤矸石的自动识别技术成为智能化采煤亟待解决的问题。
范振[2]等人考虑到采煤环境对煤与矸石表面的影响,对采集的样本进行了细分,研究分析其图片的灰度特征、纹理特征等信息差异性,采用支持向量机算法对样本进行学习,构建其分类模型。薛光辉[3]等人以采煤口的煤矸石的图像为样本,采用裁剪、灰度变换、增强对比度等方法对原图像进行预处理,用灰度共生矩阵表示样本的15个纹理特征,采用随机森林算法对煤矸石的纹理特征进行重要度排序,分析降维前后模型对煤矸石的识别效果。杨晨光[5]对不同类的煤的密度和灰分的关系进行研究分析,得出基于厚度和密度的灰度改变,采用R值法对煤矸与煤的差异识别。
上述研究主要从煤物理特性及表面图片等对矸石进行识别,由于采煤现场的环境较为恶劣,图像采集较为困难,通过射线技术虽能准确识别,但技术难度较大。鉴于此,本系统研究综采面放顶煤过程煤与矸石落到支架上声音的差异进行识别。
1 系统整体框架
本系统主要是通过放煤与放矸的声音的不同来识别采出来的是煤还是矸,有助于后期的处理。系统的实现过程主要包含音频信号的采集、音频信号特征的提取、C-SVM模型构建及识别等。
图1 系统的整体框架
2 音频特征提取
将原始信息的特征作为识别模型输入。常用的特征提取算法分时域和频域两个方面,如时域的过零率、短时能量、自相关函数[6];频域特征提取算法包括离散傅里叶变换、快速傅里叶变换、小波变换等。目前常用的特征提取算法采用的是梅尔倒谱系数,MFCC就是在梅尔刻度频率上提取出来的梅尔倒谱参数。
MFCC算法实现的过程如图2所示。预处理一般是加窗等操作、快速傅里叶变换、取模平方、Mel滤波器、对数变换、离散余弦变换等步骤。
图2 MFCC实现流程图
对数梅尔谱图(LogMel)更多是希望符合声音信号的本质,拟合人耳的接收特性。
DCT是线性变换,会丢失语音信号中原本的一些高度非线性成分。当深度学习方法出来之后,由于神经网络对高度相关的信息不敏感,MFCC不是最优选择,经过实际验证,其在神经网络中的表现也明显不如对数梅尔谱图(LogMel)。
图3 声音的Fbank图谱
系统选择对数梅尔谱图(LogMel)作为识别模型的输入特征。一段放煤声音MFCC参数与LogMel图谱的信息量的对比图如图4,图5所示。
图4 MFCC的图谱 图5 LogMel特征图谱
LogMel特征提取过程与MFCC的提取过程类似,只是把后面提取离散余弦变换(DCT)的步骤,转而添加了取模、取对数等操作。
为了方便网络运算,提取LogMel特征参数后,对其进行归一化处理,从而得到机器学习的特征输入。提取LogMel时分帧数选择20 ms重叠一半,加汉明窗并使用64个分量的梅尔滤波器。经过归一化后的LogMel谱图分布相对均匀,使特征参数更加明显,更有利于区分不同声音事件。
3 SVM分类器
SVM(Support Vector Machines)是统计学理论分类算法。该算法实现样本特征在模型复杂性与学习能力间寻求平衡点。在解决小样本、非线性及高维等方面的效果比较明显。
对于样本S存在最优的分类面w·φ(x)+b=0。使用非线性函数将原来的参数空间变换到高维空间,进而建立上述超平面,w表示平面法向量,b表示截距设分离平面函数:
w·φ(x)+b=0
(1)
判别函数h(x)=w·φ(x)+b,将h(x)做归一化处理后,使样本满足h(x)≫1,运算转化可得到化简后的式子D=2/w,所以,使分类间隔最大就是相当于使w最小即可。
满足上述条件,使分类模型对所有的样本都有正确的效果需要满足下式的条件。
yi(w·φ(xi)+b)-1≫0i=1,2…n.
(2)
对每一个不等式约束引进拉格朗日乘子(Lagrange multiplier)αi≥0,i=1,2,…,Nαi≥0,i=1,2,…,N;构造拉格朗日函数:
(3)
将w与b消除,原始的约束最优化问题可等价于极大极小的对偶问题
(4)
而线性不可分时,需要向高维空间转化,使其变得线性可分。此时需要松弛变量法来解决此类问题,对每个样本引入一个松弛变量δ≥0,这样约束条件变为:
yi(wTφ(xi)+b)≥1-δi
(5)
目标函数则变:
(6)
其中,C为惩罚因子,C越大,分错点越少,但也不能太大,以免产生过度离合。为避免维度灾难,则需要引入核函数,核函数是低维空间向高维空间映射。
4 实验与总结
放煤放矸等数据集的构建。SONY录音笔PCM-A10 16 GB(支持LPCM,采样率44.1 k、96.1 kHz,分别为16位和24位;本系统采用的44.1 k,16位的PCM格式输出模式)。数据采样地点为阳煤集团某一矿井。处理机配置:Dell笔记本电脑,Intel I5处理器,8 G内存。根据采集上的声音数据,请专业人士再次确定所采集的数据与标签是否对应,并将数据裁剪成1 s时长的声音频段。根据确定的标签,对1 s的声音片段进行打标签工作,声音数据与标签结果如表1所示。
表1 实验结果表
本实验采用python3编程,环境为anaconda3-64位。使用了pickle、numpyscipy、python_speech_features、sklearn.metrics等库。该实验的训练样本放煤音频数据为102 500个,放矸数据为521 40,其他为521 40,测试样本数目分别为250 0、214 0、540 0。训练得到模型在测试的数据集的识别率为88.33%,其中对放煤的识别率为89.72%、对放矸的识别率为95%、对不放煤的识别率为85.04%。从工业现场的情况来看,当前的识别率满足使用的需求。该模型可以实现对放煤过程中存在矸石的准备的识别,为现场的工作提供了智能化的识别,替代传统人耳识别的过程。