?

基于卡方躍遷策略的黑蜘蛛優化算法及應用

2023-12-06 06:42杜曉昕王振飛郝田茹崔連和
陜西科技大學學報 2023年6期
關鍵詞:卡方蜘蛛種群

杜曉昕, 王振飛, 王 波, 王 浩, 郝田茹, 崔連和

(齊齊哈爾大學 計算機與控制工程學院, 黑龍江 齊齊哈爾 161006)

0 引言

隨著現實世界許多的優化問題變得越來越復雜,傳統的優化方法在解決這類問題時需要花費太多時間,并且不能有效解決.近年來研究人員受各種自然現象啟發而提出的元啟發式算法[1],例如模擬鳥群覓食的粒子群算法[2],借鑒生物界進化規律的遺傳算法[3],受固體退火原理啟發的模擬退火算法[4],模擬灰狼捕食獵物的灰狼優化算法[5]等,這些算法均具有求解速度快、求解精度高、魯棒性強等優點,在解決現代優化問題上均具有較好的表現.黑蜘蛛優化算法(BWOA)是Pena Delgado等[6]于2020年提出的一種新的仿生元啟發式優化算法,該算法模擬雄性黑蜘蛛選取最佳交配雌性伴侶的過程[7],具有參數設定少、全局尋優能力強等優點,引起了學術界的廣泛關注,并被應用于工程優化[8]、特征選擇[9]、參數優化[10]等諸多領域,成功解決了各種難題.

但與上述提到的其它元啟發式優化算法一樣,BWOA也存在易陷入局部最優、收斂精度低、全局勘探和局部開發失衡等問題,為了改善這些不足,傅彥銘等[11]提出一種基于角逐和改進信息素機制的多目標黑蜘蛛優化算法,采用動態分配種群的方法,改進信息素更新機制,引導待優化個體向種群間隙方向進行優化,增強算法的收斂速度和尋優能力.Xu等[12]提出了一種結合柯西重心逆差突變和黃金正弦引導策略的黑蜘蛛優化算法,基于雙混沌圖提高BWOA初始種群質量,并引入黃金正弦算法及柯西重心逆微分突變算子增加種群多樣性,從而提高算法的搜索能力.Wan等[13]提出一種多策略黑蜘蛛優化算法,采用高斯混沌映射初始化種群,引入正弦余弦策略在迭代過程中對個體進行擾動并結合差分進化算法的變異方法,對適應度值較差的個體進行重組,以提高算法的收斂速度.

綜上所述,這些改進策略雖然從不同角度提高了算法的尋優能力,然而到目前為止對BWOA的改動一方面難于幫助黑蜘蛛跳出局部最優,另一方面難以在全局勘探和局部開發方面取得平衡,針對這些問題,本文提出了一種基于卡方躍遷策略的黑蜘蛛優化算法(CTBWOA),首先采用佳點集初始化種群來替代隨機初始化種群,使黑蜘蛛更加均勻地分布于初始解空間,增強初始種群的遍歷性;其次提出卡方躍遷策略,在黑蜘蛛陷入局部最優時,幫助黑蜘蛛跳出局部最優,避免算法早熟收斂;再次通過自選取運動策略,以平衡算法的勘探和開發能力;最后采取三蛛競爭及回溯機制,改進低信息素黑蜘蛛替換策略,以增強算法多樣性,提高算法收斂速度和精度.

本文最后將CTBWOA應用到了SVM的參數優化中,把SVM的參數作為黑蜘蛛的位置信息,以SVM分類準確率作為優化準則建立目標函數,通過迭代得到最優參數和最優分類準確率,實現對支持向量機核參數和懲罰參數的優化選取,以提高支持向量機的分類精度和泛化能力.仿真實驗結果表明該方法優化的SVM其分類準確率有了明顯提高,從而證明了該優化算法的可行性與有效性.

1 黑蜘蛛優化算法

本節介紹了黑蜘蛛優化算法的數學模型,描述了黑蜘蛛從隨機解出發,通過不同的運動策略和信息素策略迭代尋找最優解的過程.

1.1 種群初始化策略

為了保證BWOA的全局搜索能力,將種群數為N的個體初始化為:

(1)

