張宇獻(xiàn),陳向文,錢小毅
(沈陽(yáng)工業(yè)大學(xué) a. 電氣工程學(xué)院,b. 信息科學(xué)與工程學(xué)院,沈陽(yáng) 110870)
基于規(guī)則的分類系統(tǒng)(rule-based classification systems,RBCSs)由若干條包含數(shù)值型前件的規(guī)則構(gòu)成,通過(guò)對(duì)訓(xùn)練樣本的學(xué)習(xí)實(shí)現(xiàn)規(guī)則挖掘,根據(jù)規(guī)則與新樣本的匹配程度進(jìn)行分類.與其他分類系統(tǒng)相比,基于規(guī)則的分類系統(tǒng)除了可同時(shí)處理專家知識(shí)、數(shù)學(xué)模型和經(jīng)驗(yàn)數(shù)據(jù)等多源信息,其輸出結(jié)果還具有極強(qiáng)的可解釋性,給決策者或操作者提供了更好的決策依據(jù),因此,系統(tǒng)被廣泛應(yīng)用于縱多領(lǐng)域[1-2].
文獻(xiàn)[3]提出一種基于小生境遺傳算法的規(guī)則提取算法,從規(guī)則編碼、適應(yīng)度設(shè)計(jì)、搜索策略三個(gè)方面做了討論和分析,但算法耗時(shí)長(zhǎng),計(jì)算量大,同時(shí)種群多樣性差;文獻(xiàn)[4]通過(guò)改進(jìn)基因表達(dá)式編程(GEP)提出兼顧規(guī)則一致性增益和完備性的適應(yīng)度函數(shù),但是GEP采用多基因染色體模式解決問(wèn)題時(shí),染色體中基因數(shù)目不好控制;文獻(xiàn)[5]提出一種基于粗糙集增量式規(guī)則自動(dòng)學(xué)習(xí)的方法獲取分類規(guī)則,避免了繁瑣的重訓(xùn)練過(guò)程,但此方法不能準(zhǔn)確找到規(guī)則進(jìn)行樣本分類且更新過(guò)程繁瑣;文獻(xiàn)[6]通過(guò)采用自適應(yīng)信息素更新和更換啟發(fā)式函數(shù)的蟻群算法(ACO)實(shí)現(xiàn)分類規(guī)則的挖掘,精度有所提升,但是算法收斂速度緩慢,且易陷入局部最優(yōu)解;文獻(xiàn)[7]在ACO算法的基礎(chǔ)上提出了一種自適應(yīng)蟻群算法,通過(guò)動(dòng)態(tài)調(diào)整決定性選擇概率和波動(dòng)系數(shù)值,加快ACO收斂速度,但搜索空間有限且魯棒性較差;文獻(xiàn)[8]將粒子群算法(PSO)用于分類規(guī)則挖掘,通過(guò)改變粒子群的位置和速度以及適應(yīng)度評(píng)價(jià)指標(biāo)減少分類規(guī)則數(shù)目和縮短運(yùn)行時(shí)間,但此方法易早熟收斂,且尋優(yōu)能力差.
上述基于規(guī)則的分類算法中普遍存在著全局搜索能力不強(qiáng)、魯棒性和種群多樣性較差的問(wèn)題.本文提出基于雙鏈量子遺傳的分類規(guī)則挖掘算法(DCQGA-CRM),該算法以雙鏈量子遺傳算法為框架,采用雙鏈量子和目標(biāo)函數(shù)梯度信息進(jìn)行分類器構(gòu)建,將量子比特的兩個(gè)概率幅作為基因位描述可行解,利用量子旋轉(zhuǎn)門加快規(guī)則挖掘收斂速度,通過(guò)量子非門對(duì)規(guī)則前件進(jìn)行變異.
分類系統(tǒng)由多條分類規(guī)則表示,通過(guò)分析訓(xùn)練樣本數(shù)據(jù)構(gòu)建分類系統(tǒng)模型,進(jìn)而檢驗(yàn)分類精確度,實(shí)現(xiàn)對(duì)未來(lái)采集樣本數(shù)據(jù)分類.每個(gè)數(shù)據(jù)樣本可看作由條件屬性和類標(biāo)簽(目標(biāo)屬性)組成,其表達(dá)式為
Vq=(vqj,gl)
(1)
式中:vqj為第q個(gè)樣本第j個(gè)條件屬性值,q=1,2,…,N,j=1,2,…,n;gl為第l類標(biāo)簽,l=1,2,…,c.
通常用具有高層次性和象征性的If-Then分類規(guī)則來(lái)搭建分類器模型,典型的分類規(guī)則形式為
Rk:ifA1=xk1and … andAj=xkjthenCk=gkl
(2)
式中:Aj為第j個(gè)條件屬性;Ck為第k條規(guī)則所屬類別;gkl為第k條規(guī)則第l類標(biāo)簽.
精確度是評(píng)價(jià)基于規(guī)則分類器的重要指標(biāo),分類精度越高,表明分類器分類效果越好.本文用正確分類樣本數(shù)占分類樣本總數(shù)的比例表示精確度.
分類問(wèn)題中樣本正確分類數(shù)目確定過(guò)程如下:1)計(jì)算樣本數(shù)據(jù)與分類規(guī)則前件差;2)選擇前件差最小值作為樣本適用規(guī)則;3)對(duì)樣本分類,設(shè)樣本正確分類數(shù)目初值為零,比較樣本類標(biāo)簽gl和分類規(guī)則類標(biāo)簽gkl是否相等.
采用測(cè)試樣本對(duì)分類模型進(jìn)行檢驗(yàn),精度越高,表明搭建分類器模型越好,進(jìn)而對(duì)新測(cè)試樣本數(shù)據(jù)進(jìn)行分類,賦予類標(biāo)簽.
量子遺傳算法(QGA)是在遺傳算法的基礎(chǔ)上,將量子理論引入到其中的智能優(yōu)化算法.本節(jié)將雙鏈量子與分類規(guī)則挖掘相結(jié)合,主要過(guò)程包括量子位實(shí)數(shù)編碼、解空間變換、量子旋轉(zhuǎn)門操作和量子非門變異幾個(gè)部分.
DCQGA-CRM采用雙鏈量子位實(shí)數(shù)編碼方式產(chǎn)生分類規(guī)則,每個(gè)個(gè)體包含上下兩條基因鏈,每條基因鏈對(duì)應(yīng)優(yōu)化問(wèn)題的一個(gè)分類規(guī)則.在種群規(guī)模一定的條件下,通過(guò)雙鏈量子位實(shí)數(shù)編碼方式增加種群多樣性,加倍搜索空間.
QGA以充當(dāng)信息存儲(chǔ)單元的雙態(tài)量子比特系統(tǒng)為基礎(chǔ),用量子比特表示染色體,兩個(gè)量子態(tài)的線性疊加態(tài)表示一個(gè)量子位,其形式為
|φ〉=γ|0〉+β|1〉
(2)
式中,γ、β為量子比特的概率幅,滿足歸一化條件.考慮歸一化約束性,用概率幅編碼,則DCQGA-CRM雙鏈編碼方式表示為
(3)
式中,costij、sintij為第i個(gè)種群、第j個(gè)量子位的兩個(gè)概率幅值.
雙鏈量子實(shí)數(shù)編碼產(chǎn)生分類規(guī)則的概率幅在[-1,1]之間,與原始樣本數(shù)據(jù)存在差異.利用解空間變換將量子位概率幅轉(zhuǎn)換為指定范圍內(nèi)相對(duì)應(yīng)實(shí)數(shù)集,便于分類規(guī)則與樣本對(duì)比.由于每條染色體含有2m個(gè)量子位的概率幅,可利用線性變換將m維單位空間Im=[-1,1]轉(zhuǎn)換到實(shí)數(shù)解空間.令aj表示第j個(gè)量子位下限值,bj表示第j個(gè)量子位上限值,則相應(yīng)解空間變換為
(4)
量子旋轉(zhuǎn)門操作的作用是促使染色體上每個(gè)基因位概率幅值收斂到預(yù)先設(shè)定幅值,從而使其收斂到全局最優(yōu)解.量子旋轉(zhuǎn)門表達(dá)式為
(5)
(6)
量子旋轉(zhuǎn)門更新過(guò)程中,旋轉(zhuǎn)角方向和大小是根據(jù)預(yù)先設(shè)定調(diào)整策略確定的.量子旋轉(zhuǎn)門只改變相位大小,不改變量子位長(zhǎng)度.量子基因位幅值對(duì)收斂速度造成直接影響,其值一般設(shè)置為0.001π~0.1π.
量子旋轉(zhuǎn)門轉(zhuǎn)角大小更新策略為:目標(biāo)函數(shù)在搜索點(diǎn)處梯度較大,即所處搜索過(guò)程較陡時(shí),適當(dāng)減小步長(zhǎng),避免越過(guò)全局最優(yōu)解;反之,適當(dāng)增大步長(zhǎng),加速其搜索過(guò)程,盡快搜尋到全局最優(yōu)解.根據(jù)搜索點(diǎn)處目標(biāo)函數(shù)梯度變化確定搜索點(diǎn)處步長(zhǎng),即
(7)
依據(jù)變異概率選擇最優(yōu)染色體,對(duì)染色體量子位施加量子非門操作,通過(guò)改變量子位概率幅使兩條基因鏈上量子位同時(shí)得到變異,其變異過(guò)程為
(8)
基于雙鏈量子遺傳優(yōu)化的分類規(guī)則挖掘算法流程圖如圖1所示.
圖1 DCQGA-CRM算法流程圖Fig.1 Flow chart of DCQGA-CRM algorithm
本文選取UCI數(shù)據(jù)庫(kù)中9個(gè)數(shù)據(jù)集對(duì)算法的分類精度和魯棒性進(jìn)行對(duì)比分析.首先將所提算法與兩種基于規(guī)則的分類算法(Michigan算法和Pittsburgh算法)進(jìn)行對(duì)比分析.在此基礎(chǔ)上,在訓(xùn)練集中添加類噪聲,將所提算法與Michigan算法[9]、Pittsburgh算法[10]、C4.5算法[11]和BP神經(jīng)網(wǎng)絡(luò)[12]進(jìn)行對(duì)比,驗(yàn)證所提算法的噪聲容忍度.
數(shù)據(jù)集具體描述如表1所示,其中,#Ex.為樣本數(shù),#Atts.為屬性數(shù),#Class.為類別數(shù).
表1 UCI數(shù)據(jù)集描述Tab.1 Description of UCI datasets
本文采用樣本正確分類數(shù)占樣本總數(shù)的比例來(lái)進(jìn)行描述分類精度;引入相對(duì)損失精度RLA來(lái)描述魯棒性優(yōu)劣,其定義為
(9)
式中:e0%為原始數(shù)據(jù)集下測(cè)試分類精度;ex%為噪聲水平下測(cè)試分類精度.
為驗(yàn)證所提出的DCQGA-CRM與其他分類算法相比具有顯著性能,采用Wilcoxon符號(hào)秩檢驗(yàn)[9]進(jìn)行顯著性測(cè)試.比較檢驗(yàn)概率p值與顯著水平α的大小,判斷兩個(gè)算法預(yù)測(cè)階段平均值與各自所代表的總體差異是否顯著,本文選取顯著水平α=0.05.本實(shí)驗(yàn)采用5折交叉驗(yàn)證方式進(jìn)行算法性能驗(yàn)證,即將數(shù)據(jù)集隨機(jī)分成5等份,選取其中的4份作為訓(xùn)練樣本集,其余部分作為測(cè)試樣本,實(shí)驗(yàn)結(jié)果選取5次運(yùn)行結(jié)果平均值和標(biāo)準(zhǔn)差.
將本文算法與Michigan算法和Pittsburgh算法進(jìn)行分類精度比較分析,各算法參數(shù)設(shè)置如表2所示.
表2 不同算法參數(shù)設(shè)置Tab.2 Parameters settings of different algorithms
表3為DCQGA-CRM與Michigan算法和Pittsburgh算法分類精度對(duì)比,分別記錄了各算法對(duì)9組數(shù)據(jù)集的訓(xùn)練精度(eTr)與測(cè)試精度(eTst)結(jié)果,精度值后面的數(shù)值為分類精度的標(biāo)準(zhǔn)差.由表3可以看出,在9個(gè)數(shù)據(jù)集的實(shí)驗(yàn)結(jié)果中,DCQGA-CRM在測(cè)試結(jié)果的分類正確率明顯高于其他兩種對(duì)比算法.將DCQGA-CRM與Michigan算法、Pittsburgh算法的Wilcoxon符號(hào)秩檢驗(yàn)進(jìn)行對(duì)比,本文所提出算法得到的檢驗(yàn)概率p值均小于0.05,說(shuō)明本文提出的DCQGA-CRM與Michigan算法、Pittsburgh算法相比,分類性能有顯著性提高.
表3 DCQGA-CRM與其他分類算法分類精度對(duì)比Tab.3 Comparison in classification accuracy between DCQGA-CRM and other classification algorithms %
表4為本文所提算法與其他算法在分類精度實(shí)驗(yàn)中數(shù)據(jù)集單次運(yùn)行的時(shí)間對(duì)比,其中,Pittsburgh算法和本文提出算法中的單個(gè)個(gè)體均代表一個(gè)分類器,因此,單次運(yùn)行的時(shí)間要高于以單條規(guī)則為優(yōu)化對(duì)象的Michigan算法,但本文所提算法采用量子旋轉(zhuǎn)門策略提高了單次迭代的運(yùn)行速度.
表4 各算法運(yùn)算時(shí)間對(duì)比Tab.4 Comparison of operation time among different algorithms s
通過(guò)向訓(xùn)練數(shù)據(jù)集中加入類噪聲來(lái)分析DCQGA-CRM的噪聲容忍度.采用不同類噪聲水平(noise level,NL)測(cè)試其預(yù)測(cè)精度,并通過(guò)相對(duì)損失精度RLA分析算法在類噪聲作用下的噪聲容忍度.
本實(shí)驗(yàn)還選擇了對(duì)類噪聲容忍度較強(qiáng)的C4.5算法和BP神經(jīng)網(wǎng)絡(luò)進(jìn)行比較分析.圖2為噪聲水平分別取NL=10%,20%,30%,40%和50%時(shí)不同算法對(duì)樣本數(shù)據(jù)集的分類精度.在大多數(shù)數(shù)據(jù)集情況下,DCQGA-CRM類噪聲容忍度優(yōu)于其他算法.
圖2 不同噪聲水平下DCQGA-CRM與其他算法分類精度對(duì)比Fig.2 Comparison of classification accuracy between DCQGA-CRM and other algorithms under different noise levels
本文給出了類噪聲分別為10%、30%、50%時(shí)的RLA值,如表5所示.表5中,(·)值表示同一噪聲水平下各算法的RLA值排名,Av.Rank表示各算法在9個(gè)數(shù)據(jù)集測(cè)試中的平均排名.從表5中可以看出,DCQGA-CRM的RLA在大多數(shù)情況下小于其他對(duì)比分類算法,擁有良好的噪聲容忍度.
本文針對(duì)智能優(yōu)化分類規(guī)則挖掘算法中分類精度低及噪聲容忍度差等問(wèn)題,提出一種DCQGA-CRM算法,以基于規(guī)則的分類系統(tǒng)為框架,采用雙鏈量子實(shí)數(shù)編碼增加搜索空間多樣性,通過(guò)量子旋轉(zhuǎn)門操作和量子非門進(jìn)行策略更新,利用目標(biāo)梯度函數(shù)避免陷入局部最優(yōu)解.實(shí)驗(yàn)利用UCI數(shù)據(jù)庫(kù)中9個(gè)數(shù)據(jù)集,將所提出的DCQGA-CRM與對(duì)比分類方法相比,實(shí)驗(yàn)結(jié)果表明,DCQGA-CRM具有較高分類精度和噪聲容忍度.相對(duì)精度損失RLA和Wilcoxon符號(hào)秩檢驗(yàn)表明,DCQGA-CRM與其他分類方法相比,噪聲容忍度有顯著性提高.
表5 不同噪聲水平下DCQGA-CRM與其他算法的RLA對(duì)比Tab.5 Comparison of RLA between DCQGA-CRM and other algorithms under different noise levels