楊東海,許淑茹
隨著醫學影像設備的廣泛應用,越來越多的醫學圖像成為醫生診斷疾病的重要依據.據統計,生物醫學圖像在所有醫療數據中的比例達到90%,這些圖像數據包含豐富的生物信息,是醫生及相關領域科研工作者做出醫學診斷的重要依據.但面對龐大的醫學圖像數據,由于醫療資源的分布不均,特別是影像醫生人員配備不足也導致疾病診斷效率低、醫學圖像利用率不高.計算機視覺技術的高速發展,特別是深度學習和遷移學習的發展使得應用計算機輔助醫學圖像診斷[1]成為可能,也是當前眾多學者研究的熱點之一[2].
現實中醫學圖像數量大,且攜帶標簽信息的醫學圖像有限,所以采用監督學習的方式訓練一個新的網絡并不是一個最優的方法.應用預訓練的網絡進行遷移學習可以有效彌補標簽量的不足.但在遷移學習過程中網絡的冗余程度會降低網絡遷移效率.此外,在深度學習網絡中各層之間具有一定的聯系性,網絡前一層的輸出通常是后一層的輸入,網絡層和通道之間相互影響,獨立地修剪每個通道,不考慮網絡層間通道的相關性,在多個通道的聚合影響下會對網絡性能輸出產生較大的影響.為解決上述問題,提出了基于峰值信噪比法(Peak Signal to Noise Ratio,PSNR)對網絡層內和層間的特征進行相似度度量的醫學圖像分類網絡壓縮方法.通過對醫學圖像進行預處理、特征相似度度量與排序,調整網絡壓縮系數,最后在公開的醫學圖像數據集上進行實驗驗證結果表明,所提方法僅小幅降低模型性能就能有效壓縮網絡.
近年來,眾多學者把注意力集中在對深度學習網絡的壓縮上[3].2021年,高晗等[4]對深度學習網絡模型壓縮與加速進行了梳理總結,歸納出當前模型壓縮與加速方法主要有參數剪枝、參數量化、參數共享、低秩分解、緊湊網絡、知識蒸餾等.參數剪枝是指在預訓練好的大型模型的基礎上,設計對網絡參數的評價準則,以此為根據刪除冗余參數,這個方法最早在1990年就被學者提出.隨著技術的發展,當前剪枝技術主要有權重剪枝、神經元剪枝、CNN情況下的通道剪枝和層剪枝.
DONG等[5]提出了通過逐層優化學習修剪深度神經網絡,每一層都基于逐層損失函數獨立剪枝,最后再通過訓練恢復網絡性能.LIN等[6]受到神經科學文獻中相關概念的啟發提出了突觸剪枝方法,通過引入突觸強度表示每個連接的重要性,該方法可以在不影響精度的前提下,對各種高壓縮的卷積神經網絡進行剪枝,并在CIFAR-10數據集上驗證了算法的有效性.LEE等[7]提出了一種新的剪枝方法,即在訓練前一次修剪給定的網絡,算法引入了一個基于連接靈敏度的準則,據此識別網絡結構上的重要連接,經過剪枝再按照標準的方式訓練稀疏網絡.YANG等[8]提出了網絡自適應算法,算法能自動地、逐步地簡化預先訓練的網絡,直到滿足資源預算,同時最大限度地提高準確性,算法在ImageNet數據集上進行圖像分類,實現了1.7倍的加速.HUANG等[9]提出了一個以端到端方式學習和修剪深度模型,算法中引入比例因子對特定結構的輸出進行縮放,最后加入稀疏性正則化并進行網絡優化.YU等[10]應用特征排序技術來衡量最終響應層中每個神經元的重要性,通過去除最不重要的神經元對CNN進行修剪,然后對其進行微調恢復其預測能力,算法在多個數據集上進行驗證,結果證明了在精度損失可以忽略的情況下實現顯著的加速和壓縮.LIN等[11]通過研究高秩特征映射,并根據由單個通道生成的多個特征圖的平均秩相同的特點,提出了新的通道剪枝方法剔除具有低秩特征映射的濾波器.在前人研究的基礎上,針對修剪率在不同層之間的差異,RUAN等[12]提出了一種新的動態漸進濾波器剪枝方案,動態稀疏方案確定了不同層的稀疏分配比例,并提出了基于泰勒級數的信道靈敏度準則確定期望的剪枝參數.針對網絡不同層的通道對模型推斷有不同的敏感性,靈活的剪枝率設置可以進一步提高壓縮模型的準確性,LI等[13]提出一種通過彈性速率濾波器剪枝壓縮和加速神經網絡模型的新方法,實現了模型在設備上實際加速.HE等[14]通過引入新的準則考慮濾波器的幾何距離,從而提出了基于元屬性的通道剪枝,并且自適應地選擇最適合的標準進行修剪.上述學者都在其相關的領域取得了重要的研究成果.
2016年,IANDOLA等[15]提出了輕量型的SqueezeNet網絡,該網絡是一種輕量型的卷積神經網絡,SqueezeNet網絡中的Fire模塊構成見圖1.原始SqueezeNet網絡共有68層,Fireconcat網絡節點匯合層的通道數和Fire-SqueezeNet主干網絡的卷積層可學習參數量見表1.原始SqueezeNet網絡結構見圖2.

