吳明勝,鄧曉剛
中國石油大學(華東)信息與控制工程學院,山東 青島 266555
極限學習機(Extreme Learning Machine,ELM)是Huang等[1]提出的一種單隱層前饋神經(jīng)網(wǎng)絡學習算法,算法僅需設置合適的隱層節(jié)點數(shù)及隨機初始化輸入節(jié)點和隱層節(jié)點的權值及隱層節(jié)點閾值,即可通過對隱層輸出矩陣求廣義逆求得隱層輸出權值,整個訓練過程不需要進行復雜的迭代運算。因此ELM具有學習速度快、泛化性能好的優(yōu)良特性。目前,ELM已經(jīng)在時間序列預測、故障診斷、文檔分類、軟測量建模等多個領域得到廣泛應用[2-5]。如李彬等[2]將ELM用于混沌時間序列預測,陳紹煒等[3]構建了基于ELM的模擬電路故障診斷方法,陳盛雙[4]基于ELM算法對XML文檔分類提出了基于投票機制的Voting-ELM算法,李琨等[5]建立了基于自動譜聚類與多極端學習機的油井含水率軟測量模型??傮w而言,ELM已成為一種極具研究價值的數(shù)據(jù)分析與模式分類算法。
雖然傳統(tǒng)的ELM算法已經(jīng)在實際應用中獲得一定成功,但是其仍然存在兩個方面的問題需要解決:其一,ELM本身是一種監(jiān)督學習算法,其解決模式分類問題時僅僅使用標記樣本來訓練模型參數(shù),但是實際過程中標記樣本的數(shù)目遠遠少于未標記樣本,傳統(tǒng)ELM浪費了大量的未標記樣本數(shù)據(jù)資源。其二,傳統(tǒng)的ELM采用隨機設置輸入權值和偏置參數(shù)的策略,雖然大大降低網(wǎng)絡訓練的復雜度,但是參數(shù)的隨機初始化不可避免地會影響網(wǎng)絡訓練結果的穩(wěn)定性,無法保證網(wǎng)絡訓練的精度。
針對以上兩個問題,本文利用協(xié)同訓練策略和智能優(yōu)化算法對ELM進行改進,提出一種改進的ELM算法Tri-DE-ELM。該算法采用Tri-Training算法實現(xiàn)多個ELM基分類器的協(xié)同訓練,在利用標記樣本構建分類器的同時,充分挖掘未標記樣本中的信息。進一步采用差分進化(DE)算法對ELM網(wǎng)絡中的參數(shù)進行智能優(yōu)化,以DE-ELM算法構建基分類器,從而提高基分類器的分類精度。
極限學習機(ELM)目前在回歸、分類問題中得到了廣泛應用,圖1為ELM網(wǎng)絡模型結構圖。ELM并不需要對所有的網(wǎng)絡參數(shù)進行調整,算法隨機產(chǎn)生輸入權值和隱含層偏差并且訓練過程中無需再調整,給定隱含層神經(jīng)元個數(shù),即可通過求解線性方程組的最小二乘解求得輸出連接權值,其具體工作原理如下[1]。
圖1 ELM網(wǎng)絡模型結構圖
以零誤差逼近這N個樣例,存在wi、bi與βi使得:
可以簡寫為Hβ=Y,H為隱含層輸出矩陣,Y為樣本輸出向量,其中:
輸出層權值β可通過下述優(yōu)化問題得到:
解式上式可得:
其中H+為隱含層輸出矩陣H的Moore-Penrose廣義逆。
ELM算法的訓練過程如下:
(1)隨機產(chǎn)生參數(shù)( )wi,bi,i=1,2,…,L。
(2)根據(jù)公式(3)計算隱含層輸出矩陣H。
(3)計算輸出權重向量β:β=H+Y。
半監(jiān)督學習是監(jiān)督學習和無監(jiān)督學習相結合的一種學習方法,是機器學習領域新興的研究算法。它同時采用少量的標記樣本和大量的未標記樣本,通過未標記樣本的信息輔助完成學習模型的建立,能獲得較好的泛化性能和學習效果[6]。近年來,半監(jiān)督學習逐漸成為機器學習的一個研究熱點。
在眾多半監(jiān)督學習方法中,協(xié)同訓練取得研究成果較多[7-8]。眾多學者將半監(jiān)督學習方法應用于分類,如李昆侖等將Tri-Training算法與SVM結合用作數(shù)據(jù)分類[9],李萍等將構造性學習算法與Tri-Training算法結合,提出了Tri-CML算法[10],協(xié)同訓練算法在訓練樣本的初始已標記樣本集上,訓練出至少兩個分類器,然后,輪流地選定它們其中的一個為主分類器,其余的為輔助分類器,輔助分類器對未標記樣本進行預測,并把它們預測置信度較高的樣本標記提供給主分類器,主分類器在更新的有標記樣本的基礎上重新訓練。其中,Tri-Training算法是半監(jiān)督學習的研究熱點。
Tri-Training算法是由Zhou等人提出的一種協(xié)同機制的半監(jiān)督分類算法[11],可以看作是Co-Training算法的擴展,算法對于數(shù)據(jù)集沒有嚴苛的要求,也不需要兩個冗余視圖,通過構造三個不同的分類器進行協(xié)同訓練,最后通過Bagging算法進行集成[12-14]。
假設初始的少量有標記樣本集為L,未標記樣本集為U,首先對有標記樣本集進行可重復采樣(Bootstrap Sampling)[15]以獲得三個有標記訓練集,由三個不同的訓練集訓練得到三個初始分類器H1,H2,H3。在Tritraining迭代過程中,每個分類器新增的訓練樣本由另外兩個分類器協(xié)作提供,例如,對于分類器H1,如果H2和H3對同一個未標記樣本x( )x∈U 有相同的標記,那么將x標記為H2()x,并將x加入到H1的訓練集,可得到新的 H1訓練集同理,H2和H3的訓練集分別擴充為L′2、L′3。用新擴充的訓練集分別重新訓練三個分類器。如此重復迭代,直到三個分類器不再變化,訓練過程結束。
網(wǎng)絡連接權值和隱含層偏差是影響極限學習機性能的主要因素,因此合理地設計網(wǎng)絡連接權值和隱含層偏差是提升預測精度的關鍵。然而在傳統(tǒng)的ELM訓練過程中,其輸入層與隱含層之間的連接權值和隱層偏移值均通過隨機初始化完成,由于每次隨機初始化數(shù)值不同,導致每次訓練結果有一定差異,無法保證獲取最優(yōu)的ELM網(wǎng)絡,為解決此問題,本文將差分進化算法(Differential Evolutionary,DE)[16]引入 ELM 的訓練過程,利用DE算法的全局尋優(yōu)能力,將極限學習機的輸入層與隱層之間的連接權值以及隱層偏差進行編碼,作為待優(yōu)化變量進行智能優(yōu)化,從而獲取最優(yōu)的初始值,避免隨機初始化導致網(wǎng)絡性能較差的現(xiàn)象。
其中w、b為[-1,1]中的隨機數(shù),D為解的空間維數(shù)。
(2)計算適應度函數(shù):對于種群中的每個個體利用ELM算法計算出ELM網(wǎng)絡的輸出權值矩陣;從測試樣本中選取部分驗證樣本,將ELM的測試誤差均方根誤差(RMSE)設定為差分進化算法的適應度函數(shù)[17]。
式中vi,T+1為變異后的個體,θr1,T、θr2,T、θr3,T為種群中隨機選取的3個個體,F(xiàn)為變異因子,F(xiàn)∈[ ]0,2,目的是控制差分變量的放大。其中隨機選擇的下標且r1,r2,r3與目標向量序號i也不同。
(4)交叉:為了增加干擾參數(shù)向量多樣性,引入交叉操作,根據(jù)變異產(chǎn)生的新個體vi,T+1與初始個體θi,T產(chǎn)生交叉得到新個體,令新個體為μi,T+1,其中:
式中μi,T+1為新個體,θi,T+1為原種群中的個體,K為隨機產(chǎn)生[0,1]區(qū)間的值,CR為交叉概率為之間的隨機數(shù)。
(5)選擇:決定μi,T+1能不能成為種群中的個體,將μi,T+1與θi,T進行比較,若μi,T+1適應度值大于θi,T,則為第T+1代個體,否則保留θi,T??紤]到在選擇過程中將均方根誤差作為適應度函數(shù)可能會造成網(wǎng)絡過擬合,因此,將權值‖‖β與均方根誤差結合起來考慮,在新的選擇策略中,當不同個體適應度差別較小時,適應度中含有較小‖β‖的個體將被選擇,用于驗證樣本適應度。
(6)重復步驟(2)、(3)、(4)和(5),直至達到目標或最大迭代次數(shù)找到最優(yōu)θ后,確定H和β。
本文將DE-ELM與Tri-training相結合,構造一種新的ELM半監(jiān)督分類算法:Tri-DE-ELM。
算法的描述如下:
輸入:有標記數(shù)據(jù)集L,未標記數(shù)據(jù)集U,測試集T,隱藏層節(jié)點數(shù)d,激活函數(shù)g()x
步驟1訓練DE-ELM基分類器
對有標記數(shù)據(jù)集L重采樣得到三個差異的樣本集,然后用三個樣本集訓練三個DE-ELM基分類器。
步驟2協(xié)同訓練(互助標記的樣本未加入到主分類器的標記樣本集中)
選其中一個分類器即DE-ELM作為主分類器H1,其余兩個分類器H2、H3對未標記樣本集U中的樣本進行分類,將相同標記的樣本組成樣本集L′,利用有標記樣本集L′?L訓練主分類器H1,更新輸出層權重β。三個分類器輪流作為主分類器,直到把三個分類器全部更新一遍。Tri-Training算法的基分類器在每次訓練過程中重新訓練,直到DE-ELM達到最大迭代次數(shù)或找到最優(yōu)的H和β。
步驟3測試
用測試集T對訓練好的三個基分類器進行測試,通過多數(shù)投票規(guī)則得到最終分類結果。
需要注意的是,L′在下一輪的訓練中并不作為已標記的數(shù)據(jù),而是重新放回U中作為未標記的樣本在下一輪中重新使用。
為驗證算法的有效性,在UCI數(shù)據(jù)集[18]上選取五組數(shù)據(jù)集進行實驗,其中包括:Australian、Cancer、Vote、Wdbc和Mushroom。具體數(shù)據(jù)集信息如表1所示。UCI數(shù)據(jù)庫是加州大學歐文分校(University of CaliforniaIrvine)提出的用于機器學習和模式識別的數(shù)據(jù)庫,在模式分類領域廣泛應用于算法的驗證和比較。
對于基本的二分類問題,分類模型預測結果混淆矩陣如圖2所示。
表1 數(shù)據(jù)集相關信息
圖2 算法性能評價參數(shù)混淆矩陣
其中,正確率(Accuracy)與錯誤率(Error Rate)是較為簡單的分類器性能評價指標。
在一些數(shù)據(jù)分類情況中(如醫(yī)學病例診斷),研究人員還同時關注真陽性率與假陽性率這兩個性能指標。
其中,TPR為真陽性率,對應正類情形的檢測率,F(xiàn)PR為假陽性率,對應負類情形的誤判率。
實驗過程中,針對每個數(shù)據(jù)集隨機抽取75%的數(shù)據(jù)作為訓練數(shù)據(jù)集,其中訓練數(shù)據(jù)集又分為有標記數(shù)據(jù)集L和未標記數(shù)據(jù)集U。剩余25%數(shù)據(jù)作為測試數(shù)據(jù)集T。
在算法測試中,Tri-ELM和Tri-DE-ELM的數(shù)據(jù)組成為L?U?T,ELM和DE-ELM的數(shù)據(jù)組成為L?T。四種算法的隱含層神經(jīng)元個數(shù)為20,Tri-DE-ELM和DE-ELM中CR為0.8,F(xiàn)為1,最大迭代次數(shù)Gmax為20,群體數(shù)目NP為20。在標記樣本占訓練樣本比例為40%的情況下,測試不同算法的分類正確率,結果如表2所示。同時獲得真陽性率和假陽性率,如表3所示。
表2 四種算法在數(shù)據(jù)集上的分類正確率
由表2可以看出,ELM在五類基準數(shù)據(jù)集上的平均分類正確率為85.39%,經(jīng)過DE算法優(yōu)化后,DE-ELM在五種數(shù)據(jù)集上的分類正確率均有所提高,平均分類正確率增加至91.77%,可知DE-ELM可以有效解決ELM分類正確率受隨機選取初始輸入層權值的問題,改善算法分類性能。Tri-ELM充分利用了未標記樣本中信息,平均分類正確率提高至92.30%。而Tri-DE-ELM算法綜合了協(xié)同訓練和智能優(yōu)化思想,對于五種數(shù)據(jù)集的分類正確率均在85%以上,最高可達到93.99%,平均值可達93.86%。在只有少量標記數(shù)據(jù)的情況下,Tri-DEELM算法在各個數(shù)據(jù)集上均取得了較理想的結果,具有較高的分類正確率。
表3 四種算法在數(shù)據(jù)集上的真/假陽性率
由表3中四種算法在五類數(shù)據(jù)集上的真陽性率和假陽性率可以看出Tri-DE-ELM在此兩種評價指標上均得到較為理想的結果。
為進一步測試未標記樣本對分類效果的影響,對訓練數(shù)據(jù)集隨機抽取20%、40%、60%、80%作為有標記樣本集L,分別使用DE-ELM和Tri-DE-ELM訓練分類器,在測試數(shù)據(jù)集上的分類結果見表4,真陽性率和假陽性率的結果見表5與表6。
由表4可知,隨著未標記樣本比例增加,用于訓練分類器的數(shù)據(jù)減少,算法可以獲得的特征信息隨之減少,DE-ELM與Tri-DE-ELM在五種數(shù)據(jù)集上分類正確率都有所下降,以Australian數(shù)據(jù)集為例,在20%未標記樣本的情形下,DE-ELM、Tri-DE-ELM分類正確率分別為88.37%、89.60%,而在80%未標記樣本情形下,DEELM分類正確率下降至84.88%、86.70%。但是在不同比例的未標記樣本情形下,Tri-DE-ELM算法均能顯著改善分類正確率。在四種不同情形下,DE-ELM算法的分類正確率均低于93%,而Tri-DE-ELM算法的分類正確率均高于92%??傮w而言,Tri-DE-ELM算法由于考慮了未標記樣本的信息,其分類正確率要高于DE-ELM算法。
由表5、表6可知,隨著未標記樣本比例增加,由于標記樣本減少,算法可學習到的信息減少導致在五種數(shù)據(jù)集上對正類數(shù)據(jù)檢測率降低,對負類情形的誤判率升高。以Cancer數(shù)據(jù)集為例,在20%未標記樣本的情形下,DE-ELM的真陽性率為96.15%,假陽性率為8.33%,可知在病例診斷中,病人被確診的概率為96.15%,被誤診的概率為8.33%。Tri-DE-ELM算法中病人被確診的概率為96.26%,而被誤診的概率為4.34%,低于DEELM算法的誤診概率,在80%未標記樣本的情形下,兩種算法真陽性率都有所降低,但Tri-DE-ELM算法96.26%的真陽性率依然高于DE-ELM92.45%的真陽性率,假陽性率基本持平,對于Cancer數(shù)據(jù)集來講,Tri-DE-ELM算法的效果優(yōu)于DE-ELM。在四種不同情形下,DE-ELM的真陽性率平均值均低于Tri-DE-ELM算法的真陽性率,未標注樣本比例低于80%時,DE-ELM的假陽性率平均值低于Tri-DE-ELM算法的假陽性率,當未標記樣本比例為80%時,DE-ELM的假陽性率平均值略高于Tri-DE-ELM算法的假陽性率平均值??傮w而言,由于考慮了未標記樣本的信息,Tri-DE-ELM算法比DE-ELM算法更準確的檢測出正類數(shù)據(jù),同時減少負類數(shù)據(jù)的誤判。
表4 DE-ELM和Tri-DE-ELM在不同比例未標記數(shù)據(jù)集上的分類正確率
表5 DE-ELM在不同比例未標記數(shù)據(jù)集上的真/假陽性率
表6 Tri-DE-ELM在不同比例未標記數(shù)據(jù)集上的真/假陽性率
針對ELM未充分利用未標注樣本、訓練精度受網(wǎng)絡權值初值影響的問題,提出一種改進的極限學習機算法Tri-DE-ELM。所提出的算法使用DE算法對極限學習機的參數(shù)進行優(yōu)化,在此基礎上利用Tri-Training算法設計半監(jiān)督模式分類系統(tǒng)。文中最后在五種標準數(shù)據(jù)集上開展了實驗驗證,結果說明本文所提出的算法具有更為良好的分類性能,有效提升了傳統(tǒng)的ELM分類方法。
[1]Huang G B,Zhu Q Y,Siew C K.Extreme learning machine:Theory and applications[J].Neurocomputing,2006,70(1/3):489-501.
[2]李彬,李貽斌.基于ELM學習算法的混沌時間序列預測[J].天津大學學報:自然科學與工程技術版,2011,44(8):701-704.
[3]陳紹煒,吳敏華,趙帥.基于PCA和ELM的模擬電路故障診斷[J].計算機工程與應用,2015,51(11):248-251.
[4]陳盛雙.基于極限學習機的XML文檔分類[J].計算機工程,2011,37(19):177-178.
[5]李琨,韓瑩,黃海礁.基于自動譜聚類與多極端學習機模型的油井油液含水率軟測量[J].化工學報,2016,67(7):2925-2933.
[6]劉建偉,劉媛,羅雄麟.半監(jiān)督學習方法[J].計算機學報,2015(8):1592-1617.
[7]張雁,呂丹桔,吳保國.基于Tri-Training半監(jiān)督分類算法的研究[J].計算機技術與發(fā)展,2013,23(7):77-79.
[8]唐超,王文劍,李偉,等.基于多學習器協(xié)同訓練模型的人體行為識別方法[J].軟件學報,2015,26(11):2939-2950.
[9]李昆侖,張偉,代運娜.基于Tri-training的半監(jiān)督SVM[J].計算機工程與應用,2009,45(22):103-106.
[10]李萍,吳濤.協(xié)同半監(jiān)督的構造性學習方法[J].計算機工程與應用,2015,51(3):129-132.
[11]Zhou Z H,Li M.Tri-training:exploiting unlabeled data using three classifiers[J].IEEE Transactions on Knowledge&Data Engineering,2005,17(11):1529-1541.
[12]Blum A.Combining labeled and unlabeled data with co-training[C]//Proceedings of the Eleventh Annual Conference on Computational Learning Theory,2000:92-100.
[13]高玉微.CBIR系統(tǒng)中基于半監(jiān)督ELM的相關反饋研究[D].河北保定:河北大學,2014.
[14]夏陸岳,王海寧,朱鵬飛,等.KPCA-bagging集成神經(jīng)網(wǎng)絡軟測量建模方法[J].信息與控制,2015,44(5):519-524.
[15]王焱,汪震,黃民翔,等.基于OS-ELM和Bootstrap方法的超短期風電功率預測[J].電力系統(tǒng)自動化,2014,38(6):14-19.
[16]Das S,Mullick S S,Suganthan P N.Recent advances in differential evolution-An updated survey[J].Swarm and Evolutionary Computation,2016,27:1-30.
[17]宋歡歡.金壇儲氣庫季節(jié)調峰量預測及采氣管網(wǎng)運行工況模擬[D].成都:西南石油大學,2013.
[18]UCI repository of machine learning databases[EB/OL].(1998).http://archive.ics.uci.edu/ml/.