季江飛,郭久森
(浙江理工大學(xué) 信息學(xué)院,杭州 310018)
迄今為止,在與機器學(xué)習(xí)有關(guān)的諸多研究方向中,人工神經(jīng)網(wǎng)絡(luò)正起著越來越重要的作用,常見的相關(guān)應(yīng)用包括圖像處理、模式識別和控制等領(lǐng)域。當(dāng)下的研究也已表明,針對不同的預(yù)測問題,只要選定了單隱層前饋網(wǎng)絡(luò)(SLFN)的激活函數(shù),就能夠確定相應(yīng)的決策邊界。
單隱層前饋網(wǎng)絡(luò)結(jié)構(gòu)簡單,訓(xùn)練代價小,在許多場合中都有不俗表現(xiàn)。目前經(jīng)常見到的SLFN有極限學(xué)習(xí)機(Extreme Learning Machine,ELM)和隨機向量函數(shù)連接網(wǎng)絡(luò)(Random vector functional-link network,RVFL)。其中,ELM網(wǎng)絡(luò)結(jié)構(gòu)簡單,訓(xùn)練和預(yù)測時計算速度較快,在做分類時有較好的性能。然而現(xiàn)如今的批處理系統(tǒng)在執(zhí)行任務(wù)過程時數(shù)據(jù)會不斷更新,如果反復(fù)進行批量訓(xùn)練,就會使計算成本偏高。基于此,則有學(xué)者提出了在線順序的極限學(xué)習(xí)機(OSELM),能夠在線地訓(xùn)練模型,不斷更新輸出權(quán)重。RVFL也是一種SLFN網(wǎng)絡(luò),在結(jié)構(gòu)上與ELM類似,最主要的不同就在于RVFL直接將輸入層與輸出層做了直接映射。盡管RVFL在一定程度上提升了網(wǎng)絡(luò)復(fù)雜度,但也提升了網(wǎng)絡(luò)的泛化能力。為了降低奇異點和噪聲的影響,引入了核函數(shù)來替代激活函數(shù),再無需對隱藏層神經(jīng)元數(shù)量進行調(diào)整,但是核函數(shù)的參數(shù)選擇上卻又面臨了靈活多樣、難以固定的困擾。Zhang等人使用了在線的RVFL網(wǎng)絡(luò)來預(yù)測高爐鐵水質(zhì)量,但是并未引入正則化思想,神經(jīng)網(wǎng)絡(luò)的泛化能力略有不足。Zhou等人使用范數(shù)的方式提升結(jié)構(gòu)的稀缺性,通過整體消除神經(jīng)元來降低模型的內(nèi)在復(fù)雜性,降低損失函數(shù)中的經(jīng)驗損失和結(jié)構(gòu)損失。
綜合前述研究,本文將在線順序模式引入RVFL,使其具有即時處理新輸入的小塊訓(xùn)練集的能力,而不用重復(fù)計算整體大量的數(shù)據(jù)集。同時,利用范數(shù)對輸出權(quán)重的表達(dá)進行正則化,可有效降低模型的內(nèi)在復(fù)雜性。
圖1 RVFL的網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 Network structure of RVFL
其中,()為激活函數(shù);w為輸入權(quán)重,w=[w,w,,w];b為隱含層增強節(jié)點的偏置;β=[β,β,......,β]為輸出權(quán)重。w和b一般是隨機確定的。
公式(1)可以簡化成矩陣,矩陣形式為:
其中,
相較于傳統(tǒng)的RVFL網(wǎng)絡(luò),正則化的RVFL能夠提升網(wǎng)絡(luò)的泛化能力,并能有效地預(yù)防模型的過擬合問題。常用的做法是求出訓(xùn)練誤差和輸出權(quán)重的最小值:
其中,輸出的誤差,是正則化系數(shù),用于權(quán)衡訓(xùn)練誤差和模型復(fù)雜度之間的影響。為了求得該最小值,可以通過將RVFL與有關(guān)的梯度設(shè)為零,進而推得的封閉形式解為:
其中,是維度為()的單位矩陣。
在數(shù)據(jù)集的收集和整理的過程中,難免會錄入一些受到噪聲影響或者偶然性較大的數(shù)據(jù)點,這些由于人為因素或環(huán)境因素造成的誤差,可能會使由常規(guī)樣本訓(xùn)練而來的神經(jīng)網(wǎng)絡(luò)的性能難以達(dá)到預(yù)期。為了減少或者消除奇異點所帶來的影響,這里定義了正則化和損失函數(shù)在模的最小化表達(dá):
從上文對模的定義可知,對矩陣處理時先按行求其范數(shù),再對結(jié)果求范數(shù),如此操作能夠?qū)?quán)重矩陣的部分行值減小到零。從而達(dá)到剔除可忽略不計的特征值的目的,同時也能減少網(wǎng)絡(luò)的復(fù)雜性。基于KKT條件,可以得到最優(yōu)解:
為了計算輸出權(quán)重的解,分別對α,β,e求偏導(dǎo)并使其為零,那么就可以得到輸出權(quán)重的最終解為:
RVFL能夠批量訓(xùn)練全部個樣本值,而在實時場景中,樣本數(shù)據(jù)可能會不斷地更新,此時RVFL網(wǎng)絡(luò)則要去重新計算所有的訓(xùn)練數(shù)據(jù)。為了能夠?qū)Ω碌臄?shù)據(jù)進行實時處理,故將研究重點關(guān)注在即時的數(shù)據(jù)上,引入了在線順序的方式。通過不斷地調(diào)整新參與的訓(xùn)練數(shù)據(jù)與已有數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系,計算和更新輸出權(quán)重。讓網(wǎng)絡(luò)對新樣本也能有好的預(yù)測效果,同時又大大減少了重復(fù)訓(xùn)練整塊樣本數(shù)據(jù)的計算量。
文中不妨假設(shè)初始訓(xùn)練樣本數(shù),那么初始輸出權(quán)重可以由初始輸出矩陣和輸出向量得到:
其中,是一個的對角矩陣。當(dāng)一個大小為的新數(shù)據(jù)塊加入時,此時的輸出權(quán)重有:
為了評估OSRVFL算法的效果,本節(jié)將提出的算法和一些已有的RVFL相關(guān)算法進行比較,選用的數(shù)據(jù)集來自于UCI機器學(xué)習(xí)存儲庫。使用的數(shù)據(jù)集中,隨機選取數(shù)據(jù)集80%樣本用作于訓(xùn)練集,將剩余20%的樣本作為測試集。在數(shù)據(jù)被劃分為訓(xùn)練集和測試集之前,則會將數(shù)據(jù)集的順序重新打亂并隨機選取出新的訓(xùn)練集和測試集。
使用不同的統(tǒng)計學(xué)上的指標(biāo)來對算法的性能做出評價,主要包括相關(guān)系數(shù)、均方根誤差。對此擬做研究分述如下。
(1)相關(guān)系數(shù)。數(shù)學(xué)定義公式具體如下:
(2)均方根誤差。數(shù)學(xué)定義公式具體如下:
相關(guān)系數(shù)越接近1則表示模型預(yù)測效果越好,而均方根誤差衡量的是實際值和觀測值之間的誤差分布,取值越小,說明模型預(yù)測效果越好。
表1給出了幾種算法運用不同的激活函數(shù),運行在不同的數(shù)據(jù)集上的性能比較結(jié)果。由表1中看出,對于不同的數(shù)據(jù)集而言,使用不同的激活函數(shù)能夠有不同的均方根誤差。
在表1基礎(chǔ)上,確定了適用于每個數(shù)據(jù)集的最佳激活函數(shù)后,對相關(guān)系數(shù)進行了評估。研究得到的不同算法的相關(guān)系數(shù)見表2。
表1 不同激活函數(shù)結(jié)果Tab.1 Results of different active functions
表2 不同算法的相關(guān)系數(shù)Tab.2 Correlation coefficients of different algorithms
從實驗結(jié)果來看,本文提出的OSRVFL方法與經(jīng)典的RVFL和RVFL相比,在UCI的多個數(shù)據(jù)集中,多數(shù)情況下均取得了最佳表現(xiàn)。本文算法的預(yù)估值更為貼近真實值,與真實值的相關(guān)性更強。
針對單隱層前饋神經(jīng)網(wǎng)絡(luò)在批處理問題中,需要反復(fù)訓(xùn)練網(wǎng)絡(luò)、更新權(quán)重的問題,本文將在線順序機制與RVFL相結(jié)合,并且為了降低模型復(fù)雜度,引入了范數(shù)對輸出權(quán)重進行正則化。在UCI部分分類數(shù)據(jù)集中,與另外2種同源算法進行了比較。從實驗結(jié)果來看,本文提出的算法的預(yù)測表現(xiàn)更為出色。