1. 程式人生 > 實用技巧 >A Duplication Analysis Based Evolutionary Algorithm for Bi-objective Feature Selection

A Duplication Analysis Based Evolutionary Algorithm for Bi-objective Feature Selection

基於重複分析的雙目標特徵選擇進化演算法

最近看了一篇關於分類的特徵選擇進化演算法的論文,記錄一下。

改論文的連結如下:https://ieeexplore.ieee.org/document/9165863

1. 摘要

特徵選擇的目的:降低維數,提高分類的效率

然而現有的很多方法主要考慮的是單目標的優化,而現實中的問題具有多個目標,因此需要有效的進化演算法去處理多目標的特徵選擇問題。

多目標特徵選擇的兩個目標:1.最小化特徵的數量2.最小化分類的錯誤率

這篇文章針對分類中的多目標的特徵選擇提出了DAEA(基於重複分析的進化演算法)

該演算法對基本的基於支配的EA框架進行了三個方面的改進:
1.修改繁殖過程提高後代的質量
2.重複分析的方法過濾冗餘解
3.採用多樣性選擇的方法進一步保留解

在實驗中,我們將所提出的演算法與五種最新的多目標進化演算法(MOEAs)進行了比較,並在20個分類資料集上測試了它們,使用了兩個廣泛使用的效能指標。從實證結果來看,DAEA在大多數資料集上的表現都是最好的,說明DAEA不僅獲得了優異的優化效能,而且得到了良好的分類和泛化結果。

創新點
1.在最初的選擇中,提出複製分析方法判斷需要在目標空間中過濾哪些重複解,主要思想就是通過解在決策空間的距離去估計他們的差異性,具有低差異的,解最可能被過濾,這種方式目標空間中的種群的多樣行被維持,使得測試集上的潛在最優解得以被保留。

2.在處理重複後,提出了一種基於多樣性的選擇方法,進一步選擇非主導排序後的解。與傳統的擁擠距離方法不同,該方法忽略了特徵選擇的本質,將所選特徵子集相同大小的解的個數作為第一選擇準則,並結合擁擠距離作為補充準則。

3.改進了繁殖過程,採用小生境交配在目標空間中集合相鄰解,採用k位交叉方法避免複製相同的子代,採用混合變異方法平衡已選特徵和未選特徵的變異率。

2. 介紹

與傳統的搜尋方法相比,EAs不需要領域知識和搜尋空間假設。此外,它們的基於種群的搜尋機制可以在一次執行中產生一組非主導解,在不同的衝突目標之間進行權衡,特別適合於多目標優化問題(MOPs)。這種EAs也可稱為多目標進化演算法(MOEAs)。

目前,根據環境選擇策略的不同,MOEAs的主流可以大致分為四類
MOEAs的第一類是基於Pareto優勢關係,分析解在目標空間中的優勢關係,通過非支配排序將解決方案劃分為不同的非支配前沿。
第二類是基於分解方法,將一個多目標問題分解為一系列子問題,這些子問題分別與一個明確的和唯一的方向向量相關。
第三類是基於效能指標,採用一定的效能度量來估計解決方案的適應度。

第四類是指所有其他型別的MOEAs,如基於決策變數分析的EAs、基於距離測度的EAs、代用輔助的EAs或稱為資料驅動的EAs,以及協同進化演算法。

四類方式的特點
基於分解方法:更易控制多樣性和收斂性之間的平衡,但是對分解引數和方向向量的分佈具有很高的依賴性

基於效能指標:與評估的效能度量高度相關,適應度的計算比較耗計算資源

基於pareto優勢的方法:不需要額外的引數與較少的計算資源,但是難以在多目標搜尋空間收斂,而在雙目標特徵選擇中這個問題得到了解決。同時大多基於優勢的EAs的多樣性維護、複製過程需要加以改進才可以解決雙目標特徵選擇問題。另外繁殖高質量的後代也是影響EA多樣性和收斂性的重要因素,目前大部分採用的區域性搜尋等方法,易使種群陷入區域性最優,基於GA的繁殖過程的研究比較少,本問基於GA進行研究。

特徵選擇的另一個重要問題是進化過程中,決策空間和目標空間經常發生重複,決策空間中發生的重複為決策向量的重複,可通過刪除所有的重複,保留一個唯一解解決。目標空間的重複,即目標向量重複,對優化和分類效能的影響更為複雜,而且處理難度也更大,這是因為即使兩種相同的解決方法,即使在訓練資料上具有相同的效能,但是由於測試集未知,因此其效能可能會出現很大差異。

