结合双模多尺度CNN特征及自适应深度KELM的浮选工况识别

2020-09-05 12:03:46廖一鹏王志刚王卫星
光学精密工程 2020年8期
关键词:隐层学习机特征提取

廖一鹏,张 进,王志刚,王卫星

(1.福州大学 物理与信息工程学院,福建 福州 350108;2.福建金东矿业股份有限公司,福建 三明 365101)

1 引 言

浮选生产是工业上从矿石中提炼出金属矿物的一种有效的选矿方法,浮选生产工艺复杂,受到多种物理化学因数的影响,研究人员发现浮选槽表面泡沫特征与浮选工况、生产工艺指标存在很强的相关性[1-2],精确提取泡沫图像特征对于浮选生产优化意义重大。目前,浮选厂主要通过人工观察泡沫状态的变化进行工况判别,这种方式主观性强、没有定量标准、生产效率低。因此,研究智能化的工况识别方法,对于浮选生产的优化控制、提高选矿回收率有着重要意义。

传统的工况识别方法主要通过提取泡沫表面的颜色、尺寸、形态、运动速度、崩塌率等各类特征[3-4],然后通过分类算法进行识别,这类方法的识别精度受特征提取误差的影响大,且忽略了特征间相互耦合的影响。卷积神经网络(Convolutional Neural Network,CNN)可由图像集直接驱使特征与目标关系间进行深度学习[5],有极强的表征能力,已在浮选泡沫图像处理中得到应用:Fu等[6-7]首先将CNN应用于泡沫图像的特征提取,并在泡沫图像分类和精矿品位预测上进行验证,与传统的特征提取方法相比,大大提高了识别精度;Wang等[8]对分割的气泡图像进行CNN特征提取及分类,通过统计各类气泡出现的频率分布进行工况识别,具有较高准确度和效率。这类方法提取的是单尺度图像的特征,没有充分挖掘和利用多尺度图像特征的局部细节和可区分性,而且提取的都是泡沫可见光图像的静态特征,而泡沫红外图像能表征气泡的破碎、合成等动态特征,在特征提取方面有待进一步扩展和细化。另外,CNN的全连接相当于单隐层前馈神经网络,采用BP 训练容易陷入局部最小值,泛化性能较差,而极限学习机[9](Extreme Learning Machine,ELM)训练过程简单、分类性能好,采用ELM对CNN特征进一步训练能改善分类效果[10],但是ELM随机的隐含节点数和输入权值使分类结果产生波动、稳定性差。核极限学习机(Kernel Extreme Learning Machine,KELM)在ELM基础上引入了核函数[11],提高了稳定性,但是惩罚系数和核宽度对分类结果影响显著,有待进一步优化。

因此,本文提出一种基于泡沫双模态图像多尺度CNN特征及自适应深度自编码KELM的工况识别方法。首先对泡沫的可见光、红外图像进行非下采样剪切波(Nonsubsampled Shearlet Transform,NSST)[12]多尺度分解,设计双通道CNN网络提取双模态多尺度图像的轮廓和细节特征,并将两种模态的CNN特征进行融合。将多个双隐层自编码极限学习机串联成深度学习网络,对融合的CNN特征逐层抽象提取后,再通过KELM映射到更高维空间进行决策。最后,提出一种动态自适应旋转角的量子旋转门方法以改进量子细菌觅食算法[13]的更新和繁殖策略,并应用于深度自编码KELM参数的优化,以提高识别精度和泛化性能,增强稳定性。

2 双模态多尺度CNN特征提取