表1 Fire-concat節點匯合層與Fire-SqueezeNet主干網絡卷積層信息

圖1 Fire模塊結構

圖2 SqueezeNet網絡結構
其中:μ和σ2為每個像素周圍的局部均值和方差,α(n1,n2)為具體的像素點,鄰域大小由x、y確定.x×y局部鄰域的像素用η表示.像素級濾波器f如式(3)所示:
自適應噪聲濾波能夠有效濾除圖像的噪聲,提高網絡分類性能.對比度拉伸能夠豐富圖像的灰度信息,提取出圖像的內在特征.拉伸過程如式(4)所示:
其中:f(x,y)為原始像素的灰度值,fmin為最小灰度值,fmax為最大灰度值,g(x,y)為拉伸后的灰度值.
特征相似度度量的方法采用峰值信噪比法(PSNR).PSNR是一種像素級的評價方法,通過計算不同特征圖像像素點的差值實現對特征圖像相似度度量.計算過程如式(5)和式(6)所示:
其中:MSE表示兩幅對比特征圖像的均方誤差,H和W分別是特征圖像的高度和寬度,n為像素的比特數,PSNR表示峰值信噪比,PSNR值越大,兩張圖像的相似度越高.
采用遷移網絡的方法一方面能有效利用原有網絡優勢,另一方面在少量圖像樣本情況下能快速充分訓練網絡.針對多通道聚合影響導致網絡壓縮遷移后性能下降的問題,提出基于醫學圖像特征相似度度量的解決方法.一是,對醫學圖像進行圖像噪聲的濾除、對比度調整,采用峰值信噪比法度量預處理后圖像與網絡的各節點匯合層的相似度,確定遷移網絡深度.二是,考慮層內與層間冗余特征,對同一層內特征和不同層間的特征進行特征相似度度量,并按照度量結果進行排序.三是,通過特征度量結果和期望壓縮系數對特征相似度大的通道進行通道剪枝壓縮網絡.四是,使用醫學圖像數據進行分類,驗證網絡壓縮效果.基于特征相似度度量的網絡壓縮系統如圖3所示.
圖9為電機運行在900 r/min時,突加和突減80%負載情況下,無延時補償MPDTC、有延時補償MPDTC和有延時補償LSFMPDTC的定子磁鏈幅值|ψs|、轉矩Te、轉速n和電流isa.由圖可以看出,有延時補償MPDTC與LSFMPDTC的轉矩脈動明顯小于無延時補償MPDTC的轉矩脈動.3種控制方法的定子磁鏈幅值|ψs|在負載擾動時有微小的下降,而轉速基本沒有變化.

