郭文強(qiáng),毛玲玲,黃梓軒,肖秦琨,郭志高
(1.陜西科技大學(xué) 電子信息與人工智能學(xué)院,陜西 西安 710021;2.西安工業(yè)大學(xué) 電子信息工程學(xué)院,陜西 西安 710021;3.倫敦瑪麗女王大學(xué) 電子工程與計(jì)算機(jī)科學(xué)學(xué)院,倫敦 E1 4NS)
貝葉斯網(wǎng)絡(luò)(Bayesian network,BN)是概率圖模型的重要研究方向,主要用于表征和解決不確定性問(wèn)題[1],并在故障溯源、醫(yī)療診斷和金融學(xué)習(xí)等領(lǐng)域得到了廣泛的應(yīng)用[2]。BN研究主要由結(jié)構(gòu)學(xué)習(xí)、參數(shù)學(xué)習(xí)和推理3部分組成[3],其中,結(jié)構(gòu)學(xué)習(xí)是BN構(gòu)建與應(yīng)用的基礎(chǔ)與核心[4]。文獻(xiàn)[5]提出了最大最小爬山(max-min hill-climbing,MMHC)算法,通過(guò)條件獨(dú)立性構(gòu)建初始結(jié)構(gòu),并結(jié)合爬山法學(xué)習(xí)貝葉斯網(wǎng)絡(luò)結(jié)構(gòu),但算法存在學(xué)習(xí)耗時(shí)過(guò)長(zhǎng),且容易陷入局部最優(yōu)的問(wèn)題。進(jìn)化算法(evolutionary algorithms,EA)使用啟發(fā)式搜索策略能夠在一定程度上避免算法陷入局部最優(yōu),主要通過(guò)種群中個(gè)體的選擇、重組和變異等基本操作實(shí)現(xiàn)優(yōu)化問(wèn)題的求解。文獻(xiàn)[6]基于最大信息系數(shù)和微生物遺傳算法提出了一種新的貝葉斯網(wǎng)絡(luò)結(jié)構(gòu)學(xué)習(xí),但耗時(shí)長(zhǎng),初始種群數(shù)目等先驗(yàn)參數(shù)的確定缺乏客觀(guān)依據(jù),存在一定的進(jìn)化搜索盲目性等問(wèn)題。
為解決上述問(wèn)題,本文基于最大支撐樹(shù)(most weight supported tree,MWST)[7]和EA,提出了一種新的貝葉斯網(wǎng)絡(luò)結(jié)構(gòu)學(xué)習(xí)算法MWST-EA。該算法將結(jié)構(gòu)學(xué)習(xí)轉(zhuǎn)化為進(jìn)化問(wèn)題后,先建立最大支撐樹(shù)來(lái)得到種群中節(jié)點(diǎn)的父節(jié)點(diǎn)數(shù)目上限,采用本文設(shè)計(jì)的種群數(shù)目計(jì)算函數(shù)可以計(jì)算出種群數(shù)目;同時(shí),采用條件獨(dú)立性測(cè)試獲得初始結(jié)構(gòu)來(lái)限制搜索空間。其次,采用設(shè)計(jì)的變異函數(shù)來(lái)控制基因突變,可以提高算法的局部搜索能力,防止陷入局部最優(yōu)。最終,通過(guò)種群的迭代操作學(xué)習(xí)出BN結(jié)構(gòu)。
糖尿病是一種不可治愈的慢性疾病,據(jù)國(guó)際糖尿病聯(lián)盟統(tǒng)計(jì),截至2020年,全球糖尿病患病率約為9.3%[8]。目前糖尿病的發(fā)病機(jī)制尚未完全明確,多數(shù)學(xué)者認(rèn)為在糖尿病病程發(fā)展的過(guò)程中,有多種因素對(duì)其產(chǎn)生作用,具有極大的不確定性。僅僅依靠醫(yī)生個(gè)人經(jīng)驗(yàn)的診斷方式,容易出現(xiàn)病情診斷不及時(shí)的情況。將糖尿病與機(jī)器學(xué)習(xí)相結(jié)合來(lái)輔助醫(yī)生診斷,將在很大程度上提高診斷的智能性和實(shí)時(shí)性。文獻(xiàn)[9]運(yùn)用正余弦優(yōu)化算法和神經(jīng)網(wǎng)絡(luò)相結(jié)合,為糖尿病的自動(dòng)化診斷提供了一種智能方法。文獻(xiàn)[10]提出了一種遺傳算法模型用于糖尿病風(fēng)險(xiǎn)預(yù)測(cè),輔助醫(yī)生進(jìn)行早期干預(yù)。文獻(xiàn)[11]使用樸素貝葉斯(naive Bayes,NB)和支持向量機(jī)(support vector machine, SVM)等分類(lèi)技術(shù)對(duì)糖尿病進(jìn)行了預(yù)測(cè)。
本文將MWST-EA應(yīng)用于加利福尼亞大學(xué)歐文學(xué)院分校David Aha博士搭建的UCI數(shù)據(jù)庫(kù)中的糖尿病數(shù)據(jù)集[12]上,建立貝葉斯網(wǎng)絡(luò)結(jié)構(gòu)分類(lèi)模型,取得了較好的結(jié)果。
在貝葉斯網(wǎng)絡(luò)結(jié)構(gòu)中,事件節(jié)點(diǎn)容易確定,但節(jié)點(diǎn)間的關(guān)系錯(cuò)綜復(fù)雜難以確定,并且從數(shù)據(jù)中學(xué)習(xí)貝葉斯網(wǎng)絡(luò)結(jié)構(gòu)是一個(gè)難題。因此,本文提出了一種改進(jìn)型進(jìn)化算法MWST-EA,來(lái)確定貝葉斯網(wǎng)絡(luò)節(jié)點(diǎn)和節(jié)點(diǎn)間的依賴(lài)關(guān)系。
進(jìn)化算法的種群難以確定,且會(huì)影響算法的執(zhí)行效率和穩(wěn)定性。本文結(jié)合BN結(jié)構(gòu)特點(diǎn)設(shè)計(jì)了一種確定進(jìn)化算法種群數(shù)目下限的函數(shù),如式(1)所示:
(1)
其中:A為所需的種群數(shù)量;λ為變量概率分布的偏度,本文取1;d為BN模型中節(jié)點(diǎn)最大父節(jié)點(diǎn)個(gè)數(shù);ζ為節(jié)點(diǎn)的最大狀態(tài)數(shù);σ為BN模型的Kullback-Leibler(KL)距離,常取0.1;ζ為置信度,常取0.05。
設(shè)計(jì)的MWST-EA算法從完全無(wú)向圖開(kāi)始,為縮小BN結(jié)構(gòu)的搜索空間,將條件獨(dú)立性測(cè)試應(yīng)用于所有的節(jié)點(diǎn)之間。當(dāng)兩個(gè)節(jié)點(diǎn)之間相互獨(dú)立,移除節(jié)點(diǎn)之間的邊,并據(jù)此得到初始結(jié)構(gòu)BN0。采用式(1)中的A作為初始種群大小。然后,對(duì)初始結(jié)構(gòu)中邊連接的兩個(gè)節(jié)點(diǎn),隨機(jī)選擇邊狀態(tài),以生成初始種群,并采用GR算法[13]對(duì)初始種群個(gè)體中產(chǎn)生的環(huán)即非法結(jié)構(gòu)進(jìn)行修正,從而得到結(jié)構(gòu)BN1。
個(gè)體在交叉、變異的過(guò)程中,一個(gè)節(jié)點(diǎn)可能會(huì)存在多個(gè)父節(jié)點(diǎn),顯然,初始父節(jié)點(diǎn)的個(gè)數(shù)影響著算法的收斂速度。本文利用互信息構(gòu)建MWST確定可能的個(gè)體父節(jié)點(diǎn)上限(individual parent node upper limit, IPI)數(shù)目,實(shí)現(xiàn)對(duì)種群中節(jié)點(diǎn)的父節(jié)點(diǎn)數(shù)量的限制,從而提高學(xué)習(xí)算法的效率?;バ畔14]表示兩個(gè)變量間的相互依賴(lài)關(guān)系,以任意兩個(gè)變量X、Y為例,互信息I(X,Y)為:
(2)
其中:p(X,Y)為變量X和Y的聯(lián)合概率;p(X)為變量X的概率;p(Y)為變量Y的概率。
MWST算法首先根據(jù)節(jié)點(diǎn)數(shù)據(jù)計(jì)算所有節(jié)點(diǎn)之間的互信息,通過(guò)把所有節(jié)點(diǎn)間的互信息從大到小進(jìn)行排列,不斷選取互信息最大的邊加入最大生成樹(shù),并且遍歷所有的節(jié)點(diǎn),來(lái)完成MWST的建立。本文依據(jù)MWST中最大節(jié)點(diǎn)度,選擇具有最大節(jié)點(diǎn)度的節(jié)點(diǎn)作為算法中的個(gè)體父節(jié)點(diǎn)上限數(shù)目。圖1為個(gè)體父節(jié)點(diǎn)上限確定。以圖1a所示的經(jīng)典貝葉斯網(wǎng)絡(luò)中的ASIA網(wǎng)絡(luò)模型為例,根據(jù)MWST算法得出最大支撐樹(shù)(見(jiàn)圖1b),可看出節(jié)點(diǎn)6具有最大節(jié)點(diǎn)度(見(jiàn)圖1c),因此該網(wǎng)絡(luò)的IPI由節(jié)點(diǎn)6決定,其值為3。
(a) ASIA網(wǎng)絡(luò)模型 (b) 圖1a的MWST (c) 最大節(jié)點(diǎn)度圖1 個(gè)體父節(jié)點(diǎn)上限確定
1.2.1 評(píng)分函數(shù)及個(gè)體的選擇、交叉
本文采用BDeu評(píng)分函數(shù)對(duì)個(gè)體評(píng)分,以評(píng)分最高的個(gè)體作為精英個(gè)體x*。設(shè)X={X1,X2,…,Xn}是一組變量集合,D={D1,D2,…,Dn}是關(guān)于變量的樣本集合,G是關(guān)于變量集的BN結(jié)構(gòu)。假設(shè)數(shù)據(jù)集滿(mǎn)足獨(dú)立同分布條件假設(shè),則BDeu評(píng)分如式(3)所示[15]:
(3)
為提高種群的局部尋優(yōu)能力,挑選評(píng)分高的一半個(gè)體進(jìn)行交叉操作。均勻交叉算子的性能較為優(yōu)越[16],利用均勻交叉算子組合生成新的個(gè)體,在搜索空間進(jìn)行有效搜索,同時(shí)降低對(duì)種群有效模式的破壞概率。
1.2.2 精英集構(gòu)建及候選父節(jié)點(diǎn)數(shù)目限制
建立精英集e,以精英集中的每個(gè)個(gè)體作為種群的領(lǐng)導(dǎo)者,可以保證算法的尋優(yōu)能力。
(4)
其中:精英資格閾值β∈[0.5,1];f(xk)為每個(gè)個(gè)體的評(píng)分;fbest為精英個(gè)體的評(píng)分。為了保持精英集的多樣性,以增加進(jìn)化算法的搜索能力,β在每次種群更新時(shí)的變化依據(jù)DiG-SiRG算法[17]。
MWST-EA將個(gè)體具有可變狀態(tài)的邊定義為位點(diǎn),位點(diǎn)中每組有值的組成部分被定義為等位基因。構(gòu)建邊頻次權(quán)重EFW=(wi,j),wi,j對(duì)應(yīng)于等位基因i∈{b,←,→},即“無(wú)邊”、“反向邊”、“正向邊”出現(xiàn)的概率,j∈{1,2,…,L}(L為個(gè)體長(zhǎng)度)。wi,j是精英集合中位置j處等位基因i出現(xiàn)的概率。
其中:當(dāng)個(gè)體xk在位點(diǎn)j的等位基因等于i時(shí),δ函數(shù)δ(xk,j=1)等于1。
有效地限制候選父節(jié)點(diǎn)數(shù)目,能加快BN結(jié)構(gòu)尋優(yōu)速度。采用父節(jié)點(diǎn)重復(fù)權(quán)重來(lái)選擇要?jiǎng)h除的邊以限制父節(jié)點(diǎn)數(shù)量。父節(jié)點(diǎn)重復(fù)權(quán)重是為每個(gè)節(jié)點(diǎn)定義的鍵值向量,其中鍵值由其父集中節(jié)點(diǎn)的索引給出,代表整個(gè)精英集中邊(父節(jié)點(diǎn)→節(jié)點(diǎn))出現(xiàn)的概率,由個(gè)體的評(píng)分決定。為每個(gè)節(jié)點(diǎn)Xt填充與邊相關(guān)的概率(父(Xt)→Xt),通過(guò)隨機(jī)排序?yàn)槊總€(gè)節(jié)點(diǎn)Xt構(gòu)建父節(jié)點(diǎn)重復(fù)權(quán)重,刪除出現(xiàn)概率最小的邊。ASIA網(wǎng)絡(luò)父節(jié)點(diǎn)限制如圖2所示。
圖2 ASIA網(wǎng)絡(luò)父節(jié)點(diǎn)限制
以圖1a的ASIA網(wǎng)絡(luò)模型為例,個(gè)體父節(jié)點(diǎn)上限設(shè)置為3,精英集由圖2中的3個(gè)精英集個(gè)體組成,對(duì)其他非精英個(gè)體的6節(jié)點(diǎn)進(jìn)行父節(jié)點(diǎn)數(shù)目限制。要?jiǎng)h除的邊是在精英集中頻率出現(xiàn)最低的邊。個(gè)體1要?jiǎng)h除節(jié)點(diǎn)2至節(jié)點(diǎn)6的有向邊;個(gè)體2要?jiǎng)h除節(jié)點(diǎn)1至節(jié)點(diǎn)6的有向邊和節(jié)點(diǎn)5到節(jié)點(diǎn)6的有向邊;個(gè)體3滿(mǎn)足父節(jié)點(diǎn)數(shù)量為3的要求,所以不需要?jiǎng)h除節(jié)點(diǎn)。通過(guò)上述操作來(lái)保證每個(gè)個(gè)體中節(jié)點(diǎn)6參與進(jìn)化、尋優(yōu)的父節(jié)點(diǎn)初始數(shù)目不超過(guò)3。
1.2.3 個(gè)體變異率函數(shù)
為避免算法陷入局部最優(yōu),本文提出了一種新的變異函數(shù)來(lái)更新種群。通過(guò)上述EFW和精英集為種群中的每個(gè)個(gè)體xk的每個(gè)點(diǎn)j∈{1,2,…,L}計(jì)算個(gè)體變異率υi,j,如式(6)所示:
(6)
其中:wi,j為EFW的第(i,j)個(gè)元素;f(xk)為當(dāng)前個(gè)體的評(píng)分;fbest為精英個(gè)體的評(píng)分;ε為一個(gè)極小正數(shù),避免零概率。每個(gè)突變率都是基于邊在精英群體中的分布以及個(gè)體的評(píng)分函數(shù)來(lái)衡量的。
本文提出的MWST-EA結(jié)構(gòu)學(xué)習(xí)算法步驟如下:
步驟1 設(shè)置算法最大迭代次數(shù)Iter,利用互信息建立最大支撐樹(shù)MWST,由最大節(jié)點(diǎn)度得到個(gè)體父節(jié)點(diǎn)上限數(shù)目IPI;采用式(1)計(jì)算種群數(shù)目。
步驟2 采用條件獨(dú)立性測(cè)試獲得初始結(jié)構(gòu),生成初始種群P0,利用GR算法[13]修正種群中個(gè)體產(chǎn)生的非法結(jié)構(gòu)。
步驟3 依據(jù)式(3)對(duì)每個(gè)個(gè)體進(jìn)行評(píng)分,挑選評(píng)分高的一半個(gè)體作為新種群P1進(jìn)行均勻交叉操作,得到種群P2。
步驟4 對(duì)種群P2評(píng)分得到精英個(gè)體,將個(gè)體評(píng)分與P2代入式(4)構(gòu)建精英集e。
步驟5 依據(jù)個(gè)體評(píng)分函數(shù)和將精英集e代入式(5)構(gòu)建邊頻次權(quán)重。
步驟6 構(gòu)建父節(jié)點(diǎn)重復(fù)權(quán)重對(duì)種群P2中個(gè)體的父節(jié)點(diǎn)個(gè)數(shù)進(jìn)行限制,得到種群P3。
步驟7 利用式(6)計(jì)算個(gè)體的突變率,對(duì)種群P3進(jìn)行變異操作增加種群的多樣性,得到新種群P。
步驟8 若當(dāng)本次迭代達(dá)到迭代次數(shù)Iter, 則輸出精英個(gè)體對(duì)應(yīng)的BN結(jié)構(gòu)模型;否則轉(zhuǎn)至步驟3, 進(jìn)行迭代計(jì)算。
實(shí)驗(yàn)采用的編程環(huán)境為Windows10系統(tǒng),處理器為Intel 酷睿i7 4712MQ(2.3 GHz),8 G內(nèi)存,開(kāi)發(fā)語(yǔ)言為MATLAB R2016b。為驗(yàn)證MWST-EA的BN結(jié)構(gòu)學(xué)習(xí)性能,基于經(jīng)典BN模型-Alarm網(wǎng)[2]進(jìn)行仿真實(shí)驗(yàn),Alarm網(wǎng)包含37個(gè)節(jié)點(diǎn)和46條邊。為體現(xiàn)本文算法的優(yōu)越性,在相同實(shí)驗(yàn)條件下,與MMHC算法、傳統(tǒng)EA進(jìn)行實(shí)驗(yàn)對(duì)比及結(jié)果分析。
實(shí)驗(yàn)中以Alarm網(wǎng)絡(luò)作為基礎(chǔ),隨機(jī)生成數(shù)據(jù)容量分別為500、1 000、3 000和5 000的訓(xùn)練數(shù)據(jù)樣本集,利用MWST-EA進(jìn)行10次仿真實(shí)驗(yàn),結(jié)果取平均值以減少隨機(jī)性影響。實(shí)驗(yàn)中設(shè)置種群迭代次數(shù)Iter為100,模型置信度ζ取0.05,精英資格閾值α為0.9。由式(1)計(jì)算得到種群數(shù)目為101。
表1為不同數(shù)據(jù)量下各算法學(xué)習(xí)Alarm網(wǎng)的BDeu平均評(píng)分對(duì)比,表2不同數(shù)量下為各算法學(xué)習(xí)Alarm網(wǎng)的平均運(yùn)行時(shí)間。
由表1可知:MWST-EA在不同數(shù)據(jù)量的情況下,得到的BDeu評(píng)分優(yōu)于MMHC和傳統(tǒng)EA等算法。
表1 不同數(shù)據(jù)量下各算法學(xué)習(xí)Alarm網(wǎng)的BDeu平均評(píng)分
原因是MMHC算法搜索能力有限,而傳統(tǒng)EA啟發(fā)函數(shù)容易陷入局部最優(yōu)。本文提出了改進(jìn)的變異函數(shù)來(lái)更新種群,可以有效防止進(jìn)化過(guò)程陷入局部最優(yōu),從而學(xué)出更好的BN模型。
由表2可知:MWST-EA運(yùn)行時(shí)間明顯小于MMHC算法耗時(shí),同時(shí)也優(yōu)于傳統(tǒng)EA。原因是MWST-EA采用了有效的種群數(shù)目和節(jié)點(diǎn)的個(gè)體父節(jié)點(diǎn)數(shù)目限定策略,縮小了算法的搜索空間,因此算法的執(zhí)行效率較高。
表2 不同數(shù)據(jù)量下各算法學(xué)習(xí)Alarm網(wǎng)的平均運(yùn)行時(shí)間 s
將本文算法學(xué)習(xí)得到的網(wǎng)絡(luò)結(jié)構(gòu)與Alarm網(wǎng)原模型進(jìn)行對(duì)比,計(jì)算得到網(wǎng)絡(luò)與標(biāo)準(zhǔn)網(wǎng)中相同邊的數(shù)量(samesides,SS)、增加邊的數(shù)量(added sides,AS)和丟失邊的數(shù)量(missing sides,MS)。Alarm學(xué)習(xí)得到的相同邊、增加邊和丟失邊數(shù)量統(tǒng)計(jì)如圖3所示。
圖3 Alarm網(wǎng)絡(luò)仿真對(duì)比
通過(guò)圖3對(duì)比可知:在A(yíng)larm網(wǎng)絡(luò)中,MWST-EA的相同邊個(gè)數(shù),在不同數(shù)據(jù)量下,均大于MMHC算法和傳統(tǒng)EA;MWST-EA的丟失邊、增加邊個(gè)數(shù)也小于其他算法。這是由于算法生成了較好的初始種群,用改進(jìn)的變異函數(shù)來(lái)更新種群,提高了算法尋優(yōu)的能力。
綜上所述,MWST-EA結(jié)構(gòu)學(xué)習(xí)算法速度快于MMHC算法和傳統(tǒng)EA,且結(jié)構(gòu)尋優(yōu)能力更強(qiáng)。
本節(jié)實(shí)驗(yàn)條件與上節(jié)實(shí)驗(yàn)的設(shè)置相同,所采用的UCI數(shù)據(jù)庫(kù)中糖尿病數(shù)據(jù)集[12]包含520個(gè)實(shí)例信息,每個(gè)實(shí)例中包含17條屬性,對(duì)數(shù)據(jù)庫(kù)中的屬性做屬性標(biāo)簽,其中,節(jié)點(diǎn)1設(shè)置年齡段19~35歲為狀態(tài)1,36~59歲為狀態(tài)2,60歲及以上為狀態(tài)3;節(jié)點(diǎn)2設(shè)置性別Male為狀態(tài)1,Female為狀態(tài)2;節(jié)點(diǎn)3~16中,Yes為狀態(tài)1,No為狀態(tài)2;節(jié)點(diǎn)17設(shè)置Positive為狀態(tài)1,Negetive為狀態(tài)2。數(shù)據(jù)集描述如表3所示。
表3 數(shù)據(jù)集描述
為了驗(yàn)證本文提出的基于MWST-EA結(jié)構(gòu)學(xué)習(xí)算法的糖尿病診斷方法的有效性,采用十折交叉驗(yàn)證法,將糖尿病數(shù)據(jù)庫(kù)中的468組數(shù)據(jù)用來(lái)訓(xùn)練,52組數(shù)據(jù)用來(lái)測(cè)試。對(duì)10次實(shí)驗(yàn)結(jié)果取平均值進(jìn)行性能評(píng)價(jià)。
采用MWST-EA,首先依據(jù)樣本中各節(jié)點(diǎn)的數(shù)據(jù)來(lái)計(jì)算互信息。圖4為糖尿病數(shù)據(jù)模型構(gòu)建。將互信息從大到小排序,遍歷所有的節(jié)點(diǎn)來(lái)確定糖尿病數(shù)據(jù)構(gòu)成的最大支撐樹(shù)模型,以此確定種群中每個(gè)個(gè)體的各節(jié)點(diǎn)的父節(jié)點(diǎn)數(shù)量上限數(shù)目,如圖4a所示;接下來(lái),對(duì)所有節(jié)點(diǎn)之間進(jìn)行獨(dú)立性測(cè)試,據(jù)此得到初始結(jié)構(gòu)用來(lái)構(gòu)建種群,其初始結(jié)構(gòu)如圖4b所示;依據(jù)3.1節(jié)參數(shù)設(shè)置,由式(1)計(jì)算得到種群數(shù)量為108,初始化種群之后,采用MWST-EA對(duì)種群進(jìn)行多次迭代得到最優(yōu)的貝葉斯網(wǎng)絡(luò)結(jié)構(gòu)圖,如圖4c所示。
(a) 最大支撐樹(shù)模型 (b) 初始結(jié)構(gòu) (c) 糖尿病分類(lèi)模型的BN結(jié)構(gòu)
由文獻(xiàn)[12,18]可知,糖尿病與性別、多尿、多飲、體質(zhì)量突然減輕、煩躁、肌肉僵硬、脫發(fā)等有關(guān)。由圖4可直觀(guān)地看到:糖尿病與節(jié)點(diǎn)2、3、4、5、11、14、15有直接依賴(lài)關(guān)系。由此可見(jiàn),MWST-EA學(xué)到的模型與專(zhuān)家經(jīng)驗(yàn)相吻合,具有較強(qiáng)可解釋性。
貝葉斯網(wǎng)絡(luò)結(jié)構(gòu)學(xué)習(xí)完成后,用最大期望(expectation maximization,EM)算法[19]對(duì)糖尿病分類(lèi)模型進(jìn)行參數(shù)學(xué)習(xí)。設(shè)置EM算法實(shí)驗(yàn)迭代次數(shù)為5 000次,以得到BN模型的參數(shù)。在BN結(jié)構(gòu)和參數(shù)確定之后,利用BN對(duì)是否有糖尿病進(jìn)行診斷。本文采用聯(lián)合樹(shù)精確推理算法[20]來(lái)進(jìn)行BN推理。將推理結(jié)果與MMHC、傳統(tǒng)EA、NB[11]和SVM[11]等算法進(jìn)行對(duì)比,實(shí)驗(yàn)結(jié)果如表4所示。
由表4可以看出:SVM算法是目前4種算法中識(shí)別率最高的,但MWST-EA與SVM算法相比平均識(shí)別率提升了1.54%;與MMHC算法相比,MWST-EA性能提升了11.15%。本文的MWST-EA算法構(gòu)建出的BN模型結(jié)構(gòu)進(jìn)行糖尿病診斷識(shí)別率有明顯提高。
表4 不同建模方法的實(shí)驗(yàn)結(jié)果對(duì)比
為進(jìn)一步驗(yàn)證本文算法的性能,實(shí)驗(yàn)對(duì)不同方法在十折交叉驗(yàn)證情況下的時(shí)間進(jìn)行對(duì)比,結(jié)果如圖5所示。從圖5中可以看出:本文算法的推理耗時(shí)與傳統(tǒng)EA和MMHC算法基本相同,相比NB算法和SVM算法的耗時(shí)則明顯降低。這表明MWST-EA算法構(gòu)建出的BN模型在推理速度方面性能優(yōu)良。
圖5 不同建模算法推理耗時(shí)對(duì)比
針對(duì)傳統(tǒng)進(jìn)化算法學(xué)習(xí)貝葉斯網(wǎng)絡(luò)結(jié)構(gòu)存在收斂速度慢、局部搜索能力差以及種群數(shù)目確定缺乏依據(jù)的問(wèn)題,本文提出了一種改進(jìn)進(jìn)化算法的BN結(jié)構(gòu)學(xué)習(xí)算法MWST-EA。該算法利用條件獨(dú)立性構(gòu)建初始結(jié)構(gòu)和設(shè)計(jì)的個(gè)體父節(jié)點(diǎn)上限數(shù)目函數(shù)共同作用,減少了搜索的盲目性,縮減了BN結(jié)構(gòu)的搜索空間,提升了算法的尋優(yōu)效率和收斂速度。采用改進(jìn)的變異函數(shù)可避免算法陷入局部最優(yōu)。對(duì)比實(shí)驗(yàn)結(jié)果表明了本文算法在BN結(jié)構(gòu)學(xué)習(xí)性能的優(yōu)越性,為智能系統(tǒng)的建模提供了一條新途徑。未來(lái)工作將考慮把進(jìn)化算法與其他算法相結(jié)合,學(xué)習(xí)得到更優(yōu)的貝葉斯網(wǎng)絡(luò)結(jié)構(gòu)。