泡沫的表观特征是浮选生产工况的综合反映,不仅泡沫表面的静态特征可作为工况评判的依据,研究发现浮选工况还与泡沫的崩塌率、稳定度有较强的关联性[3-4],目前研究人员主要通过检测前后帧图像中相应泡沫的形态变化进行崩塌率和稳定度的估算[3-4,14],因受光照及泡沫不断运动变化的影响,检测精度不高。对浮选槽表面的泡沫进行红外热成像,发现对产生崩塌、合并的气泡具有一定的展现效果,气泡产生崩塌或合并后释放出热量,比其他气泡温度高,热成像后呈现出高亮的黄色区域,如图1所示(彩图见期刊电子版),图1(a)中有2个气泡产生崩塌,图1(b)3个小气泡合并成1个大气泡,图1(c)的泡沫可见光图像只能表观颜色、尺寸、形状、分布等静态特征,而对应的红外热成像图1(d)能直接展现产生崩塌、合并的气泡。根据精矿品位的等级可以将浮选生产过程分为优、良、中、合格、差、异常等6种工况[8],图1(e)~图1(j)展示了6种工况下泡沫的热成像图,产生崩塌、合并的气泡越少,气泡的稳定度越高,承载率越好,回收率和工况等级越高;当气泡过小、过多,部分区域呈棉絮状,流动秩序乱,温度分布差异大,工况等级比较差;当出现异常情况,气泡水化严重,滚动速度快,释放热量快,图像整体趋于高亮的黄色。因此,泡沫的红外热成像可有效表征气泡的崩塌、合并等动态特征,且在不同工况下有一定区分度。

图1 浮选泡沫红外热成像Fig.1 Infrared thermal imaging of flotation foam

非下采样Shearlet变换是新兴的图像多尺度几何分析方法,是对Shearlet变换的改进,通过非下采样金字塔滤波器组去掉了下采样环节使图像具有平移不变性、抑制伪吉布斯效应,同时通过剪切滤波器实现对高频子带的多方向分解,其图像多尺度变换表达式[15]:

(1)

其中:ψ∈L2(R)2,表示合成仿射系统中的元素,MDB(ψ)是一个合成小波集的剪切波,k,l和v分别是多尺度分解的尺度、方向和平移系数,D是控制多尺度分解的各向异性膨胀矩阵,B为控制多方向分解的剪切矩阵。泡沫双模态图像多尺度分解如图2所示,图像K尺度分解后,得到1个低频图像和K-1个高频子带,低频子带包含图像的大部分能量,保留了图像的近似特征,各高频子带包含了泡沫的边缘、纹理等局部细节。

对泡沫双模态图像多尺度分解后进行CNN特征提取能够挖掘出图像的多层表征,可见光图像表征泡沫的静态特性,红外图像表征泡沫的动态特性,低频子带图像反映图像更抽象的语义、结构等全局信息,而高频子带图像反映纹理、边缘等局部细节。本文所构建的双通道CNN网络结构如图2所示,分别对泡沫可见光、红外图像分解的各尺度图像进行CNN特征抽取,网络参数如表1所示,每个通道的CNN包括3个卷积层和3个池化层。其中,C1,C3,C5表示卷积层,输入的特征图通过卷积核卷积后输出,然后通过P2,P4,P6层进行池化,以减少训练过程中的计算量。可见光图像的信息量大、纹理细节较为丰富,相应的CNN通道采用更为精细的特征提取参数,而红外图像的CNN通道采用较为稀疏的特征提取参数,两个CNN通道最后分别输出K×800和K×320个特征点,最后将两个通道的提取特征进行串联融合。

图2 双模多尺度CNN特征提取框架图Fig.2 Dual-modality multiscale CNN feature extraction frame diagram

表1 CNN特征提取模型参数

3 深度双隐层自编码核极限学习机

传统的CNN网络是通过softmax分类器对全连接特征进行分类,并使用反向传播来训练所有网络参数,容易陷入局部最小值、过拟合等问题。ELM是一种基于单隐层前馈神经网络的监督学习算法[9],训练过程中调整的参数少、效率高,泛化性能好,可表示为:

Hβ=T,

(2)

其中:β表示隐含层和输出层间的连接权值矩阵,T表示理想输出,H表示隐层单元的输出矩阵。训练过程中,只要输入层与隐含层间的连接权值和偏置被设置,β可通过式(3)计算:

(3)

