李雪艷,廖一鵬
(1.陽光學院 人工智能學院,福建 福州 350015;2.福州大學 物理與信息工程學院,福建 福州 350108)
人工神經網絡是機器學習的一種重要學習方式,而對神經網絡的研究已經很久了,有些訓練算法已經非常成熟,如經典的多層前饋(Back Propagation,BP)神經網絡等,應用已經非常廣泛,大量地應用于回歸擬合和分類問題之中[1]。但是這種被廣泛應用于多層前饋神經網絡的經典訓練算法,大多是基于梯度下降的方式來調整權值和閾值[2]。這類算法的訓練速度慢、有可能得到的不是全局最優而是陷入局部最優,還有著參數調整復雜的問題。HUANG G B等人在2004年提出了一種新型的前饋神經網絡即極限學習機(ELM)[3]。極限學習機(Extreme Learning Machine,ELM)是用于單隱層神經網絡(Single hidden LayerFeed-forward Neural networks,SLFNs)訓練的一種高效的訓練算法。ELM不同于經典的神經網絡,它不需要梯度下降算法中繁瑣的迭代過程去調參而耗費很多時間。其隨機產生所有的權值和隱層節點閾值。并且它在訓練中一直不變,需要人為設定的只有節點個數,然后求逆矩陣得到輸出權值,便能計算得到最優值[4]。相較于傳統的SLFNs,ELM的訓練速度顯著提升,效率遠高于之前算法,且泛化性能好[5]。ELM作為優秀的分類器,擁有良好的應用前景。但是在實際應用中,尤其是在處理回歸擬合的問題上,它的效果并不好,準確度一般。為了達到理想的誤差精度,ELM需要龐大的隱含層神經元。而由于它的輸入權值和閾值是隨機設定的,這導致龐大的基數中有很多神經元是無效的,即存在隨機出的輸入權值和閾值為0。
因此,本文嘗試改進算法,在犧牲一點原算法的訓練時間的條件下,利用量子遺傳算法去優化ELM的各個參數如權值和節點閾值等。選取最優的參數,以期能夠減少隱含層節點的數量和網絡的整體維度,提升ELM的整體性能,使得算法預測上能夠更精確,且效果更穩定。
目前傳統的人工神經網絡算法有BP神經網絡[6]和徑向基函數(Radial Basis Function,RBF)神經網絡[7],以及本文研究的重點算法極限學習機算法。BP神經網絡算法的核心是通過誤差反向傳遞來調參,通過層層迭代調整參數。RBF神經網絡的拓撲結構不再是一成不變了,而是隨著要處理的問題情況自動地調整隱層節點數。神經元的輸入離徑向基函數中心越遠,神經元的激活程度就越低。RBF網絡的輸出與數據中心離輸入模式較勁的“局部”隱節點關系較大,RBF神經網絡因此具有“局部映射”特性。
極限學習機是一種新型的、快速的神經網絡學習算法。不同于傳統的神經網絡,ELM中所有的輸入層和隱函層之間的連接權值和隱層參數均為隨機產生,它的輸出權值是通過求解矩陣的廣義逆得到[8]。因此,與常規算法比較,該算法學習速度快,擁有更好的實用性。
設神經網絡的輸出值T為:
T=[t1,t2,…,tQ]m×Q,
(1)
式(1)可表示為:
Hβ=T′
(2)
其中H是神經網絡的隱層輸出矩陣,具體如下:
H(w1,w2,…,wl,b1,b2,…,bl,x1,x2,…,xQ)=
(3)
根據式(2)可解得隱含層與輸出層之間的權值β為:
(4)
量子遺傳算法(Quantum Genetic Algorithm,QGA)這一概念是在1996年由NARAYANAN A提出的。2002年KUK-HYUNHAN引入量子染色體的概念,提出了采用量子門的概率操作保持動態性的量子進化算法,并用來解決0-1背包問題,得到了比傳統算法更好的結果[9]。量子遺傳算法是遺傳算法的改進。QGA算法將量子態矢量表達引入染色體編碼,使得一條染色體擁有多個態的疊加。與傳統遺傳算法(Genetic Algorithm,GA)比較,QGA算法的種群有更多種可能性,能夠及時跳出局部最優解,具有更廣泛適用性,收斂更加快速,達到更好的使用效果。
QGA算法中有兩個比較重要的概念,分別是新型的編碼方式:量子比特編碼,以及編碼出來的種群的更新方式。
量子計算中,量子比特是用來儲存信息的物理介質。量子位是不確定的,測量前并不知道它到底是什么狀態,比如這便是一個量子比特:|φ〉=α|0〉β|1〉。其中(α,β)是兩個幅常數,|α|2+|β|2=1,|0〉和|1〉表示自旋態。由前式可得一個量子位同時包含|0〉和|1〉兩個態的信息。量子比特編碼對多態問題進行編碼,兩態用一個量子比特進行編碼。該方法通用性好,量子編碼n個參數的基因如下:
(5)
2.2 量子門更新
量子門是進化操作的機構,用來調整量子比特讓其朝著有力的方向進化。量子門有很多種,在遺傳算法中采用量子旋轉門[10]。其調整操作如公式(6)、(7)所示:
(6)
更新過程如下:

(7)
其中,(αi,βi)T表示第i個量子比特旋轉門的概率幅,θi為事先設定好的旋轉角。
常規極限學習機算法初始化網絡時,是隨機生成輸入層和隱層之間的權值及隱層閾值。然后利用這些隨機生成的值和訓練樣本中的輸出矩陣,通過求逆矩陣的方式計算出輸出權值[11]。但是,隨機生成的參數并不是最理想的,甚至有可能效果很差,影響性能[12]。這些參數有可能在訓練過程中起到的效果很小。比如若是閾值生成0值,那么這個隱層節點就相當于浪費了。在龐大的網絡中,這樣隨機產生的數值會造成網絡很多節點資源的浪費,使得網路規模臃腫龐大。
所以,本文考慮使用量子遺傳算法去優化權值和閾值。選取最優秀的權值和閾值賦予測試網絡,完成整個的優化過程。這樣可以減少節點的浪費。在非常復雜的問題上,可以大幅度減少神經元的個數,有效降低網絡的維度。
量子遺傳優化的改進ELM算法流程如下:
(1)初始化量子比特編碼的種群。種群大小為N。種群中個體參數變量的個數為權值和閾值的個數。權值范圍[-1,1],閾值范圍為0~1。參數具體數目隨樣本輸入變量及隱層神經元個數而定。
(2)測量種群得到二進制編碼種群。
(3)賦予極限學習機權值閾值。將種群中待優化變量解碼,轉化為十進制數,將這些變量賦給極限學習機。這樣便產生N個極限學習機。

(5)計算適應度值。適應度值fitness為網絡輸出與訓練樣本輸出之間的均方差,公式為
(8)
其中m為輸出變量個數。
(6)找出并記錄每代最優適應度值及最優解,然后利用量子旋轉門進化種群。
(7)將新種群的變量值賦給極限學習機,重復步驟(4)。
(8)計算適應度值。
(9)判斷是否滿足結束條件,滿足跳出循環;否則回到步驟(6)。
(10)將最優解賦給測試極限學習機,利用測試樣本測試其性能。
在討論幾種尋優算法在復雜函數問題上的表現,分析為何量子遺傳算法適合極限學習機參數的優化后,用實驗結果來充分證明量子遺傳極限學習機在回歸擬合、分類等問題上的適應性,通過與其他幾種算法的對比體現其優勢。
通過對復雜二元函數求最值
(9)
從時間、迭代次數及是否會陷入局部最優解等幾個方面評價各智能算法的性能,比較它們的優缺點。本文選取的算法有:QGA算法、GA算法、PSO(Particle Swarm Optimization)算法、多種群GA算法、魚群算法。圖1所示為目標函數圖像,圖2為進化過程。

圖1 目標函數圖像
由表1的實驗數據分析可知,傳統遺傳算法在函數逼近的問題當中收斂速度極快,運行時間較短,但是非常容易陷入局部最優解,而且難以跳出。
而QGA算法收斂速度適中,且在局部最優解這個問題上表現很好。綜合性能來說,QGA算法總體較優,是理想的優化算法,適用于本文用來優化ELM的參數。

表1 各算法結果及性能

圖2 各算法進化過程
問題描述:汽油的檢測指標中辛烷值是最重要的指標。但傳統的檢測方法用時長,耗資高,現發展起近紅外光譜分析法,已得到廣泛應用。現已采集到60組汽油樣品的近紅外光譜數據,在900 nm~1 700 nm范圍內選取400個不同的波長點個采集到它們的吸光度數據。
現分別用BP神經網絡、RBF神經網絡、傳統ELM、支持向量機以及本文的量子遺傳算法極限學習機處理此問題,并比較性能,預測結果如圖3所示,預測性能評估如表2所示。

表2 預測性能評估

圖3 汽油辛烷值預測結果圖
表2中均方誤差MSE公式為:
(10)
其中n為輸出值個數,Tsim,i為網絡第i個輸出,Ttest,i為樣本測試集的第i個輸出。MSE越小越好。
決定系數公式:
R2=
(11)

由表2可以看出BP神經網絡、RBF神經網絡預測誤差較小,但學習速度較慢,效率不夠高。與之相對應的是傳統ELM,其擁有相當快的的學習速度,然而高速帶來的是較大的測試誤差,它的均方誤差很大。支持向量機速度最慢,然而它的測試誤差最小,適用于精確預測的場合。本文算法訓練速度也相對較慢,但是其測試誤差控制得很好,決定系數表現也是最好的,可以看出其綜合性能在幾種算法中排名前列。
問題描述:葡萄酒的品質分級向來很嚴格,不同品質的葡萄酒價格差距相當大。除了請品酒師來鑒定葡萄酒的等級外,還可以通過分析葡萄酒中的化學成分含量來判斷葡萄酒的品質。現已采集到三種不同等級葡萄酒樣本150個。通過分析葡萄酒中酒精、蘋果酸、脯氨酸等13種化學成分含量來將它們分類,結果如圖4所示。
由表3可知,由于此次用來分類的葡萄酒樣本數據變量過多且代表性不是很好,因此各算法分類的準確性皆不是很高,而且受訓練樣本的選取影響很大,沒有表現出良好的泛化性能。然而可以看到本文算法在如此惡劣條件下表現出良好的準確性,且相當穩定,在這一指標上呈現壓倒性優勢。但不足的是耗時過多,有待改進。

圖4 各算法分類結果圖

表3 分類性能評估
本文利用量子遺傳算法優化極限學習機的連接權值和閾值,達到了改進的目的,并取得不錯的實用效果。本課題實驗結果分析表明,在樣本數目不是很多的回歸問題和分類問題上,基于量子遺傳優化的改進極限學習機算法的預測精準度高于原算法,綜合性能也略優于原算法。本文算法為在回歸問題的預測和分類問題的處理上提供了一種新的思路。