王萬(wàn)良,朱凱莉,李偉琨,趙燕偉,介 婧
(1.浙江工業(yè)大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,浙江 杭州 310023;2.浙江工業(yè)大學(xué) 機(jī)械工程學(xué)院,浙江 杭州 310014;3.浙江科技學(xué)院 自動(dòng)化與電氣工程學(xué)院,浙江 杭州 310023)
隨著信息時(shí)代的到來(lái),學(xué)習(xí)數(shù)據(jù)趨向于大規(guī)模、高維度,同時(shí)伴有復(fù)雜噪聲,給模型的訓(xùn)練與學(xué)習(xí)帶來(lái)了挑戰(zhàn)。一個(gè)好的學(xué)習(xí)樣本是訓(xùn)練分類器的關(guān)鍵,樣本中的不相關(guān)或冗余信息會(huì)影響分類器的性能。因此,充分對(duì)數(shù)據(jù)進(jìn)行分析挖掘來(lái)提取數(shù)據(jù)中的關(guān)鍵特征和潛在信息具有重要的研究?jī)r(jià)值和意義[1]?;ヂ?lián)網(wǎng)、物聯(lián)網(wǎng)等新一代信息技術(shù)在工業(yè)領(lǐng)域的應(yīng)用使工業(yè)企業(yè)擁有的數(shù)據(jù)日益豐富,工業(yè)大數(shù)據(jù)應(yīng)用因此得到更多關(guān)注。工業(yè)大數(shù)據(jù)是在工業(yè)領(lǐng)域信息化中產(chǎn)生的數(shù)據(jù),這些數(shù)據(jù)中隱含著與工業(yè)生產(chǎn)制造相關(guān)的知識(shí),合理地應(yīng)用這些數(shù)據(jù)可以幫助企業(yè)提高效率、降低成本。工業(yè)大數(shù)據(jù)的典型應(yīng)用包括產(chǎn)品創(chuàng)新、產(chǎn)品故障診斷與預(yù)測(cè)、工業(yè)生產(chǎn)線物聯(lián)網(wǎng)分析[2]、工業(yè)企業(yè)供應(yīng)鏈優(yōu)化等。其中,產(chǎn)品故障診斷與預(yù)測(cè)通過監(jiān)測(cè)生產(chǎn)流程中傳感器的數(shù)據(jù)來(lái)分析整個(gè)生產(chǎn)流程,一旦某個(gè)流程偏離標(biāo)準(zhǔn)即可產(chǎn)生報(bào)警信號(hào),從而盡快找到問題,減少損失。一個(gè)復(fù)雜的現(xiàn)代半導(dǎo)體制造過程通常通過監(jiān)測(cè)從傳感器或過程測(cè)量點(diǎn)收集的信號(hào)進(jìn)行統(tǒng)一監(jiān)管,然而并非所有信號(hào)在特定的監(jiān)測(cè)系統(tǒng)中都具有同樣的價(jià)值。測(cè)量信號(hào)包含有大量不相關(guān)信息和噪聲,有用信息常常隱藏在其中,工程師們通常會(huì)得到大量冗余信號(hào),如果將每種類型的信號(hào)視為一個(gè)特征,則可以應(yīng)用特征選擇來(lái)識(shí)別最相關(guān)的信號(hào),然后使用這些信號(hào)確定導(dǎo)致生產(chǎn)線產(chǎn)量出現(xiàn)偏差的關(guān)鍵因素,這將有助于提高工藝產(chǎn)量,縮短學(xué)習(xí)時(shí)間,并降低單位生產(chǎn)成本。
特征選擇旨在通過從大量原始特征中選擇一小部分相關(guān)特征子集,消除無(wú)關(guān)和冗余的特征,來(lái)減少數(shù)據(jù)的維數(shù),加快學(xué)習(xí)過程,簡(jiǎn)化學(xué)習(xí)模型。根據(jù)對(duì)特征子集的評(píng)價(jià)準(zhǔn)則,可以將特征選擇算法分為過濾式(filter)和封裝式(wrapper)[3]。過濾式特征選擇和后續(xù)學(xué)習(xí)(分類)算法無(wú)關(guān),一般利用數(shù)據(jù)的統(tǒng)計(jì)性能評(píng)價(jià)特征快速排除非關(guān)鍵噪聲,縮小優(yōu)化特征子集搜索的范圍,其計(jì)算簡(jiǎn)單、速度快、通用性好;封裝式特征選擇需要預(yù)設(shè)后續(xù)學(xué)習(xí)算法,使用選擇的特征子集訓(xùn)練分類器,將分類性能作為特征子集的評(píng)價(jià)標(biāo)準(zhǔn),該方法在速度上比Filter方法慢,但是其所選擇的優(yōu)化特征子集的規(guī)模相對(duì)小得多,非常有利于關(guān)鍵特征的辨識(shí),而且準(zhǔn)確率比較高,缺點(diǎn)是泛化能力較差,時(shí)間復(fù)雜度較高[4]。封裝式特征選擇由于其較高的準(zhǔn)確率,是現(xiàn)在特征選擇研究領(lǐng)域的熱點(diǎn)之一。目前國(guó)內(nèi)外研究主要集中在特征表示、搜索機(jī)制和評(píng)價(jià)函數(shù)上。在特征表示方面,為了降低搜索空間維數(shù),Hong等[5]通過預(yù)設(shè)需要選擇的特征數(shù)量,設(shè)計(jì)了一個(gè)二元向量來(lái)表示特征,其中預(yù)定義了一個(gè)數(shù)pd,將pd位二進(jìn)制函數(shù)轉(zhuǎn)換成十進(jìn)制數(shù)作為被選特征的索引,從而將特征表示的總長(zhǎng)度減少為pd與預(yù)設(shè)特征數(shù)量的乘積。在搜索機(jī)制方面,由于進(jìn)化算法出色的全局搜索能力和較強(qiáng)的通用性,研究主要集中于通過改進(jìn)各類進(jìn)化算法來(lái)搜索特征空間。Zhang等[6]將骨干粒子群優(yōu)化(Bare Bones Particle Swarm Optimization, BBPSO)算法結(jié)合最近鄰算法應(yīng)用于特征選擇,并設(shè)計(jì)了一種強(qiáng)化記憶策略來(lái)更新局部最優(yōu)粒子;Hsu等[7]用決策樹進(jìn)行特征選擇,采用遺傳算法(Genetic Algorithm, GA)尋找使決策樹分類錯(cuò)誤率最小的一組特征子集;Xue等[8]在粒子群優(yōu)化(Particle Swarm Optimization, PSO)算法中引入初始化機(jī)制、個(gè)體最優(yōu)更新機(jī)制和全局最優(yōu)更新機(jī)制3種機(jī)制,所提改進(jìn)算法在計(jì)算時(shí)間、特征數(shù)量和分類性能上均有提高。在評(píng)價(jià)函數(shù)方面,多數(shù)研究使用不同的方式將分類性能和特征數(shù)量組合成單個(gè)適應(yīng)值函數(shù),近期出現(xiàn)了很多將分類性能和特征數(shù)量作為兩個(gè)單獨(dú)的目標(biāo),引入多目標(biāo)算法進(jìn)行特征選擇的方法,例如Tan等[9]將改進(jìn)的GA與神經(jīng)網(wǎng)絡(luò)模型結(jié)合用于特征選擇;Xue等[10]將多目標(biāo)PSO算法引入特征選擇并與其他流行的多目標(biāo)優(yōu)化算法、單目標(biāo)方法進(jìn)行對(duì)比分析,實(shí)驗(yàn)表明所提出的兩種多目標(biāo)PSO算法能獲得更好的結(jié)果。另外,封裝式特征選擇算法也被廣泛應(yīng)用于各個(gè)領(lǐng)域,馬玉敏等[11]選取支持向量機(jī)(Support Vector Machine, SVM)作為分類器,以二進(jìn)制PSO優(yōu)化算法進(jìn)行特征選擇,通過特征選擇獲得的動(dòng)態(tài)調(diào)度策略分類模型實(shí)現(xiàn)了當(dāng)前生產(chǎn)狀態(tài)下的最優(yōu)調(diào)度策略實(shí)時(shí)調(diào)度;Vieira[12]提出一種改進(jìn)二進(jìn)制PSO算法,在特征選擇的同時(shí)優(yōu)化SVM核參數(shù),并將優(yōu)化過參數(shù)的SVM模型應(yīng)用于膿毒癥患者的死亡率預(yù)測(cè);Chiang等[13]將Fisher判別分析與GA結(jié)合,用于在化工故障中辨識(shí)關(guān)鍵變量,取得了較好的效果;Chen等[14]通過在SVM中引入余弦距離來(lái)消除分類器構(gòu)造過程中的不相關(guān)或冗余特征,同時(shí)進(jìn)行特征選擇和SVM參數(shù)學(xué)習(xí),構(gòu)造了一種封裝式特征選擇算法,并將該算法應(yīng)用于滾動(dòng)軸承的故障診斷和阿爾茨海默病早期輕度認(rèn)知障礙的診斷中;Chen等[15]通過GA和SVM構(gòu)成特征選擇算法,建立了商業(yè)危機(jī)診斷模型;Vignolo等[16]提出一個(gè)基于GA和K最近鄰(K-Nearest Neighbor, KNN)的多目標(biāo)封裝式特征選擇算法用于人臉識(shí)別,取得了較好的效果。
蜻蜓算法(Dragonfly Algorithm, DA)[17]是最近提出的一種新的群智能優(yōu)化算法,該算法具有良好的全局搜索能力,已應(yīng)用于各種優(yōu)化問題,并取得了較好的效果。雖然DA在許多優(yōu)化問題上表現(xiàn)良好,但是與大多數(shù)群智能算法一樣均存在求解精度不高的問題,對(duì)此Sree等[18]提出一種具有記憶算子的混合DA,有效提高了DA的求解精度,但需要較大的迭代次數(shù)。
本文在DA的基礎(chǔ)上結(jié)合序列浮動(dòng)后向選擇提高了DA的搜索精度,并結(jié)合KNN分類器提出一種封裝式特征選擇算法對(duì)半導(dǎo)體生產(chǎn)線各過程狀態(tài)進(jìn)行特征選擇,以降低狀態(tài)維度,確定生產(chǎn)過程中導(dǎo)致下游產(chǎn)量波動(dòng)的關(guān)鍵因素,幫助提高產(chǎn)量并降低公司生產(chǎn)成本。另外,將所提算法應(yīng)用于生產(chǎn)線機(jī)械手的動(dòng)作識(shí)別,有助于提高生產(chǎn)線的安全質(zhì)量和生產(chǎn)效率。
DA是由Seyedali Mirjalili于2015年提出的一種新型群智能優(yōu)化算法,該算法主要學(xué)習(xí)了蜻蜓群體的兩種行為模式——靜態(tài)群體和動(dòng)態(tài)群體,將這兩種群體行為近似對(duì)應(yīng)到群智能算法的全局探索和局部開發(fā)。在靜態(tài)群體中,蜻蜓會(huì)分為幾個(gè)子群體在不同區(qū)域飛行尋找食物;在動(dòng)態(tài)群體中,蜻蜓會(huì)聚集成一個(gè)大群體沿著一個(gè)方向飛行。另外,可將蜻蜓的個(gè)體行為歸納總結(jié)為5種模式:①避撞行為,避免和鄰近個(gè)體相碰撞;②結(jié)隊(duì)行為,和鄰近個(gè)體的平均速度保持一致;③聚集行為,向鄰近個(gè)體的平均位置移動(dòng);④覓食行為,靠近食物源;⑤避敵行為,避開天敵。
在靜態(tài)群體中,蜻蜓會(huì)聚集為一個(gè)小群體在小范圍內(nèi)來(lái)回飛行,并捕食小型飛行昆蟲,該狀態(tài)下蜻蜓的主要行為是聚集、覓食和避敵,其主要特征是飛行路徑的局部移動(dòng)性和突變性;在動(dòng)態(tài)群體中,大量的蜻蜓會(huì)聚集成群,并往一個(gè)方向進(jìn)行長(zhǎng)距離遷徙[19],其主要行為是避撞、聚集和結(jié)隊(duì),飛行路徑的方向一致性是動(dòng)態(tài)群體的主要特征。這兩種群體中的蜻蜓個(gè)體均依靠5種主要行為更新其自身所在的位置。
食物所在位置和天敵所在位置分別從當(dāng)前發(fā)現(xiàn)的最優(yōu)解和最差解中選擇。蜻蜓群體的飛行行為被認(rèn)為是這5種個(gè)體行為的正確結(jié)合。為了在搜索空間里更新蜻蜓的位置并模擬其飛行行為,設(shè)置了步長(zhǎng)向量(ΔX)和位置向量(X)。
步長(zhǎng)向量
ΔXt+1=(sSi+aAi+cCi+fFi+eEi)+ωΔXt。
(1)
式中:s,a,c,f,e分別為蜻蜓5種行為的權(quán)重;Si,Ai,Ci,Fi,Ei分別為蜻蜓的避撞、結(jié)隊(duì)、聚集、覓食和避敵行為向量;ω為慣性權(quán)重;t為當(dāng)前的迭代次數(shù)。
當(dāng)有鄰近蜻蜓時(shí),位置向量
Xt+1=Xt+ΔXt+1;
(2)
當(dāng)周圍無(wú)鄰近蜻蜓時(shí),定義蜻蜓的隨機(jī)游走行為為
Xt+1=Xt+Le′vy(d)×Xt。
(3)
式中:d為位置向量維數(shù);Le′vy為設(shè)定的飛行函數(shù),由兩個(gè)隨機(jī)數(shù)和一個(gè)常數(shù)計(jì)算得到。
雖然DA對(duì)函數(shù)優(yōu)化問題表現(xiàn)出了良好的性能,但是求解精度仍有待改善。因此,本文將改良的序列浮動(dòng)后向選擇(Sequential Backward Floating Selection, SBFS)算法加入DA來(lái)提高算法的開發(fā)能力,從而提高求解精度。
局部序列浮動(dòng)后向選擇(Partial Sequential Backward Floating Selection, PSBFS)機(jī)制的靈感來(lái)自SBFS算法。SBFS算法[20]是一種啟發(fā)式搜索算法,搜索從全集開始,每輪在已選擇的特征中選擇一個(gè)子集x,使剔除子集x后的評(píng)價(jià)函數(shù)達(dá)到最優(yōu),再?gòu)奈催x擇的特征中選擇子集z,使加入子集z后的評(píng)價(jià)函數(shù)達(dá)到最優(yōu),如此循環(huán)直到選擇的子集大小達(dá)到設(shè)定的要求。SBFS機(jī)制要從特征全集開始循環(huán)搜索,故而搜索速度慢,計(jì)算耗時(shí),不適合特征數(shù)量較多的情況。PSBFS機(jī)制從DA當(dāng)前搜索到的全局最優(yōu)解而非全集開始搜索,刪除能使刪除后的判據(jù)值最大的特征,再添加能使判據(jù)值更大的特征,直到判據(jù)值不再增加,最后將新找到的更優(yōu)解作為DA的食物源進(jìn)入下一輪迭代。簡(jiǎn)而言之,PSBFS機(jī)制截取SBFS算法的核心步驟執(zhí)行一次后向選擇和一次前向選擇后找到更優(yōu)的解,將其更新為DA的食物源位置,在下一輪迭代時(shí)引導(dǎo)蜻蜓群體向更優(yōu)的位置搜索。因此,PSBFS機(jī)制通過在DA找到的最優(yōu)解附近搜索縮短了搜索過程,其作為DA的補(bǔ)充提高了算法的局部開發(fā)能力,使算法有潛力找到更優(yōu)的解集,從而提高整個(gè)算法的求解精度。PSBFS機(jī)制的具體流程如下:
步驟1DA搜索得到的特征子集為Sk,k表示Sk中特征的數(shù)量,J(Sk)為子集的判據(jù)值,S為特征全集。尋找能使刪除該特征后判據(jù)值最大的特征J(Sk-sd)>J(sk-s),即從Sk中找出sd,使得J(Sk-sd)>J(Sk-s),s為Sk中的任何一個(gè)特征。從集合Sk中刪除sd。更新Sk-1=Sk-sd。
由于引入的PSBFS機(jī)制會(huì)增加計(jì)算時(shí)間,不利于大規(guī)模數(shù)據(jù)的特征選擇,并不是每一代都引入PSBFS機(jī)制進(jìn)行進(jìn)一步搜索,而是設(shè)定控制參數(shù)決定是否在當(dāng)前代引入PSBFS機(jī)制。
改進(jìn)的蜻蜓算法(DA-PSBFS)在基本DA基礎(chǔ)上,通過設(shè)置一個(gè)隨迭代數(shù)遞減的控制參數(shù)rc,隨機(jī)在某些迭代中以DA當(dāng)前搜索到的最優(yōu)解為初始狀態(tài)運(yùn)行PSBFS機(jī)制,以增加DA的局部開發(fā)能力,從而提高算法的求解精度。r為一個(gè)0~1之間的隨機(jī)數(shù),當(dāng)r>rc時(shí),運(yùn)行PSBFS機(jī)制在DA當(dāng)前搜索到的最優(yōu)解領(lǐng)域繼續(xù)尋找更好的解;否則,跳過PSBFS機(jī)制直接進(jìn)入下一代迭代。
(4)
式中Max-iter為算法的最大迭代次數(shù)。
算法框架如圖1所示。
改進(jìn)的DA較好地兼顧了算法的全局搜索能力和局部開發(fā)能力,具有一定的優(yōu)勢(shì)。特征選擇也是優(yōu)化問題中的一類,因此將改進(jìn)的DA作為搜索策略應(yīng)用于特征選擇,需要考慮特征的表示方式、初始化策略和評(píng)價(jià)函數(shù)的選擇(包括評(píng)價(jià)指標(biāo)和分類器的選擇)等。
1.4.1 特征表示和初始化策略
特征選擇是一個(gè)二元優(yōu)化問題,特征子集以一個(gè)二進(jìn)制向量表示,其中向量的長(zhǎng)度基于數(shù)據(jù)集的屬性數(shù)量。向量中的每個(gè)值都用0或1表示,1表示選擇該屬性,0表示不選擇該屬性。給定特征全集F={f1,f2,…,fN},N為特征數(shù)量,于是特征子集可以用二進(jìn)制向量表示為S{s1,s2,…,sn},si∈{0,1},i=1,2,…,N,si=1表示第i個(gè)特征fi被選擇,si=0表示特征fi不被選擇。在基本DA階段,蜻蜓更新位置信息由步長(zhǎng)向量與原位置向量相加得到,結(jié)果均為連續(xù)型數(shù)值,而特征子集的特征取值只可以是0或1。在不修改結(jié)構(gòu)的情況下,將連續(xù)數(shù)值轉(zhuǎn)換為二進(jìn)制值有效且易實(shí)現(xiàn)的方式是轉(zhuǎn)換函數(shù)。轉(zhuǎn)換函數(shù)將步長(zhǎng)信息作為輸入量,輸出為0或1。本文采用的轉(zhuǎn)換函數(shù)為[17]。
(5)
由此,蜻蜓個(gè)體的位置更新公式為[17]
(6)
種群初始化時(shí)個(gè)體各維位置的取值為一個(gè)0~1間的隨機(jī)數(shù)r,r>0.5則該維特征取1,r≤0.5則該維特征取0,從而在初始得到一個(gè)隨機(jī)的特征子集。
1.4.2 評(píng)價(jià)函數(shù)
特征選擇可以被認(rèn)為是一個(gè)多目標(biāo)優(yōu)化問題,存在兩個(gè)相互矛盾的目標(biāo):最少的選定特征和更高的分類精度。選擇的特征數(shù)量越少,分類精度越高,解決方案越好。分類精度是將選擇的特征子集作為分類器輸入訓(xùn)練分類器,再用分類器對(duì)測(cè)試數(shù)據(jù)集進(jìn)行分類后計(jì)算得到的分類準(zhǔn)確率。為了平衡每個(gè)解中選擇特征的數(shù)量(最小)和分類精度(最大),采用線性加權(quán)的方式將兩個(gè)目標(biāo)組合成一個(gè)單目標(biāo)函數(shù)[21],即
(7)
式中:Acc為分類器分類正確率,這里使用KNN分類器;|S|為特征子集中特征的數(shù)量;N為數(shù)據(jù)集的特征數(shù)量;α,β為兩個(gè)權(quán)重系數(shù),分別對(duì)應(yīng)分類質(zhì)量和子集大小的重要性,α∈[0,1],β=1-α。
算法實(shí)現(xiàn)均在Dell PowerEdge R930(24盤)服務(wù)器上完成,其核心配置包含多個(gè)Xeon E7-4820V4*2型號(hào)的CPU。為了評(píng)估所提方法的性能,實(shí)驗(yàn)在來(lái)自UCI數(shù)據(jù)庫(kù)的9個(gè)特征選擇基準(zhǔn)數(shù)據(jù)集上進(jìn)行。表1所示為所用數(shù)據(jù)集的詳細(xì)信息,包括每個(gè)數(shù)據(jù)集中屬性和實(shí)例的數(shù)量。
表1 實(shí)驗(yàn)數(shù)據(jù)集列表
2.2.1 DA與DA-PSBFS對(duì)比
PSBFS算法在基本DA當(dāng)前找到的最優(yōu)解附近搜尋更優(yōu)解,可能影響到算法的收斂速度。因此,以Congress和Ionosphere數(shù)據(jù)集為例,圖2所示為所提算法與DA在搜索過程中隨迭代次數(shù)的增加而變化的適應(yīng)值曲線,其中適應(yīng)值函數(shù)綜合了分類精度和特征子集的特征數(shù)量。
從圖2a可見,原算法在21代時(shí)收斂于0.055,改進(jìn)算法于63代時(shí)收斂于0.037,引入的PSBFS雖然使算法收斂更緩,但是找到了更優(yōu)解。圖2b中,改進(jìn)算法在48代收斂于0.064 5,原算法在73代收斂于0.070,改進(jìn)算法更早收斂,這是由于改進(jìn)算法在前期仍然有可能執(zhí)行PSBFS機(jī)制找到更優(yōu)解,引導(dǎo)算法向更優(yōu)的區(qū)域搜索并收斂。
為了檢驗(yàn)所提PSBFS算法對(duì)DA開發(fā)能力的影響,表2列出了加入PSBFS前后所得的實(shí)驗(yàn)結(jié)果,包括分類精度和所選擇的特征數(shù)量,結(jié)果均為5次實(shí)驗(yàn)的平均值。其中,α=0.99,β=0.01,Max-iter=100。
表2 加入PSBFS前后對(duì)比分類精確度、被選的平均特征數(shù)及計(jì)算時(shí)間
續(xù)表2
2.2.2 與其他進(jìn)化及群智能算法對(duì)比
為了測(cè)試所提算法的整體能力,將改進(jìn)DA與當(dāng)前流行的群智能算法和進(jìn)化算法進(jìn)行對(duì)比。其中,ABACO(advanced binary ant colony optimization)[21]是一種改進(jìn)的二進(jìn)制蟻群特征選擇算法,在特征選擇問題中有良好的表現(xiàn);GA和PSO均為經(jīng)典的進(jìn)化和群智能算法;二進(jìn)制骨干粒子群優(yōu)化(Binary Bare Bones Particle Swarm Optimization, BBBPSO)算法[22]、蟻獅算法(Ant Lion Optimization, ALO)[23]和帶有模擬退火的鯨魚優(yōu)化算法(Whale Optimization Algorithm with Simulated Annealing, WOASA)[24]分別是2015年和2016年提出的新型群智能算法,在各類優(yōu)化問題上均有良好的表現(xiàn),并在特征選擇領(lǐng)域得以應(yīng)用。
表3和表4分別從分類準(zhǔn)確性和所選特征數(shù)量?jī)蓚€(gè)方面與當(dāng)前流行的進(jìn)化和群智能算法(ALO,GA,PSO,WOASA)在上述9個(gè)數(shù)據(jù)集上的表現(xiàn)進(jìn)行比較。實(shí)驗(yàn)設(shè)置的種群數(shù)量均為60,最大迭代次數(shù)均為100次,分類算法K=5;ABACO和BBBPSO算法額外的實(shí)驗(yàn)參數(shù)均采用文獻(xiàn)中的設(shè)置;實(shí)驗(yàn)結(jié)果為5次實(shí)驗(yàn)的平均值。Full列出的是用特征全集進(jìn)行分類得到的分類精確度。
表3 平均分類精確度與其他進(jìn)化及群智能算法對(duì)比
表4 平均選擇的特征數(shù)量與其他進(jìn)化及群智能算法對(duì)比
由表3可知,所提算法在上述所有實(shí)驗(yàn)數(shù)據(jù)集上的分類性能均優(yōu)于ALO,GA,PSO算法,在7個(gè)數(shù)據(jù)集上較優(yōu)于WOASA和ABACO,在6個(gè)數(shù)據(jù)集上較優(yōu)于BBBPSO。另外,所選擇的特征子集訓(xùn)練的分類器的分類精度明顯優(yōu)于基于特征全集訓(xùn)練的分類器,證明算法通過特征選擇減少了不相關(guān)和冗余特征的影響,提升了分類器的性能。圖3直觀地展示了所提出算法較對(duì)比算法在分類精度上的優(yōu)越性。
表4所示為用于測(cè)試的數(shù)據(jù)集所包含的特征和實(shí)例數(shù),并給出了所提算法與當(dāng)前流行的算法運(yùn)行5次取得的平均特征數(shù)量,最后列出了在所有測(cè)試數(shù)據(jù)集上分別運(yùn)行各算法后選擇的特征數(shù)量平均值。
由表4可知,所提算法在5個(gè)數(shù)據(jù)集上取得了最小的特征數(shù)量,在余下4個(gè)數(shù)據(jù)集上選擇的特征數(shù)量接近最好結(jié)果。從總體平均值可以發(fā)現(xiàn),所提算法尋找的特征子集最精簡(jiǎn),總體表現(xiàn)優(yōu)于所有對(duì)比算法。由此證明所提算法能夠高效完成特征選擇,降低數(shù)據(jù)維度,簡(jiǎn)化學(xué)習(xí)模型。
通常通過監(jiān)測(cè)從傳感器或過程測(cè)量點(diǎn)收集的信號(hào),可以對(duì)復(fù)雜的現(xiàn)代半導(dǎo)體制造過程進(jìn)行統(tǒng)一監(jiān)管,然而并非所有信號(hào)在特定的監(jiān)測(cè)系統(tǒng)中都有價(jià)值。測(cè)量信號(hào)既包含有用信息,又包含大量不相關(guān)的信息和噪聲,識(shí)別其中的關(guān)鍵特征有利于提高生產(chǎn)效率、降低成本。以本次實(shí)例的數(shù)據(jù)集為例,該數(shù)據(jù)集來(lái)源于SECOM公司的半導(dǎo)體生產(chǎn)線,其中包括1 567個(gè)實(shí)例,每個(gè)實(shí)例代表具有591個(gè)相關(guān)測(cè)量特征的單個(gè)生產(chǎn)實(shí)體。標(biāo)簽表示內(nèi)部線路測(cè)試合格與否,-1表示合格,1表示不合格。在該數(shù)據(jù)集上應(yīng)用所提出的特征選擇算法各運(yùn)行10次,實(shí)驗(yàn)結(jié)果如表5所示。
表5中列出了10次運(yùn)行結(jié)果的中值、最好值、標(biāo)準(zhǔn)差及選擇的特征數(shù)量??梢?,所提特征選擇算法兼顧較好的分類精確度和較精簡(jiǎn)的特征數(shù)量,其精確度中值均優(yōu)于對(duì)比算法,精確度最好值優(yōu)于GA和PSO算法,接近最優(yōu)的WOASA;在選擇的特征數(shù)量指標(biāo)上,所提特征選擇算法優(yōu)于所有對(duì)比算法。通過算法確定了導(dǎo)致生產(chǎn)線產(chǎn)量波動(dòng)的關(guān)鍵信號(hào),對(duì)這些信號(hào)進(jìn)行監(jiān)測(cè)有助于提高工藝產(chǎn)量并降低單位生產(chǎn)成本。
表5 SECOM數(shù)據(jù)集結(jié)果
另外,生產(chǎn)流水線上常配備機(jī)械手參與生產(chǎn)裝配,對(duì)機(jī)械手進(jìn)行監(jiān)測(cè)可以快速定位問題??紤]到半導(dǎo)體生產(chǎn)線的裝配速度較快,盡早發(fā)現(xiàn)異常并做出修正能較在大程度上保證生產(chǎn)安全高效。以下是一個(gè)機(jī)械手的數(shù)據(jù)集,該機(jī)械手可以完成5種動(dòng)作,因此用5個(gè)標(biāo)簽標(biāo)記這5種動(dòng)作。數(shù)據(jù)集中記錄了7萬(wàn)個(gè)實(shí)例,每個(gè)實(shí)例包含36個(gè)特征。應(yīng)用所提算法對(duì)該數(shù)據(jù)集進(jìn)行特征選擇,實(shí)驗(yàn)結(jié)果如表6所示。
表6列出了10次運(yùn)行結(jié)果的中值、最好值、標(biāo)準(zhǔn)差及選擇的特征數(shù)量??梢?,所提算法的分類精確度中值高于所有對(duì)比算法,最好值也接近最優(yōu)。通過算法能夠確定判斷機(jī)械手動(dòng)作的關(guān)鍵特征,重點(diǎn)關(guān)注關(guān)鍵特征有助于提高生產(chǎn)線的安全系數(shù)和生產(chǎn)效率。
表6 機(jī)械手?jǐn)?shù)據(jù)集結(jié)果
本文提出基于改進(jìn)DA的特征選擇算法,將改進(jìn)的PSBFS與基本DA融合,在DA當(dāng)前發(fā)現(xiàn)的最優(yōu)解附近進(jìn)行局部搜索,從而提高DA的開發(fā)能力。工業(yè)大數(shù)據(jù)中隱含有與工業(yè)生產(chǎn)制造相關(guān)的知識(shí),合理地應(yīng)用這些數(shù)據(jù)可以幫助企業(yè)提高效率、降低成本。由此,將所提算法應(yīng)用于生產(chǎn)線數(shù)據(jù)特征選擇,基于分類精度和所選的特征子集大小兩個(gè)指標(biāo),將本文算法與封裝型特征選擇算法中最相關(guān)的算法進(jìn)行了對(duì)比分析。根據(jù)實(shí)驗(yàn)結(jié)果,所提算法在兩個(gè)評(píng)價(jià)指標(biāo)上均較優(yōu)于對(duì)比算法,而且特征選擇對(duì)分類效果影響顯著,缺點(diǎn)是計(jì)算時(shí)間相對(duì)更長(zhǎng),當(dāng)數(shù)據(jù)量極大時(shí)很難進(jìn)行實(shí)時(shí)動(dòng)態(tài)調(diào)整。因此,下一步的研究目標(biāo)是考慮更高效的特征表示方式或先進(jìn)行過濾式特征選擇的混合方法,從而降低計(jì)算時(shí)間,以應(yīng)用于更大范圍的特征選擇問題。