(4)

此时,极限学习机的输出函数可表示为:

(5)

为了克服ELM隐含层函数、输入层与隐含层间的连接权重和偏置、隐节点个数等所带来的影响,可以用核函数来代替ELM隐藏节点的映射,本文选择RBF核函数作为KELM的核函数:

(6)

K(x,xn)=exp(-σ‖x-xn‖2),σ>0.

(7)

最后得到核极限学习机(KELM)的输出表达式为:

(8)

为了减少惩罚系数C和核函数参数σ的影响,提高KELM的泛化性能,Cheng等[16]提出了多层核极限学习机ML-KELM,通过核极限学习机自编码器抽取更高层的特征作为KELM的输入,提高了分类精度。Kim 等[17]提出了层次学习核极限学习机H-KELM,将多个层次的极限学习机自编码器串联作为KELM的特征学习网络,并用于阿尔茨海默病的诊断,大大提高了诊断准确率。极限学习机自编码器令输入与输出相等,通过前馈神经网络来完成高层次的特征提取,为提取更高维度的稀疏特征,本文在这基础上构建了双隐层自编码极限学习机,如图3所示,两个隐层的节点数都为Ni,随机生成第一、二隐层节点的输入权重向量w1,w2和偏置b1,b2,通过输入X,w1和b1计算第一隐层的输出矩阵,然后通过第一隐层输出矩阵,w2和b2计算第二隐层输出矩阵Hi,通过式(9)可计算每个双隐层自编码极限学习机的输出权重矩阵βi的值:

(9)

(10)

虽然在极限学习机基础上引入了深度双隐层自编码器和核函数,增强了算法的泛化性能,但同时其性能易受自编码极限学习机层数L,惩罚系数C和核函数参数σ的影响,不同的参数组合都会影响最终的拟合性能,为获取最优的分类性能,需对参数进一步优化。

图3 深度双隐层自编码核极限学习机Fig.3 Deep two hidden layer autoencoder kernel extreme learning machine

4 量子细菌觅食算法改进及自适应工况识别

4.1 量子细菌觅食算法改进

细菌觅食算法[18](Bacterial Foraging Algorithm, BFA)是Passino等人模拟大肠杆菌觅食行为而提出的一种新的群体优化算法,主要通过细菌的趋化、繁殖和迁移进行寻优,通过趋化操作增强个体的局部搜索能力,通过繁殖操作选择较优个体、淘汰较差个体,通过迁移保持群体的多样性,具有对初值和参数选择不敏感、鲁棒性强等优点。该算法的繁殖过程将影响算法的收敛速度和精度,采用淘汰一半较差细菌、直接复制一半较优细菌的操作将导致种群多样性的缺乏,不能保证下一代适应度最优,影响收敛速度、易陷入局部极值。

量子遗传算法(Genetic Quantum Algorithm,GQA)[19]、量子和声搜索算法(Genetic Harmony Search,GHS)[20]将量子计算引入到染色体和记忆库的更新,使其具有量子特性,大幅度提高搜索空间和寻优能力。借鉴这一思想,Gao等[13]将量子行为引入到细菌的繁殖中,形成具有更强全局搜索能力的量子细菌觅食算法(Quantum Bacterial Foraging Algorithm, QBFA),但采用固定旋转相位的量子旋转门来更新染色体的位置,种群缺乏多样性、不利于算法的收敛。Liu等[21]提出了一种自适应旋转相位的改进量子细菌觅食算法(Improved Quantum Bacterial Foraging Algorithm, IQBFA),但是构造的基于指数函数的自适应函数,旋转角在正、负方向的调节幅度不平衡、波动较大,稳定性不强。较大旋转相位能加快收敛速度,较小的旋转相位有利于局部区域的细搜索,本文构造一种动态自适应旋转角函数,用于改善QBFA的整体性能。