因此本文提出了DAEA對上述問題基於GA演算法加以改進

3. 演算法

3.1 演算法整體框架

在這裡插入圖片描述

初始化(程式碼1-5行) 繁殖(8) 環境選擇(10-16)

  1. 重複分析(12)
  2. 非支配排序(13-15)
  3. 多樣性維護(16)

下面依次介紹上述框架中的各個部分:

3.2 初始化及終止條件

初始化:(實際上該演算法是為大規模特徵選擇優化的)
當特徵總數不超過種群規模3倍時,隨機選擇特徵,不受約束。
當特徵總數超過種群規模的3倍時,使用較少的規模進行初始化利於收斂,如果特徵數量過少,很難覆蓋整個決策空間,這裡的3倍是一個權衡的選擇,此時探索規模縮小到種群規模的三倍。

終止條件
DAEA的終止準則是基於目標函式評價的次數,每代增加N次

3.3 繁殖

在這裡插入圖片描述

主要分為3個部分:

  1. 小生境交配(1-12)
  2. k位交叉(13-21)
  3. 雜交突變(21)

小生境交配法:從領域(小環境)或全域性(整體)中隨機選擇比例為80%或20%的親本。採用該方法,是因為在目標向量相似的兩個解之間交換進化資訊是一種更穩定、更有效的方式。

在第2行中,鄰域大小設定為人口大小的20%,考慮到客觀空間的左、右、上、下四個方向,鄰域大小至少設定為四個。
在第3行,目標向量在每個方向分別歸一化到相同的規模,以保證選擇相鄰解的公平性(第4行)。
在13到20行演算法,提出了k位交叉方法(僅對決策變數不同的位置進行交叉如:如果我們將下圖中的解x1和x3作為兩個父代來生成後代,我們將只在第1、4、5、6、7和8位隨機交叉(因為這些位上的決策變數值不同),而忽略第2和第3位。這樣k-bit交叉法產生的後代更有可能與其親本不同)。
以上四個不同的解(x1,…,x4)對於決策空間中共有8個特徵的特徵選擇問題
圖片說明:
以上四個不同的解(x1,…,x4)對於決策空間中共有8個特徵的特徵選擇問題。

雜交突變
在這裡插入圖片描述

隨機應用兩種變異方法,分別20%和80%的比例採用下面兩種變異方式 :
改進的變異方法(2-10)
傳統的變異方法(11-18)

程式碼說明:t1和t0不是解的指標,而是對應於已選擇特徵和未選擇特徵的某解決策向量中值為1或0的基因的指標。

演算法5中詳細介紹了混合變異方法,其中將改進的變異方法(第2 - 10行)與傳統的變異方法(第11 - 18行)隨機應用,分別約設20%和80%的比例。需要注意的是,我們並沒有嘗試尋找最佳的比例。使用傳統變異演算法如果選擇的數量特徵維數遠小於D,新增新特徵的概率將比刪除舊特徵的概率大很多,使用改進的變異演算法,會使二者的概率縮小,使其更加公平。

舉例說明:
讓我們以兩個選中特徵(值1位元)的後代為例來說明上述觀點,決策空間維數為10,未選中特徵(值0位元)的數量為8。
因此,在傳統的變異方法中,去除至少一個選中特徵的概率為1− ( 1 − 1 / 10 ) 2 (1−1/10)^2 (11/10)2= 0.19,而至少新增一個未被選中特徵的概率為1− ( 1 − 1 / 10 ) 8 (1−1/10)^8 (11/10)8= 0.57。改進的方法中,去除至少一個選中特徵的概率為1− ( 1 − 1 / ( 1 + 2 ) ) 2 (1−1/(1+2))^2 (11/(1+2))2= 0.56,而至少新增一個未被選中特徵的概率為1− ( 1 − 1 / ( 1 + 8 ) ) 8 (1−1/(1+8))^8 (11/(1+8))8=0.61

顯然,在大約三倍的概率差的情況下,更有可能是新增特徵而不是去除特徵,這不利於後代的變異。而在修改後的變異方法中,去除至少一個選中特徵的概率為0.56,而增加至少一個未選中特徵的概率為0.61。可以看出,它們的概率差異大大縮小,概率幾乎相同,這使得對0和1兩個決策變數進行突變更加公平,增加了對所選特徵進行重新整理的機會。