式(1)中:D表示待解決問題的維度,N為黑蜘蛛的個數,矩陣中的每一行代表一個黑蜘蛛的當前位置,即對應一個解,其中第i個黑蜘蛛的初始化求解公式為:

(2)

式(2)中:UB表示決策變量的上界,LB表示決策變量的下界,rand為從0到1的隨機數.

1.2 運動策略

黑蜘蛛在蛛網內按照線性和螺旋的方式進行移動,其數學模型為:

(3)

1.3 信息素替換策略

信息素在黑蜘蛛的交配中發揮著非常重要的作用,同時黑蜘蛛的飲食和信息素之間也具有重要聯系[14].吃飽的雌性黑蜘蛛信息素高于饑餓的雌性黑蜘蛛,雄性黑蜘蛛更傾向于尋找信息素高的雌性黑蜘蛛,因為這降低了同類相食的發生概率.因此,信息素低的雌性黑蜘蛛并不是雄性黑蜘蛛的首選.在BWOA中,黑蜘蛛的信息素求解公式為:

(4)

式(4)中:pheromone(i)表示第i只雌性黑蜘蛛的信息素,這個值為從0到1的浮點數;fitnessmax和fitnessmin分別是此次迭代中最差和最優的適應度值,fitness(i)是第i個搜索代理的當前適應度值.規定當信息素值等于或小于0.3時,表示雌性黑蜘蛛正處于饑餓狀態,為了避免同類相食,雄性黑蜘蛛就不會選擇它進行交配,而是把它替換為另一只黑蜘蛛,其替換公式為:

(5)

2 基于卡方躍遷策略的黑蜘蛛優化算法

2.1 基于佳點集的種群初始化策略

初始種群的質量會影響算法的求解速度,而優秀的種群初始化策略能夠使種群個體更均勻的遍歷整個搜索空間,以此增強種群的多樣性,提高算法收斂速度,為算法的全局搜索奠定基礎.本文引入佳點集對種群進行初始化,有效的提高了算法在解空間上的遍歷能力.

佳點集由華羅庚等[15]提出,其原理為:設Gs為s維歐式空間的單位立方體,如果r∈Gs,對于:

(6)

其偏差滿足:

φ(n)=C(r,ε)nε-1

(7)

則稱Pn(k)為佳點集,r為佳點.式(6)中: (r1(n)·k)代表取小數部分,式(7)中:ε為任意正數,C(r,ε)是只和r,ε有關的常數,n表示點數,而r為:

r={2 cos(2πk/p),1≤k≤s}

(8)

式(8)中:p是滿足(p-3)/2≥s的最小素數.

設搜索空間為2維,種群規模為1 000,取值范圍為[0,1],采用佳點集初始化種群與隨機初始化種群的分布圖如圖1和圖2所示.

圖1 佳點集初始化種群分布

圖2 隨機初始化種群分布

圖3為在上述條件下,采用佳點集和隨機初始化的頻數分布直方圖.圖中棕色部分為隨機初始化的頻數分布,藍色部分為采用佳點集的頻數分布,咖啡色為兩種方法的重疊區域,從中可以看出佳點集生成的種群在各個區間中頻數均接近一百,而隨機初始化分布生成的種群在區間中頻數最高為一百一左右,最低則達到了八十,上下限差距較大.因此采用佳點集初始化策略,能夠使種群個體分布更加均勻,增強算法的遍歷性,從而更好地提高算法收斂速度及全局搜索能力.

圖3 佳點集和隨機種群初始化頻數分布直方圖

2.2 卡方躍遷策略

在標準黑蜘蛛優化算法中,黑蜘蛛在種群迭代過程中,不管是通過運動策略或者信息素策略進行位置更新,都會趨向于靠近當前種群中的最優黑蜘蛛,這固然會增強算法的收斂能力,提高算法的收斂速度,但同時會降低算法的多樣性,使得算法過早收斂,導致黑蜘蛛陷入局部最優無法跳出.針對上述問題,提出卡方躍遷策略,當黑蜘蛛陷入局部最優無法跳出時,通過卡方躍遷機制帶領黑蜘蛛離開局部最優,提高算法的尋優能力.卡方躍遷策略的公式如式(9)所示:

Xidt+1=Xidt+γ⊕L(λ)

(9)