在量子计算中,|0〉与|1〉代表微观粒子中两种表达形式,一个量子比特表示为:|φ〉=α|0〉+β|1〉,其中(α,β)是两个幅常数,|α|2+|β|2=1,|0〉和|1〉表示自旋态,一个量子比特的状态可以为|0〉,|1〉,|0〉和|1〉之间的叠加态,细菌的量子比特编码可表示为:

(11)

量子旋转门是最终实现进化操作的执行机构,用来调整量子比特让其朝着有利的方向进化,量子旋转门的调整操作表示为:

(12)

(13)

(14)

4.2 浮选工况自适应识别

自适应工况识别过程分为训练和在线检测两个阶段,整体框图如图4所示。训练阶段:分别对数据集的泡沫可见光、红外图像进行多尺度的NSST分解,采用构建的双通道CNN网络提取两种模态下多个尺度图像的CNN特征并串联融合,将这些特征作为深度自编码KELM的输入,化验室提供的工况等级作为输出,对模型进行训练,将自编码极限学习机层数L,惩罚系数C和核函数σ作为细菌的基因,识别精度作为适应度,采用改进的量子细菌觅食算法对模型进行优化,获取最优的Lbest,Cbest和σbest。在线检测:构建基于Lbest,Cbest和σbest参数的自适应深度自编码KELM识别模型,实时采集浮选槽表面泡沫的可见光、红外图像,并进行NSST多尺度分解,通过双通道CNN网络提取泡沫的双模态多尺度CNN特征,通过自适应深度自编码KELM进行分类识别。

图4 工况识别整体框架Fig.4 Overall framework of performance recognition

5 实验结果与分析

为了验证本文方法的有效性,以福建金东矿业股份有限公司的铅锌矿浮选厂作为实验对象,实验的硬件平台为Intel(R) Core(TM) i7-9700 CPU@3.00 GHz,NVIDIA RTX2070 GPU,16 GB(RAM),软件运行环境为Windows 10 Matlab 2016a,python 3.7,tensorflow 1.14。采集不同时间段浮选槽表面双模态泡沫图像作为图像集,根据化验室提供相应时间段的工况等级构建数据集,对提出方法进行验证,给出了各实验步骤的结果及比较分析。

5.1 改进的量子细菌觅食算法性能测试

为了确定所提出的动态自适应旋转角函数中λ和Δθ参数的最佳值,利用表2中的 5个经典基准函数进行测试分析。

实验中细菌个数取50,基因染色体的长度取30,趋化、繁殖和迁徙操作的代数分别取Nc= 30,Nre= 10和Ned= 5,迁徙概率Ped取0.25,最大迭代次数T设置为500。对各个基准函数调整λ和Δθ参数的值进行实验,每组数据进行100次重复实验,统计达到最优值的概率,以及达到最优值的平均迭代次数,如图5所示,当λ取1.7,Δθ取0.4π时,算法具有最强的全局寻优能力,而且收敛速度较快。

表2 基准函数信息

图5 最优值概率及平均迭代次数

为了进一步验证本文改进的量子细菌觅食算法的性能,选取一个复杂二元非线性函数进行实验并与QGA,QHS,BFA,QBFA,IQBFA等寻优算法比较,二元非线性函数如式(15)所示:

(15)

BFA,QBFA,IQBFA以及本文方法的细菌个数,基因染色体长度,Nc,Nre,Ned,Ped等初始化参数取相同值,6个算法最大迭代次数T设置为500,本文方法的λ取1.7,Δθ取0.4π,实验结果如图6所示。相比于BFA和QBFA,IQBFA的寻优能力和收敛速度提高了很多,但是收敛效果不如QGA和QHS,而本文方法的收敛速度相比QHS和IQBFA提高了许多,而且收敛精度和寻优能力也高于QGA,QHS和IQBFA,说明本文方法不仅可以较好地逼近全局最优解,收敛速度也有所提升,具有更高的鲁棒性。

图6 各优化算法运行效果Fig.6 Operation effect of each optimization algorithm

5.2 深度双隐层自编码KELM性能测试

