張?zhí)炝?,田雨波,陳學(xué)志,高 婧
(江蘇科技大學(xué) 電子信息學(xué)院,鎮(zhèn)江212100)
近年來(lái),大數(shù)據(jù)的進(jìn)步所帶來(lái)的問(wèn)題越來(lái)越難以解決,如果僅依靠單一的機(jī)器學(xué)習(xí)模型,已經(jīng)很難達(dá)到很多復(fù)雜問(wèn)題的要求.此時(shí)集成概念被創(chuàng)造性的提了出來(lái),并吸引了很多的學(xué)者對(duì)其進(jìn)行鉆研.1990 年,文獻(xiàn)[1]采用構(gòu)造性方法實(shí)現(xiàn)了集成多個(gè)弱學(xué)習(xí)器可以得到更強(qiáng)的學(xué)習(xí)器的理論,證明了集成學(xué)習(xí)的優(yōu)異性.1996年,文獻(xiàn)[2]提出了Adaboost算法,實(shí)現(xiàn)了集成學(xué)習(xí)從理論到實(shí)際應(yīng)用的跨越.同年,Bagging算法問(wèn)世[3],該算法通過(guò)自主采樣法處理訓(xùn)練樣本,得到若干數(shù)目相同但有一定相似度的訓(xùn)練子集,然后采用子集訓(xùn)練若干弱模型,最后將若干弱模型進(jìn)行集成.2002年,文獻(xiàn)[4]提出了“選擇性集成”的概念,主要是對(duì)模型進(jìn)行篩選,表現(xiàn)優(yōu)異的模型則參與集成,從理論與實(shí)際方面均證明了該方法的有效性.2016年,文獻(xiàn)[5]提出了一種基于Boosting的XGBoost方法,在某些方面其學(xué)習(xí)性能可以與深度學(xué)習(xí)比肩.
粒子群算法(particle swarm optimization,PSO)作為一種被廣泛使用的算法,具有易實(shí)現(xiàn)、計(jì)算量小、參數(shù)少優(yōu)點(diǎn)[6].高斯過(guò)程(Gaussian progress,GP)作為一種機(jī)器學(xué)習(xí)方法,這些年發(fā)展迅速[7],相比于神經(jīng)網(wǎng)絡(luò)[8]、支持向量機(jī)回歸[9]、徑向基函數(shù)網(wǎng)絡(luò)[10]等,具備如下兩大特點(diǎn):高斯過(guò)程在學(xué)習(xí)過(guò)程中參數(shù)不多,易實(shí)現(xiàn);對(duì)解決一些樣本數(shù)量小,維數(shù)比較低,非線性等復(fù)雜問(wèn)題取得很好的效果[11].文中提出一種基于PSO的高斯過(guò)程集成方法,通過(guò)一組樣本建立若干具有不同核函數(shù)的高斯過(guò)程模型,并根據(jù)粒子群優(yōu)化算法,尋找一組最優(yōu)權(quán)重,對(duì)所建立的若干高斯過(guò)程回歸模型進(jìn)行加權(quán)集成,得到最終模型,并且將最終模型用于微帶天線諧振頻率建模,與單一GP和神經(jīng)網(wǎng)絡(luò)等算法對(duì)比,精度明顯提高.
高斯過(guò)程模型是一種非參數(shù)化模型,對(duì)于待測(cè)樣本,能夠進(jìn)行預(yù)測(cè)并且給出預(yù)測(cè)方差,高斯過(guò)程可以均值函數(shù)和協(xié)方差函數(shù)唯一確定[12],即
m(x)=E[f(x)]
(1)
K(x,x′)=E{[f(x)-m(x)][f(x′)-m(x′)]}
(2)
式中:x,x′∈Rd為隨機(jī)變量,故GP也可以用如下公式表達(dá):
f(x)~GP(m(x),k(x,x′))
(3)
若給定訓(xùn)練樣本集為D={(Xi,yi)|i=1,2,…,n},其中Xi=[x1,x2,…,xn]為d×n維的訓(xùn)練輸入矩陣;yi=[y1,y2,…,yn]為相應(yīng)的n個(gè)訓(xùn)練輸出標(biāo)量yi組成的訓(xùn)練輸出矢量;y為訓(xùn)練樣本的標(biāo)簽;f*為測(cè)試樣本的標(biāo)簽,則y和f*的聯(lián)合高斯分布為:
(4)
式中:X為訓(xùn)練輸入樣本;x*為測(cè)試輸入樣本.K(x*,x*)、K(X,x*)為n*×n*階協(xié)方差矩陣.
高斯過(guò)程只需要訓(xùn)練一組超參數(shù),這也是唯一需要確定的參數(shù),并且該參數(shù)決定了高斯過(guò)程的性質(zhì),最優(yōu)超參數(shù)一般情況下可以由最大似然法計(jì)算得到,先計(jì)算訓(xùn)練樣本的條件概率,然后計(jì)算其對(duì)數(shù)似然函數(shù)L(θ),再對(duì)其超參數(shù)求偏導(dǎo),最后的優(yōu)化算法采用共軛梯度算法[13].L(θ)和其偏導(dǎo)數(shù)如下:
(5)
(6)
式中:C為訓(xùn)練樣本的協(xié)方差矩陣;θ為一組超參數(shù).得到最優(yōu)超參數(shù)以后,可以根據(jù)式(1,2)對(duì)測(cè)試集進(jìn)行估計(jì).
粒子群算法[14]屬于一種簡(jiǎn)化的社會(huì)模型,該方法是對(duì)鳥(niǎo)群捕食的行為規(guī)律進(jìn)行模擬而提出的一種優(yōu)化算法,其原理是使用一群一定數(shù)量的粒子,在目標(biāo)區(qū)域內(nèi)通過(guò)彼此間的協(xié)作和信息資源共享,在具體問(wèn)題的可行解中搜索滿足條件的解,并選擇搜索范圍之內(nèi)最優(yōu)的解作為最終的解.在粒子群算法中,粒子在尋優(yōu)的過(guò)程當(dāng)中,需要控制粒子的移動(dòng)方向和快慢以及最優(yōu)位置,分別用速度和位置表示.假設(shè)粒子的搜索空間是n維的,整個(gè)粒子群x=(x1,x2,…,xm)T中包含m個(gè)粒子.第i個(gè)粒子的位置在xi=(xi,1,xi,2,…,xi,n)T處,此時(shí)粒子的速度為vi=(vi,1,vi,2,…,vi,n)T,粒子的個(gè)體極值為pi=(pi,1,pi,2,…,pi,n)T.當(dāng)粒子找到局部最優(yōu)位置pbest和全局最優(yōu)位置gbest之后,可以更新自身的速度和位置.粒子之間除了時(shí)刻更新自己的位置之外,在迭代尋優(yōu)的空間中用一個(gè)相關(guān)的適應(yīng)度函數(shù)來(lái)衡量一個(gè)粒子位置的好壞以及控制算法在尋優(yōu)過(guò)程中粒子的運(yùn)動(dòng)基準(zhǔn).
每個(gè)粒子在迭代尋優(yōu)過(guò)程中不同時(shí)刻的速度和位置更新表示為:
(7)
(8)
式中:ω為粒子的慣性權(quán)重,主要作用是提高粒子的搜索能力,恰當(dāng)?shù)摩刂凳沟昧W泳哂芯獾膹V域搜索能力(exploration)和局部搜索能力(exploitation);c1、c2為學(xué)習(xí)因子,一般為正常數(shù),起到了控制粒子的尋優(yōu)路勁的效果,也影響了粒子速度的更新;λ1、λ2為均勻隨機(jī)數(shù),取值范圍為[0,1].
為了提高高斯過(guò)程模型對(duì)測(cè)試樣本的預(yù)測(cè)能力,采用粒子群優(yōu)化算法根據(jù)模型的訓(xùn)練誤差,得到一組最優(yōu)集成權(quán)重.假設(shè)已經(jīng)分別訓(xùn)練出k個(gè)核函數(shù)不一樣的高斯過(guò)程模型{f1,f2,…,fk},粒子群算法的主要作用是通過(guò)若干粒子尋找到一組最優(yōu)的集成權(quán)重{ω1,ω2,…,ωk},且粒子的空間維數(shù)等于高斯過(guò)程的個(gè)數(shù)k.設(shè)原始樣本集為D={(x1,y1),(x2,y2),…,(xN,yN)},其中N為樣本個(gè)數(shù),從中選擇n組數(shù)據(jù)作為訓(xùn)練樣本,剩余s組用來(lái)測(cè)試.文中提出的集成流程如圖1,算法具體步驟如下:
步驟一: 選擇k個(gè)具有不同核函數(shù)的高斯過(guò)程,用n組訓(xùn)練數(shù)據(jù)分別對(duì)這k個(gè)高斯過(guò)程進(jìn)行訓(xùn)練,可得到k個(gè)核函數(shù)不一樣的高斯過(guò)程模型{f1,f2,…,fk}.
步驟二: 根據(jù)已建立的高斯過(guò)程模型,可得到訓(xùn)練集誤差.訓(xùn)練誤差選擇平均相對(duì)誤差(mean relative error, MRE)作為評(píng)估指標(biāo),定義如下:
(9)
式中:f(xi)為高斯過(guò)程的預(yù)測(cè)值;y(xi)為真實(shí)值;n為樣本數(shù)量.
步驟三:將步驟二中得到的訓(xùn)練誤差作為粒子群算法的適應(yīng)度函數(shù),利用粒子群算法尋找這k個(gè)模型的最優(yōu)集成權(quán)重{ω1,ω2,…,ωk}.
步驟四:根據(jù)得到的最優(yōu)權(quán)重,將上述k個(gè)模型進(jìn)行加權(quán)集成,得到最終模型為:
(10)
式中:ωi為模型融合的權(quán)重.
步驟五:驗(yàn)證階段使用s組測(cè)試樣本對(duì)最終得到的集成模型精度進(jìn)行測(cè)試;同時(shí)使用測(cè)試樣本對(duì)每個(gè)單一高斯過(guò)程模型的精度進(jìn)行測(cè)試,選擇MRE作為測(cè)試誤差評(píng)估指標(biāo),進(jìn)行集成模型與單一模型的精度對(duì)比.
圖1 基于粒子群優(yōu)化的選擇性高斯過(guò)程集成流程
微帶天線(microstrip antennas, MSA)是由導(dǎo)體薄片粘貼在背面有導(dǎo)體接地板的介質(zhì)基片上構(gòu)成的天線,它具有剖面薄、體積小、重量輕、價(jià)格低廉等優(yōu)點(diǎn),目前用于寬廣頻域上,頻率范圍大約為100 MHz~100 GHz[15].微帶天線的貼片可以設(shè)計(jì)為不同的形狀,如蝶形、扇形、星形等,文中采用如圖2圓形微帶天線諧振頻率進(jìn)行建模,其TM11模式下諧振頻率為[11]:
(11)
式中:K11=0.293;f11為天線的諧振頻率;c的值為3×108m/s;εr為相對(duì)介電常數(shù).
若考慮邊緣效應(yīng),式中的半徑a可用如下經(jīng)驗(yàn)公式計(jì)算的等效半徑ae代替
(12)
式中:h為介質(zhì)層的厚度.圓形微帶天線的諧振頻率主要取決于h,εr以及圓形微帶天線貼片的幾何尺寸a.
圖2 圓形微帶天線模型
文中以參數(shù)h,εr和a作為輸入,諧振頻率f11(MHz)作為輸出,選擇20組數(shù)據(jù)[16-21]進(jìn)行建模,如表1,其中2~4列給出了圓形微帶天線的相關(guān)數(shù)據(jù),第5列為測(cè)量得到的真實(shí)諧振頻率數(shù)值,共有20組數(shù)據(jù),其中16組用于訓(xùn)練,4組用于測(cè)試(帶有*標(biāo)注),模型分別選擇以RBF、Matern32、Matern52、ARDMatern32、ARDMatern52為核函數(shù)的5個(gè)高斯過(guò)程模型.表1中第6列為使用文中方法得到的結(jié)果,第7~8列為文獻(xiàn)[22]提出的神經(jīng)網(wǎng)絡(luò)模型得到的結(jié)果,其中fDBD、fBP分別代表使用啟發(fā)式算法(Delta-bar-delta,DBD)和反向傳播算法(back propagation, BP)的神經(jīng)網(wǎng)絡(luò)模型得到的頻率.表1中最后一行列出了每種方法實(shí)測(cè)值與預(yù)測(cè)值之間的誤差總和,可以看到,文中模型計(jì)算得到的數(shù)據(jù)比上述文獻(xiàn)計(jì)算得到的更接近與真實(shí)值,說(shuō)明文中精度更好;表2為文中模型與單一高斯過(guò)程模型效果的比較,結(jié)果表明使用文中模型的效果要優(yōu)于單一的模型.
表1 圓形微帶天線TM11模式下的諧振頻率
表2 圓形微帶天線仿真結(jié)果對(duì)比
文中提出了一種基于粒子群優(yōu)化的高斯過(guò)程集成算法,根據(jù)單個(gè)模型的訓(xùn)練誤差,利用粒子群算法強(qiáng)大的全局搜索能力尋找到最優(yōu)的一組集成權(quán)重,然后根據(jù)該權(quán)重對(duì)若干具有不同核函數(shù)的高斯過(guò)程進(jìn)行集成,得到精度和泛化能力更優(yōu)的學(xué)習(xí)器.同時(shí),通過(guò)圓形微帶天線諧振頻率實(shí)驗(yàn):與已有文獻(xiàn)的結(jié)果對(duì)比,使用文中方法得到的結(jié)果更接近真實(shí)值;并且通過(guò)與單一高斯過(guò)程做比較,結(jié)果表明使用文中模型的效果更好.