夏為為,夏哲雷
(中國(guó)計(jì)量大學(xué) 信息工程學(xué)院,浙江 杭州 310018)
宮頸癌細(xì)胞的準(zhǔn)確識(shí)別對(duì)臨床診斷具有重大研究意義,現(xiàn)階段對(duì)宮頸癌細(xì)胞的診斷主要依靠醫(yī)生的肉眼判斷,僅憑借臨床經(jīng)驗(yàn)判定可能會(huì)出現(xiàn)較高的誤差:其一,宮頸癌細(xì)胞之間存在復(fù)雜性和差異性并且癌變細(xì)胞的形狀是不規(guī)則的;其二,宮頸癌細(xì)胞圖像數(shù)據(jù)具有高階統(tǒng)計(jì)的特性,導(dǎo)致宮頸癌細(xì)胞之間存在大量的冗余信息[1].然而利用卷積神經(jīng)網(wǎng)絡(luò)對(duì)圖像進(jìn)行處理則可以提取圖像較深層次的特征,使得提取的特征具有更精確的表達(dá)能力.
卷積神經(jīng)網(wǎng)絡(luò)在圖像處理等方面的研究和發(fā)展具有重要的作用,利用卷積神經(jīng)網(wǎng)絡(luò)可以模擬人腦視覺中樞的功能對(duì)信息進(jìn)行更深層次的提取,避免了人工提取特征不精確的問題.周凱龍等[2]使用卷積神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)對(duì)手寫字體的分類,陶源等[3]提出了卷積神經(jīng)網(wǎng)絡(luò)在特征提取時(shí)具有魯棒性的觀點(diǎn),肖志鵬[4]等利用卷積神經(jīng)網(wǎng)絡(luò)提高了對(duì)繪畫圖像的分類效率,特征征提取的精確度對(duì)卷積神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)性能研究具有至關(guān)重要的作用,因此,有必要對(duì)卷積神經(jīng)網(wǎng)絡(luò)的卷積層和池化層進(jìn)行優(yōu)化來達(dá)到提高算法識(shí)別率的目的[5],趙顯達(dá)等[6]使用了基于卷積神經(jīng)網(wǎng)絡(luò)的平均池化模型實(shí)現(xiàn)了人臉識(shí)別并取得了較好的結(jié)果,時(shí)增林等[7]使用基于卷積神經(jīng)網(wǎng)絡(luò)的最大池化模型提高了對(duì)人群計(jì)數(shù)方法的識(shí)別率.文獻(xiàn)[6]在池化過程中將池化域中所有元素都分配相同的權(quán)值,文獻(xiàn)[7]將池化域中非最大元素的權(quán)值全部舍棄.針對(duì)文獻(xiàn)[6]和文獻(xiàn)[7]在池化過程中存在容易損失大量有用信息導(dǎo)致識(shí)別率不高的問題,本文提出了一種改進(jìn)的算法.該算法基于卷積神經(jīng)網(wǎng)絡(luò)的框架,對(duì)下采樣過程中的池化模型進(jìn)行改進(jìn).這種改進(jìn)的池化模型是給池化域中的數(shù)值分配合適的權(quán)值,進(jìn)而提高了特征提取的準(zhǔn)確性.基于卷積神經(jīng)網(wǎng)絡(luò)的改進(jìn)算法降低了宮頸癌細(xì)胞圖像的識(shí)別錯(cuò)誤率.
輸入層、隱層和輸出層構(gòu)成了卷積神經(jīng)網(wǎng)絡(luò)的一般結(jié)構(gòu)[8],其中隱層主要包含卷積層和池化層,卷積神經(jīng)網(wǎng)絡(luò)的隱層可以避免在特征提取的過程中出現(xiàn)人工提取特征的主觀性和不定性,使輸出層的表達(dá)更接近于真實(shí)值.
卷積神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)如圖1.
圖1 卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖Figure 1 Structure of convolution neural network
圖1中將未經(jīng)處理的圖像作為卷積神經(jīng)網(wǎng)絡(luò)的輸入,C1是通過將卷積核和輸入層的圖像進(jìn)行卷積運(yùn)算生成對(duì)應(yīng)的卷積特征圖,由于有4個(gè)卷積核所以C1中包含4個(gè)卷積特征圖,由C1至S2是下采樣過程,具體實(shí)現(xiàn)是將C1中的連續(xù)4個(gè)像素點(diǎn)進(jìn)行求平均或者求最大值運(yùn)算,然后加權(quán)值和偏重,將其映射到S2的一個(gè)點(diǎn)上.由于C1到S2是單獨(dú)下采樣過程,所以S2也包含4個(gè)不同的下采樣特征圖,如此重復(fù)卷積層與下采樣層,最后將得到的特征圖作用于輸出.
卷積層的輸入單元與輸出單元之間采用了稀疏連接和參數(shù)共享,稀疏連接是指網(wǎng)絡(luò)中的神經(jīng)元并不是全連接的,而是每個(gè)神經(jīng)元只連接上一層的一個(gè)小區(qū)域,假如某個(gè)神經(jīng)元有i個(gè)輸入和j個(gè)輸出,所以根據(jù)矩陣乘法原理傳統(tǒng)神經(jīng)網(wǎng)絡(luò)需要i×j個(gè)參數(shù),相應(yīng)算法的時(shí)間復(fù)雜度是O(i×j),假設(shè)每個(gè)輸出單元的連接數(shù)量是k,那么稀疏連接的方式僅需要k×j個(gè)參數(shù)以及O(i×j)的時(shí)間復(fù)雜度.在卷積神經(jīng)網(wǎng)絡(luò)中,只要k比i小幾個(gè)數(shù)量級(jí)就可以達(dá)到比較好的識(shí)別效果.參數(shù)共享的實(shí)質(zhì)是同一個(gè)參數(shù)作用于同一個(gè)模型中的多個(gè)函數(shù),在一般的人工神經(jīng)網(wǎng)絡(luò)中,權(quán)重矩陣的每個(gè)參數(shù)只使用一次,然而在卷積神經(jīng)網(wǎng)絡(luò)當(dāng)中,使用卷積核的每一個(gè)參數(shù)作用于輸入單元的每一個(gè)位置上,這就明顯地減少了模型的存儲(chǔ)需求個(gè)數(shù).因此,在卷積層中采用稀疏連接和參數(shù)共享的方法明顯地減少了網(wǎng)絡(luò)的參數(shù)和復(fù)雜度.卷積過程如圖2所示,用一個(gè)可訓(xùn)練的卷積核分別與輸入層中與卷積核相同大小的矩陣卷積,設(shè)卷積核的大小為n×n的矩陣C,輸入圖像是m×m的矩陣M,激活函數(shù)S()為Sigmoid函數(shù),然后加一個(gè)偏置bx,設(shè)卷積核的移動(dòng)步長(zhǎng)是1,得到(m-n+1)×(m-n+1)的卷積特征圖F,計(jì)算公式為
(1)
圖2 偏置為0的卷積過程示意圖Figure 2 Convolution process with the bias of zero
下采樣層是對(duì)特征的再一次提取,其中最重要的步驟就是池化.為了更方便地對(duì)某個(gè)區(qū)域的特征值進(jìn)行統(tǒng)計(jì)與分析,往往需要得到能代表該區(qū)域總體特征的新特征,該區(qū)域稱為池化域,在該區(qū)域提取新特征的過程就是池化.經(jīng)過池化后得到的下采樣特征圖不僅能抗形變而且還能夠防止過擬合,在池化過程中設(shè)池化域的大小c×c,移動(dòng)步長(zhǎng)為c,池化過程如圖3所示.設(shè)經(jīng)過卷積運(yùn)算后得到的卷積特征圖是8×8的矩陣,如圖3(a),其中用4×4灰色填充的部分表示池化域,設(shè)移動(dòng)步長(zhǎng)c等于4,經(jīng)過池化后得到的下采樣特征圖如圖3(b).
圖3 池化過程示意圖Figure 3 Schematic diagram of pooling process
圖3(b)中灰色填充的部分表示對(duì)卷積特征圖中對(duì)應(yīng)灰色填充區(qū)域池化的結(jié)果,其本質(zhì)就是池化函數(shù)P與池化域相作用的結(jié)果,設(shè)矩陣F為卷積運(yùn)算后得出的卷積特征圖,池化函數(shù)是P,然后再加上偏置bx,得出下采樣特征圖S,計(jì)算公式如式(2)所示:
S=P(F)+bx.
(2)
文獻(xiàn)[6]使用的平均池化模型和文獻(xiàn)[7]使用的最大池化模型是經(jīng)典池化模型中最常用的兩種.平均池化模型是指在池化的過程中,求出池化域內(nèi)所有元素的平均值作為下采樣的特征值[9],平均池化可以降低由于在特征提取過程中領(lǐng)域大小限制導(dǎo)致的估計(jì)值方差增大的誤差,更大程度上保存圖像的背景信息;最大池化模型是指采用池化域中所有元素的最大值作為下采樣的特征值[10],最大池化可以降低由于卷積層參數(shù)誤差導(dǎo)致估計(jì)值偏移的誤差,更大程度上保存圖像的紋理信息.
設(shè)矩陣F為圖2得到的卷積特征圖,池化域大小是c×c,偏置是bx,移動(dòng)步長(zhǎng)是c,則平均池化和最大池化的算法表達(dá)式分別如式(3)和式(4)所示:
(3)
(4)
式(4)中:i∈[2l-1,2l+c-2],j∈[2k-1,2k+c-2].Fij是卷積特征圖F中大小為c×c的池化域中對(duì)應(yīng)的元素,Slk是根據(jù)大小為c×c的池化域使用平均池化和最大池化算法得到的下采樣特征值.圖4是最大池化和平均池化的池化過程示意圖,設(shè)池化域的大小是2×2,移動(dòng)步長(zhǎng)是2,最大池化分別將池化域?yàn)?×2的所有特征值求出最大值作為下采樣特征圖中的對(duì)應(yīng)特征值,平均池化分別將池化域大小為2×2的所有特征值求出平均值作為下采樣特征圖中的對(duì)應(yīng)特征值,得到兩種池化模型的下采樣特征圖如圖4.
圖4 兩種池化模型的池化示意圖Figure 4 Schematic diagram of two pooling models
平均池化和最大池化在下采樣過程中提取的特征值不能很好地反映出全局特征,平均池化是給每個(gè)池化域內(nèi)的元素賦予一樣的權(quán)值系數(shù),然而,圖像的每個(gè)區(qū)域的重要性并不是同等的,會(huì)導(dǎo)致信息的冗余;最大池化是將池化域內(nèi)的非最大元素全部舍棄會(huì)導(dǎo)致信息有所丟失.本文基于卷積神經(jīng)網(wǎng)絡(luò)提出了一種改進(jìn)的算法.該算法對(duì)下采樣過程中的特征提取階段的池化模型進(jìn)行改進(jìn),這種模型對(duì)池化域的不同元素分配合適的池化權(quán)值,使提取的特征值更好地表達(dá)全局特征.改進(jìn)池化模型的算法表達(dá)式如下:
(5)
式(5)的實(shí)質(zhì)是利用池化因子μij對(duì)平均池化算法進(jìn)行優(yōu)化處理,使得優(yōu)化后的特征提取更加精確,其中池化因子的表達(dá)式為
(6)
式(6)中c表示池化域的邊長(zhǎng),Fij是卷積特征圖F中大小為c×c的池化域中對(duì)應(yīng)的元素,a是池化域中所有元素的總和,σ是標(biāo)準(zhǔn)差,池化域中所有元素的值決定了池化因子的值,從而克服了平均池化和最大池化特征表達(dá)具有片面性的問題,有效避免最大池化方法造成的關(guān)鍵特征丟失問題和平均池化造成的較大特征值被弱化的問題,進(jìn)而使不同池化域都可以提取更準(zhǔn)確的特征.本文提出的基于卷積神經(jīng)網(wǎng)絡(luò)的改進(jìn)算法降低了對(duì)宮頸癌細(xì)胞圖像的識(shí)別錯(cuò)誤率.
改進(jìn)池化后得到的下采樣特征圖如圖5,設(shè)池化域的大小是2×2,池化的移動(dòng)步長(zhǎng)是2,偏置為0,首先池化域中各項(xiàng)元素的值Fij是已知的,再根據(jù)式(6)求出池化域中各元素的池化因子,將得到的池化因子帶入式(5),即得出改進(jìn)池化后的下采樣特征圖中對(duì)應(yīng)元素的下采樣特征值.改進(jìn)的池化算法對(duì)池化域中不同的元素加入不同的池化因子,對(duì)于池化域內(nèi)較大的元素加大其對(duì)應(yīng)的因子,對(duì)于較小的元素減少其池化因子,使得提取的特征對(duì)全局特征的表達(dá)更加準(zhǔn)確,進(jìn)而降低了對(duì)宮頸細(xì)胞圖像識(shí)別錯(cuò)誤率.
圖5 改進(jìn)池化過程示意圖Figure 5 Schematic diagram of improved pooling process
圖6 四類宮頸細(xì)胞圖像Figure 6 Four types of cervical cell images
本實(shí)驗(yàn)在宮頸細(xì)胞圖像數(shù)據(jù)集上分別對(duì)文獻(xiàn)[6]、文獻(xiàn)[7]和改進(jìn)算法在識(shí)別錯(cuò)誤率上進(jìn)行對(duì)比和分析研究.實(shí)驗(yàn)是在CNTK的搭建平臺(tái)下使用8核CPU,8G內(nèi)存實(shí)現(xiàn)的,網(wǎng)絡(luò)結(jié)構(gòu)在經(jīng)典VGG16[11]模型的基礎(chǔ)上改進(jìn)的,輸入層是32×32×3的圖像,卷積層是3×3,移動(dòng)步長(zhǎng)是為1,池化層是采用了本文提出的改進(jìn)池化,池化域大小是2×2,移動(dòng)步長(zhǎng)為1,全連接層的特征輸出層Fc1是512,分類層Fc2是4,其他的實(shí)驗(yàn)平臺(tái)有可能對(duì)實(shí)驗(yàn)結(jié)果造成一定的影響.本實(shí)驗(yàn)在每個(gè)卷積層和激活層之間使用了批量正則化,使用mini-batch為128的隨機(jī)梯度下降算法來優(yōu)化模型參數(shù),使用常數(shù)項(xiàng)為0.9的動(dòng)量,權(quán)重衰減參數(shù)為0.000 1,學(xué)習(xí)速率初始化為0.01,被訓(xùn)練的宮頸細(xì)胞圖像分為4類,如圖6,分別是正常細(xì)胞圖像(Normal)、不能確定為低度病變或者高度病變細(xì)胞圖像(AUS)、低度病變細(xì)胞圖像(LSIL)以及高度病變細(xì)胞圖像(HSIL).實(shí)驗(yàn)設(shè)置14 112條宮頸細(xì)胞圖像作為訓(xùn)練數(shù)據(jù),5 000條宮頸細(xì)胞圖像作為測(cè)試數(shù)據(jù),識(shí)別的結(jié)果分為兩類,一類是假陽性(即把HSIL、LSIL或者AUS識(shí)別成Normal),另一類是假陰性(即把Normal識(shí)別成HSIL、LSIL、或者AUS),這兩類的識(shí)別錯(cuò)誤率之和稱為總的識(shí)別錯(cuò)誤率.實(shí)驗(yàn)分為三組進(jìn)行訓(xùn)練,分別是將文獻(xiàn)[6]、文獻(xiàn)[7]和改進(jìn)算法對(duì)宮頸細(xì)胞圖像進(jìn)行識(shí)別分類.
分別使用文獻(xiàn)[6]、文獻(xiàn)[7]和改進(jìn)算法應(yīng)用于宮頸癌細(xì)胞圖像的識(shí)別中,不同迭代次數(shù)下的識(shí)別錯(cuò)誤率曲線如圖7.由圖7可以看出宮頸癌細(xì)胞圖像的識(shí)別錯(cuò)誤率前期具有較快的下降速度,隨著迭代次數(shù)的增加,識(shí)別錯(cuò)誤率下降速度逐漸降低,當(dāng)?shù)?20次左右時(shí),識(shí)別錯(cuò)誤率趨于穩(wěn)定,其中文獻(xiàn)[6]、文獻(xiàn)[7]和改進(jìn)的池化算法對(duì)宮頸細(xì)胞圖像的識(shí)別錯(cuò)誤率分別穩(wěn)定在5.25%、4.74%和4.38%左右.可見改進(jìn)的算法比文獻(xiàn)[6]和文獻(xiàn)[7]的算法對(duì)宮頸癌細(xì)胞圖像的識(shí)別具有更低的錯(cuò)誤率.
圖7 不同算法的識(shí)別錯(cuò)誤率曲線Figure 7 Recognition error rate curve of different algorithms
文獻(xiàn)[6]、文獻(xiàn)[7]和改進(jìn)算法隨著迭代次數(shù)的增加對(duì)宮頸癌細(xì)胞圖像的識(shí)別錯(cuò)誤率逐漸降低,表1是改進(jìn)算法相對(duì)文獻(xiàn)[6]和文獻(xiàn)[7]算法的降低效果.由表1可知改進(jìn)算法對(duì)宮頸細(xì)胞圖像的識(shí)別錯(cuò)誤率相對(duì)另外兩種算法都有不同程度的降低,其中相對(duì)文獻(xiàn)[6]的算法降低最高可以達(dá)到17.04%,相對(duì)文獻(xiàn)[7]的算法降低最高達(dá)到7.23%.
通過以上實(shí)驗(yàn)結(jié)果可以看出,改進(jìn)算法相對(duì)于文獻(xiàn)[6]和文獻(xiàn)[7]的算法對(duì)宮頸細(xì)胞圖像的特征提取更加準(zhǔn)確,因此,降低了卷積神經(jīng)網(wǎng)絡(luò)對(duì)宮頸癌細(xì)胞圖像的識(shí)別錯(cuò)誤率.
表1 改進(jìn)算法對(duì)識(shí)別錯(cuò)誤率的降低Table 1 Reduction of recognition error rates by the improved algorithm
通過對(duì)卷積神經(jīng)網(wǎng)絡(luò)的池化階段使用了不同池化模型進(jìn)行特征提取,分析了不同池化模型的特征提取方式以及對(duì)識(shí)別錯(cuò)誤率的影響,提出了一種基于卷積神經(jīng)網(wǎng)絡(luò)的改進(jìn)算法.該算法的實(shí)質(zhì)是對(duì)特征提取階段的池化模型進(jìn)行改進(jìn),使得特征提取方式更加合理,并將該算法應(yīng)用于宮頸癌細(xì)胞圖像的識(shí)別中.實(shí)驗(yàn)結(jié)果表明,基于卷積神經(jīng)網(wǎng)絡(luò)提出的改進(jìn)算法降低了宮頸癌細(xì)胞圖像的識(shí)別錯(cuò)誤率,這種方法也可以應(yīng)用到其他的圖像識(shí)別中.