基于波形疊加布谷鳥優化的極限學習機分類方法
【專利摘要】本發明為一種基于波形疊加布谷鳥優化的極限學習機分類方法,主要步驟為:Ⅰ、建立訓練樣本矩陣;Ⅱ、在每個隱層節點上生成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日
【發明者】劉振丙, 蔣淑潔, 楊輝華, 張學博, 何其佳 申請人:桂林電子科技大學