邵良杉,李臣浩
遼寧工程技術(shù)大學(xué) 軟件學(xué)院,遼寧 葫蘆島125105
極限學(xué)習(xí)機(jī)(Extreme Learning Machine,ELM)[1~2]是南洋理工大學(xué)黃廣斌副教授在2004 年根據(jù)Moore-Penrose pseudoinverse廣義逆矩陣提出的一種單隱層前饋神經(jīng)網(wǎng)絡(luò)(SLFNs)學(xué)習(xí)算法,相比于其他需要初始化大量參數(shù)的神經(jīng)網(wǎng)絡(luò),ELM 只需預(yù)設(shè)網(wǎng)絡(luò)中間層節(jié)點(diǎn)個(gè)數(shù),并且不需要通過迭代來優(yōu)化權(quán)值和閾值[3],具有計(jì)算速度快,泛化性能好的特點(diǎn)[4]。MELM(Multi-output Extreme Learning Machine)[5]在繼承ELM優(yōu)勢(shì)的同時(shí),增加了網(wǎng)絡(luò)輸出數(shù)目,使其能夠更好地適用于多分類問題。
但ELM和MELM的初始輸入權(quán)值和閾值隨機(jī)選取的問題在一定程度上限制了模型的分類精度,導(dǎo)致分類結(jié)果產(chǎn)生一定的隨機(jī)性和波動(dòng)性[6]。近年來,有部分學(xué)者對(duì)極限學(xué)習(xí)機(jī)的初始輸入權(quán)值和閾值進(jìn)行優(yōu)化,2006年Huang等人[7]首次采用人工蜂群算法優(yōu)化MELM的初始輸入權(quán)值和閾值,并得到了較好效果;2018年,賈偉等人[8]采用粒子群優(yōu)化算法對(duì)ELM 的初始輸入權(quán)值和輸入層閾值進(jìn)行優(yōu)化,得到了最優(yōu)的ELM模型;但是粒子群和人工蜂群算法都存在參數(shù)過多,執(zhí)行過程復(fù)雜且易陷入局部最優(yōu)解的問題。
花粉算法(Flower Pollination Algorithm,F(xiàn)PA)[9]作為一種新型元啟發(fā)式優(yōu)化算法具有參數(shù)少、易實(shí)現(xiàn)的特點(diǎn),相比粒子群和遺傳算法有著更好的尋優(yōu)能力[9],2013年,賀興時(shí)等人[10]將花粉算法應(yīng)用到多目標(biāo)優(yōu)化問題上并取得了較好的效果。鑒于此,本文采用花粉算法優(yōu)化極限學(xué)習(xí)機(jī)分類模型初始輸入權(quán)值和閾值,但是和其他種群優(yōu)化算法一樣,花粉算法同樣存在易陷入局部最優(yōu)、收斂速度過慢的問題。肖輝輝等人[11]采用Levy飛行和配子間萬有引力的方法實(shí)現(xiàn)配子位置的更新;段艷明等人[12]通過引入量子系統(tǒng)的態(tài)疊加特性,用波函數(shù)描述種群個(gè)體的位置,提高算法的全局尋優(yōu)能力;Jiang 等人[13]通過入侵雜草的繁殖、空間擴(kuò)散和競爭策略,動(dòng)態(tài)生成種群,增加種群的多樣性和有效性。以上改進(jìn)雖然一定程度上提高了花粉算法的尋有能力,但仍然存在易陷入局部最優(yōu),尋優(yōu)速度較慢的問題。為進(jìn)一步提高FPA 的尋優(yōu)能力和尋優(yōu)效率,本文提出改進(jìn)的花粉算法(self-Adaptive and Tent Chaos based Flower Pollination Algorithm,ACFPA),利用基于反向?qū)W習(xí)的Tent 映射優(yōu)化花粉算法配子的初始位置,并在FPA算法的全局搜索上引入Tent混沌搜索策略,在局部搜索策略和切換概率p 中分別引入自適應(yīng)算子,以此提高FPA算法的搜索效率。然后使用改進(jìn)的花粉算法優(yōu)化MELM的輸入權(quán)值和閾值,并結(jié)合代價(jià)敏感(Cost-Sensitive,CS)[14]的思想,引入基于CS 的適應(yīng)度函數(shù),使花粉算法能夠更加精確地刻畫模型的分類性能,從而進(jìn)一步提高ACFPAMELM模型的分類精度和收斂速度。
極限學(xué)習(xí)機(jī)(ELM)是一種單隱層神經(jīng)網(wǎng)絡(luò),根據(jù)輸出數(shù)目的不同,可分為單輸出極限學(xué)習(xí)機(jī)(ELM)和多輸出極限學(xué)習(xí)機(jī)(MELM)。鑒于MELM模型在多分類問題上有著更好的適用性,因此本文采用MELM 解決多分類問題。
對(duì)于一個(gè)有k 個(gè)輸入變量{(xi,ti)}ki=1l 個(gè)隱含層節(jié)點(diǎn),z 個(gè)輸出變量的極限學(xué)習(xí)機(jī)的輸出可以表示為:
式中,j 為迭代次數(shù),g()為激活函數(shù),βi、wi、bi分別為第i 個(gè)隱含層節(jié)點(diǎn)的輸出權(quán)值矩陣、輸入權(quán)值矩陣和偏置。
將上式轉(zhuǎn)換成矩陣Hβ=T 后的具體形式為:
對(duì)于基于梯度的神經(jīng)網(wǎng)絡(luò)算法(如BP),需要在迭代過程中優(yōu)化所有參數(shù),但在ELM算法中,如果激活函數(shù)無限可微,只需要隨機(jī)給出輸入權(quán)值和偏置,算法同時(shí)根據(jù)公式自動(dòng)生成輸出矩陣β1,此過程只執(zhí)行一次,在保證精度的同時(shí),降低了時(shí)間和空間的復(fù)雜度。輸出矩陣β1可以表示為:
式中,H+是矩陣H 的Moore-Penrose廣義逆矩陣。
混沌變量能夠運(yùn)用其特有的非線性規(guī)律在目標(biāo)空間中遍歷所有可行解,擁有隨機(jī)性、非線性、規(guī)律性和對(duì)初始值敏感性的特點(diǎn)[15]。當(dāng)前解決混沌問題常用的映射方程有蟲口模型方程和切比雪夫方程等[16-17]。由文獻(xiàn)[18]可知,蟲口模型方程在解空間兩端取得的概率較高,在解空間中心區(qū)域取得的概率較低且分布均勻,而切比雪夫方程雖然在(0,1)區(qū)間上分布均勻,但迭代速度較慢。單梁等人[19]指出,Tent 映射在(0,1)區(qū)間上分布均勻并且速度較快,此外,反向?qū)W習(xí)策略能夠增加解向量的多樣性[20],因此,基于對(duì)上述分析,為使FPA在整個(gè)可行域內(nèi)快速、均勻地搜索MELM 模型輸入權(quán)值和閾值,本文采用基于反向?qū)W習(xí)的Tent混沌映射和Tent搜索優(yōu)化FPA算法。
2.2.1 基于反向?qū)W習(xí)的Tent混沌映射
由于Tent 混沌映射在點(diǎn)0.2、0.4、0.6、0.8 上產(chǎn)生混沌吸引子,出現(xiàn)小周期現(xiàn)象,為避免迭代落入小周期循環(huán),當(dāng)xi={0,0.25,0.5,0.75}時(shí)采用xi=zj+1=zj+e(e為0~1 的隨機(jī)變量)公式改變迭代初值,增加了混沌的內(nèi)隨機(jī)性,從而增加了混沌強(qiáng)度,同時(shí)通過反向?qū)W習(xí)公式增加了Tent混沌的遍歷性,有助于提高解的質(zhì)量和求解效率[20]。
Tent映射公式為:
Tent映射的移位變換公式為:
反向解求解公式為:
基于反向?qū)W習(xí)的混沌序列生成:
步驟1 隨機(jī)產(chǎn)生(0,1)的初值x0,z1=x0。
步驟2 根據(jù)式(7)生成一個(gè)x 序列。
步驟3 若xi={0,0.25,0.5,0.75},或xi=xi-s,s={0,1,2,3,4}則帶入xi=zj+1=zj+e(e 為0~1 的隨機(jī)變量);否則執(zhí)行步驟(2)。
步驟4 若滿足迭代次數(shù),則停止迭代返回x 序列;否則轉(zhuǎn)向步驟2。
步驟5 根據(jù)式(8)生成x 序列的反向解,并計(jì)算全部解向量的適應(yīng)度值,返回前N 個(gè)最優(yōu)的解向量。
2.2.2 Tent混沌搜索
本文采用混沌搜索對(duì)花粉算法的全局搜索進(jìn)行優(yōu)化,其中混沌搜索的步驟如下:
步驟1 利用公式(4)將xi投影到(0,1)區(qū)間
步驟3 利用式(10)將zi(k)載波到解空間
步驟4 計(jì)算當(dāng)前解的是適應(yīng)度,并與歷史最優(yōu)適應(yīng)度進(jìn)行比較,保留最優(yōu)解。
步驟5 若達(dá)到最大迭代次數(shù),則返回最優(yōu)解,否則執(zhí)行步驟2。
花粉算法于2012 年由學(xué)者楊新社首次提出,在解決多目標(biāo)和單目標(biāo)優(yōu)化方面效果理想。相比于粒子群等種群優(yōu)化算法,F(xiàn)PA利用概率p(0 <p <1)按一定比例進(jìn)行異花授粉和自花授粉,體現(xiàn)了Levy飛行策略,在一定程度上解決了輸出結(jié)果容易陷入局部最優(yōu)解的問題。因此,相比于其他優(yōu)化算法,利用花粉算法優(yōu)化MELM模型能在保證分類精度的同時(shí),大大加快模型的收斂速度。
設(shè)花粉配子個(gè)數(shù)為N ,目標(biāo)函數(shù)維度為d,配子的當(dāng)前位置為Xi=[xi1,xi2,…,xid](i=1,2,…,N)配子局部搜索(自花授粉)公式為:
式中,L 為服從Levy 分布的隨機(jī)變量,g*為全局最優(yōu)解。其中L 近似表示為:
式中,s ?s0?0,gam(γ)為gamma函數(shù),γ 取1.5。
通過分析FPA的授粉策略不難發(fā)現(xiàn),配子在全局搜索中以全局最優(yōu)解為目標(biāo),在追趕全局最優(yōu)粒子的過程中,隨著粒子逐步接近全局最優(yōu)解,大部分粒子仍表現(xiàn)出明顯的“趨同性”,使算法陷入局部最優(yōu),出現(xiàn)早熟。在局部搜索過程中,配子不參考全局最優(yōu)解,僅將花粉群內(nèi)兩個(gè)任意個(gè)體的差分作為追趕目標(biāo),表現(xiàn)出明顯的隨機(jī)性、盲目性和不確定性,從而降低了全局最優(yōu)解的更新速度。同時(shí),切換概率p 在整個(gè)尋優(yōu)過程中保持恒定,導(dǎo)致全局搜索在算法初期比例過小且后期比例過大,從而降低了算法的搜索效率。此外,由于FPA初始花粉配子位置隨機(jī)選取,從而導(dǎo)致配子很難相對(duì)均勻的分布在解空間上,因此降低了FPA 搜索的效率。上述缺陷在一定程度上限制了FPA 的尋優(yōu)精度和收斂速度。
混沌變量能夠運(yùn)用其特有的非線性規(guī)律在目標(biāo)空間中遍歷所有可行解。同時(shí)反向?qū)W習(xí)策略能夠增加花粉配子的多樣性,采用基于反向?qū)W習(xí)混沌映射對(duì)FPA算法的配子進(jìn)行初始化,能使配子較為均勻的分布在解空間上并保持其配子的多樣性,提高初始配子的分布質(zhì)量。在FPA算法的全局搜索中,混沌搜索能夠幫助FPA算法在整個(gè)解空間內(nèi)搜索,避免全局搜索陷入局部最優(yōu)。在局部搜索方面,通過定義α 算子,將搜索范圍和算法迭代次數(shù)相聯(lián)系,可使局部搜索范圍隨著迭代次數(shù)的增加而縮小,使算法更具針對(duì)性,同時(shí),將切換概率p和算法迭代次數(shù)相聯(lián)系,使算法在不同階段能夠動(dòng)態(tài)的調(diào)整局部搜索和全局搜索的比例。進(jìn)而提高FPA 算法的尋優(yōu)精度和收斂速度。
3.2.1 改進(jìn)的配子初始化
在FPA的配子初始化階段,文本利用基于反向?qū)W習(xí)的Tent 混沌映射對(duì)配子群進(jìn)行初始化。首先隨機(jī)產(chǎn)生初始向量,并根據(jù)式(1)和式(2)生成混沌解序列。然后根據(jù)式(3)生成對(duì)應(yīng)的反向解。最后計(jì)算全部解序列的適應(yīng)度值,并將前N 個(gè)最優(yōu)的解序列作為N 個(gè)花粉配子的初始位置。
3.2.2 改進(jìn)的切換概率p
為使算法能夠在不同階段動(dòng)態(tài)調(diào)整全局搜索和局部搜索的比例,本文將切換概率p 轉(zhuǎn)化成迭代次數(shù)t 的函數(shù),使局部搜索的比例隨迭代次數(shù)的增加而指數(shù)增長,在算法初期,大規(guī)模使用全局搜索使算法在較為大的范圍內(nèi)尋優(yōu),幫助局部搜索確定最優(yōu)所在區(qū)域;后期算法逐步接近全局最優(yōu)解,因此逐漸增加局部搜索的比例,使算法在更為細(xì)化的區(qū)域內(nèi)尋優(yōu),使算法更加具有針對(duì)性。同時(shí)定義系數(shù)ε(ε ∈[ ]0,1),ε 的大小決定了局部搜索比例的增長速度和上限,防止搜索后期全局搜索消失。相比于原始的搜索策略,改進(jìn)后的搜索策略更好的平衡了全局搜索和局部搜索的關(guān)系,在整個(gè)算法運(yùn)行過程中,兩種不同方式的尋優(yōu)策略相互促進(jìn),增加算法的尋優(yōu)速度和精度。改進(jìn)的切換概率p 為:
其中,t 為算法當(dāng)前迭代次數(shù),tmax為算法最大迭代次數(shù)。
3.2.3 改進(jìn)的全局搜索策略
在FPA的全局搜索策略上,為避免大量配子過分聚集,增強(qiáng)FPA 算法跳出局部最優(yōu)的能力,本文在原有全局搜索的基礎(chǔ)上,通過變異策略將混沌搜索引入FPA的全局搜索策略,當(dāng)前引入變異的方法有全局引入,概率引入和到達(dá)指定條件引入等。全局引入混沌策略是在每次迭代中將所有配子的有向搜索策略替換成無向混沌搜索,這雖然能使全局搜索在整個(gè)運(yùn)行期間以較大范圍尋優(yōu),但所有配子無目標(biāo)的盲目更新會(huì)導(dǎo)致配子位置彼此重疊,并且對(duì)所有配子采用混沌搜索會(huì)消耗較長時(shí)間,這必然會(huì)降低FPA 全局搜索尋優(yōu)效率和尋優(yōu)精度,從而喪失FPA 原有全局搜索的優(yōu)勢(shì)。而小概率引入是在每次迭代中選取一小部分配子進(jìn)行混沌搜索,使其在極大保留原有全局搜索優(yōu)勢(shì)的基礎(chǔ)上增加了跳出局部最優(yōu)的能力,相比于全局引入具有更高的效率和精度,能夠更快、更準(zhǔn)地確定最優(yōu)解所在的局部區(qū)域,保障了算法后期大規(guī)模局部搜索(根據(jù)改進(jìn)的切換概率p 可知算法后期局部搜索比例逐漸增大)精度和效率。因此,本文通過小概率變異形式在全局搜索策略中引入混沌搜索,改進(jìn)的全局搜索流程圖為。
3.2.4 改進(jìn)的局部搜索策略
在FPA 的局部搜索策略上,文獻(xiàn)[21]在原有局部搜索公式的基礎(chǔ)上參考了全局最優(yōu)解,但局部搜索范圍不能夠動(dòng)態(tài)調(diào)整。本文在此基礎(chǔ)上,引入自適應(yīng)算子,使局部搜索的范圍隨迭代次數(shù)的增加而減小,增加局部搜索效率。改進(jìn)的局部搜索策略為:
鑒于FPA 算法相比于粒子群和遺傳算法擁有更好的尋有能力,并且ACFPA 算法改善了FPA 易陷入局部最優(yōu)解和收斂速度過慢的問題,因此,本文采用ACFPA算法優(yōu)化MELM 的輸入權(quán)值和閾值,并在ACFPA 算法的適應(yīng)度函數(shù)引入代價(jià)敏感的思想。
傳統(tǒng)的MELM多分類算法采用0-1適用度函數(shù),將模型輸出的連續(xù)值轉(zhuǎn)換成二進(jìn)制離散值,雖然能在一定程度上評(píng)價(jià)模型的分類性能,但此過程會(huì)損失大量信息。針對(duì)上述問題并結(jié)合MELM 輸出結(jié)構(gòu),本文提出一種基于代價(jià)敏感的適應(yīng)度函數(shù),在原有0-1 適應(yīng)度函數(shù)的基礎(chǔ)上,進(jìn)一步參考每個(gè)輸出節(jié)點(diǎn)的數(shù)值大小,提高ACFPA 算法對(duì)MELM 分類性能的評(píng)價(jià)能力,進(jìn)而提高ACFPA-MELM的收斂速度。
MELM處理多分類問題時(shí),將輸出節(jié)點(diǎn)中最大值所對(duì)應(yīng)的節(jié)點(diǎn)序號(hào)作為模型的預(yù)測(cè)結(jié)果,因此優(yōu)化MELM的目標(biāo)就是要盡可能的增大正確類別節(jié)點(diǎn)對(duì)應(yīng)的輸出值。傳統(tǒng)的0-1適應(yīng)度函數(shù)僅將所有樣本中被正確分類的比例作為評(píng)價(jià)標(biāo)準(zhǔn)。為增強(qiáng)適應(yīng)度函數(shù)對(duì)MELM模型的評(píng)價(jià)能力,本文根據(jù)每個(gè)樣本下正確節(jié)點(diǎn)對(duì)應(yīng)輸出值占總輸出值的比例計(jì)算樣本被分到正確類別的概率,并使適應(yīng)度函數(shù)和此概率成正相關(guān)。因此對(duì)于相同的分類結(jié)果,改進(jìn)的適應(yīng)度函能根據(jù)每個(gè)樣本被正確分類的概率給予每個(gè)分類結(jié)果不同的分類代價(jià),這將大大加快PSO、FPA 等優(yōu)化算法對(duì)神經(jīng)網(wǎng)絡(luò)參數(shù)的優(yōu)化速度,并且在一定程度上降低分類模型的誤差。改進(jìn)的適應(yīng)度函數(shù)為:
式中,N 表示樣本個(gè)數(shù),k 表示樣本類別數(shù),p 表示迭代次數(shù)。outright表示每個(gè)樣本分類結(jié)果中正確類別所對(duì)應(yīng)輸出的輸出值,outj表示模型第j 個(gè)輸出的輸出值,rightj表示j 節(jié)點(diǎn)對(duì)應(yīng)的真實(shí)值。
步驟1 初始化FPA 相關(guān)參數(shù),并隨機(jī)生成一個(gè)d維的花粉配子,然后利用基于反向?qū)W習(xí)的混沌映射對(duì)花粉配子進(jìn)行初始化。
步驟2 計(jì)算切換概率p,對(duì)于每一個(gè)配子而言,產(chǎn)生一個(gè)隨機(jī)數(shù)e ∈(0,1)。如果e >p,則利用式(15)對(duì)該配子進(jìn)行局部搜索;否則根據(jù)圖1 進(jìn)行全局搜索,更新配子位置信息。
圖1 改進(jìn)的FPA全局搜索流程圖
步驟3 若Xid>Upper_Boundd(d 維上邊界),則Xid=Upper_Boundd;若Xid<Low_Boundd(d 維下邊界),則Xid=Low_Boundd。
步驟4 將當(dāng)前配子位置的適應(yīng)度函數(shù)值和此配子的歷史最優(yōu)位置的適應(yīng)度函數(shù)值進(jìn)行比較,若優(yōu)于歷史最優(yōu)值,則將歷史最優(yōu)值更新為當(dāng)前位置;否則直接進(jìn)行下一步。
步驟5 將當(dāng)前配子位置的適應(yīng)度函數(shù)值和全局最優(yōu)位置的適應(yīng)度函數(shù)值進(jìn)行比較,若優(yōu)于全局最優(yōu)值,則將全局最優(yōu)值的位置更新為當(dāng)前配子位置;否則直接進(jìn)行下一步。
步驟6 對(duì)所有配子執(zhí)行以上步驟。
步驟7 迭代以上步驟指定次數(shù),輸出全局最優(yōu)位置。
為驗(yàn)證ACFPA-MELM 模型在分類性能和運(yùn)行效率上的優(yōu)勢(shì),本文分別設(shè)計(jì)3組實(shí)驗(yàn):(1)確定切換概率p 中參數(shù)ε 的最優(yōu)值;(2)縱向?qū)Ρ萂ELM、FPA-MELM、CAFPA-MELM、CS-ACFPA-ELM模型在分類精度、迭代次數(shù)和運(yùn)行時(shí)間上的差距;(3)橫向?qū)Ρ菴S-ACFPAELM、LS-SVM、CART模型在分類精度和結(jié)果一致性上的差距。
借鑒文獻(xiàn)[22]的實(shí)驗(yàn)方案和數(shù)據(jù)集使用,采用10組UCI公共數(shù)據(jù)集進(jìn)行實(shí)驗(yàn),其中diabetes、credit-g、kr-vs-kp樣本數(shù)量規(guī)模較大,10 個(gè)數(shù)據(jù)集的樣本個(gè)數(shù)和特征個(gè)數(shù)如表1 所示。實(shí)驗(yàn)中操作系統(tǒng)為Windows7,CPU 為Intel Core i5-3230 主頻2.60 GHz,內(nèi)存為8 GB,編程語言為Python3.6。采用5×10重交叉驗(yàn)證和分層抽樣的方法將數(shù)據(jù)集劃分成5份,每次選取1份作為測(cè)試集,其余作為訓(xùn)練集,循環(huán)10次,計(jì)算10次精度均值作為模型最終精度結(jié)果。算法的運(yùn)行時(shí)間為算法達(dá)到最優(yōu)精度所消耗的時(shí)間。
表1 所選用數(shù)據(jù)集的樣本數(shù)和特征數(shù)
5.1.1 參數(shù)ε 確定
采用窮舉法,對(duì)比切換概率p 中參數(shù)ε 的不同取值時(shí),CS-ACFPA-MELM模型的分類精度和運(yùn)行時(shí)間。選取區(qū)間0.1~0.9,步長為0.1的9個(gè)值作為參數(shù)ε 的測(cè)試值帶入到CS-ACFPA-MELM分類模型中,對(duì)每個(gè)樣本分別進(jìn)行9 次獨(dú)立實(shí)驗(yàn),每次實(shí)驗(yàn)迭代200 次。CS-ACFPAMELM在10個(gè)樣本上精度隨ε 值的變化如圖2所示,運(yùn)行時(shí)間隨ε 值的變化如圖3所示。
圖2 ε取值不同時(shí)CS-ACFPA-MELM模型的分類精度對(duì)比
圖3 在前3個(gè)數(shù)據(jù)集上ε 取值和運(yùn)行時(shí)間的對(duì)比
由圖2可知,10個(gè)分類樣本中,在ε=0.8時(shí),ACFPAMELM 分類模型均達(dá)到最高精度。由圖3 可知,在ε=0.8 時(shí),模型在前3個(gè)樣本上達(dá)到最高精度所用的時(shí)間最短。因此結(jié)合上述數(shù)據(jù)可知,對(duì)于不同樣本數(shù)量和不同特征數(shù)量的數(shù)據(jù)集,在ε=0.8 時(shí)均能達(dá)到模型的時(shí)間最優(yōu)和精度最優(yōu),故在實(shí)驗(yàn)時(shí)將改進(jìn)切換概率p 中的參數(shù)ε 定為0.8。
5.1.2 變異閾值確定
采用同5.1.1 小節(jié)相同的測(cè)試方法,選取0.1 到0.9的9個(gè)測(cè)試值代入CS-ACFPA-MELM模型中進(jìn)行實(shí)驗(yàn),在10 個(gè)數(shù)據(jù)集上的模型變異閾值與分類精度、模型運(yùn)行時(shí)間的關(guān)系,如表2所示。
由表2 可知,當(dāng)變異閾值取0.2 時(shí),CS-ACFPAMELM 模型在10 個(gè)分類數(shù)據(jù)集均達(dá)到了最高分類精度,以此可知,對(duì)于不同規(guī)模樣本數(shù)量、不同特征維度的分類數(shù)據(jù)集,變異閾值為0.2時(shí)CS-ACFPA-MELM模型達(dá)到最優(yōu),具有普遍適用性,因此在實(shí)驗(yàn)中將變異閾值定義為0.2。
對(duì)于FPA 算法,根據(jù)前文分析,將FPA 局部搜索中的參數(shù)β 定為0.1;根據(jù)5.1 節(jié)中的實(shí)驗(yàn),將切換概率中的參數(shù)ε 定0.8,將全局搜索中的變異閾值定為0.2;根據(jù)文獻(xiàn)[10]中的建議,將FPA 的γ 的值設(shè)定為0.1;將花粉配子個(gè)數(shù)定為20;為和MELM模型形成對(duì)照,在MELM模型外嵌套迭代機(jī)制,重復(fù)實(shí)驗(yàn)輸出歷史最優(yōu)結(jié)果。
如圖4是MELM、FPA-MELM、ACFPA-MELM、CSACFPA-MELM分類模型在10個(gè)數(shù)據(jù)集上的收斂曲線;如表3是MELM、FPA-MELM、ACFPA-ELM、CS-ACFPAMELM分類模型在10個(gè)數(shù)據(jù)集上的卡帕系數(shù)和運(yùn)行時(shí)間。結(jié)合圖表可知,嵌套迭代機(jī)制的MELM 模型由于自身的隨機(jī)性,分類精度提升緩慢,并且都存在很高的迭代次數(shù)和運(yùn)行時(shí)間。利用FPA算法優(yōu)化MELM的初始輸入權(quán)值和閾值,使MELM的迭代增加了方向性,大大加快了MELM 模型的分類精度、卡帕系數(shù)以及收斂速度。ACFPA算法在FPA算法的基礎(chǔ)上進(jìn)一步優(yōu)化了FPA 的尋優(yōu)策略,從而將FPA-MELM 模型的的分類精度和運(yùn)行效率分別提高了1.3%和9.9%;此外,基于代價(jià)敏感的適應(yīng)度函數(shù)更加細(xì)致地刻畫了MELM模型的質(zhì)量,從而將ACFPA-MELM模型的分類精度和效率提升了0.8%和8.7%;從卡帕系數(shù)的對(duì)比可知,F(xiàn)PA-MELM、ACFPA-ELM、CS-ACFPA-MELM 模型,分別將MELM模型的分類一致性逐步提高了1.63%、1.97%和2.30%,達(dá)到了模型預(yù)測(cè)值和真實(shí)值的高度一致性。以上數(shù)據(jù)驗(yàn)證了基于CS 適應(yīng)度函數(shù)和ACFPA 算法對(duì)MELM 模型優(yōu)化的有效性。
為證明CS-ACFPA-MELM 分類模型的優(yōu)勢(shì),實(shí)驗(yàn)對(duì)比LS-SVM、CART、CS-ACFPA-MELM 分類模型在10 個(gè)測(cè)試數(shù)據(jù)集上的分類精度和卡帕系數(shù)。如表4 是LS-SVM、CART、CS-ACFPA-MELM分類模型在10個(gè)數(shù)據(jù)集上卡帕系數(shù)和分類精度的對(duì)比。不同于LS-SVM模型和CART 模型從全局角度出發(fā)逐漸逼近全局最優(yōu)解,CS-ACFPA-MELM模型能夠從全局和局部兩個(gè)角度入手逼近全局最優(yōu)解,使算法具有跳出局部最優(yōu)的能力,進(jìn)而提高分類精度和收斂速度。
由表4 可知,CS-ACFPA-MELM 模型在diabetes、Ionosphere、breast-w、credit-a、credit-g、heart-s、kr-vs-kp這7數(shù)據(jù)集上的準(zhǔn)確率和卡帕系數(shù)明顯高于LS-SVM和CART兩種經(jīng)典分類模型。結(jié)合表1可知,上述7個(gè)數(shù)據(jù)集的樣本數(shù)均值為2 244,而kr-vs-kp、credit-g、diabetes這3個(gè)數(shù)據(jù)集的樣本數(shù)均值為286,遠(yuǎn)遠(yuǎn)低于前者,這表明CS-ACFPA-MELM分類模型在規(guī)模較大的樣本上分類性能明顯優(yōu)于LS-SVM和CART;在sonar和liver-disorders數(shù)據(jù)集上,CS-ACFPA-MELM模型的分類精度和卡帕系數(shù)相比于比LS-SVM、CART模型優(yōu)勢(shì)較小,這表明隨著樣本數(shù)量的增加,CS-ACFPA-MELM模型訓(xùn)練效果更全面,CS-ACFPA-MELM模型的優(yōu)勢(shì)更加明顯。上述結(jié)論驗(yàn)證了CS-ACFPA-MELM模型在大規(guī)模樣本上的優(yōu)勢(shì)以及小樣本上的適用性。
為提高M(jìn)ELM 模型的分類性能,本文采用花粉算法優(yōu)化MELM 的輸入權(quán)值和閾值,并通過分析FPA 算法的不足,在配子初始化和全局搜索中引入Tent混沌策略,在局部搜索和切換概率p 中引入自適應(yīng)算子,并且將代價(jià)敏感的思想引入適應(yīng)度函數(shù)之中。對(duì)比實(shí)驗(yàn)表明,改進(jìn)的花粉算法對(duì)MELM 模型分類精度和的收斂速度均有較大提升。
表2 變異閾值取不同值時(shí)CS-ACFPA-MELM模型在10個(gè)數(shù)據(jù)集上的分類精度
圖4 MELM、FPA-MELM、ACFPA-ELM、CS-ACFPA-MELM在不同數(shù)據(jù)集下的收斂曲線
表3 4種模型在不同數(shù)據(jù)集的卡帕系數(shù)和運(yùn)行時(shí)間對(duì)比
表4 LS-SVM,CART,CS-ACFPA-ELM在不同數(shù)據(jù)集的卡帕系數(shù)和分類精度對(duì)比
在今后的工作中,將會(huì)增加測(cè)試數(shù)據(jù)集的種類和數(shù)量,進(jìn)而對(duì)CS-ACFPA-MELM 模型的適用樣本類型進(jìn)行更深入的研究。