基于波形叠加布谷鸟优化的极限学习机分类方法
【专利摘要】本发明为一种基于波形叠加布谷鸟优化的极限学习机分类方法,主要步骤为:Ⅰ、建立训练样本矩阵;Ⅱ、在每个隐层节点上生成M个初始寄生巢;Ⅲ、求波形叠加极限学习机分类模型的分类准确度;Ⅳ、训练样本随机等分为份,求交叉验证的极限学习机分类模型的分类准确度输出值;Ⅴ、用反双曲线正弦函数和Morlet小波函数叠加作为极限学习机的激励函数,构建波形叠加极限学习机分类模型,得布谷鸟算法当前代分类准确度;Ⅵ、求布谷鸟算法的下一代结果,以概率Pa新建寄生巢;Ⅶ、重复迭代,判断是否终止迭代,满足终止条件则建立最佳极限学习机分类模型,用于对于未知样本进行分类。本方法计算复杂度低,效率高,分类性能稳定精度高,全局最优、性泛化能力强。
【专利说明】基于波形叠加布谷鸟优化的极限学习机分类方法
【技术领域】
[0001]本发明属于计算机智能、神经网络【技术领域】。涉及极限学习机分类方法,具体为一种基于波形叠加布谷鸟优化的极限学习机分类方法。
【背景技术】
[0002]传统的前馈神经网络学习方法(如BP神经网络算法)大多数采用梯度下降法寻优方式。极限学习机(Extreme Learning Machine, ELM)与之不同,是2006年由Huang等人根据摩尔-彭罗斯(MP)广义逆矩阵理论提出的,是一种简单有效的单隐层前馈神经网络学习方法(Single-Hidden-Layer Feedforward Neural Network, SLFNs)。该方法具有与神经网络相同的全局逼近性质,通过随机生成网络输入权值及隐层神经元,并设置隐层节点数,便可以通过据摩尔-彭罗斯(MP)广义逆得出输出权重的最优解。该方法在保证良好泛化性能的同时,极大地提高了学习速度,同时避免了由于梯度下降法产生的训练速度慢、过学习、易陷入局部极小值以及对学习率的难确定等诸多问题。然而极限学习机的本身也存在固有缺陷,由于隐含层初始参数连接权值、偏置值与节点个数对的参数设置对分类结果具有较大影响,且极限学习机网络输入权值及隐层神经元偏移量是随机生成的,不可避免的一些较为差的随机参数被选出来,严重影响极限学习机的稳定性和泛化能力,导致单个极限学习机的学习性能具有不确定性。
[0003]为解决上述极限学习机存在的问题,近年来集中于针对参数优化的方法改善极限学习机分类器的方案,如申请号为201210141568.6的中国发明专利“融合最小二乘向量机回归学习思想的改进极限学习机”,以及申请号为201310351903.X的中国发明专利申请“一种使用遗传算法优化极限学习机的集成框架方法”,都是通过参数优化的方法改善极限学习机的分类性能和拟合能力,然而这些改进的方法容易陷入局部最小点、分类结果不稳定以及分类可靠性差。申请号为201310425815.X的中国发明专利申请“基于变长度粒子群优化算法的极限学习机”的方案虽然被广泛采用,然而粒子群优化极限学习机计算复杂度过高、计算时间比较长。
【发明内容】
[0004]本发明的目的是针对现有极限学习机分类方法的分类效果不稳定以及分类准确度较低等问题,提供一种基于波形叠加布谷鸟优化的极限学习机分类方法,本分类方法利用两种波形叠加作为波形叠加极限学习机的激励函数代替标准极限学习机的单一激励函数,增加了快速收敛性能以及信号高低频动态逼近能力,同时结合布谷鸟寻优算法优化极限学习机参数,建立最佳波形叠加极限学习机分类模型。本发明的波形叠加极限学习机分类方法在可接受的时间内,相比传统极限学习机分类建模方法具有更高的分类准确率、调参更快捷以及寻优能力强等特点,解决现有标准极限学习机分类结果不稳定,分类可靠性差等问题。
[0005]为实现上述目的,本发明所提供的基于波形叠加布谷鸟优化的极限学习机分类方法包括如下步骤:
[0006]步骤1、训练样本的矩阵
[0007]在N个样本集中抽取Ntl个样本作为训练样本,N0 ^ 50,输入训练样本的矩阵为(Xj, yj),j = I, 2,---,NojXj = [Xj1, xJ2,…,Xjn]T e Rn, Yj = Iiyjl, yJ2,…,yJm]T e Rm,其中 T 表示转置,R为实数集合,m和η表示样本的特征维数。Xj表示训练样本,Yj表示训练样本的分类标签,设定不同类别的不同输出标签值。如二分类时可为-1和+1,三分类时为0、1和
2。隐层节点的数目为分>1,由于计算复杂度和计算时间随着隐层节点数增加而增加,因此需要根据具体实施方案的时间限制选择隐层节点数。本发明方法中隐层结点的数目分的优选值域为[1,100] ο
[0008]步骤I1、生成初始寄生巢
[0009]使用布谷鸟寻优算法随机初始化值域为[-0.5,0.5]输入节点的隐层节点权重Wk以及隐层神经元的阈值bk,t = l,2,...,#,同时在每个隐层节点上生成M个初始寄生巢(或称为初始种群)《ik和bik,i = 1,2,…,M,初始寄生巢数M>1。
[0010]步骤II1、求波形叠加极限学习机分类模型的分类准确度
[0011]本方法的波形叠加极限学习机分类模型的表达式为:
_ 2] / (X) = Σ β, I' (θ,Ψ )(co,/;.-V + bik),
k;\
[0013]j = I, 2, - ,N0, i = I, 2,...,M,k = \,2,---,N ,
[0014]其中7=1(欠+/2),&与&分别表示不同的两种波形函数,θ (t) =arcsinh(t),Ψ (? = J^ejwut^ 'k''\ Wtl >5且IctlS 2,β k为波形叠加极限学习机分类模型系数,
[0015]所述为反双曲线正弦函数,f'=0 (0 = arcsinh(l) = --|^τγτ,
[0016]f2 为 Morlet 小波函数,/2=ψ (t) = em,t丨?)? cos(w0i)e(砂),
[0017]本方法取/; = cos( Viy )e,_0-5i:!,
[0018]本方法用此两种波形叠加作为激励函数代替标准极限学习机的单一激励函数,增加了快速收敛性能以及信号高低频动态逼近能力。得到本非线性逼近极限学习机分类方法的激励函数为波形叠加双激励函数7=去〔arcsin吵)+cos(w0t)e' )。
[0019]其中反双曲线正弦函数的加快了函数的快速收敛,小波函数则具有强调高低频波形信号相似能力,两种激励函数叠加组合改善了标准极限学习机的网络结构使得隐含层网络具有更强的动态性能处理能力。
[0020]波形叠加极限学习机的矩阵表示为:
[0021]Havg^k = Y,
[0022]其中
g( W1-X1+Zj1)…
[0023]Harg = / (θ ,ψ):…:=7(θ,ψ,//),
/(Wl-^+0l) ■■.s(W^.% +i,.v)jjVx^
β;?pflg(>V1-X1+/)1)...gfu^-.T,+/)-)
[0024]其中β=: ,T=: H=:...:=G(a,b,x)?
LiVIvxjb ^(νΗ-χ^+?,)...
[0025]则最小输出权重矩阵^: ^k=HavjT={HTavgHavgjl H1avgT,其中//:为神经网络的隐层输出矩阵H的Moore-penrose逆,由广义逆定理通过奇异值分解求得Hav/。
[0026]本步骤先将训练样本(\,Yj)、步骤II所得的M个初始寄生巢的随机数权重Wk以及阈值bk输入波形叠加极限学习机分类模型的表达式中,求出最小输出权重矩阵β,;然后将测试样本分类模型参数βΛ、隐层节点权重wk以及隐层神经元的阈值bk输入波形叠加极限学习机分类模型的表达式中,获取新的波形叠加极限学习机分类标签y, j ;最后得到训
, 、count I V =V.1练样本(XjJj)分类准确度为./:('.馬九)=-^^*100%,i = 1,2,…,M,此为第i
作O
次\训练样本输入的波形叠加极限学习机分类模型分类准确度。
[0027]步骤IV、交叉验证
[0028]为了使波形叠加极限学习机分类模型具有更好的泛化能力,进行交叉验证。
[0029]IV -1、将N。个训练样本随机等分为A份,克为N。的因数,0<Μ<Ν0.,
M
[0030]IV-2、从?份训练样本中抽取一份i个样本作为交叉验证测试样本(Xlq,y1(1),
MM
/-12.,#,_7其中第q次交叉验证测试样本的分类标签为{ylq,y2(1,...Ai/ Q 一丨,-*,,^,
JSf
,YiJ ;剩余(i —)份(A f )个样本作为交叉验证训练样本,
[0031]IV -3、将剩余(M-ι )份交叉验证训练样本和寄生巢ω ik和bik输入波形叠加极限学习机分类模型的表达式中,得到最小输出权重矩阵μ
[0032]IV _4、将抽取的一份&个交叉验证测试样本的Xlq、最小输出权重矩阵β以及寄生巢《ik和bik输入波形叠加极限学习机分类模型的表达式中得到该分类模型输出的分类标签值为I' lq ;记录第q次交叉验证的波形叠加极限学习机分类模型输出的分类标签值h' lq,y/ 2q,…,太lq};步骤IV-3所得波形叠加极限学习机分类模型输出的分类标签值l' iq等于该交叉验证测试样本的分类标签y1(1的个数count {y' lq = ylq}、与交叉验证测试样本个数4之比即为波形叠加极限学习机分类模型第q次交叉验证的分类准确度。
M
[0033]IV -5、重复步骤IV-丨?IV-4 V/ 01 ;
[0034]求所得到竝个分类准确度的算术平均值
f \
[0035]7(.νω*Α-)=去Σ -,/ = 1,2,...,吾,g = l,2,.--,M,
V MJ
[0036]f(x!q,(Oik,b,k)^ N0个训练样本i倍交叉验证的波形叠加极限学习机分类模型的分类准确度输出值。
[0037]步骤V、求目标函数
[0038]求步骤III所得的训练样本分类准确度& (Xj, ω ik, bik)和步骤IV所得的训练样本交叉验证的输出值二者平均值的公式作为目标函数,即目标函数为:
[0039]Yi =^fi + f^\, i = 1,2,...,Μ,其中 > =为布谷鸟算法第 η0 代目标函数的结果,说明此代的分类准确度,η0为迭代的次数,设置布谷鸟算法的最大迭代次数为Mn,其中
M
[0040]最大迭代次数Mn设置为100。
[0041]步骤V1、求布谷鸟算法的下一代结果
[0042]V1-1、步骤V得到布谷鸟算法的第Iitl代目标函数结果F2,,对比该组M个寄生巢中目标函数值,将目标函数值最高maxlf?)对应的寄生巢ω' &和1^ ik作为当前代最优寄生巢保留;采用莱维飞行的理论(sigma分布的可变步长)、求该组中剩余的M-1个寄生巢对应的M-1个临近寄生巢和&,并对比M-1个寄生巢和其对应临近寄生巢的目标函数值大小。如果临近寄生巢(?—和&对应的目标函数值^大于当前代寄生巢?ik和bik的对应目标函数值,临近寄生巢替代原位置的寄生巢;反之,保留原位置的寄生巢。
[0043]VI _2、由于寄生巢数量是固定的以及莱维飞行的理论的局限性,使得布谷鸟算法容易陷入局部最优值,希望以一定概率跳出该局限。布谷鸟所选寄生巢的宿主鸟发现外来鸟蛋并另建一个新巢的概率为匕,Pa值域为[0,1],即以概率PJ逭机新建M*Paf寄生巢COik和bik,并随机替代步骤V1-1所得的除当前代最优寄生巢以外的其它M-1个寄生巢(包括临近寄生巢或原位置的寄生巢)中的M*Pa个。
[0044]将步骤V1-2处理所得的M-1个寄生巢和步骤V1-1保留的最优寄生巢一起作为下一代的寄生巢,按照步骤III?V求布谷鸟算法的下一代目标函数结果。
[0045]步骤νπ、建立最佳波形叠加极限学习机分类模型
[0046]按照步骤III?VI重复迭代,每一代求得目标函数的分类准确度max Y;^ ,多次迭代后,当目标函数值达到100%,停止迭代,以此时的寄生巢为最优的寄生巢ω' 11;和屮ik;若目标函数值未达到100%,继续重复步骤III?VI,当达到最大迭代次数Mn后,结束迭代,
以此时满足目标函数值maxyU/)最大的寄生巢为最优的寄生巢ω ' ^和!]' ik ;
[0047]将最优寄生巢的ω'ik带入f(x)中,构建最佳波形叠加极限学习机分类模型,
N ^ _
[0048]/(X)= ^β,,ΑΘ,ψΧω;,.χ + 4)
^=I
[0049]此分类模型即可用于对于未知样本进行分类,其分类准确度最高、分类稳定性最好。
[0050]与现有技术相比,本发明基于波形叠加布谷鸟优化的极限学习机分类方法的优点为:1、采用反双曲线正弦函数和Morlet小波函数来代替原有的单一激励函数,加快了函数的快速收敛性,强调了高低频波形信号相似能力,该种双激励函数组合的方式改进标准极限学习机的结构,使得隐含层网络具有更强的动态性能处理能力以及收敛速度和稳健性,并为其他学习算法的核函数提出了一种信号特征提取及拟合的新思想;2、采用波形叠加极限学习机分类模型避免了求解线性不可分问题计算复杂度过高、分类性能不稳定以及对训练样本数据敏感等问题;3、本发明采用布谷鸟参数优化方法,参数调整简单,全局最优性及泛化能力强,加快了分类模型的收敛速度;4、本方法可进行二分类或多分类实验,相比其他方法具有更稳定分类性能和更高的分类准确度以及对训练样本的敏感性小等特点;特别适用于近红外光谱检测分析结果的分类,如近红外光谱的真假药品鉴别。
【专利附图】
【附图说明】
[0051]图1为本基于波形叠加布谷鸟优化的极限学习机分类方法实施例1流程示意图;
[0052]图2为本基于波形叠加布谷鸟优化的极限学习机分类方法实施例及实施例2流程图;
[0053]图3为本基于波形叠加布谷鸟优化的极限学习机分类方法实施例数据集I样本光谱吸光率曲线图;
[0054]图4为本基于波形叠加布谷鸟优化的极限学习机分类方法实施例数据集2样本光谱吸光率曲线图;
[0055]图5为本基于波形叠加布谷鸟优化的极限学习机分类方法实施例数据集3样本光谱吸光率曲线图;
【具体实施方式】
[0056]本发明是一种基于波形叠加布谷鸟优化的极限学习机分类方法,实施例均为本方法用于近红外光谱的药品分类,下面结合附图以及具体实施例对本发明作进一步的说明,但本发明的保护范围并不限于此。
[0057]近红外光谱药品鉴别方法由于能同时对多组样品进行快速无损的测定和判别,因而在药物分析领域中得到广泛重视与推广。然而该方法具有谱带宽、重叠严重、吸收信号弱及信息解析复杂等特点,传统分类方法的预测精度和稳健性很难达到实际应用的需要,且实际情况往往存在建模样本数量少,实验结果偏差较大;分类算法对训练样本敏感,导致分类器稳定性及可靠性较差;分类问题计算复杂度较高等问题。
[0058]各实施例所采用的软件为0PUS7.0 ( 一阶导数化和矢量归一化预处理预处理)及Lunix服务器下Mac版Matlab2013a(分类器模型建立)。
[0059]各实施例中程序来源:
[0060]极限学习机程序来源黄广斌(2004,http://www.ntu.edu.sg/home/egbhuang/elm_codes.html)、
[0061]布谷鸟算法Xin-She Yang (2009, Cambridge University)) >
[0062]粒子群算法(http://www.1lovematlab.cn/thread-64644-l_l.html)
[0063]偏最小二乘PLS (http:// www.1lovematlab.cn/forum.DhD ? mod =viewthread&tid = 171645)。
[0064]实施例1不同活性物质浓度近红外检测光谱的药品样本分类
[0065]对来自 http: //www.models, life, ku.dk/Tablets 公共数据网站的 310 个药品近红外光谱进行药品活性物质鉴别。其中近红外光谱波长范围在7400-10507nm,4类不同剂量的药品分为两种,一种为5mg,其活性物质浓度5.6% w/w ;另一种为10、15、20mg,其活性物质浓度8.0% w/w。药品活性物质的成分含量不足会使得药品疗效降低,少数不良厂家偷工减料故意减少药品活性物质的含量,若这些假冒伪劣药品不被检测出来、流通于市面,将会严重危害消费者的权益和健康。
[0066]本实施例首先采用近红外光谱仪获取各个药品样本的检测光谱,然后利用0PUS7.0对所得检测光谱进行一阶导数化(13个平滑点)和矢量归一化预处理预处理,消除由于偏移和漂移引起的光谱偏差。同时为减少导数光谱的噪声,利用Matlab函数对光谱样本进行7点Savitzky-Golay平滑和0_1归一化处理,最后通过偏最小二乘PLS特征提取方法对处理后的光谱样本的数据信息进行分解和筛选,提取对决策变量Y解释性最强的输入特征空间上的X进行训练,压缩后本例样本的特征维数为2?3维。
[0067]本实施例基于波形叠加布谷鸟优化的极限学习机分类方法用于药品样本的检测光谱分类的流程如图1所示,具体步骤如下:
[0068]步骤1、训练样本的矩阵
[0069]将N = 310的样本集按照上述光谱预处理方法平滑和0-1归一化处理后,从310个样本中随机抽取活性物质浓度为5.6%的药品光谱样本40个作为正类样本(真药),活性物质浓度为8.0%的药品光谱样本120个作为负类样本(假药),抽取Ntl = 160个药品光谱样本作为训练样本,剩余的150个混合药品光谱样本作为测试样本,其中样本的特征维数m和η由原来的404维经过PLS压缩后为2?3维,隐层节点的数目为;=20 , Xj为训练样本,y,为分类标签,j = 1,2,…160,本例负类样本分类标签值为-1、正类样本分类标签值为+1。
[0070]步骤I1、生成初始寄生巢
[0071]使用布谷鸟寻优算法随机初始化值域为[-0.5,0.5]输入节点隐层节点权重Wk以及隐层神经元的阈值bk,k = 1,2,…20,并同时在各隐层节点生成初始寄生巢为M = 20个Oik 和 bik,i = 1,2,…,20。
[0072]步骤II1、求波形叠加极限学习机分类模型的分类准确度
[0073]本方法的波形叠加极限学习机分类模型的表达式为:
[0074]./' (X) = [ β,' 7(θ ,ψ ) (ω"'.X + Ir,),
左二 I
[0075]j = 1,2,…,160,i = 1,2,…,20,k = 1,2,…20,
[0076]其中7=丄(/J+/2),Θ(t) = arcsinh(t), Ψ =^,β k 为波形叠加极限学习机分类模型系数,
[0077]本例用为反双曲线正弦函数
[0078]-/?=θ (O = arCsin Kt) = L 2 ,
\ι+χ?
[0079]本例f2为Morlet小波函数,选取频率wQ = 5、W0 = 7与W0 = 9,
[0080]/ι=ψ (?) = cos(5i)e( °'5i )-cos(7i)e( °'5;) +cos(9i)e( °'5i ),
[0081]本例基于波形叠加极限学习机分类方法的激励函数为
[0082]/=^- (arcsin/?(,) + cos(5/)e '.) - cos(7/)e ""' ' +cos(9/)e )),
[0083]本步骤先将训练样本(Xj,Yj)、权重Wk以及阈值bk输入波形叠加极限学习机分类模型的表达式中,求出最小输出权重矩阵13,然后将测试样本模型参数β\隐层节点权重Wk以及隐层神经元的阈值bk输入波形叠加极限学习机分类模型的表达式中,获取新的波形叠加极限学习机分类模型的分类标签值太j ;最后得到训练样本(\,Yj)分类准确度为
/x count { V; =v:I
?/;(?Α)=~^-^-*\00% ,1 = 1,2,…,20。
[0084]步骤IV、交叉验证
[0085]IV -1、将N。= 160个训练样本随机等分力M =5份,一份为32个样本;
[0086]IV -2、从5份训练样本中抽取一份32个梓本作为交叉验证测试样本(xlq, ylq),I=1,2,…,32,q = 1,2,…,5 ;剩余4份4X32个样本作为交叉验证训练样本,
[0087]IV -3、将剩余4份交叉验证训练样本和寄生巢ω ik和bik输入波形叠加极限学习机分类模型中,得到最小输出权重矩罔P,
[0088]IV _4、将抽取的一份32个交叉验证测试样本的Xlq、最小输出权重矩阵以及寄生巢ω ik和bik输入波形叠加极限学习机分类模型的表达式中,得到输出的分类标签值为I' lq;记录第q次交叉验证的分类标签输出值{y'2q,…,y' lq};步骤IV-3所得波形叠加极限学习机分类模型的分类标签值f lq等于该交叉验证测试样本的分类标签值ylq的个数count {y, lq = ylq}与交叉验证测试样本个数32之比、作为第q次波形叠加极限学习机分类模型的交叉验证的分类准确度。
[0089]IV -5、重复5次步骤II1-1?II1-4,得到5个分类准确度;
[0090]求所得M= 5个的交叉验证分类准确度的算术平均值7(?,ω?7,~),此为160个训练样本5倍交叉验证的输出值。
[0091]步骤V、求目标函数
[0092]求步骤III所得的训练样本(\,Yj)的分类准确度fi (Xj, ω ik, bik)和步骤IV所得的训练样本交叉验证的输出值Λ—) 二者平均值的公式作为目标函数,
I r -? I COWU\ V =v:\ I colon\ )?=ν;.,}
[0093]gp:Z=丄「/; + /;]=丄-^........1il+Ay -L.1!........:Jll ”()()%.1 2L 1 2 16032
Lq V.)_
[0094]其中},…,?为布谷鸟算法第n(l代目标函数的结果,本例最大迭代次数为 Mn = 100,I ^n0 ^ 5, i = 1,2,…,20。
[0095]步骤V1、求布谷鸟算法的下一代结果
[0096]V1-1、步骤V得到布谷鸟算法的第Iitl代目标函数结果}^=.^,Γ2,...,,对比该组20个寄生巢中目标函数值,将目标函数值最高maxlf?)对应的寄生巢ω' ijjPb' 11;作为当前代最优寄生巢保留;采用莱维飞行的理论(sigma分布的可变步长)求该组中剩余的
19个寄生巢对应的19个临近寄生巢和&,并对比19个寄生巢和其对应临近寄生巢的目标函数值大小。如果临近寄生巢的目标函数值大于其对应寄生巢的目标函数值,临近寄生巢替代原位置的寄生巢;反之,保留原位置的寄生巢。
[0097]V1-2、以概率Pa = 0.25随机新建4个寄生巢ω ik和bik,并随机替代步骤VI _1所得除当前代最优寄生巢以外的其它19个寄生巢(包括临近寄生巢或原位置的寄生巢)中的4个。
[0098]将步骤V1-2处理所得的19个寄生巢和步骤V1-1保留的最优寄生巢一起作为下一代的寄生巢,按照步骤III?V求布谷鸟算法的下一代目标函数结果?:<%+11。
[0099]步骤νπ、建立最佳波形叠加极限学习机分类模型
[0100]按照步骤III?VI重复迭代,每一代求得目标函数的分类准确度max ,多次迭代后,当目标函数值达到100%,停止迭代,以此时的寄生巢为最优的寄生巢ω' 11;和屮ik;若目标函数值未达到100%,继续重复步骤III?VI,当达到最大迭代次数100后,结束迭代,以此时满足目标函数值max 大的寄生巢为最优的寄生巢ω' ^和^ ik ;
[0101]将最优寄生巢的ω'ik带入f(x)中,构建最佳波形叠加极限学习机分类模型,
TV ^ _
[0102]fix)= Σβ?θ,ψ)(ω;Α.χ+&)
k=l
[0103]此分类模型即可用于对于未知样本进行分类,其分类准确度最高、分类稳定性最好。所获得的最佳波形叠加极限学习机分类模型即可用于对相同的药品活性物质的未知样本进行分类。
[0104]为了验证本发明基于波形叠加布谷鸟优化的极限学习机分类方法针对不同活性浓度的药品样本集建立数学模型获取分类准确度以及分类稳定性,本例进行了第二次实验,仍使用与第一次实验相同的预处理后的4类不同剂量、活性物质浓度分别为5.6%和
8.0%的310个药品样本近红外检测光谱。随机抽取浓度为5.6%的样本50个作为正类样本(真药),浓度为8.0 %的样本150个作为负类样本(假药),即第二次实施的训练样本为200个,剩余的110个混合样本为测试样本。
[0105]第二次实验步骤与第一次实验步骤相同,第二次实验步骤不再详述。
[0106]本例两次实验所用训练样本和测试样本主要特征如表1所示。表1中“维数”表示光谱样本的维数(样本采集点个数),其值决定PLS压缩后的样本维数以及建立分类模型所需要的训练时间;表1中“属性数”表示本例药品样本中不同剂量药品种类数。
[0107]表1实施例1两次实验样本集情况一览表
[0108]
【权利要求】
1.一种基于波形叠加布谷鸟优化的极限学习机分类方法,其特征在于包括如下步骤: 步骤1、训练样本的矩阵 在N个样本集中抽取Nci个样本作为训练样本,Nci彡50,输入训练样本的矩阵为(Xy Yj),j = I, 2,..., N0,Xj = [Xj1, xJ2,…,Xjn]T e Rn, Yj = Iiyjl, yJ2,…,yJm]T e Rm,其中 T 表示转置,R为实数集合,m和η表示样本的特征维数;χ]表示训练样本,Yj表示训练样本的分类标签,设定不同类别的不同输出标签值;隐层节点的数目为A > I ; 步骤I1、生成初始寄生巢 使用布谷鸟寻优算法随机初始化值域为[-0.5,0.5]输入节点的隐层节点权重wk以及隐层神经元的阈值bk,左=1.2.....々,同时在每个隐层节点上生成M个初始寄生巢Coil^Pbik,i = 1,2,…,M,初始寄生巢数为M>1 ; 步骤II1、求波形叠加极限学习机分类模型的分类准确度 本方法的波形叠加极限学习机分类模型的表达式为:
其中 7=-(/+/2),9 (t) =arcsinh(t), Ψ (0 = 4^-—°),Wci > 5 且k。> 2,βk为波形叠加极限学习机分类模型系数, 所述&为反双曲线正弦函数,f^0 (,)=arcsin /?⑴=Ι,(1+$)!2, f2 为 Morlet 小波函数,f =ψ ⑷=^ X C0S ( Vlo0丨’
本方法取 /2 = cos(w0i)e(~0 M ), 波形叠加双激励函数为7=去〔arcsin岭) + cos(w0i)e(—丨J; 基于波形叠加极限学习机的矩阵表示为:
则最小输出权重矩阵民:PiHlJ,其中H11':为神经网络的隐层输出矩阵H的Moore-penrose逆,由广义逆定理通过奇异值分解求得HavJ ; 本步骤先将训练样本权重Wk以及阈值bk输入波形叠加极限学习机分类模型的表达式中,求出最小输出权重矩阵β;;然后将测试样本模型参数&、隐层节点权重Wk以及隐层神经元的阈值bk输入波形叠加极限学习机分类模型的表达式中,获取新的波形叠加极限学习机分类模型的分类标签值V j ;最后得到训练样本(\,yP分类准确度为,
步骤IV、交叉验证 IV -1、将Ntl个训练样本随机等分为分份,A为Ntl的因数,0<Μ<ΛΓ0; IV-2、从份训练样本中抽取一份I个样本作为交叉验证测试样本(xlq,y1(1),其中第q次交叉验证测试样本的分类标签为{ylq,y2(1,…,Y1J ;剩余,G , λ份do个样本作为交叉验证训练样本,将剩余(1-1 )份交叉验证训练样本和寄生巢《ik和bik输入波形叠加极限学习机分类模型中,得到最小输出权重矩阵PtIV _4、将抽取的一份4个交叉验证测试样本的Xlq、最小输出权重矩阵6以及寄生巢《ik和bik输入波形叠加极限学习机分类模型的表达式中得到该分类模型输出的分类标签值为I' lq ;记录第q次交叉验证的波形叠加极限学习机分类模型输出的分类标签值h' l' 2q,…,太lq};步骤IV-3所得波形叠加极限学习机分类模型输出的分类标签值l' I,等于该交叉验证测试样本的分类标签y1(1的个数count {y' lq = ylq}、与交叉验证测试样本个数I之比即为波形叠加极限学习机分类模型第q次交叉验证的分类准确度;
M IV -5、重复步骤IV-1?IV-4 A次; 求所得到A个分类准确度的算术平均值
7(?—Α)为Ntl个训练样本分倍交叉验证的波形叠加极限学习机分类模型的分类准确度输出值; 步骤V、求目标函数 求步骤III所得的训练样本分类准确度为AOcy ?ik, bik)和步骤IV所得的训练样本交叉验证的输出值二者平均值的公式作为目标函数,即目标函数为: Y ' +fi]J i = 1,2,…,Μ,其中=为布谷鸟算法第nQ代目标函数的结果,n0为迭代的次数,设置布谷鸟算法的最大迭代次数为Mn,其中I < n{) < ;
M 步骤V1、求布谷鸟算法的下一代结果 V1-1、步骤V得到布谷鸟算法的第Iitl代目标函数结果}^Hn...,}^,对比该组M个寄生巢中目标函数值,将目标函数值最高max#"1*)对应的寄生巢ω'ik作为当前代最优寄生巢保留;采用莱维飞行的理论、求该组中剩余的M-1个寄生巢对应的M-1个临近寄生巢(^_和&,并对比M-1个寄生巢和其对应临近寄生巢的目标函数值大小;如果临近寄生巢的目标函数值大于其对应寄生巢的目标函数值,临近寄生巢替代原位置的寄生巢;反之,保留原位置的寄生巢; V1-2、布谷鸟所选寄生巢的宿主鸟发现外来鸟蛋并另建一个新巢的概率为Pa,Pa值域为[0,1],即以概率匕随机新建M*Paf寄生巢COik和bik,并随机替代步骤V1-1所得的除当前代最优寄生巢以外的其它M-1个寄生巢中的M*Paf ; 将步骤V1-2处理所得的M-1个寄生巢和步骤V1-1保留的最优寄生巢一起作为下一代的寄生巢,按照步骤III?V求布谷鸟算法的下一代目标函数结 步骤VI1、建立最佳波形叠加极限学习机分类模型 按照步骤III?VI重复迭代,每一代求得目标函数的分类准确度max ,多次迭代后,当目标函数值达到100%,停止迭代,以此时的寄生巢为最优的寄生巢ω'ik;若目标函数值未达到100%,继续重复步骤III?VI,当达到最大迭代次数^后,结束迭代,以此时满足目标函数值max};l令I最大的寄生巢为最优的寄生巢ω'ik; 将最优寄生巢的ω'ik带入f(x)中,构建最佳波形叠加极限学习机分类模型, 此分类模型即可用于对于未知样本进行分类。
2.根据权利要求1所述的基于波形叠加布谷鸟优化的极限学习机分类方法,其特征在于: 所述步骤II中,进行二分类时输出标签值设置为-1和+1,进行三分类时输出标签值设置为0、1和2。
3.根据权利要求1所述的基于波形叠加布谷鸟优化的极限学习机分类方法,其特征在于: 所述步骤II中,隐层结点的数目分的值域为[1,100]。
4.根据权利要求1所述的基于波形叠加布谷鸟优化的极限学习机分类方法,其特征在于: 所述步骤IV中设置最大迭代次数Mn= 100。
5.根据权利要求1所述的基于波形叠加布谷鸟优化的极限学习机分类方法,其特征在于: 所述步骤IV中 选取频率 得极限学习机分类方法的激励函数为
【文档编号】G06F17/30GK104166691SQ201410365700
【公开日】2014年11月26日 申请日期:2014年7月29日 优先权日:2014年7月29日
【发明者】刘振丙, 蒋淑洁, 杨辉华, 张学博, 何其佳 申请人:桂林电子科技大学