为验证提出的深度双隐层自编码KELM的性能,选择不同大小、维度、分类数的三种经典数据集Spambase,Shuttle,USPS进行测试,并与KELM,ML-KELM,H-KELM算法进行比较分析。为分析C和σ对算法性能的影响,设置特征提取层数L=3,各隐含节点数设置为输入节点数的1.2倍,在0.01≤C≤1 000,0.01≤σ≤100的范围调整参数进行测试,4种算法的平均测试准确率如图7所示:KELM的总体测试精度较低,且对C和σ参数较敏感,波动较大;相比于KELM,ML-KELM的测试精度有所提高,采用多层的KELM可有效减少C和σ参数的影响,稳定性也有一定提高;H-KELM将多个层次的极限学习机自编码器串联作为KELM的特征学习网络,进一步提高了测试精度,而且受C和σ参数的影响较小;而本文的深度双隐层自编码KELM通过多个双隐层自编码极限学习机的特征逐层抽象提取,然后映射到更高维空间进行决策,进一步提高了测试精度,而且降低了对C和σ参数的敏感性,稳定性好。为进一步分析参数L对H-KELM和深度双隐层自编码KELM性能的影响,取最优的C和σ参数,设置不同的网络深度L进行实验,结果如图7(e)和图7(f)所示,深度双隐层自编码KELM在相同L下具有比H-KELM更高的测试精度,随着L的增加测试精度都有所提高,当L增加到一定程度,网络结构变得较复杂,导致测试精度下降,但是深度双隐层自编码KELM的变化较为平稳。

为进一步分析比较4种算法的最优性能,根据图7的实验结果取最优的C,σ和L参数对3种数据集进行测试,结果如表3所示,本文的深度双隐层自编码KELM需要消耗较多的训练时间,但是在测试精度上比其他算法具有明显的优势,对不同种类的数据集都具有较好的分类和泛化性能。

表3 各种KELM算法数据集测试结果

5.3 双模多尺度CNN特征提取效果

为验证本文双模多尺度CNN特征提取方法的优势,分别选取训练集中的泡沫红外图像、可见光图像、双模态图像在各个分解尺度下进行实验,各尺度下的平均识别准确率如图8所示,双模多尺度CNN特征明显比可见光和红外图像多尺度CNN特征的识别精度高,当分解尺度在3~5之间时的识别率最高,随着分解尺度的继续增加,各个尺度抽取的信息较为稀疏,通过池化层后丢失了部分细节,导致识别率下降,而且运算时间也急剧上升。因此,对双模态泡沫图像进行3尺度CNN特征提取的识别效果最佳。

随机选取一对红外、可见光泡沫图片,先进行NSST的3尺度分解,然后输入到训练好的CNN网络模型,将经过CNN每一层网络的图像输出,如图9所示,各个尺度呈现不同的特征,每个尺度经过卷积层与池化层的图片呈不断变化的趋势,具有分层特征。既可以提取双种模态下泡沫的动、静态特性,又可以提取低频子带反映图像更抽象的语义、结构等全局信息,以及高频子带图像反映的纹理、边缘等局部细节。

图8 三类图像不同尺度的识别精度及运行时间

5.4 自适应工况识别结果及比较分析

从创建的数据集中挑选6种工况各10 000组数据进行试验,其中9 000组作为训练集,分别采用双模态图像、可见光图像、红外图像进行模型训练,图像的分解尺度K选取为3,模型的优化参数主要有双隐层自编码层数L,KELM的惩罚系数C和核函数参数σ,3个参数的范围:1≤L≤10,0.01≤C≤1 000,0.01≤σ≤100,将3个参数作为细菌的基因染色体,识别精度作为适应度,采用改进的量子细菌觅食算法进行参数优化。实验中细菌个数取80,基因染色体的长度取50,Nc= 30,Nre=10,Ned=5,Ped=0.25,λ=1.7,Δθ=0.4π,T=500,采用双模态图像进行实验的最优参数为:Lbest=5,Cbest=743.140 1和σbest=69.236 9。然后采用测试集的6×1 000组数据对模型测试,3种方式的识别结果如图10所示,异常工况下的可见光、红外图像信息变化较大,3种方式下该工况的识别精度都较高,可见光图像的良、中、合格工况的识别精度比红外图像高,而红外图像的优、差、异常工况的识别精度比可见光图像高,将两种图像的多尺度CNN特征融合后,可有效扩大相邻工况图像特征的差异程度,相邻工况间的误识别率大大降低,各工况的识别效果都得到较大改善,平均识别精度提高了2.65%。

