馬尚洋,王勁松,王金玉,杜凱,尹韶云
(1.長春理工大學(xué) 光電工程學(xué)院,長春 130022;2.中國科學(xué)院重慶綠色智能技術(shù)研究院 集成光電技術(shù)研究中心,重慶 400714)
20世紀(jì)初的數(shù)字X光乳房檢查系統(tǒng),開啟了近代計算機(jī)輔助醫(yī)療系統(tǒng)[1,3]的大門。受益于計算機(jī)技術(shù)的飛速發(fā)展,基于細(xì)胞形態(tài)學(xué)特征的計算機(jī)輔助醫(yī)療圖像分析技術(shù)成為了可能。就目前而言,細(xì)胞形態(tài)學(xué)識別技術(shù)[2]的基本方法仍然是利用染色試劑對活檢組織細(xì)胞進(jìn)行著色,然后采用光學(xué)顯微鏡對其進(jìn)行成像,最后交由有經(jīng)驗(yàn)的病理學(xué)醫(yī)師對活檢組織進(jìn)行判斷,得到相應(yīng)的診斷結(jié)果。該技術(shù)具有較多困難:(1)對切片進(jìn)行分析十分枯燥乏味;(2)是否患癌的判斷是由醫(yī)師給出,難免會對判斷引入人為認(rèn)識誤差,而且也會存在人員間的認(rèn)知誤差,主觀性強(qiáng);(3)培養(yǎng)一名合格的病理醫(yī)師,需要投入大量的人力與物力資源。故發(fā)展計算機(jī)輔助判讀對改善細(xì)胞形態(tài)學(xué)識別具有重要意義。
現(xiàn)有的基于形態(tài)學(xué)[3]的計算機(jī)輔助醫(yī)療系統(tǒng)主要是利用8-鏈碼技術(shù)獲得相關(guān)細(xì)胞的周長、面積、致密度、矩形度等特征進(jìn)行相關(guān)的判讀,這種方法很是依賴前期的圖像分割技術(shù),分割技術(shù)的好壞直接影響后期的判斷結(jié)果,并且算法的實(shí)現(xiàn)也是相當(dāng)復(fù)雜。2001年,南京大學(xué)陸新泉等人[4]利用癌細(xì)胞的形態(tài)、顏色特征采用神經(jīng)網(wǎng)絡(luò)進(jìn)行了肺癌細(xì)胞的分割與識別,并達(dá)到了90%的識別率。2012年,S.Issac Niwas團(tuán)隊[5]通過對染色組織進(jìn)行分割,利用HSV顏色特征和Log-Gabor小波變換特征并將這些特征輸入到SVM中進(jìn)行分類識別,取得了93.2%的識別率。2017年,Sertan Kaymak等人[6]采用Harr變換重構(gòu)乳腺癌細(xì)胞圖像,然后分別采用BP神經(jīng)網(wǎng)絡(luò)和徑向基神經(jīng)網(wǎng)絡(luò)對重構(gòu)圖像進(jìn)行識別,準(zhǔn)確率分別為59.0%和70.4%。目前,基于深度學(xué)習(xí)的癌細(xì)胞識別方法[7-8],無需獲取細(xì)胞的顯式特征,就能夠獲得很高的識別率。但是,深度學(xué)習(xí)高識別率的前提是龐大的數(shù)據(jù)量(幾萬甚至幾十萬),通常醫(yī)學(xué)圖像很難滿足這樣大的數(shù)據(jù)要求。
本文采用LBP(Local Binary Patterns)描述圖像紋理得到其特征向量,避免了繁瑣的特征提取過程;然后采用MDS、PCA、LLE等算法分別對特征向量進(jìn)行降維[9]減少計算量;最后采用BP神經(jīng)網(wǎng)絡(luò)算法,對不同降維算法得到的結(jié)果進(jìn)行分類識別,實(shí)驗(yàn)結(jié)果表明數(shù)據(jù)規(guī)模為5×252,方法為LBP-LLE-BP時,準(zhǔn)確率可達(dá)89.61%。
LBP(Local Binary Patterns)特征即局部二值模式特征[10-11],獲取的是圖像的局部紋理特征,具有旋轉(zhuǎn)不變性和灰度不變性等一系列顯著的特征,最早是由 T.Ojala,M.Pietikaiunen和 D.Harwood在1994年提出,由于LBP特征提取方法簡單、描述效果良好,因此在機(jī)器視覺的諸多領(lǐng)域得到了廣泛地應(yīng)用,其中最為著名的應(yīng)用是人臉識別[12]和目標(biāo)檢測。原始的LBP算子定義在像素3×3的鄰域以內(nèi),以鄰域中心像素為閾值,相鄰的8個像素的灰度值與鄰域中心的像素值進(jìn)行比較,若周圍的像素大于中心像素值,則該像素點(diǎn)的位置被標(biāo)記為1,否則為0。這樣,3×3鄰域內(nèi)的8個點(diǎn)經(jīng)過比較可產(chǎn)生8位二進(jìn)制數(shù),將這8位二進(jìn)制數(shù)依次排列形成一個二進(jìn)制數(shù)字,這個二進(jìn)制數(shù)字就是中心像素的LBP值,LBP值共有28種可能,因此LBP值有256種。中心像素的LBP值反映了該像素周圍區(qū)域的紋理信息。
上面描述的過程用數(shù)學(xué)函數(shù)可以表示為:
式中,中心像素坐標(biāo)(xc,yc)的灰度值為ic;ip表示為3×3鄰域內(nèi)除中心像素外的其它像素點(diǎn)處的灰度值;S為公式2所示的函數(shù)關(guān)系:
圖1 LBP特征描述示意圖
基本的LBP算子最大的缺陷在于它僅能覆蓋一個固定半徑范圍內(nèi)的小區(qū)域,這顯然不能夠滿足不同尺寸和頻率紋理的需要。為了適應(yīng)多尺度的紋理特征以及實(shí)現(xiàn)灰度不變性的要求,Ojala等[10]對LBP算子進(jìn)行了改進(jìn),將其稱為“圓形LBP算子”。該種算子將3×3鄰域擴(kuò)展到了任意鄰域,并用圓形鄰域替代了原有的正方形鄰域,使得改進(jìn)后的LBP算子實(shí)現(xiàn)了在半徑為R的圓形鄰域內(nèi)有任意多個像素點(diǎn),從而實(shí)現(xiàn)了圖2為例的含有P個采樣點(diǎn)的LBP算子,圖2中字母上標(biāo)表示半徑,下標(biāo)表示采樣點(diǎn)。本次研究所采用的即是圓形LBP算子。
圖2 三種典型的圓形LBP算子
通過前文的分析得知,LBP特征的獲取必須基于灰度圖像,這在一定程度上降低了計算的復(fù)雜程度,但是數(shù)據(jù)量仍舊十分龐大。因此,在盡量保留圖像特征的基礎(chǔ)上,需要對數(shù)據(jù)進(jìn)行降維處理,從而實(shí)現(xiàn)更加快速有效的計算。這一部分將會就目前研究中較為典型的高維數(shù)據(jù)降維算法[13-15]展開研究,并以此為基礎(chǔ)進(jìn)行數(shù)據(jù)降維工作,為神經(jīng)網(wǎng)絡(luò)輸入層提供數(shù)據(jù)。
1.2.1 局部線性嵌入算法
LLE(Locally Linear Embedding)算法,即局部線性嵌入算法,是由S.T.Roweis等人于2000年提出的一種針對非線性數(shù)據(jù)的無監(jiān)督降維算法,是一種用局部線性的非線性實(shí)現(xiàn)維數(shù)約簡的方法,該算法在一定程度上擴(kuò)大了對維數(shù)約簡的認(rèn)識。LLE算法認(rèn)為每一個數(shù)據(jù)點(diǎn)都可以由其近鄰點(diǎn)的線性加權(quán)組合構(gòu)造得到。
LLE算法主要分為三步:第一步,求K近鄰,該過程采用的是與KNN算法一樣的最近鄰方法;第二步,求其在鄰域里的K個近鄰的線性關(guān)系,得到線性關(guān)系的權(quán)重系數(shù);第三步,利用權(quán)重系數(shù)重構(gòu)樣本數(shù)據(jù)。
1.2.2 多維尺度分析算法
MDS(Multidimensional Scaling)是非常傳統(tǒng)的降維算法,其以距離為標(biāo)準(zhǔn),將高維坐標(biāo)中的點(diǎn)投影到低維坐標(biāo)中,保持彼此之間的相對距離變化最小。假定原始的高維數(shù)據(jù)樣本距離矩陣為D,在低維下的距離矩陣定義為Z,采用優(yōu)化算法選取初始點(diǎn),用梯度下降方法求出最佳逼近,使得‖D-Z‖最小,同時也可以采用內(nèi)積法來求低維映射。前者在樣本較多時容易陷入局部最優(yōu),后者較穩(wěn)定,但是樣本不多時,效果比前者要差。
1.2.3 Isomap算法
Isomap算法是在MDS算法的基礎(chǔ)上衍生出來的一種算法,MDS算法是保持降維后的樣本間距離不變,而Isomap算法則引入了鄰域圖,樣本只與其相鄰的樣本鏈接,二者之間的距離可以直接計算,較遠(yuǎn)的點(diǎn)可以通過最小路徑計算距離,在此基礎(chǔ)上進(jìn)行降維保距。
1.2.4 主成分分析算法
主成分分析算法PCA(Principal Components Analysis)是一種較為常用的降維技術(shù),其主要思想是將N維特征映射到K維上,這K維是重新構(gòu)造出的正交特征,將這K維特征稱為主元。在PCA中,數(shù)據(jù)從原來的坐標(biāo)系轉(zhuǎn)換到新的坐標(biāo)系下,新的坐標(biāo)系的選擇與數(shù)據(jù)本身是密切相關(guān)的。其中,第一個新坐標(biāo)軸選擇的是原始數(shù)據(jù)中方差最大的方向,第二個新坐標(biāo)軸選擇的是與第一個新坐標(biāo)軸正交且具有最大方差方向,依次類推,得到K個坐標(biāo)軸,以此為依據(jù)形成特征向量。
1.2.5 SNE算法
SNE算法基本思想為:在高維空間內(nèi)相似的數(shù)據(jù)點(diǎn),映射到低維空間距離也是相似的。SNE算法通常是將歐氏距離轉(zhuǎn)換為一種條件概率來表示這種相似性的。主要有兩個步驟:
(1)構(gòu)造一個高維對象之間的概率分布,使得相似的對象有更高的概率被選擇,而不相似的對象有較低的概率被選擇。
(2)在低維空間中重新構(gòu)建這些點(diǎn)的概率分布,使得兩個概率分布之間盡可能的相似。
1.2.6 t-SNE算法
t-SNE(t-distributed-stochastic neighbor embedding)是由Laurens van der Matten 和Geoffrey Hinton于2008年提出來的一種非線性降維算法。t-SNE是由SNE算法優(yōu)化來的,主要的不同在于:首先使用對稱型SNE簡化梯度公式;其次在低維空間中,使用T分布代替高斯分布去表達(dá)兩點(diǎn)之間的相似性。t-SNE這樣做的優(yōu)勢在于,對于不相似的點(diǎn),用一個較小的距離會產(chǎn)生較大的梯度讓這些點(diǎn)排斥開來,但是又不會使得排斥距離太大。
本文實(shí)驗(yàn)所用的乳腺圖片均來自威斯康辛大學(xué)多年收集標(biāo)記的數(shù)據(jù)集[16],選取其中正常乳腺圖片115例,患乳腺癌圖片149例,總共選擇264幅圖片,用作是否患癌的二分類判別,其中每幅圖片的尺寸為1024×1024。
第一步,采用LBP算子進(jìn)行特征提取,特征數(shù)據(jù)規(guī)模為252×252。
第二步,將得到的LBP特征數(shù)據(jù)進(jìn)行降維運(yùn)算,采用的降維算法分別為MDS、PCA、LLE、MDS、SNE及t-SNE。
第三步,將降維得到的數(shù)據(jù)輸入BP神經(jīng)網(wǎng)絡(luò)進(jìn)行分類識別,數(shù)據(jù)規(guī)模如下:3×252,5×252,10×252,20×252,30×252。
第四步,將不同數(shù)據(jù)規(guī)模所得的實(shí)驗(yàn)結(jié)果進(jìn)行對比分析,得出結(jié)論。
圖3 算法工作流程圖
BP神經(jīng)網(wǎng)絡(luò)是一種多層前饋神經(jīng)網(wǎng)絡(luò),該網(wǎng)絡(luò)的主要特點(diǎn)是信號向前傳遞,誤差反向傳播。在前向傳遞中,輸入信號從輸入層經(jīng)隱含層逐層處理,直至輸出層。每一層的神經(jīng)元狀態(tài)只影響下一層神經(jīng)元狀態(tài)。如果輸出層得不到期望輸出,則轉(zhuǎn)入反向傳播,根據(jù)預(yù)測誤差調(diào)整權(quán)值和閾值,從而使BP神經(jīng)網(wǎng)絡(luò)預(yù)測輸出不斷逼近期望輸出。
圖4 多層神經(jīng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)圖
文章建立的BP神經(jīng)網(wǎng)絡(luò)模型如圖4所示,總共有三層,分別為:輸入層、隱含層、輸出層。
(1)輸入層:本文輸入層為經(jīng)過降維算法后得到的各個維度LBP特征向量,輸入向量的數(shù)目分別為:3×252,5×252,10×252,20×252,30×252。
(2)隱含層:在BP神經(jīng)網(wǎng)絡(luò)中,隱含層數(shù)目的確定是一項(xiàng)非常重要和復(fù)雜的任務(wù)。目前,沒有一種標(biāo)準(zhǔn)的方法去確定隱含層節(jié)點(diǎn)的個數(shù)。節(jié)點(diǎn)數(shù)過多,網(wǎng)絡(luò)訓(xùn)練時間增加且容易過擬合;過少,網(wǎng)絡(luò)則不能很好的學(xué)習(xí),將會影響訓(xùn)練結(jié)果。關(guān)于如何確定其數(shù)目可以參考公式(3)、(4)、(5)[17]:
式中,l為隱含層節(jié)點(diǎn)個數(shù);n為輸入層節(jié)點(diǎn)數(shù)目;m為輸出層節(jié)點(diǎn)數(shù);a為[1,10]之間的常數(shù)。
本文設(shè)計的神經(jīng)網(wǎng)絡(luò)模型的輸出節(jié)點(diǎn)數(shù)為2,經(jīng)過多次測試,最后確定隱含層的節(jié)點(diǎn)數(shù)目為15時可以獲得較好的實(shí)驗(yàn)結(jié)果。
實(shí)驗(yàn)過程中將選擇的264幅患癌圖像數(shù)據(jù)集隨機(jī)分為兩個部分,神經(jīng)網(wǎng)絡(luò)訓(xùn)練集包含220幅圖像,此外的44幅圖像作為測試集。將獲得的不同數(shù)據(jù)規(guī)模的LBP特征值輸入BP神經(jīng)網(wǎng)絡(luò),獲得的準(zhǔn)確率如表1所示。
表1 不同降維方法的準(zhǔn)確率(%)
從圖5中,可以看出簡單地增加數(shù)據(jù)規(guī)模(即提供更多的數(shù)據(jù)信息),并不能持續(xù)有效地提高BP神經(jīng)網(wǎng)絡(luò)對于測試集數(shù)據(jù)的準(zhǔn)確率。從數(shù)據(jù)規(guī)模上來看,當(dāng)數(shù)據(jù)量為5×252時所有降維方法均取得了良好的識別效果,平均準(zhǔn)確率為87.101%;從方法角度來看LLE方法在不同數(shù)據(jù)規(guī)模下表現(xiàn)出了很強(qiáng)的穩(wěn)定性,平均準(zhǔn)確率可以達(dá)到83.56%。
圖5 不同降維方法準(zhǔn)確率對比
表2 不同降維方法的F1分?jǐn)?shù)
準(zhǔn)確率、精確率(P)、召回率(R)是評價神經(jīng)網(wǎng)絡(luò)算法性能的三個重要參數(shù),前文已對準(zhǔn)確率進(jìn)行了相關(guān)分析,下面將就精確率與召回率進(jìn)行討論。通常,高精確率、高召回率的網(wǎng)絡(luò)性能更加優(yōu)越,但是有時這兩個指標(biāo)是相互矛盾的,因此需要綜合考慮。一般采用的方法是‘F measure’,公式表示為,其結(jié)果越接近1表示網(wǎng)絡(luò)性能更加優(yōu)越。文章采用典型方法F1進(jìn)行評價,即α=1時,,其計算結(jié)果如表2所示。從表2中不難得出,SNE方法數(shù)據(jù)規(guī)模為2×252時F1分?jǐn)?shù)最高,達(dá)到了0.77,但其不同數(shù)據(jù)規(guī)模下算法穩(wěn)定性低于LLE方法。綜合考慮準(zhǔn)確率、算法穩(wěn)定性以及F1分?jǐn)?shù)可知,數(shù)據(jù)規(guī)模為5×252采用降維方法LLE時,BP神經(jīng)網(wǎng)絡(luò)表現(xiàn)出了對于乳腺癌細(xì)胞最佳的識別結(jié)果,準(zhǔn)確率達(dá)到了89.61%。
計算機(jī)輔助判讀腫瘤細(xì)胞可以降低判斷過程中的主觀性,提高診斷準(zhǔn)確率和速度。本文采用LBP特征描述乳腺癌細(xì)胞特征,以LLE算法降維到不同數(shù)據(jù)規(guī)模后,輸入BP神經(jīng)網(wǎng)絡(luò)進(jìn)行識別分類。實(shí)驗(yàn)表明當(dāng)數(shù)據(jù)規(guī)模降為5×252時可獲得最佳準(zhǔn)確率89.61%。在后續(xù)的工作中將擴(kuò)大數(shù)據(jù)集的規(guī)模;并且在本文的工作中BP神經(jīng)網(wǎng)絡(luò)仍存在迭代緩慢的問題,采用附加動量算法或彈性BP算法或可改善網(wǎng)絡(luò)性能。