陳麗芳, 代琪, 付其峰
(1. 華北理工大學 理學院,河北 唐山 063210;2. 華北理工大學 信息工程學院,河北 唐山 063210)
科技的飛速發(fā)展使得數據規(guī)模不斷增大,高維非線性數據急劇增長,面對各類數據的特點和不同的行業(yè)需求,人們迫切需要研究數據智能處理算法,挖掘數據中的隱含知識,獲取數據的潛在價值。傳統(tǒng)的學習機直接在原始數據上進行建模處理,由于計算資源有限、數據潛在特征復雜等原因,難以獲得問題的有效解,因此,研究適合規(guī)模較大的數據處理集成學習算法,科學高效地挖掘出數據中的隱含知識,充分利用數據隱含價值實現(xiàn)智能決策,是目前智能領域新的研究熱點[1],對各個行業(yè)領域均具有指導作用和借鑒意義。
極限學習機[2](Extreme Learning Machine)ELM是機器學習領域研究的一個前沿方向,具有結構簡單、學習速度快和良好的全局尋優(yōu)能力,因此,近年來許多學者將ELM作為集成學習的基學習機展開研究。邵良杉等[3]提出一種以旋轉森林算法為框架,極限學習機為基學習機的集成學習算法模型,在穩(wěn)定性和預測精度上與傳統(tǒng)算法相比均有明顯提升;侯玉倩[4]利用雜交水稻優(yōu)化算法優(yōu)化極限學習機參數,以優(yōu)化后的極限學習機為基分類器,各基學習機經過簡單賦權后,學習機性能略有提升;Cao等[5]提出一種基于最小平方誤差的加權方法,利用得到的權重,優(yōu)化多個ELM的線性組合,改善了數據的分類性能。
集成學習,因能顯著提高學習系統(tǒng)的泛化能力而得到了人工智能領域的廣泛關注,是一種新的機器學習范式[6-7]。如何訓練出精度更高、差異度更大的基學習機,實現(xiàn)更有效的集成學習,是集成學習領域研究的焦點。隨機子空間法有利于提高基學習機的差異度,提升算法的學習精度,但隨機子空間法隨機性較強,每個子空間中不一定包含足夠的重要屬性,導致子空間中的數據不能很好的刻畫原始數據集數據結構。丁毅等[8]利用多核最大均值差異作為隨機子空間相似性度量,選擇具有代表性子空間,得到差異性相似矩陣,提升了算法的穩(wěn)定性。嚴麗宇等[9]利用標準互信息熵確定屬性重要度,將不同屬性劃分為不同層次,形成分層子空間,并在子空間上構建集成學習算法,提升了算法的學習性能。
分析學者們在隨機子空間集成學習和極限學習機的研究成果,部分學者采用加權集成算法,在一定程度上提升了學習效果,但性能對比分析并不明顯,尤其是針對較大規(guī)模的數據集,并未體現(xiàn)出算法的高效性。隨機子空間法可以提高集成學習基學習機的差異性,算法中屬性隨機性造成新生成的數據集冗余,算法準確率降低,計算代價增大[10]。粒計算是降低數據規(guī)模的有效工具[11-14],其分層處理機制恰恰適應了對數據集進行分布式實施的需求,減少冗余數據集,降低算法運算代價,提升算法性能。
因此,研究一種以極限學習機為基學習機,通過粒計算的權重算法確定重要度排序,并依據排序結果劃分矩陣粒,針對不同的矩陣粒構建學習機,最后以條件屬性重要度為基學習機權重進行集成學習,可以避免隨機子空間隨機性對算法的影響,提升學習精度。最后,用Python實現(xiàn)算法仿真,并將結果與其他算法進行對比分析,驗證算法的精確性和可靠性。
集成學習采用分類器作為基學習機,并使用某種規(guī)則把各基學習機學習結果進行整合從而獲得比單個學習機學習效果更好的一種機器學習方法,包括樣本集、弱學習機、集成規(guī)則三要素,在集成規(guī)則框架下,構建多個基學習機模型,對問題進行處理,從而得到一個比單個基學習機更優(yōu)秀的組合學習機模型,該類算法可以解決很多單一學習機無法解決的機器學習問題[15-16]。大部分集成學習方法對基學習機的類型沒有限制,并且在諸多成熟的機器學習框架都具有良好的適用性,因此集成學習也被稱為“無算法的算法”[17]。
傳統(tǒng)的集成學習方法處理規(guī)范數據性能較好,而對于復雜數據分類效果有限。因此,在集成學習中融入數據處理方法顯得尤為重要,也是目前的一個研究熱點。
粒計算[18-19]是當前人工智能研究領域中模擬人類思維和解決復雜問題的新方法,商空間、粗集、模糊集是其主要理論,是研究復雜問題求解、數據挖掘和不確定性信息處理等問題的有力工具。
粒子?;土5倪\算是粒計算最核心的問題。粒化的目的將問題空間分解為多個子空間,在各個子空間上進行模型構建或求解,從而降低問題維度,有利于問題的求解。利用粒計算的降維思想,在每個子空間上構建基學習機,以相應的集成規(guī)則,實現(xiàn)基于粒計算的集成學習,可以有效的分解問題,并獲得問題的有效解。
極限學習機(Extreme Learning Machine,ELM)是從單隱含層前饋網發(fā)展而來,因其結構簡單、執(zhí)行速度快,泛化性能好等優(yōu)點,成為機器學習領域的研究熱點,其學習速度明顯優(yōu)于傳統(tǒng)的神經網絡[20]。
ELM模型隨機產生初始權值和偏置值,將傳統(tǒng)的神經網絡求解過程由非線性模型轉化為線性模型,只要激活函數是連續(xù)可微的,輸出權值就被唯一確定。ELM使用最小二乘解的方法求解輸出權值,避免使用傳統(tǒng)神經網絡的梯度下降法進行求解,因此速度有了很大的提升。在樣本規(guī)模適中的情況下,ELM模型具有不用反復調參、學習速度快等優(yōu)勢[21]。
(1)
其中,ωi=[ωi1,ωi2,…,ωin]T為第i個輸入節(jié)點與隱含層節(jié)點的權重,βi=[βi1,βi2,…,βin]T和bi分別為第i個隱含層節(jié)點與輸出節(jié)點的權重和偏置。
通過尋求最優(yōu)的網絡參數使目標函數t的取值最?。?/p>
(2)
即存在βi,ωi和bi滿足:
(3)
式3可以簡化為:
Hβ=T
(4)
(5)
H被稱為神經網絡的隱含層輸出矩陣,H的第i列是關于輸入的第i個隱含節(jié)點的輸出。
該算法的設計流程如圖1所示。
圖1 極限學習機加權集成學習算法流程
其計算步驟如下:
Step 1 利用文獻[23]中的屬性權重計算方法,計算出各條件屬性的權重ω1,ω2,…,ωn,并依據權重結果對各條件屬性進行排序。
Step 2 對條件屬性權重ω1,ω2,…,ωn升序排序后,依據排序結果?;瘮祿?,將數據集劃分為m個矩陣粒,用GrM表示。
設條件屬性為ai,決策屬性為D。
(1)令ω1={a1},則第一個矩陣粒為GrM1={[a1,D]}1;
(2)令ω2={a2},由此獲得第二個矩陣粒為GrM2={[a1,a2,D]}2;
(3)以此類推,令ωn={an},則第n個矩陣粒為GrMn={[a1,a2,…,an,D]}n。
Step 3 以極限學習機為基學習機,對不同的矩陣粒構建學習機模型,實現(xiàn)不同粒層的學習。
Step 4 以各屬性的重要度作為基學習機權重,如矩陣粒GrM1上構建的基學習機的權重為屬性a1的權重ω1,矩陣粒GrM2上構建的基學習機權重為屬性a2的權重ω2,以此類推,對基學習機的結果進行加權集成,獲得最終的學習結果。
基于Python編程,實現(xiàn)以極限學習機為基學習機的加權集成算法仿真。
硬件環(huán)境:CPU: i7-4870HQ;RAM:16 GB;軟件環(huán)境:操作系統(tǒng):macOS 10.12;解釋器:python 3.6,數據集按照訓練集80%;測試集20%隨機劃分,采用十折交叉預測,不同數據集預測結果的MSE均值為最終結果。具體算法描述如下:
輸出測試集的預測結果
(1)數據集預處理階段
(2)權重計算階段
按照公式6計算模糊相似矩陣R;
(6)
a. 根據模糊相似矩陣R輸出結果,將相似度由大到小排序進行聚類,得到聚類結果C;
for (k= 1;k 刪除離散化樣本集中的屬性k; 將剩余屬性值相同的樣本劃分為同一等價類,得到刪除屬性k后的等價類集合Dk; end for ③計算樣本屬性重要度 for (k= 1;k 與聚類結果C進行比對,按照公式Sik=cik/N確定屬性重要度矩陣S,其中cik為Dk中等價類中的元素不在第i商空間族的聚類結果Ci中的同一等價類中的樣本數目之和; end for (7) (8) (3)訓練階段 for (k= 1;k end for (4)預測階段 for (k= 1;k for 測試樣本Xtestdo end for end for 本文采用UCI數據集中的5組數據進行仿真實驗,數據相關信息如表1所示。 表1 數據集基本信息 該方法(GrM-ELM)預測結果分別與以BP神經網絡為基學習機的集成模型(E-BP)、傳統(tǒng)極限學習機(ELM)進行對比,以均方誤差為依據,對比分析驗證方法的可行性和穩(wěn)定性。實驗結果如圖2所示。 圖2 預測結果(MSE)對比分析 由圖2實驗結果可以看出,該項研究提出方法的均方誤差均優(yōu)于其他兩種傳統(tǒng)學習機。由于極限學習機自身的原因,預測結果有所不同,在預測過程中,各基學習機的初始權值和偏置值均隨機獲得,最大程度保證基學習機的多樣性,從結果可以看出,加權集成后的結果明顯優(yōu)于直接應用極限學習機預測。以BP神經網絡為基學習機的E-BP算法在誤差上明顯大于GrM-ELM,因此在集成學習過程中,以極限學習機為基學習機更能提升數據的預測精度。從預測結果可以看出,當樣本集中屬性個數或樣本數量較大時,精度提升更明顯。 (1)將粒計算的粒化思想引入矩陣中,利用權重計算方法,將數據集按重要程度劃分為多個矩陣粒,基學習機權重即為矩陣粒的權重,在矩陣粒上構建極限學習機加權集成,獲得最終預測結果。 (2)該方法通過賦予各矩陣粒上基學習機的權重,使權重確定更加科學合理,并提高了集成學習的預測精度。 (3)仿真結果表明,本文提出的方法有效地實現(xiàn)了數據降維,明顯優(yōu)于其他兩種傳統(tǒng)方法,不論是屬性個數的增加還是樣本數量的增加,該模型預測精度和穩(wěn)定性都有較大提升,為集成學習融合的算法開闊了研究思路。4 結論