該小節基礎知識補充:
小生境交配
自於生物學的一個概念,是指特定環境下的一種生存環境,生物在其進化過程中,一般總是與自己相同的物種生活在一起,共同繁衍後代。把這種思想提煉出來,運用到優化上來的關鍵操作是:當兩個個體的海明距離小於預先指定的某個值(稱之為小生境距離)時,懲罰其中適應值較小的個體。
海明距離(Hamming Distance
在資訊編碼中,兩個合法程式碼對應位上編碼不同的位數稱為碼距,又稱海明距離。例如,10101和00110從第一位開始依次有第一位、第四、第五位不同,則海明距離為3。

參考連結https://blog.csdn.net/SZU_Hadooper/article/details/78212092

3.4 重複分析

在這裡插入圖片描述

程式碼說明:
randi(k,|k|−1)表示從陣列k(第15行)中隨機選擇(|k|−1)成員

如演算法2所示,重複分析的主要思想是利用決策空間中解之間的曼哈頓距離來估計它們的不同程度,從而決定需要去除目標空間中的哪些重複解。

在第14 - 15行中,將重複解決方案按其不同程度分為兩組:不同程度大於或等於去除閾值的遠端解決方案和不同程度小於去除閾值的叢集解決方案。其中,所有的大於闕值的方案保留,小於闕值的方案隨機保留一個。

例如:
在這裡插入圖片描述
以上四個不同的解(x1,…,x4)對於決策空間中共有8個特徵的特徵選擇問題,首先計算各自與所有解決方案的曼哈頓距離的最小值,然後作為評估所選特徵的不同度(程式碼8-12行)
通過計算闕值為0.543(程式碼13行)
因此x3直接保留,其他三個解只保留一個(程式碼14-18行)

曼哈頓距離可參考:
https://blog.csdn.net/qq_38048756/article/details/107640915

3.5 多樣性的維護

在這裡插入圖片描述

多樣性選擇準則:
擁擠距離(2-4)(補充準則)
多樣性得分(5-11)(主要準則)

第4行中的排序使得具有較大擁擠距離的解決方案優先出現。
第7-8行中將未選擇的解決方案的多樣性得分設定為已經選擇的具有相同數量選擇特徵的解決方案的個數。
最後,選擇多樣性得分最小的解(第10 - 11行),而擁擠距離僅在有多個具有相同多樣性得分最小的解的情況下,根據事先的排序(第4行)才起作用。

舉例說明
在這裡插入圖片描述
灰色點為非支配前沿已經選擇的解,同一虛線上表示特徵個數相同的解,一個紅色圓圈表示一個相同解,{x1,x2,x3,x4,x5,x6,x7,x8}表示非支配排序未選擇的解。

此時多樣性得分別為{2,4,1,2,2,1,1,1},因此x3,x6,x7,x8在多樣性得分排名比較靠前,考慮其擁擠距離,因為邊界解的擁擠距離為無窮大,因此x6,x7,x8擁擠距離大於x3,而三者的多樣性得分相同,此時隨機選擇一個解如:x8。

另外需要注意的一點是選擇的過程是動態的,每輪只選擇一個解,比如下一輪應該選擇x3,這是因為之前x8的選擇使得x3的多樣性得分高於x6,x7.

該小節基礎知識補充:

支配與非支配:當A所有目標都優於B時,就說A支配了B,否則A和B就是一個非支配的關係。(比如A車價格30萬,外觀A等,效能A等;汽車B價格40萬,外觀A-等,效能A-等,就說汽車A支配了汽車B。如果有一輛汽車C價格20萬,外觀B等,效能B等,相較於汽車A,雖然C的外觀和效能都比汽車A要差,但是其價格上比汽車A要低,從價格這個評價標準上來看,汽車C是要優於汽車A的,所以說汽車C和汽車A是屬於一個非支配的關係。)種群中所有不被任何其他解支配的解構成了非支配前沿(Pareto最優解)

擁擠距離主要是維持種群中個體的多樣性。具體而言,一般來說是指種群按照支配關係進行非支配排序後,單個Rank層中個體的密集程度。

遺傳演算法有自動收斂的性質,所以為了保證解的多樣性,我們往往希望同一Rank層中的解能夠相互分開,所以設定了 擁擠度 這個概念,認為 解之間距離大的解比解之間距離小的解更好 擁擠距離排序用於保持解的多樣性。 每個個體的擁擠距離是通過計算與其相鄰的兩個個體在每個子目標函式上的距離差之和來求取,即下圖中虛線四邊形的長和寬之和。
在這裡插入圖片描述

參考連結: https://blog.csdn.net/u013555719/article/details/82936554

該篇論文的實驗結果部分請自行檢視。