式(9)中:Xidt+1表示第i只蜘蛛在t+1次迭代中第d維的值,γ為步長控制系數,L(λ)為萊維飛行[16]的隨機搜索路徑,具體描述為:

(10)

(11)

式(11)中:n表示自由度,t為當前迭代次數,tmax為最大迭代次數,fn(x)為卡方分布概率密度函數,公式為:

(12)

式(12)中:Γ(n/2)為伽馬函數,即:

(13)

卡方分布是統計學中最重要的分布之一,定義為如果n個隨機變量X相互獨立,都服從N(0,1),則稱X服從自由度為n的卡方分布.本文利用卡方分布在自由度為2時函數非線性遞減的特性,將其融入到自適應步長的求解中.實現在算法迭代初期,當黑蜘蛛處于搜索階段時,通過大步長搜索來更新位置,加快黑蜘蛛找到最優解的速度;在迭代后期,黑蜘蛛進入開發階段時,使用較小的步長進行位置更新,以提高解的精度.γ的變化圖像如圖4所示.

圖4 γ變化曲線

2.3 自選取運動策略

在原始的黑蜘蛛優化算法中,算法通過值為0.3的常量a控制黑蜘蛛在蛛網內的運動方式,當隨機數小于等于a時黑蜘蛛采用線性運動,隨機數大于a時進行螺旋運動.導致黑蜘蛛大概率進行螺旋運動,這固然會提高算法的全局勘探能力,但同時算法以小概率進行線性運動,大大降低了算法的局部開發能力,所以常量a不能有效平衡黑蜘蛛的運動方式,并且使得標準BWOA算法的全局搜索能力和局部開發能力失衡.因此本文基于Sigmoid[19]函數提出了一種非線性遞增的參數a,以平衡算法的勘探和開發.改進后的參數a求解公式為:

(14)

式(14)中:b為常數-5,t為當前迭代次數,tmax為最大迭代次數,c是值為0.3的平衡因子.改進后的參數a隨迭代次數的增加其值的變化情況如圖5所示.

圖5 非線性遞增參數a變化曲線

從圖中可以看出本文提出的非線性遞增參數a在算法迭代前期數值變化幅度及速度較小,即蜘蛛大概率選取螺旋運動策略,擴大蜘蛛的搜索范圍;迭代中期參數a上升速度明顯,此時黑蜘蛛對運動策略的選取概率相近,以平衡算法的勘探和開發能力;迭代后期,參數a在較長時間內保持較大值且變化幅度和速度也較小,使得蜘蛛大概率選取線性運動策略,加強算法的局部搜索能力.

2.4 三蛛競爭及回溯學習機制

信息素替換策略利用公式(4)將低信息素的雌性黑蜘蛛替換掉,以尋找獲取高信息素的黑蜘蛛.但是這種替換隨機性較強,從式(4)可以看出,當隨機獲取的兩只蜘蛛信息素較低時,替換之后的蜘蛛信息素值也會相對較低,則此次替換無意義.因此提出三蛛競爭及回溯學習機制,首先從當前種群中隨機選取三只雌性黑蜘蛛,通過競爭選取其中信息素最高的個體作為一個交流學習對象,其次獲取當前種群中的最優黑蜘蛛作為另一個交流學習對象,最后分別與通過回溯機制獲取的被替換蜘蛛的個體最優經驗,即歷史最優位置信息進行交流學習,從而引導此次替換朝著最優值方向發展,以提高算法的收斂速度.三蛛競爭及回溯機制的示意圖如圖6所示.

改進后的低信息素黑蜘蛛替換公式為:

(15)

2.5 CTBWOA算法的實現

對標準的黑蜘蛛優化算法進行改進后,得到的CTBWOA算法流程圖如圖7所示.

圖7 CTBWOA算法流程圖

CTBWOA算法偽代碼如下:

CTBWOA算法偽代碼輸入:目標函數F(x)、種群規模N、最大迭代次數tmax輸出:最佳解xBestStep1:采用佳點集初始化黑蜘蛛種群XStep2:while(t

3 實驗結果與分析

3.1 CTBWOA的仿真實驗與分析

3.1.1 基準測試函數及對比算法參數設置

為保證實驗的有效性和公正性,將所提算法分別與原始黑蜘蛛優化算法BWOA、人工蜂群算法(Artificial Bee Colony Algorithm,ABC)[20]、粒子群算法(Particle Swarm Algorithm,PSO)[21]、蜻蜓算法(Dragonfly Algorithm,DA)[22]、灰狼優化算法(Grey Wolf Algorithm,GWO)[23]、鯨魚優化算法(Whale Optimization Algorithm,WOA)[24]進行對比分析,所有算法的初始參數見表1所示.

表1 對比算法的初始化參數

本文仿真實驗中每種算法的種群規模為50,最大迭代次數為500.選取12個典型標準測試函數[25]進行仿真試驗,其中F1~F5為單峰函數,用于檢驗算法的收斂速度和求解精度;F6~F12為多峰函數,用于檢驗算法的全局搜索能力.表2給出了12個測試函數的維度、搜索空間和最優值.

表2 標準測試函數詳細信息

3.1.2 實驗結果

為了避免實驗結果的偶然性,本實驗對每一種算法都進行了100次獨立實驗,并計算其最優值(Best)、平均值(Mean)和標準差(Standard Deviation,Std),其結果如表3所示.其中最優值為算法在100次獨立運行時獲得的最優解,即最小值;平均值為算法對每個函數多次運行后的平均情況,平均值越低表明算法效果越好;標準差代表算法的穩定性,值越小,說明算法越穩定.本文仿真實驗在AMD Ryzen 7-5800H CPU、3.20 GHz、16.0 GB內存、Windows 11(64位)操作系統 、MATLAB R2021a條件下進行.

表3 7種算法對12個函數的運行結果比較

實驗結果如表3所示,其中粗體表示各函數中最優值、平均值和標準差的最小值.由表3可知,對于單峰函數F1~F5,CTBWOA算法在函數F1、F2、F3、F4中均找到了理論最優值,且標準差為0,雖未找到函數F5的理論最優值,但與其他算法相比,CTBWOA算法得到的最優值最接近函數的理論最優值,并且取得了最好的平均值和標準差.這表明CTBWOA算法與其他算法相比具有更強的開發能力.

對于具有許多局部最小值的多峰函數F6~F12來說,CTBWOA算法在函數F7、F9、F11、F12中均找到了理論最優值,而且在函數F8、F10中獲取的最優值也優于其他算法,證明算法具有較強的勘探能力.除函數F6外,CTBWOA算法均得到了最小的最優值、平均值和標準差,進一步證明了和其他算法相比,其具有更高的收斂精度和穩定性.

為了更加直觀地反映CTBWOA算法的性能,圖8給出了7個算法在12個測試函數上的收斂曲線.不管是對于單峰函數F1~F5,還是對于多峰函數F6~F12,CTBWOA算法的收斂速度均明顯優于標準BWOA算法和其他經典算法,這得益于本文采取佳點集的初始化策略,使黑蜘蛛分布更加均勻,為算法的全局尋優奠定基礎,以及自選取運動策略對算法的運動策略進行改動,進一步平衡了算法的局部搜索能力和全局搜索能力,提高了算法的收斂速度.同時從圖8中可以看出,標準BWOA算法和其它經典算法均存在易陷入局部最優的問題,即收斂曲線在搜索到理論最優值之前趨于平緩,不能找到函數最優值,而CTBWOA算法的收斂曲線則出現波動的情況,說明在卡方躍遷策略的作用下,能更好的幫助算法跳出局部最優解,防止算法過早收斂.這些結果表明,CTBWOA算法相對于其它五種算法來說,就有更高的尋優能力.

圖8 CTBWOA算法與其他經典算法的收斂效果對比圖

3.1.3 Friedman檢驗

除了給定的評估指標(最優值、平均值和標準差)之外,本文還采用Friedman檢驗[25],應用統計學方式對七個算法的性能進行測試排序,以進一步驗證CTBWOA與其它算法的顯著性差異.

首先獲取每個算法在12個測試函數中的最優值與最差值;其次分別求出各個算法在每個測試函數中的平均排名;最后計算最終排名,其值越小,則代表算法性能越優.測試結果如表4所示.

表4 7種算法的Friedman檢驗結果排名

表4中粗體為排名最小的值,其中P-value表示漸進顯著性,若其值小于0.01,則說明各項數據之間存在顯著性差異.結果表明與其他算法相比,所提CTBWOA算法在測試中排名第一,且P-value為4.01734e-07,遠遠小于0.01這表明CTBWOA與其他算法之間存在顯著差異.總體上說,CTBWOA可以產生高質量的解決方案,這進一步說明了本文算法改進策略的有效性.

3.1.4 CTBWOA算法的時間復雜度分析

時間復雜度體現的是算法的運行效率,是評價算法性能優劣的重要因素.評價改進的算法是否具有可行性和有效性,一方面是看改進后的算法尋優能力是否具有較大提升,另一方面是看算法時間復雜度是否較大程度的高于原始算法.

在標準BWOA中,假設算法的種群規模為n,求解問題維度為d,最大迭代次數為tmax,則BWOA在初始化階段的時間復雜度為:

T1=O(n×d)

(16)

假設n1和n2分別為進行線性運動和進行螺旋運動的黑蜘蛛總數,n3為通過信息素替換策略替換的黑蜘蛛總數,則BWOA在搜索和勘探階段的時間復雜度為:

T2=O((n1+n2+n3)×d×tmax)=
O(n×d×tmax)

(17)

因此,BWOA的時間復雜度為:

T=T1+T2=O(n×d×tmax)

(18)

在CTBWOA中,生成佳點集所用的時間為k1,則其初始化階段的時間復雜度為:

T3=O(n×d+k1)=O(n×d)

(19)

假設CTBWOA生成卡方自適應步長γ的時間為k2,種群中依據式(9)進行卡方躍遷的黑蜘蛛個數為n4,生成非線性遞增參數a的時間為k3,引入三蛛競爭及回溯學習機制后被替換的黑蜘蛛個數為n5,每只被替換黑蜘蛛競爭及回溯學習花費時間為k4,此時CTBWOA在勘探和開發階段的時間復雜度為:

T4=O((n4+n5)×d×tmax+n×d×tmax+
k1+k2+k3)=O(n×d×tmax)

(20)

綜上可得CTBWOA的時間復雜度為:

T′=T3+T4=O(n×d×tmax)

(21)

由此可知,CTBWOA算法時間復雜度與標準BWOA算法時間復雜度一致,這表明本文針對BWOA算法的不足而提出的改進策略并未增加算法的時間復雜度.

3.2 CTBWOA-SVM原理及仿真與分析

3.2.1 CTBWOA-SVM原理

支持向量機(SVM)[26]是20世紀90年代中期發展起來的一種基于統計學習理論的VC維和結構風險最小化原理的機器學習方法,由Cortes和Vapik提出.SVM是應用最廣泛的分類算法之一,其核心思想就是在特征空間中根據間隔最大化原則尋找一個最優超平面,即選取的超平面應該與離他最近的樣本點之間的距離盡量大,最終轉化為一個凸二次規劃問題來求解.支持向量機在處理高維數據時擁有精度高、學習能力強等優勢,因此被廣泛應用于語音識別[27]、圖像過濾[28]、人臉檢測[29]、手寫體識別[30]和疾病診斷[31]等領域.

在利用支持向量機進行分類的過程中,模型參數(懲罰因子C和核函數參數)的選擇對支持向量機的預測精度和分類性能有至關重要的影響.傳統的參數選擇方法,如網格搜索法[32]、梯度下降法[33]等存在搜索時間較長、參數設定不準確等問題.本文采用CTBWOA算法優化SVM模型中兩個參數(這里選取機器學習領域較為流行的高斯核函數[34]作為SVM的核函數),即懲罰因子C和核函數參數σ,此方法簡記為CTBWOA-SVM.CTBWOA-SVM的目標函數是SVM的分類準確率,CTBWOA找到的最佳位置就是SVM的最佳參數.

CTBWOA-SVM算法具體實現步驟如下:

步驟一初始化最大迭代次數tmax、種群規模N、決策變量的下界LB和上界UB(對應SVM的懲罰因子C和核函數參數σ),將數據集中的數據進行歸一化處理.

步驟二采用佳點集初始化黑蜘蛛的位置信息.

步驟三將黑蜘蛛的位置信息作為SVM的參數,把分類準確率作為目標函數進行尋優,得到適應度值.

步驟四通過自適應運動策略獲取參數a的值,確定黑蜘蛛的運動方式,即進行線性運動或是螺旋運動.

步驟五計算黑蜘蛛的信息素值,并根據三蛛競爭及回溯機制替換低信息素的黑蜘蛛.

步驟六判斷黑蜘蛛是否需要進行卡方躍遷,如果是則更新黑蜘蛛的位置信息以及個體最優和全局最優.

步驟七將新產生的位置信息作為SVM的參數值輸入到SVM中,進行十折交叉驗證計算適應度值,并更新最高適應度值及最優參數組合.

步驟八判斷是否達到最大迭代次數,如果是則輸出最優參數組合及分類準確率,否則轉到步驟四,進行下一次迭代尋優.

3.2.2 仿真實驗數據

為了驗證CTBWOA-SVM的有效性,本文選取基于原始BWOA優化的支持向量機(BWOA-SVM)、基于GWO優化的支持向量機[35](GWO-SVM)、基于PSO優化的支持向量機[36](PSO-SVM)、基于WOA優化的支持向量機[37](WOA-SVM)、基于網格搜索優化的支持向量機[38](Gird Search-SVM)作為對比,并選取了來自UCI(University of California at Irvin)數據庫中的7組數據集進行仿真實驗.分別從最高分類準確率、平均分類準確率和分類準確率標準差(分類準確率為各算法對應的SVM模型在測試集上的結果)這三個方面對所提方法進行分析.數據集的相關信息如表5所示,這些數據集被廣泛應用于比較不同分類模型的性能.

表5 數據集詳細信息

在仿真實驗過程中,首先設置種群大小為20,最大迭代次數為50;其次對數據進行歸一化處理,使數據屬性具有相同的度量尺度,以消除奇異樣本數據對模型的不良影響;最后使用十折交叉驗證法,把數據集隨機分為十份,依次將其中的一份作為測試集,剩余的九份作為訓練集,以獲取測試結果.為了排除測試結果的偶然性,這里使每種算法在每個數據集上獨立運行20次.

3.2.3 結果分析

表6是CTBWOA-SVM與BWOA-SVM、GWO-SVM、PSO-SVM、WOA-SVM和Gird Search-SVM六種方法在不同的數據集上的最高分類準確率(Highest Classification Accuracy,HCA)、平均分類準確率(Average Classification Accuracy,ACA)及分類準確率標準差(Classification Accuracy Standard Deviation,CASD).通過觀察可以看出,本文所提算法在7個數據集上的最高分類準確率及平均分類準確率均高于其他六種算法.在處理Forest type、Ionosphere、Statlog (Heart)這三個高維數據集時,CTBWOA-SVM相較于其他四種群智能算法優化的SVM,取得了最小的標準差,即CTBWAO-SVM在處理高維數據時,具有較高的穩定性,但在處理Haberman、Liver Disorder這兩個低維數據時,以及和傳統SVM相比,取得的標準差相對較大,即穩定性較差,這將作為以后的研究重點.

表6 5種算法對7個數據集的分類結果比較

圖9為5種群智能算法優化的SVM在7個不同數據集上的適應度值收斂曲線,清晰地表現出了每個模型在不同數據集上的搜索收斂過程.由圖9可知,不管是低維數據還是高維數據,本文所提算法在收斂速度、收斂精度上都優于其他算法.

圖9 5種算法在7個數據集下的適應度值收斂曲線圖

綜上表明基于卡方躍遷策略的黑蜘蛛優化算法優化的支持向量機具有更高的分類準確率,在優化SVM的參數選取方面,具有一定的可行性和有效性,從而為SVM的參數優化提供了一種可行的方法.

4 CTBWOA-SVM在乳腺癌診斷中的應用

癌癥是一組可影響身體任何部位的多種疾病的通稱,據世界衛生組織報道,癌癥是全世界的一個主要死因.據國際癌癥研究機構發布的2020年全球癌癥發病率和死亡率估計顯示,2020年新增癌癥病例1 930萬例,癌癥死亡1 000萬例[39].2020年全球女性新發癌癥923萬例,占總數的48%,其中乳腺癌新發226萬例,死亡68.5萬例,乳腺癌新增病例不僅遠超女性其它癌癥類型,而且首次正事取代肺癌(220萬例)成為全球第一大癌癥,占所有新增癌癥患者的11.7%.盡管情況危急,但幸運的是,研究表明,早期發現可以大大降低乳腺癌的死亡率(40%或更多)[40],因此,癌癥的早期診斷對于患者得到及時、正確的治療至關重要.

為進一步驗證CTBWOA的有效性和可行性,使用William博士提供的威斯康星州乳腺癌數據集[41]進行仿真實驗.數據集中包含699個樣本,其中有241個惡性樣本和458個良性樣本.每個樣本又都含有9個特征,分別是Clump thickness(腫塊厚度)、Uniformity of cell size(細胞大小均勻度)、Uniformity of cell shape(細胞形狀均勻度)、Marginal adhesion(邊緣粘滯性)、Single epithelial cell size(單層上皮細胞大小)、Bare nuclei(原子核裸露程度)、Bland chromatin(染色質顏色)、Normal nucleoli(核仁正常情況)、Mitoses(有絲分裂情況).為得到更好的預測效果,本文在保留數據真實性的基礎上,剔除了16個存在缺失值的數據樣本,最終得到實驗樣本為683個.

通過計算其分類準確率(Accuracy)、分類精度(Precision)、召回率(Recall)、總準確率(G-mean)、F度量(F-measure)、馬修斯相關系數(MCC)和AUC來評估CTBWOA-SVM的性能.并與BWOA-SVM、基于遺傳算法優化的SVM(GA-SVM)[42]、基于網格搜索優化的SVM(GS-SVM)[38]、基于粒子群算法優化的SVM(PSO-SVM)[43]、基于主成分分析的SVM(PCA-SVM)[44]、最原始的SVM(SVM)進行對比.其中原始SVM和PCA-SVM算法的參數設定為固定值,C為100,σ為4,其余算法均對SVM的參數進行了優化,得到的最優參數如表7所示.隨機選取90%的數據作為訓練集,剩下的10%作為測試集,同時為了排除實驗結果的偶然性,進行10次獨立重復試驗取平均值,具體結果如表8所示.

表7 最優C、σ參數值

表8 算法性能度量結果

由表8可知,在所有的優化算法中,基于卡方躍遷策略的黑蜘蛛優化算法優化的支持向量機(CTBWOA-SVM)與其他算法的相比,在分類準確率、分類精度、MCC、AUC等各個評價指標上均取得了最優值,其中分類準確率與原始SVM相比提高了2.5%,可以看出該方法能夠為乳腺癌輔助診斷的決策提供有效支持,從而提高醫療機構的診斷準確率.

5 結論

針對原始黑蜘蛛優化算法存在的性能不足,本文提出了一種基于卡方躍遷策略的黑蜘蛛優化算法(CTBWOA).首先在初始化階段,采用佳點集初始化種群策略代替隨機種群初始化策略,使種群均勻遍歷在解空間中,提高了算法的全局搜索能力;其次提出卡方躍遷策略,幫助黑蜘蛛及時跳出局部最優位置,避免黑蜘蛛早熟收斂;為了平衡算法的勘探與開發,提出自選取運動策略,優化黑蜘蛛運動方式的選取,提高算法的收斂速度;最后提出三蛛競爭及回溯學習機制,提升替換黑蜘蛛的質量以提高算法尋優能力.通過對CTBWOA在12個標準測試函數上進行測試,結果表明CTBWOA與BWOA、ABC、PSO、DA、GWO、WOA相比,具有更快的收斂速度、更高的收斂精度以及更高的穩定性.并將CTBWOA應用到了SVM的參數優化中,仿真實驗表明,與其它算法優化的SVM及原始SVM相比,CTBWOA-SVM具有更高的分類準確率,從而為支持向量機的懲罰參數及核函數參數選取提供了一種可行的方法,這進一步體現了CTBWOA的有效性.對于未來的研究,我們將探索更優秀的優化方法來優化BWOA,同時將算法應用到實際工程問題中,使其具有更好地應用價值.

猜你喜歡
卡方蜘蛛種群
卡方檢驗的應用條件
山西省發現刺五加種群分布
卡方變異的SSA的FSC賽車轉向梯形優化方法
卡方檢驗的應用條件
中華蜂種群急劇萎縮的生態人類學探討
小蜘蛛凍僵了,它在哪兒呢?
蜘蛛
大蜘蛛
基于改進卡方統計量的藏文文本表示方法
崗更湖鯉魚的種群特征
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合