图10 3种模式工况识别结果Fig.10 Performance recognition results of three modes

为进一步验证本文方法的优势,采用现有的文献方法对相同数据集进行训练和测试,统计各方法的平均识别准确率和标准差,实验结果如表4所示:文献[3]和文献[4]采用传统的特征提取方法,识别率不高、标准差也较大;文献[6]最先将CNN用于浮选泡沫图像的特征提取,通过随机森林算法对泡沫图像分类,识别率较传统方法有较大提高,但是标准差较大,稳定性有待提高;文献[8]对分割的气泡图像进行CNN特征和形态特征提取,通过统计各类气泡出现的频率分布进行工况识别,平均识别率得到了提高,各工况的识别精度也较为稳定;文献[10]在CNN特征提取的基础上,通过极限学习机自编码器抽取更高层的特征对ELM模型进行训练,进一步提高了平均准确率,但是识别性能受ELM隐含节点设置的影响大,各工况的识别精度存在一定的波动;本文方法将可见光图像、红外图像的多尺度CNN特征融合在一起,提取了多属性、更加丰富、更多细节的特征,然后通过多个双隐层自编码极限学习机的逐层抽象提取,再通过KELM映射到更高维空间进行决策,最后采用改进的量子细菌觅食算法对参数进行优化,各个工况的识别精度有较大的提高,平均识别率达95.98%,且波动较小,泛化性能较好。

表4 不同方法的识别效果

6 结 论

本文提出了一种结合泡沫双模态图像多尺度CNN特征及自适应深度自编码KELM的浮选工况识别方法。对浮选泡沫的可见光、红外图像进行NSST多尺度分解,设计双通道CNN网络提取两种模态多个尺度图像的特征并融合;借助深度学习思想,构建深度双隐层自编码极限学习机网络,将融合的CNN特征经过多个双隐层自编码极限学习机的逐层抽象提取,然后通过KELM映射到更高维空间进行决策;采用动态自适应旋转角的量子旋转门以改进量子细菌觅食算法的更新和繁殖策略,并应用于识别模型参数的优化;最后构建数据集对模型进行训练和测试。结果表明,采用双模多尺度CNN特征的工况识别精度较单模多尺度、双模单尺度CNN特征的识别精度提高了2.65%,改进后的量子细菌觅食算法寻优能力更强、收敛速度更快,自适应深度自编码KELM具有较好的分类精度和泛化性能,各工况识别的平均准确率达95.98%,识别精度及稳定性较现有方法有较大提升。

猜你喜欢
隐层学习机特征提取
基于RDPSO结构优化的三隐层BP神经网络水质预测模型及应用
人民珠江(2019年4期)2019-04-20 02:32:00
极限学习机综述
测控技术(2018年10期)2018-11-25 09:35:26
基于Daubechies(dbN)的飞行器音频特征提取
电子制作(2018年19期)2018-11-14 02:37:08
基于极限学习机参数迁移的域适应算法
自动化学报(2018年2期)2018-04-12 05:46:21
分层极限学习机在滚动轴承故障诊断中的应用
Bagging RCSP脑电特征提取算法
基于MED和循环域解调的多故障特征提取
基于近似结构风险的ELM隐层节点数优化
计算机工程(2014年9期)2014-06-06 10:46:47
最优隐层BP神经网络的滚动轴承故障诊断
一种基于AdaBoost的极限学习机分类方法