金海彬, 呂志賢, 侯木舟, 曹 聰
(中南大學(xué) 數(shù)學(xué)與統(tǒng)計(jì)學(xué)院, 湖南 長(zhǎng)沙 410083)
據(jù)國(guó)家衛(wèi)生健康委員會(huì)統(tǒng)計(jì)[1], 消化系統(tǒng)疾病患病率在我國(guó)兩周患病率和慢性病患病率統(tǒng)計(jì)中分別排第五位和第四位, 且消化系統(tǒng)疾病住院率位居第三, 嚴(yán)重危害著人們的身體健康。 消化系統(tǒng)疾病通常癥狀突出而體征不明顯, 隨著醫(yī)療技術(shù)的發(fā)展, 擁有許多優(yōu)點(diǎn)的內(nèi)窺鏡, 在消化系統(tǒng)病的醫(yī)療診斷中的使用日益增加[2]。 內(nèi)窺鏡的平均拍攝速率大約為2 幀/s, 在歷時(shí)6 h~8 h的檢測(cè)過程中, 獲取的圖像數(shù)量高達(dá)數(shù)萬張, 通過醫(yī)生逐張?jiān)\斷的方式將耗費(fèi)大量的時(shí)間, 容易造成醫(yī)生視覺疲勞和錯(cuò)失有用信息, 而僅依靠人工診斷也無法應(yīng)對(duì)逐年增長(zhǎng)的患者數(shù)量[3]。 因此, 通過計(jì)算機(jī)輔助, 使用有效的內(nèi)鏡圖像分類算法, 能夠?yàn)獒t(yī)護(hù)人員節(jié)省寶貴的時(shí)間, 對(duì)消化系統(tǒng)疾病患者更是具有重大意義。
遺傳算法借鑒生物界中適者生存、 優(yōu)勝劣汰等進(jìn)化規(guī)律, 模擬一個(gè)人工種群在若干代后達(dá)到最優(yōu)解[4-5], 是一種隨機(jī)化搜索優(yōu)化方法, 在求解較為復(fù)雜的組合優(yōu)化問題時(shí), 通常會(huì)比傳統(tǒng)的優(yōu)化算法更快獲取到較好的結(jié)果。 遺傳算法在1975年由Holland提出, 其可以直接操作結(jié)構(gòu)對(duì)象, 而不需要考慮連續(xù)函數(shù)的限定條件, 也不受求導(dǎo)的限制。 同時(shí), 遺傳算法有著從原理上對(duì)并行運(yùn)算的友好性, 因此帶來了更好的全局尋優(yōu)能力。 另一方面, 遺傳算法也是一種概率化尋優(yōu)方法, 但其搜索空間與搜索方向總是能夠自動(dòng)適應(yīng), 而不需要人為添加過多的規(guī)則和干預(yù)。 大自然中的生物遺傳主要由自然選擇、 基因重組、 基因突變構(gòu)成, 由此設(shè)計(jì)的遺傳算法也是由選擇、 交叉、 變異等過程構(gòu)成。 遺傳算法擁有的優(yōu)良性質(zhì), 使其被應(yīng)用于神經(jīng)網(wǎng)絡(luò)超參數(shù)尋優(yōu)、 機(jī)器人AI算法設(shè)計(jì)等領(lǐng)域, 是現(xiàn)代智能計(jì)算中的重要技術(shù)之一。 目前, 遺傳算法與特征融合技術(shù)主要應(yīng)用在語音分割[6]、 情感識(shí)別[7]、 紅外和可見光圖像融合[8]、 高效自動(dòng)圖像注釋[9]等領(lǐng)域, 這為基于遺傳算法的改進(jìn)多特征融合方法的設(shè)計(jì)提供了一種新思路。
支持向量機(jī)是一種廣泛應(yīng)用于機(jī)器學(xué)習(xí)領(lǐng)域的統(tǒng)計(jì)學(xué)習(xí)方法。 2010年, Surangsrirat等[10]提出了將內(nèi)鏡圖像非線性失真校正后的原始像素的強(qiáng)度值作為支持向量機(jī)的輸入特征。 2012年, 李凱旋等[11]提出了基于模糊紋理譜的膠囊內(nèi)窺鏡圖像識(shí)別方法, 引入圖像各分量上的模糊紋理譜, 分別提取特征向量, 并利用BP人工神經(jīng)網(wǎng)絡(luò)訓(xùn)練與識(shí)別, 對(duì)不同分量圖像采用投票原則確定了最終識(shí)別結(jié)果。 2013年, 王曉云[12]通過引入群智能算法來優(yōu)化核參數(shù), 改善了支持向量機(jī)在構(gòu)造核函數(shù)和選擇核參數(shù)時(shí), 大多依靠經(jīng)驗(yàn)選取或者大范圍網(wǎng)絡(luò)搜索耗時(shí)等問題。 2016年, Xue等[13]提出了一種專用于食管癌圖像分類的網(wǎng)絡(luò)NBI-Net, 并使用支持向量機(jī)代替softmax分類。 同年, 鄧江洪等[14]采用混沌粒子群算法確定特征權(quán)值, 提出了一種多特征篩選和支持向量機(jī)的圖像分類模型, 實(shí)驗(yàn)表明, 該方法可以降低圖像分類開銷, 提升圖像分類性能。 2017年, 孟金龍等[15]提出了一種使用圖像的梯度直方圖(HOG)特征的支持向量機(jī)分類方法, 該方法能夠有效地進(jìn)行圖像分類。 同年, Li等[16]采用了對(duì)病變圖像進(jìn)行數(shù)據(jù)增強(qiáng), 遷移Inception-v3 網(wǎng)絡(luò)并在網(wǎng)絡(luò)最后添加全連接層的方法進(jìn)行圖像分類, 但分類的準(zhǔn)確度有待提高。 2018年, 徐婷婷等[17]提出了基于顏色和紋理特征的膠囊內(nèi)鏡圖像分類方法, 結(jié)合顏色矩和小波變換計(jì)算共生矩陣特征值, 進(jìn)一步提升了準(zhǔn)確率。 2021年, 梁立媛等[18]將經(jīng)過遷移學(xué)習(xí)的卷積神經(jīng)網(wǎng)絡(luò)提取的圖像特征作為支持向量機(jī)的輸入特征。 同年, 曹燕珍等[19]提出了一種CNN-OVA-SVM模型, 該模型使用Resnet-50卷積神經(jīng)網(wǎng)絡(luò)提取圖像特征, 將支持向量機(jī)作為子分類器, 使用一對(duì)多集成分類器進(jìn)行圖像分類, 對(duì)于不同分化類型的結(jié)直腸腺癌的鑒別具有一定的臨床價(jià)值。
目前, 大多數(shù)基于支持向量機(jī)的內(nèi)鏡圖像分類算法都采用傳統(tǒng)的特征融合方法, 這種方法的缺點(diǎn)是特征數(shù)量大、 冗余度大,且受主觀因素的影響較大。 采用卷積神經(jīng)網(wǎng)絡(luò)對(duì)內(nèi)鏡圖像進(jìn)行分類, 比傳統(tǒng)分類方法擁有更強(qiáng)的自動(dòng)學(xué)習(xí)特征的能力, 但設(shè)計(jì)一個(gè)有良好分類效果的卷積神經(jīng)網(wǎng)絡(luò)需要大量的數(shù)據(jù)來優(yōu)化網(wǎng)絡(luò)中的參數(shù)。 針對(duì)內(nèi)鏡圖像數(shù)據(jù)量少的問題, 本文采用基于遺傳算法的改進(jìn)多特征融合方法, 首先對(duì)數(shù)據(jù)進(jìn)行預(yù)處理以及數(shù)據(jù)增強(qiáng), 從原始特征向量中選擇多種分類性能優(yōu)良的組合, 再將這些組合作為支持向量機(jī)的輸入, 得到多個(gè)分類模型, 最終將多種分類模型的分類結(jié)果通過投票集成, 構(gòu)建最終的內(nèi)鏡圖像分類模型。
特征融合是指利用現(xiàn)有的多個(gè)特征集生成新的融合特征, 通常可以獲取不同特征集之間最具差異的信息。 由于融合特征信息量總是不少于原始的任何單一特征集, 故使用融合特征進(jìn)行分類的效果通常也優(yōu)于使用原始的任何單一特征集。 因此, 本文提出一種基于遺傳算法的改進(jìn)多特征融合方法, 使用支持向量機(jī)作為分類器的內(nèi)窺鏡圖像分類算法。 構(gòu)建原始的初代個(gè)體作為主種群, 計(jì)算初代個(gè)體的適應(yīng)度, 從中自然選擇出父本個(gè)體, 通過基因重組生成子代個(gè)體, 對(duì)每個(gè)子代個(gè)體產(chǎn)生基因突變, 同時(shí)加入最優(yōu)秀的父本個(gè)體共同構(gòu)建下一代。 每一代主種群自然選擇時(shí), 若種群數(shù)量較少, 選擇一部分次優(yōu)個(gè)體構(gòu)建新種群, 與主種群并行迭代, 否則這部分次優(yōu)個(gè)體隨機(jī)均勻分配到各個(gè)旁支種群中。 最終各個(gè)種群均獲取到分類性能較好的個(gè)體, 這些個(gè)體共同構(gòu)建一個(gè)投票模型。 基于遺傳算法的改進(jìn)多特征融合算法流程圖見圖1。
圖1 基于遺傳算法的改進(jìn)多特征融合算法流程圖
對(duì)于大量的圖像特征, 需要找到一種特征組合, 使得在低維度特征空間下也能有較好的分類性能。 由于特征組合之間很難找到一種有效的定量分析方法, 因此使用啟發(fā)式搜索的遺傳算法就很有必要。
1.1.1 遺傳因子與自然選擇
如果將經(jīng)過過濾的特征全體作為基因組, 對(duì)每一個(gè)特征使用特征在特征集中的位置下標(biāo)來唯一表示, 那么對(duì)于每一個(gè)個(gè)體, 規(guī)定其遺傳物質(zhì)為一個(gè)下標(biāo)集合, 該集合中的每一個(gè)值都對(duì)應(yīng)著基因組中的一個(gè)特征, 所對(duì)應(yīng)的特征集合為基因組的子集。 序列集合的長(zhǎng)度即個(gè)體的遺傳因子長(zhǎng)度, 為了之后的遺傳過程能夠順利進(jìn)行, 要求每個(gè)個(gè)體的遺傳因子長(zhǎng)度相等。 對(duì)于某一代的全體個(gè)體, 基于適應(yīng)度函數(shù)從中選擇評(píng)價(jià)較高的部分個(gè)體作為下一代的父本個(gè)體, 并淘汰其他個(gè)體。 鑒于適應(yīng)度函數(shù)對(duì)遺傳物質(zhì)的微小變化過于敏感, 同時(shí)為獲取整個(gè)遺傳過程中最優(yōu)秀的個(gè)體, 并將優(yōu)秀個(gè)體的基因保留下來表達(dá)其在遺傳過程中的重要程度, 在每次自然選擇結(jié)束后, 選擇父本個(gè)體中部分較優(yōu)秀的個(gè)體, 加入到下一代中, 使得每一代的最好個(gè)體的評(píng)價(jià)指標(biāo)總是不小于前一代。
1.1.2 兩種基因重組策略
為分析不同特征組合對(duì)最終分類性能的影響, 考慮兩種不同情況: 1) 單個(gè)含有較多信息的特征能對(duì)分類性能產(chǎn)生較大影響; 2) 特定的特征組合能對(duì)分類性能產(chǎn)生較大影響。 針對(duì)以上兩種情況, 需要設(shè)置不同的基因重組策略來進(jìn)行具體分析。
第一種情況, 首先需要找到對(duì)提高分類性能有作用的有效特征, 并假設(shè)遺傳物質(zhì)中含有較多有效特征的個(gè)體, 其適應(yīng)度也相應(yīng)較高。 此時(shí), 采用基因池策略, 即將全體父本個(gè)體包含的所有特征合并作為基因池, 通過在基因池中隨機(jī)選擇子集生成下一代個(gè)體。 該方法保證每個(gè)子代個(gè)體都有均等的機(jī)會(huì)從每個(gè)父本個(gè)體中獲得遺傳物質(zhì), 但當(dāng)子代數(shù)量較多時(shí), 容易繁殖出含有更多有效特征的子代個(gè)體。 考慮到父本個(gè)體之間可能含有相同的特征, 這些特征在合并后可能同時(shí)遺傳給下一代, 導(dǎo)致下一代的遺傳物質(zhì)中包含了兩個(gè)或多個(gè)相同的特征, 因此在特征合并后, 可以先對(duì)基因池進(jìn)行去重操作, 以避免這種情況的發(fā)生。 基因池策略示意圖如圖2 所示。
圖2 基因池策略示意圖
第二種情況, 需要找到對(duì)提高分類性能有作用的特征組合, 同樣對(duì)于適應(yīng)度較高的個(gè)體, 其遺傳物質(zhì)的特征組合較好, 此時(shí)如果同樣使用基因池重組策略, 將完全打亂父本個(gè)體的特征組合, 無法有效保留父本較好的特征組合, 因此需要采用另外的重組策略。 從自然界的染色體交叉互換得到靈感, 采用交叉互換策略, 即對(duì)于任意兩個(gè)父本個(gè)體, 通過交換少量特征生成子代個(gè)體, 這種基因重組策略能夠在子代個(gè)體基本保留父本個(gè)體特征組合的情況下, 產(chǎn)生多樣化的子代個(gè)體。 交叉互換策略示意圖如圖3 所示。
圖3 交叉互換策略示意圖
1.1.3 基因突變與動(dòng)態(tài)變異度
基因突變?cè)谶z傳算法中起到引入和維持多樣性的作用。 如果僅以自然選擇和基因重組獲取子代個(gè)體, 則最終子代個(gè)體的特征組合是初代個(gè)體特征并集的子集, 導(dǎo)致得到的最終結(jié)果只是局部最優(yōu)解, 無法反映整個(gè)特征空間的作用。 因此, 對(duì)于每次基因重組后產(chǎn)生的每個(gè)子代個(gè)體, 均要用部分基因組中的特征替換遺傳因子中的部分特征, 以保證最終結(jié)果是在整個(gè)基因組下的滿意最優(yōu)解。 其中, 突變基因占總遺傳物質(zhì)長(zhǎng)度的比例被稱為變異度。 基因突變示意圖如圖4 所示。
圖4 基因突變示意圖
如果種群中個(gè)體的遺傳物質(zhì)都基本相似, 那么基因重組對(duì)提高個(gè)體多樣性的幫助將非常有限。 為了增強(qiáng)遺傳算法的搜索能力, 通過增大變異度來增加基因突變的搜索范圍, 為此引入動(dòng)態(tài)變異度的概念。 為了描述種群的遺傳物質(zhì)多樣性, 定義如下:
(1)
(2)
式中:α為種群遺傳物質(zhì)多樣性系數(shù),α=0表示種群中的所有個(gè)體的遺傳物質(zhì)均相同; φ為種群變異度; φ0為最大變異度; L為單個(gè)個(gè)體的遺傳物質(zhì)長(zhǎng)度; N為全體種群不同的特征總數(shù)。
1.1.4 種群分裂與種群融合
在傳統(tǒng)遺傳算法中, 對(duì)于適應(yīng)度不高的個(gè)體, 通常的處理方式是丟棄, 或是降低它繁殖的概率。 但在這類個(gè)體中, 可能也存在部分優(yōu)秀基因, 若能提取出這部分優(yōu)秀基因, 也能避免遺傳算法陷入收斂局部最優(yōu)解的情況。 主要的迭代種群稱為主種群, 對(duì)于迭代過程中適應(yīng)度低一級(jí)的部分個(gè)體, 單獨(dú)剝離出來加入旁支種群, 在旁支種群中作類似于主種群的迭代。 旁支種群的平均適應(yīng)度通常低于主種群, 而為了增加旁支種群的搜索效率, 需設(shè)置更大的變異系數(shù)。 同時(shí), 由于旁支種群總在吸收主種群淘汰的次等個(gè)體, 這可能導(dǎo)致旁支種群中充斥著主種群基因。 因此, 可以增加旁支種群的數(shù)量, 將主種群每次的淘汰個(gè)體均勻分給各個(gè)旁支種群, 而某個(gè)旁支種群不會(huì)吸收太多來自主種群的基因, 保證了自己的基因獨(dú)立性。
如果兩個(gè)種群基因重合度較高, 即種群中個(gè)體的特征組合高度相似, 可以預(yù)見兩個(gè)種群內(nèi)個(gè)體的平均適應(yīng)度也將相近。 對(duì)于這樣的兩個(gè)種群, 仍將它們分開計(jì)算是沒有必要的, 而且分開計(jì)算還會(huì)增加計(jì)算機(jī)的性能開銷。 因此, 可以將兩個(gè)種群依照某種策略合并到一起計(jì)算。 一種策略是將兩個(gè)種群直接合并構(gòu)建出一個(gè)大種群, 這種策略能夠完全保留原種群的遺傳物質(zhì)信息, 但計(jì)算機(jī)性能開銷仍然較大; 另一種策略是選擇兩個(gè)種群中的優(yōu)良個(gè)體合并為新種群, 并淘汰掉其他個(gè)體, 這種策略的計(jì)算機(jī)性能開銷較小, 但也減少了基因信息。 因此, 在計(jì)算過程中需要綜合考慮計(jì)算性能等方面的因素來選擇不同的種群融合策略。
1.1.5 種群消亡與多種類投票制度
與自然界的生物進(jìn)化狀況相同, 一個(gè)物種的進(jìn)化并不能保證總是適應(yīng)環(huán)境, 最終也會(huì)因?yàn)闊o法適應(yīng)環(huán)境而消亡。 同樣, 旁支種群的進(jìn)化過程并不總是有效的, 很可能在多次遺傳迭代后, 種群的平均適應(yīng)度仍然較低, 而且也沒有產(chǎn)生適應(yīng)度較好的個(gè)體, 此時(shí), 認(rèn)為這個(gè)種群的基因是較差的, 因此, 需要淘汰該種群以減少計(jì)算機(jī)性能開銷, 視為種群消亡。
對(duì)于任意一個(gè)個(gè)體, 由于其遺傳物質(zhì)僅是基因組的極小一部分, 盡管他可能有較好的分類性能, 但無法改變其對(duì)整個(gè)圖像特征集合利用率不高的事實(shí), 這個(gè)問題會(huì)導(dǎo)致由此獲取的分類模型泛化性能較低。 考慮到旁支種群在獨(dú)立進(jìn)化過程中, 可能會(huì)獨(dú)立進(jìn)化出有較高適應(yīng)度的個(gè)體, 同時(shí)這些個(gè)體與主種群的基因重合度極低, 而在整個(gè)算法過程中, 可能最終得到多個(gè)這樣的旁支種群及其中的多個(gè)優(yōu)秀個(gè)體, 這些個(gè)體中的每一個(gè)都代表著一個(gè)支持向量機(jī)分類模型。 如果將這些分類模型通過投票的方式組合成一個(gè)集成模型, 一方面能夠提升模型的分類準(zhǔn)確率, 另一方面也將緩解單個(gè)分類模型對(duì)特征利用率不高的問題, 還能提升模型的分類泛化性能。
1.2.1 基因編碼與適應(yīng)度函數(shù)的選擇
適應(yīng)度函數(shù)表示種群個(gè)體對(duì)環(huán)境的適應(yīng)能力, 也稱為評(píng)價(jià)函數(shù)。 對(duì)于某一代的全體個(gè)體, 基于適應(yīng)度函數(shù)從中選擇評(píng)價(jià)較高的部分個(gè)體作為下一代的父本個(gè)體, 并淘汰掉其他個(gè)體。 本文的自然選擇方法使用精英主義選擇, 通過將種群中較優(yōu)的個(gè)體保留到下一代中來保證某些優(yōu)秀的個(gè)體不被變異破壞[20-21]。 在內(nèi)鏡圖像分類任務(wù)中, 由于很難找到一個(gè)簡(jiǎn)單的數(shù)學(xué)方法去判別某一類特征組合的性能, 因此最直接的評(píng)價(jià)方式就是將這個(gè)特征組合輸入到支持向量機(jī)進(jìn)行分類, 并以分類結(jié)果作為評(píng)價(jià)指標(biāo)。 該方法的缺點(diǎn)是計(jì)算開銷較大。
1.2.2 初始種群的構(gòu)建
實(shí)驗(yàn)采用隨機(jī)生成的方式從基因組中獲取30個(gè)個(gè)體作為初始種群, 30個(gè)個(gè)體的基因總數(shù)約為基因組的3倍。 為了最大化基因組的利用率, 采用對(duì)每個(gè)基因隨機(jī)選擇3個(gè)個(gè)體的方式, 以保證基因分配有較高均勻度。
1.2.3 實(shí)驗(yàn)流程
對(duì)于獲取的原始內(nèi)鏡圖像, 由于數(shù)據(jù)量較少, 首先要進(jìn)行數(shù)據(jù)增強(qiáng)與數(shù)據(jù)預(yù)處理去噪, 再根據(jù)醫(yī)生標(biāo)注的內(nèi)鏡圖像按照8∶2的比例分成訓(xùn)練集與測(cè)試集, 最后采用基于遺傳算法改進(jìn)的多特征融合算法迭代, 得到最終的正常與病變的二分類結(jié)果。 實(shí)驗(yàn)設(shè)計(jì)流程圖如圖5 所示。
圖5 實(shí)驗(yàn)設(shè)計(jì)流程圖
本文使用了中南大學(xué)湘雅醫(yī)院消化內(nèi)科采集的實(shí)驗(yàn)數(shù)據(jù)集。 排除包含玻璃、 設(shè)備和低分辨率的圖像, 該數(shù)據(jù)集包含152張內(nèi)鏡圖像, 其中, 正常圖像30張, 異常圖像122張。 所有受試者均已簽署知情同意書, 符合湘雅醫(yī)院醫(yī)學(xué)倫理委員會(huì)的倫理標(biāo)準(zhǔn), 所有程序均根據(jù)批準(zhǔn)的指導(dǎo)方針和法規(guī)執(zhí)行。
部分原始內(nèi)鏡圖像中包含一些冗余的文本數(shù)據(jù)或圖像縮略圖, 這些無關(guān)數(shù)據(jù)可能會(huì)作為噪音影響最終的模型分類性能, 因此需要先去除掉。 本文通過人工切割的方式進(jìn)行無關(guān)數(shù)據(jù)去除。 圖6 為冗余數(shù)據(jù)剪裁前后的對(duì)比。
圖6 內(nèi)鏡圖像冗余部分裁剪前后對(duì)比圖
由于原始數(shù)據(jù)較少, 容易產(chǎn)生過擬合, 導(dǎo)致模型的泛化性能較差, 直觀表現(xiàn)在模型對(duì)訓(xùn)練集的分類效果較好, 但對(duì)測(cè)試集的分類效果不理想。 為了緩解這個(gè)問題, 需要對(duì)數(shù)據(jù)進(jìn)行擴(kuò)增, 即通過鏡面對(duì)稱后對(duì)每張圖像分別旋轉(zhuǎn)90°, 180°, 270°,使圖像數(shù)量擴(kuò)充至原始數(shù)量的 8 倍。 同時(shí), 為了解決類別不平衡的問題, 對(duì)已有的正常類別的圖像進(jìn)行上述操作, 而對(duì)于病變圖像僅進(jìn)行鏡面對(duì)稱操作, 使圖像數(shù)量擴(kuò)充至原始數(shù)量的 2 倍, 這樣使得兩類圖像均達(dá)到 240 張左右, 得以均衡。
內(nèi)鏡圖像含有一定的噪聲, 而支持向量機(jī)是一種對(duì)噪聲敏感的機(jī)器學(xué)習(xí)算法模型, 因此在獲取圖像特征之前, 首先使用高斯濾波去除噪聲。 高斯濾波函數(shù)是一種線性濾波函數(shù), 能夠有效地去除圖像中的高斯噪聲。 另外, 由于人眼對(duì)藍(lán)色的敏感性大于紅色, 導(dǎo)致RGB(Red, Green, Blue)顏色空間是一種均勻性較差的顏色空間, 如果顏色的相似性直接用歐氏距離來度量, 其結(jié)果與人眼視覺會(huì)有較大的偏差。 對(duì)于某一種顏色, 很難推測(cè)出較為精確的3個(gè)分量數(shù)值來表示。 因此, RGB顏色空間并不適用于圖像處理, 需要在HSV(Hue, Saturation, Value)顏色空間下重構(gòu)圖像。
圖像從RGB顏色空間轉(zhuǎn)換到HSV空間的算法如式(3)所示。
V=max(R,G,B),
(3)
VGG16模型對(duì)輸入圖像的尺寸要求為224×224, 而本文所使用的數(shù)據(jù)圖像尺寸大小不一, 因此需要調(diào)整尺寸到224×224。 使用按比例放縮的方式, 將原圖像長(zhǎng)邊縮小至224像素, 短邊按相同比例縮小并補(bǔ)0值至224像素。
通過顏色矩、 灰度共生矩陣、 VGG16[22]、 Resnet-152[23]分別提取內(nèi)鏡圖像的顏色、 紋理和深層特征, 構(gòu)成圖像的原始特征集。 將高斯濾波后的圖像從RGB顏色空間轉(zhuǎn)換到HSV顏色空間, 提取均值、 方差、 斜度每個(gè)分量上的3個(gè)低階矩, 構(gòu)造9維顏色特征向量。 提取灰度共生矩陣前需先將原3通道圖像轉(zhuǎn)換為灰度圖像, 根據(jù)人眼對(duì)顏色的感知, 顏色轉(zhuǎn)換的公式為
Gray=0.299R+0.587G+0.114B。
(4)
使用經(jīng)過壓縮的灰度圖像可以獲得更好的效果, 因此將灰度級(jí)設(shè)置為16級(jí)。 同時(shí), 為了獲取圖像中的精細(xì)紋理, 使用步長(zhǎng)為1, 大小為7×7的滑動(dòng)窗口, 取0°, 45°, 90°, 135° 四個(gè)方向獲取特征值。 原始正常內(nèi)鏡圖像及其經(jīng)過灰度處理的圖像見圖7, 原始的病變內(nèi)鏡圖像及其經(jīng)過灰度處理的圖像見圖8。
圖7 原始的正常內(nèi)鏡圖像和經(jīng)過灰度處理的正常圖像
圖8 原始的病變內(nèi)鏡圖像及經(jīng)過灰度處理的病變圖像
通過提取圖像的灰度共生矩陣, 計(jì)算出二次統(tǒng)計(jì)量對(duì)比度、 熵、 能量和均勻性, 構(gòu)造出圖像的32維紋理特征向量。 使用預(yù)訓(xùn)練的VGG16和Resnet-152卷積神經(jīng)網(wǎng)絡(luò)模型, 通過選擇其特征提取層部分構(gòu)建的特征提取模型, 輸入尺寸為224×224的內(nèi)鏡圖像, 輸出大小為7×7×512的特征矩陣, 由此分別構(gòu)建25 088維特征向量和2 048 維特征向量。
本實(shí)驗(yàn)在python環(huán)境下實(shí)現(xiàn), 實(shí)驗(yàn)設(shè)備為華碩TUF GAMING FX504GE_FX80GE, 硬件為Intel(R) Core(TM) i7-8750H處理器, 16 G內(nèi)存。 將尺寸大小不一的原始圖片調(diào)整為224×224, 不同尺寸的圖片只是分辨率有所不同, 在內(nèi)容上無特殊差別。 縮小尺寸可以讓各個(gè)特征提取模塊更好地處理圖像, 減少運(yùn)算量, 加快運(yùn)算速度。 為了避免偶然性, 在研究中隨機(jī)選取80%的圖像作為訓(xùn)練集, 20%的圖像作為測(cè)試集測(cè)試模型的分類準(zhǔn)確性及可靠性。 類似于交叉驗(yàn)證, 對(duì)于每個(gè)種群, 將訓(xùn)練集的20%作為驗(yàn)證集。 訓(xùn)練與測(cè)試數(shù)據(jù)之間互不交叉。
訓(xùn)練支持向量機(jī)模型時(shí), 采用網(wǎng)格搜索的方式獲取最佳參數(shù)設(shè)置, 設(shè)置懲罰因子C的候選參數(shù)為1, 5, 10, 15, 20, gamma值的候選參數(shù)為0.01, 0.001, 0.000 1, 核函數(shù)kernel的候選參數(shù)為高斯核、 線性核和多項(xiàng)式核。 遺傳算法中使用的各項(xiàng)參數(shù)為: 最大遺傳代際數(shù)量為100, 個(gè)體遺傳物質(zhì)長(zhǎng)度為2 048, 每代個(gè)體數(shù)量為30, 最大變異度為0.05, 自然選擇父本數(shù)量為6, 父本直接遺傳至下一代的數(shù)量為1, 最大種群數(shù)量為7。
為了對(duì)比不同實(shí)驗(yàn)方法和參數(shù)對(duì)最終分類結(jié)果的影響, 本文進(jìn)行了3組實(shí)驗(yàn)。
實(shí)驗(yàn)1: 為了驗(yàn)證遺傳算法中兩種基因重組策略對(duì)遺傳算法的收斂速度及最終分類性能的影響, 基于兩種基因重組策略進(jìn)行迭代, 并對(duì)比迭代結(jié)果。
實(shí)驗(yàn)2: 為了驗(yàn)證基于遺傳算法的特征選擇的有效性, 將遺傳算法迭代結(jié)果與將簡(jiǎn)單特征融合作為支持向量機(jī)輸入訓(xùn)練的模型對(duì)比。
實(shí)驗(yàn)3: 為了對(duì)比在該實(shí)驗(yàn)數(shù)據(jù)下, 對(duì)支持向量機(jī)分類模型應(yīng)用不同的核函數(shù)對(duì)分類性能的影響, 使用不同核函數(shù)分別訓(xùn)練模型并進(jìn)行對(duì)比。
對(duì)于本研究的分類問題, 根據(jù)樣本真實(shí)標(biāo)簽與分類器預(yù)測(cè)標(biāo)簽的組合分為真正例, 真反例, 假正例, 假反例四種, 研究中TP,TN,F(xiàn)P,F(xiàn)N分別代表對(duì)應(yīng)的樣例數(shù), 其中取標(biāo)簽正常為正例, 標(biāo)簽異常為反例。 另外, 本研究中采用典型的性能評(píng)價(jià)指標(biāo): 準(zhǔn)確率Acc(Accuracy)、 精準(zhǔn)度Pre(Precision)、 召回率Rec(Recall)、F1得分(F1-Score)、 特異度Spe(Specificity)。
(5)
(6)
(7)
(8)
(9)
3.3.1 基因重組策略對(duì)比
為了驗(yàn)證兩種基因重組策略對(duì)遺傳算法迭代過程與最終獲取的分類器性能的影響, 基于兩種基因重組策略進(jìn)行實(shí)驗(yàn)對(duì)比分析。 預(yù)測(cè)的準(zhǔn)確率對(duì)比見圖9。
(a) 每代父本個(gè)體
在基因池策略下, 種群父本個(gè)體在驗(yàn)證集上的平均預(yù)測(cè)準(zhǔn)確率在前10代中從80%左右上升到92%左右, 之后的變化情況呈振蕩式; 種群最優(yōu)個(gè)體在驗(yàn)證集上的預(yù)測(cè)準(zhǔn)確率緩慢上升, 最終達(dá)到99.03%。 在交叉互換策略下, 種群父本在驗(yàn)證集上的平均預(yù)測(cè)準(zhǔn)確率逐步上升, 最終收斂到100%, 說明所有父本個(gè)體在驗(yàn)證集上都有100%的預(yù)測(cè)準(zhǔn)確率; 種群最優(yōu)個(gè)體在驗(yàn)證集上的預(yù)測(cè)準(zhǔn)確率在14代左右也收斂到100%, 說明該策略下的遺傳算法有搜索到全局最優(yōu)情況的能力。
對(duì)比兩個(gè)基因重組策略下的結(jié)果, 相比于基因池策略, 交叉互換策略有更高的收斂速度和局部尋優(yōu)能力, 說明交叉互換策略更加適用于本實(shí)驗(yàn)數(shù)據(jù)。 后續(xù)實(shí)驗(yàn)都將基于交叉互換策略。
3.3.2 多種特征選擇方法對(duì)比
針對(duì)不同的特征選擇對(duì)支持向量機(jī)模型分類性能的影響進(jìn)行對(duì)比實(shí)驗(yàn)分析。 5種方法分別是基于顏色矩和灰度共生矩陣的顏色和紋理特征、 基于VGG16[22]卷積神經(jīng)網(wǎng)絡(luò)提取的特征、 基于Resnet-152[23]殘差網(wǎng)絡(luò)提取的特征、 基于上述3種方法的全體特征以及在全體特征基礎(chǔ)上經(jīng)過改進(jìn)的多特征融合方法獲取的特征。
表1 展示了5種方法的實(shí)驗(yàn)結(jié)果。 其中, 基于改進(jìn)的多特征融合方法獲取的分類模型, 分類準(zhǔn)確率達(dá)到93.39%, 精準(zhǔn)度達(dá)到94.55%, 召回率達(dá)到92.86%,F(xiàn)1得分達(dá)到93.69, 特異度達(dá)到94.00%。 相比任何單一特征提取方法, 改進(jìn)的多特征融合方法的分類性能均有較大的提升, 對(duì)于使用3種特征提取方法獲取的綜合特征, 除準(zhǔn)確率和特異度外也有一定提升。
表1 不同特征融合方法對(duì)內(nèi)鏡圖像分類的結(jié)果比較
改進(jìn)的多特征融合方法分類的混淆矩陣如圖10 所示, 從實(shí)驗(yàn)結(jié)果看, 使用改進(jìn)的多特征融合方法, 對(duì)于提升分類性能有一定幫助。
圖10 改進(jìn)的多特征融合方法分類的混淆矩陣
將本文方法同其他的圖像分類方法進(jìn)行對(duì)比, 結(jié)果如表2 所示。
表2 本文方法與其它方法的分類結(jié)果對(duì)比
鄧江洪等[14]是根據(jù)特征的平均影響值對(duì)提取的顏色矩和灰度共生矩陣特征進(jìn)行篩選, 再用SVM進(jìn)行分類。 Li等[16]采用只對(duì)病變圖像進(jìn)行數(shù)據(jù)增強(qiáng), 遷移Inception-v3網(wǎng)絡(luò)并在網(wǎng)絡(luò)最后添加全連接層的方法來分類圖像。 由表2 可知, 本文改進(jìn)的多特征融合方法在敏感性、 準(zhǔn)確率方面均高于其他2種方法, 由于數(shù)據(jù)的樣本少以及數(shù)據(jù)不平衡, 特異性略微低于Li等[16]的方法, 實(shí)驗(yàn)結(jié)果驗(yàn)證了本文方法的有效性。
3.3.3 不同核函數(shù)對(duì)分類性能的影響
實(shí)驗(yàn)使用3種不同的核函數(shù)(線性核(linear)、 高斯核(rbf)、 多項(xiàng)式核(poly))分別訓(xùn)練支持向量機(jī)分類模型。 表3 展示了在改進(jìn)多特征融合方法下不同核函數(shù)對(duì)分類性能的影響。 實(shí)驗(yàn)結(jié)果表明, 基于高斯核的支持向量機(jī)有更好的分類性能, 使用線性核則分類性能相對(duì)較低。 為了繼續(xù)探究核函數(shù)對(duì)分類性能的影響, 對(duì)經(jīng)典的特征融合方法進(jìn)行同樣的研究, 結(jié)果見表4。
表3 改進(jìn)多特征融合方法下不同核函數(shù)的支持向量機(jī)模型分類性能對(duì)比
由表4 可知, 在經(jīng)典特征融合方法下, 使用的核函數(shù)為線性核時(shí)分類性能最佳, 而使用的核函數(shù)為高斯核時(shí)分類性能一般。 實(shí)驗(yàn)結(jié)果表明, 在經(jīng)典特征融合方法下, 圖像的高特征向量維數(shù)與實(shí)驗(yàn)圖像樣本數(shù)量存在巨大的差異時(shí), 采用線性核核函數(shù)時(shí)分割能力較為優(yōu)異, 而在特征向量維度較低的情況下, 采用高斯核核函數(shù)時(shí)分割能力較為優(yōu)異。
表4 經(jīng)典特征融合方法下不同核函數(shù)的支持向量機(jī)模型分類性能對(duì)比
綜上所述, 本研究提出的基于改進(jìn)遺傳算法的多特征融合方法, 在支持向量機(jī)模型下對(duì)內(nèi)鏡圖像的分類性能優(yōu)于傳統(tǒng)的特征融合方法。
本文在傳統(tǒng)特征融合方法的基礎(chǔ)上, 提出了基于改進(jìn)遺傳算法的多特征融合方法, 使用支持向量機(jī)作為分類器的內(nèi)窺鏡圖像分類算法。 該遺傳算法通過在迭代過程中保留最優(yōu)個(gè)體, 采用基因交叉互換和種群分裂、 融合、 消亡以及種群投票制度獲取優(yōu)質(zhì)個(gè)體。 實(shí)驗(yàn)結(jié)果表明, 該算法在本文所使用的數(shù)據(jù)集上結(jié)合支持向量機(jī)能夠較為有效地進(jìn)行二分類, 分類準(zhǔn)確率達(dá)到93.39%, 其余指標(biāo)都較為優(yōu)異。 相比于經(jīng)典的特征融合方法, 分類性能有一定提升, 為內(nèi)鏡圖像輔助診療及相關(guān)算法研究提供了一種新思路。
在去除內(nèi)鏡圖像中的各種無效部分時(shí), 由于尚未找到一個(gè)較好的自動(dòng)化方法, 文中采用的方法都是人工去除, 這種方法在數(shù)據(jù)集較小時(shí)適用, 但面對(duì)較大數(shù)據(jù)集時(shí)將無能為力。 另外, 由于消化道內(nèi)各種組織液對(duì)光線的反射會(huì)在內(nèi)鏡圖像中形成高光等雜質(zhì), 本文未對(duì)這些特殊噪聲進(jìn)行消除, 一定程度上來說降低了最終模型的分類性能。