圖3 基于特征相似度度量的網絡壓縮系統
基于特征相似度度量的醫學圖像分類網絡壓縮方法偽代碼如下:
算法1
輸入:原始圖像數據矩陣H,壓縮系數a.
輸出:混淆矩陣F;
①對圖像H預處理得到A;
②將A輸入到預訓練網絡,計算輸入A與各層相似度,確定網絡深度d;
③計算網絡中特征圖像間的層內相似度和層間相似度;
④根據壓縮系數a對網絡進行剪枝壓縮;
⑤重新訓練網絡得到權重矩陣W和偏置b;
⑥for epoch=1:k;
⑦計算樣本分類損失;
⑧更新權重矩陣W′和偏置b′;
⑨end for;
⑩重復步驟4至步驟10,至不同壓縮系數下的網絡訓練完畢,微調網絡;
?得到混淆矩陣F和五個分類指標;
返回:混淆矩陣F,分類指標.
實驗采用的數據集共包含5 856個小兒胸腔透視圖樣本,診斷結果分為正常和肺炎.其中用于訓練的小兒肺炎圖像樣本3 883個,正常圖像樣本1 349個.用于測試的小兒肺炎圖像樣本390個,正常圖像樣本234個.胸腔圖像選自1歲至5歲兒科患者的回顧性研究.為了提高數據集的權威性,首先對所有胸腔圖像進行篩查,去除所有低質量或不可讀的圖像,從而保證圖片質量,然后由兩名專業醫師對圖像的診斷進行分級.最后為降低圖像診斷錯誤,由第三位專家檢查測試集.
為了驗證算法的有效性,對數據集進行仿真實驗.實驗環境為Matlab R2021b,CPU為i9-10900K,GPU為NVIDIAGeForce RTX 3080 Ti,內存為64 GB,64位的Windows10操作系統.
模型評價指標采用準確率、精確率、敏感度、特異性、F1 score 5個指標.定義TP、TN、FP、FN分別是真正例、真負例、假正例、假負例.定義分類準確率Accuracy、精確率Precision、敏感度Sensitive、特異性Specificity和F1 score分別如式(7)至式(11)所示.
由原始圖像與預處理后圖像可見(圖4),與原始圖像對比預處理后圖像噪聲減少,同時圖像對比度被拉伸,預處理后的圖像紋理、邊緣、輪廓特征信息更加豐富.

圖4 原始圖像(左)和預處理后圖像(右)
圖5 至圖8為SqueezeNet網絡中的Fireconcat層即網絡的第11、18、26、33、41、48、55、62層,由圖5至圖8可見,隨著網絡深度的增加,Fire-concat節點匯合層的特征激活圖顯示的圖像信息逐漸減少.因此,針對醫學圖像分類并不是網絡深度越深,網絡對圖像的特征提取能力越強,合適的網絡深度有利于網絡的壓縮與加速.

圖5 網絡第11層與第18層特征激活圖

圖6 網絡第26層與第33層特征激活圖

圖7 網絡第41層與第48層特征激活圖

圖8 網絡第55層與第62層特征激活圖
如表2所示,第41層網絡節點匯合層較上一個網絡節點匯合層第33層的PSNR度量結果下降幅度大,第41層網絡節點匯合層與第33層網絡節點匯合層對應網絡深度分別為47層和39層.由表3不同深度對肺炎圖像進行分類的結果可見,當網絡深度達到39層時在五項評價指標中有四項達到最高,表明網絡深度的增加不一定提高醫學圖像的分類性能,最終確定原始的SqueezeNet網絡遷移后總深度為39層,即網絡的前33層和最后6層.最后6層分別是原SqueezeNet網絡中的Dropout層、Conv層、Relu層、Pool層、Prob層和Output層.

表2 預處理圖像與Fire-concat網絡節點匯合層的各個通道特征圖的PSNR相似度結果

表3 不同深度對肺炎圖像進行分類的結果
針對遷移后網絡的Fire-SqueezeNet卷積層即網絡的第5、12、20、27層進行層內特征相似度度量,結果如圖9、圖10所示.此外對網絡第5、12、20、27層進行層間特征相似度度量,結果如圖11、圖12、圖13所示.對同一層內和不同層間的特征度量結果進行排序,通過設置壓縮系數對特征相似度大的通道進行通道剪枝壓縮網絡,由壓縮后的各項分類評價指標可見(表4),隨著網絡壓縮系數的增加,網絡的分類性能逐漸降低,但降低幅度不大,因此采用PSNR方法對網絡特征圖進行特征相似度度量的方式可以作為通道剪枝的依據,驗證了方法的有效性.

表4 不同壓縮系數下對肺炎圖像進行分類的結果

圖9 網絡第5層與第12層層內PSNR結果

圖10 網絡第20層與第27層層內PSNR結果

圖11 網絡第5層分別與第12層、20層間PSNR結果

圖12 網絡第5層與第27層及第12層與第20層層間PSNR結果

圖13 網絡第12層與第27層及第20層與第27層層間PSNR結果
為提高深度學習模型遷移應用到醫學圖像分類領域的性能,解決通道間相互獨立剪枝情況下多個通道聚合影響導致網絡輸出性能下降的問題,采用峰值信噪比的方法對圖像特征相似度度量,所提算法能夠在有效評價網絡同一層內和不同層間通道的重要性的同時,對網絡所有通道的重要性進行整體性評價.實驗結果表明,圖像特征相似度度量能夠在小幅降低模型性能的前提下有效對深度學習網絡進行壓縮.本實驗所用數據集為單一醫學肺炎圖像數據,今后將進一步在其他類型醫學圖像數據集上進行驗證.