張欣培,周堯,章毅
(四川大學 計算機學院, 四川 成都 610065)
產前超聲檢查是監測胎兒在母體內生長情況的重要步驟,在傳統產前超聲檢查的過程中,臨床醫生利用超聲設備獲得胎兒各個部位的二維超聲標準切面,并在此基礎上測量各種體征數據,以評估胎兒在母體內的發育情況,預測早產的風險。但產前超聲檢查用到的切面種類多、不同切面的主要結構和復雜程度都不一樣,使用傳統方式手動獲取切面會面臨很多問題,如:1)標準切面的獲取難度大,對超聲醫生的臨床經驗依賴度極高;2) 因不同超聲醫生專業水平的差異,獲取到的標準切面結果可能不同,切面圖像的規范性得不到保障;3) 臨床工作效率低,易使孕婦受檢時間過長,引起不良反應。近年來,隨著深度神經網絡在醫學圖像分析領域的發展與應用,為解決傳統方法的弊端,研究人員逐漸將深度神經網絡應用到胎兒超聲切面圖像的自動識別任務中,輔助醫生進行診斷。
Maraci等[1]采用動態紋理分析和支持向量機(SVM)算法[2]對產婦孕中期的超聲檢查視頻的每幀圖像進行標準切面識別。SVM算法是一種利用高維映射來解決機器學習中線性不可分問題的算法,但在數據量過大時,其魯棒性和準確率無法得到保證,所以SVM算法的性能是有限的。隨著大數據和深度神經網絡的發展,各種深度神經網絡方法被應用在胎兒超聲切面圖像識別任務中。Baumgartner等[3]首次提出了基于圖像級別標簽的弱監督方法,使用卷積神經網絡對胎兒標準切面圖像進行實時自動檢測,其F1評價指標達到了0.791 8,且在回溯幀檢索中的準確率達到了90.09%。Maraci等[4]使用條件隨機場模型從超聲檢查視頻的每一幀圖像對胎兒心臟切面進行檢測。條件隨機場模型[5]是一種判別式模型,在觀測序列的基礎上對目標序列進行建模,可以通過超聲視頻的每一幀及其前后幀所提供的序列化信息來檢測胎兒心臟切面,但此方法在訓練時的收斂速度極慢。Ryou等[6]提出了一種基于隨機森林的矢狀面胎兒全域定位方法,利用卷積神經網絡對胎兒頭部、身體和非胎兒切面進行識別。Cheng等[7]用基于卷積神經網絡的遷移學習模型對胎兒腹部二維超聲切面進行識別,分別使用兩個卷積神經網絡CaffeNet[8]、VGGNet[9]進行對比實驗,基于CaffeNet的遷移學習模型達到了平均77.3%的準確率,基于VGGNet的遷移學習模型達到了77.9%的準確率。
近年來,越來越多的研究人員將深度神經網絡應用于臨床輔診任務中。隨著計算機硬件設備的不斷發展,在圖形處理器(GPU)上訓練各種深度神經網絡已不是一件難事。但龐大神經網絡模型在訓練過程中的計算資源占用量是巨大的,不可避免地耗費大量時間開銷對輸入數據進行處理,極大限制了實際應用時的運行效率。同時,在目前的研究和應用中,多使用預訓練模型針對不同任務進行微調,該方式極易造成參數冗余的問題,增加不必要的時間開銷,難以提高實時分析能力;且在實際部署時,深度神經網絡模型占用大量內存,對終端設備的計算資源需求高。
針對以上問題,本文提出改進的兩階段知識蒸餾方法,在保留分類性能的同時提升模型的實時分析能力。首先,根據胎兒超聲切面圖像的特征,調研和使用幾種主流分類模型進行實驗,綜合考量其計算資源占用量和分類性能,選擇Resnet8和Resnet101分別作為學生網絡和教師網絡。再者,通過第1階段,使用預訓練好的教師網絡的隱藏層信息初始化學生網絡的中間層,將Resnet101模型的隱藏層輸出作為Resnet8模型中間層訓練的標簽信息,使學生網絡的中間層獲得初始化的先驗權重;最后,通過第2階段進行知識蒸餾,將教師網絡的負樣本標簽蘊含的軟標簽信息“蒸餾”,作為此階段訓練的監督信息。通過以上方法得到的學生網絡模型,在分類性能的各項指標上超過教師網絡模型,且其計算資源占用量大幅降低,模型被有效壓縮,加快了實際應用時的分析速度。
針對醫學超聲圖像分類任務的特點,分別選取 MobileNetV2、MobileNetV3small、Resnet8、VGG16、Resnet34和Resnet101模型。前3個模型屬于輕量級模型,適合從中選擇合適的學生網絡;后3個模型參數數量較多,適合作為教師網絡的選項,其參數量對比如表1所示。由表1可得,前3個模型與后3個模型相比,參數數量更少,具有更輕量級的特征。基于此,設計對比實驗從前3個模型中選擇合適的學生網絡,從后3個模型中選擇合適的教師網絡。MobileNetV1是Andrew等[10]提出的一種神經網絡結構,利用深度可分離卷積減少了參數數量,從而降低計算量,提高計算效率。這種神經網絡模型適合部署到移動端或嵌入式系統中,但其不足之處在于該網絡是一種較簡單的單通道結構,在任務中的準確率等性能表現往往不能達到預期目標。隨著Res-Net和DenseNet等網絡的提出,研究人員驗證了卷積層輸出的復用對提升網絡性能的有效性,MobileNetV2[11]應運而生,引入具有線性瓶頸的逆殘差結構模塊,一定程度改善了原有MobileN-etV1模型的不足。MobileNetV3[12]是該系列的最新版本,包含MobileNetV3Small和MobileNet-V3Large兩種模型,結合自動機器學習技術以及人工微調構建了更輕量級的模型。本文所述的Resnet8模型是對Resnet18模型進行改造而形成的層數和參數數量更少的輕量級模型,由7層卷積層與1層全連接層構成。由表1可知,在評價計算資源占用量指標的參數數量上,Resnet8模型比其他兩個輕量級模型具有一定優勢。

表1 不同分類模型參數量對比Table 1 Parameter comparison of different models
近年來,隨著大數據和深度神經網絡的不斷發展,在強大的GPU上訓練各種復雜的神經網絡模型已不是一件難事。但在實際部署時,因用戶端終端設備的運算能力有限,使得復雜模型的部署變得困難;在實際應用方面,深度神經網絡需要巨大的時間開銷對輸入數據進行處理,極大限制了實時分析能力?;诖?,研究人員逐漸將目光放在模型壓縮領域的各項研究上來。知識蒸餾作為模型壓縮的一大分支,也不斷取得各項進展。Bucilua等[13]首次提出模型壓縮的概念,這種方法能將有效信息從深度神經網絡模型轉移到訓練淺層模型,而不會顯著降低原有模型的精度。Romero等[14]提出FitNet,不僅利用教師網絡最后一層神經元的輸出信息,還利用了其中間層信息,成功訓練了較原有教師網絡更深但更窄的學生網絡。Hinton等[15]正式將這種學習模式定義為“知識蒸餾”,并提出了帶溫度系數T的Softmax函數。通過此函數將教師網絡的負樣本信息輸出的概率分布“蒸餾”出來,以對學生網絡的訓練提供額外的監督信息。他們在MNIST數據集上進行初步試驗,證明了帶溫度系數T的Softmax函數對深度神經網絡模型精度提高的有效性;并分別在語音數據集和大型數據集JFT上進行對比實驗,證明了知識蒸餾對模型精度提高和模型壓縮的有效性。受課程學習(curriculum learning)的啟發,Jin等[16]發現由學生網絡和教師網絡間的結構差異而造成蒸餾失敗的問題,并針對此提出了路由約束提示學習方法。2019年Phuong等[17]從理論上論述了知識蒸餾中學生網絡具有快速收斂的泛化邊界的原因,解釋了知識蒸餾的工作原理。2020年Ji等[18]分別從風險界、數據效率和不完美的老師3個角度進一步對廣義神經網絡上的知識蒸餾方法進行了理論解釋。目前的知識蒸餾方法已擴展到師生學習[14]、相互學習[19]、輔助教學[20]、終身學習[21]和自主學習[22]等模式。通過知識蒸餾訓練后的學生網絡,能保留甚至超過教師網絡的性能,網絡結構比教師網絡更簡單,減少了冗余參數,能有效提高實時分析性能,緩解終端部署和實際應用的困難。
雖然現有知識蒸餾方法已經取得了良好的效果,但也具有一定局限性。神經網絡的隱藏層特征表達往往蘊含了豐富的有用信息,現有方法僅依托于神經網絡最后一層神經元輸出信息,提供的監督信息是有限的。考慮到隱藏層特征表達和映射對深度神經網絡模型的影響,在傳統知識蒸餾方法中融入隱藏層的特征表達,將在一定程度上為學生網絡提供更豐富的監督信息。首先,在第1階段,通過對學生網絡預先進行訓練,使其學到教師網絡隱藏層豐富的特征表達,獲得優于原始學生網絡中間層的權重信息;第2階段,對已學習到教師網絡隱藏層特征表達的學生網絡進行知識蒸餾。同時,考慮到在教師網絡訓練時會產生很多中間模型(anchor points[16]),應使用結構相似的神經網絡模型作為學生網絡,以便于學生網絡從其中間模型更好地進行特征學習,從而提升知識蒸餾的效率。基于此,本文使用師生學習模式,提出改進的兩階段知識蒸餾方法。
1.2.1 知識蒸餾方法
眾所周知,基于深度神經網絡的分類任務都具有共同的特征:神經網絡最后一層神經元的輸出信息都會通過一個Softmax函數,如式(1)所示,將輸出信息變成概率分布,才能與標簽信息求其極大似然值,此種經過Softmax層直接輸出的信息被稱為硬標簽信息。

式中:qi是教師網絡輸出每一類的概率分布;zi是最后一層的神經元的輸出信息。
但由于Softmax函數只輸出概率分布的獨熱編碼,會均一化所有負樣本標簽的信息,將負樣本標簽的概率都還原為0,弱化了負樣本標簽的概率信息對模型訓練的影響。對此,Hinton等[15]提出帶溫度系數T的Softmax函數,如式(2)所示,此種經過溫度系數T的輸出信息被稱為軟標簽信息。最后一層神經元的輸出信息通過帶溫度系數T的Softmax函數后,能“蒸餾”出負樣本標簽的概率信息,為學生網絡的訓練提供更為豐富的“暗知識”,使學生網絡不只接受正樣本標簽的監督訓練。

式中:qi是教師網絡輸出每一類的軟標簽;zi是最后一層的神經元的輸出信息;T為溫度系數。根據不同的溫度蒸餾出的知識占比不同,需進行對比實驗選出最適合的溫度系數T。實驗數據圖片在不同溫度系數T下的預測概率如圖1所示。

圖1 不同溫度系數T下的概率分布Fig.1 Probability distribution with different parameter T
知識蒸餾方法基于軟標簽信息,在給定教師網絡的條件下,使用教師網絡最后一層神經元的輸出信息經過帶溫度系數T的Softmax函數,將其預測的所有類別的概率分布“蒸餾”,作為知識蒸餾的監督信息,指導學生網絡進行訓練。此方法為學生網絡的訓練提供了來自教師網絡的先驗知識,本質上是在學生網絡的訓練中加入一種新的正則化機制。具體流程圖如圖2所示。

圖2 知識蒸餾網絡結構Fig.2 Network structure of knowledge distillation
最終損失函數表達式為

式中:α為蒸餾強度;T為溫度系數;φ為KL散度;為學生網絡經過帶溫度系數T的Softmax層的權重矩陣;為教師網絡的權重矩陣; ψ 為交叉熵;Ws為學生網絡的硬標簽信息;Ylabel為輸入圖像的標簽信息。
1.2.2 改進的兩階段知識蒸餾方法
在第1階段,旨在提取教師網絡隱藏層的特征表達,將其作為此階段訓練的監督信息,以此來指導學生網絡的中間層權重的初始化,使其學習到教師網絡的隱藏層特征表達。第1階段流程如圖3所示。

圖3 第1階段網絡結構Fig.3 Network structure of the first stage
為獲得基于教師網絡隱藏層特征表達的學生網絡,Ws需凍結學生網絡的最后一層殘差連接層、池化層以及全連接層,僅訓練學生網絡的第一層至中間層h的權重矩陣。訓練集D={(x1,y1),(x2,y2),···,(xi,yi)}, 其 中 ,xi∈x? Rs×s×c即 通 道 數 為c的輸入大小為s×s的圖像數據,yi∈(0,5)即輸入的圖像數據的標簽信息,在本文中代表屬于編號為0~5的6類標簽;即教師網絡隱藏層前g層的特征表達;即學生網絡中間前h層的特征表達。為解決教師網絡前g層輸出特征與學生網絡前h層輸出特征表達的維度不匹配問題,加入隨機初始化權重的卷積回歸層。最終通過最小化損失函數來優化和卷積回歸層,其表達式為

式中:μ為教師網絡隱藏層函數;υ為學生網絡中間層函數;r為卷積回歸函數。為保證教師網絡隱藏層輸出特征和學生網絡卷積回歸層輸出特征維度一致,μ函數和r函數應具有相同的非線性性質。
經過第1階段訓練的學生網絡模型已經具有基于教師網絡隱藏層特征表達的中間層權重信息,類比教師教授學生知識的環節,相當于學生已經在教師布置的預習任務中獲得了一定量的知識儲備,為接下來的教師教學打下基礎,即為第2階段的知識蒸餾訓練做鋪墊。在第2階段,使用知識蒸餾方法再次對學生網絡進行訓練,通過最小化損失函數去優化學生網絡模型,不斷迭代,直至其損失函數值收斂。
1.2.3 學生網絡和教師網絡結構
綜合各種分類模型在胎兒超聲切面數據集上的性能,考慮到分類性能與計算資源占用量之間的平衡,將Resnet8作為學生網絡模型,其層數淺、參數量少,具體參數如表2所示;將ResNet101作為教師網絡模型,其層數深、參數量大,具體參數如表3所示。二者都具有良好的分類性能,且二者具有相同的殘差結構,可以方便學生網絡學習教師網絡的特征表達。

表2 學生模型網絡參數Table 2 Network parameters of student module

表3 教師模型網絡參數Table 3 Network parameters of teacher module
本實驗在GPU深度神經網絡集成計算平臺上進行,操作平臺為Ubuntu,使用的GPU為Nvidia GeForce RTX 3090Ti,顯存為 24 GB,使用的深度神經網絡框架為PyTorch。
實驗采用的數據是胎兒超聲切面數據集,由BCNatal收集,涵蓋了來自兩個醫學中心共計12 400張胎兒超聲切面圖像,圖像格式為PNG,均做了匿名處理。此數據集包含了6類切面類型,各類型切面圖像概覽如圖4所示。胎兒超聲切面圖像作為產前檢查的重要依據,均由專業的超聲科閱片醫師進行手動標注,每類切面的臨床意義其數據分布情況如表4所示,其中“其他類型”的存在可以提高模型對于不同類別在有干擾情況下的準確率。

圖4 胎兒超聲切面概覽Fig.4 Examples of fetal ultrasound section images

表4 數據集分布情況Table 4 Component distribution of datasets
本實驗將此數據集劃分為訓練集和測試集,其比例約為4∶1,具體分布情況如表5所示。為滿足不同分類模型對輸入圖像大小的限制,預先將圖像進行了拉伸縮放的預處理方式,將其調整為像素尺寸。同時,為了提高彩超圖像在基于ImageNet預訓練模型上的泛化能力,對原始超聲圖像進行歸一化等預處理。

表5 實驗數據集分布情況Table 5 Experimental component distribution of datasets
2.3.1 胎兒超聲切面分類實驗
針對本文所述的胎兒超聲切面分類任務的特點,使用不同深度神經網絡分類模型進行實驗,并評估各種模型在胎兒超聲切面數據集上的準確率及其損失函數值。在MobileNetV2、MobileN-etV3Small、Resnet8、VGG16、Resnet34、Resnet101模型上進行分類實驗。此階段的學習率為1×10?6,并設置Warmup機制,首先使用較大的學習率進行訓練,然后逐漸逼近實驗設置的學習率;本實驗中的損失函數使用交叉熵函數,優化方法采用自適應梯度下降法(adam)算法,此方法較隨機梯度下降(SGD)算法能取得更優的效果。
2.3.2 改進的兩階段知識蒸餾實驗
本方法對現有知識蒸餾方法進行改進,先進行第1階段訓練,將教師網絡隱藏層的輸出信息作為監督信息,將其遷移到學生網絡的中間層,使學生網絡的中間層獲得教師網絡的隱藏層特征表達作為監督信息訓練的初始權重。在第2階段,使用知識蒸餾方法對既得學生網絡模型進行二次訓練,整體訓練流程為
1) 將實驗所用數據集進行預處理和數據集劃分,分別用于訓練和測試;
2) 將訓練集輸入Resnet101模型,訓練教師網絡,使用測試集測試其分類性能,并保存性能最好的Resnet101模型作為教師網絡;
3) 固定教師網絡模型參數,將其隱藏層的輸出信息作為學生網絡中間層知識遷移的監督信息;
4) 凍結學生網絡的最后3層參數,即全連接層、最后池化層、和最后一層殘差網絡層。為解決教師網絡中間層輸出特征和學生網絡中間層輸出特征維度不一致的問題,需在學生網絡中間層的最后添加一個卷積回歸層。
5) 在第1階段,將訓練集輸入學生網絡,使用步驟3)獲得的教師網絡隱藏層特征表達作為監督信息,訓練學生網絡中間層Wpre和Wr。使用Lhint作為損失函數,通過反向傳播算法不斷迭代優化式(4),最小化其損失函數值,直到收斂。保存此階段訓練的學生網絡模型。
6) 用知識蒸餾方法對步驟5)獲得的學生網絡模型進行二次訓練。將學生網絡直接訓練的輸出作為硬標簽信息,結合教師網絡最后一層神經元的輸出經過帶溫度系數T的Softmax層后的軟標簽信息,將二者加權求和作為監督信息,最小化LKD來優化學生網絡的權重參數。通過反向傳播算法迭代式(3),最小化損失值,直到收斂。同時計算各種性能指標,保存性能最佳的學生網絡模型。
7) 用訓練好的學生網絡模型進行預測,測試其各項性能指標。
針對本任務,使用多個評價指標,即準確率(Acc)、宏精確率(MacroPre)、宏召回率(MacroRecall)、宏F1-score值(MacroF1)和前向傳播時的計算力(FLOPs)。Acc即預測正確的樣本類別占總樣本的比例,體現了模型的預測能力。精確率在二分類中即正確預測為該類別的占全部預測為該類別的比例,在多分類中,對每個標簽分別計算其精確率,再對其取算數平均(Macro),得到MacroPre;召回率在二分類中即正確預測為該類別的樣本數占全部實際為該樣本的比例,在多分類中,對每個標簽分別計算其召回率,再對其取算數平均,得到MacroRecall;F1值在二分類中,即對精確率和召回率的評估,在多分類中,對于每個標簽,分別計算其F1值,然后對其取算數平均,得到MacroF1。以上參數數值越大,分類模型的性能越好。FLOPs(fLoating point operations),即浮點運算數,衡量模型復雜度,體現了模型的運算能力。
分別計算每一類的 Prei、Recalli、F1的公式為

對既得的每一類的Pre和Recall以及F1,再使用Macro算法。先分別求出每個類別對應的值,再對其求算數平均值:

Acc可計算為

式中:TPi、TNi、FPi、FNi分別代表第i類別的正陽性、正陰性、假陽性和假陰性。
卷積核 FLOPs 的計算為
式中:H、W和Cin分別是輸入特征圖的高度、寬度和通道數;K是卷積核寬度 (假定卷積核長寬相等),Cout是輸出通道數。全連接層 FLOPs 的計算為

式中:I是輸入維數;O是輸出維數。
在本文中,為了凸顯本方法的有效性,還關注各個模型的網絡深度、顯存占用量、GPU占用率、損失值、模型文件大小等性能指標。
使用不同的分類模型,在相同的訓練集和驗證集上進行對比訓練,從其計算資源占用情況、準確率和損失值來衡量其分類性能。其中損失值為交叉熵函數的輸出,體現了分類模型的預測值和真實值之間的概率分布情況,本實驗中選用損失值低于0.1的指標作為分類器取得了好的效果的基準,具體情況如表6所示。

表6 各神經網絡模型性能對比Table 6 Experimental results with different neural network methods
由表6可知,在準確率性能的表現上,Resnet101模型較VGG16模型提升了2.98%個百分點,較Resnet34模型提升了4.35%,較Resnet8模型提升了5.28%,取得了最優的準確率性能表現。在計算資源占用量方面,Resnet101模型的網絡深度是Resnet8模型的近12倍,相比其他兩個較大的模型也增加了近3~5倍,訓練時的顯存占用量和GPU占用率和FLOPs也是最高的。綜上所述,充分表明Resnet101模型具有最好的分類性能的同時,其計算資源占用量也最龐大,適合作為教師網絡進行后續實驗,以驗證知識蒸餾方法能否在保留其分類性能的情況下將模型壓縮,并達到提升實時性分析能力的目的。
在學生網絡的選擇方面,應考慮模型本身的參數數量和計算資源占用情況,盡量減少冗余參數;同時,學生網絡本身的分類準確率也是重要指標之一,不能為了壓縮模型的大小,使得分類性能得不到保證。由表6可得,輕量級模型MobileNetV2、MobileNetV3Small和 Resnet8模型都具有較好的基本分類性能,但MobileNetSmall在準確率上的表現卻不如其他兩個模型。對比MobileNetV2和Resnet8的各項性能指標,雖然前者在準確率性能指標上超過后者1.05%,但其顯存占用量是后者的近8倍,在GPU占用率和FLOPs等性能上也處于劣勢。Resnet8模型有較好的分類性能,其在訓練時的計算資源占用量是更輕量級的,最終得到的模型文件大小較前兩者也是最小的?;诖?,本文綜合考慮準確率和計算資源占用量,同時假設與教師網絡模型具有相同殘差結構的Resnet8模型,能更好地學習到以Resnet101網絡特征表達作為監督信息的“知識”,選用Resnet8模型作為學生網絡,如表7所示。

表7 學生網絡和教師網絡計算資源占用Table 7 Occupation of computational resource of student and teacher models
綜上所述,Resnet101模型在胎兒超聲切面分類任務中具有最優異的分類性能,較Resnet8模型具有5.28%的準確率指標提升。綜合各種分類模型在胎兒超聲切面數據集上的性能,考慮到分類性能與計算資源占用量之間的平衡,將Resnet8作為學生網絡,將ResNet101作為教師網絡,此二者都具有良好的分類性能,且具有相同的殘差結構,可以方便學生網絡學習教師網絡的隱藏層特征表達,提高泛化能力。學生網絡模型和教師網絡模型在訓練時的資源占用情況對比如表8。

表8 不同溫度系數T的性能對比Table 8 Experimental results with different parameter T
由表8可知,Resnet8模型較Resnet101模型的訓練參數量減少了近4 210萬,在訓練時的顯存占用和GPU使用率上也更具優勢,模型文件大小也縮小近43倍,占用的計算資源不再冗余,FLOPs縮小了近198倍,提升了實際部署的可行性。
使用不同的溫度系數T進行對比實驗,選擇5、10、20、30、40作為實驗的溫度參數T,其分類可視化混淆矩陣如圖5所示。

圖5 不同溫度系數T的知識蒸餾分類混淆矩陣Fig.5 Confusion matrix of knowledge distillation classification with different parameter T

比較學生網絡在不同溫度系數T的訓練結果,選擇最合適的T作為整個實驗中的溫度系數T。由表9可得,當溫度系數T=5時,學生網絡在準確率、宏準確率、宏召回率、宏F1值等性能指標相比其他溫度系數T得到的模型是最具優勢的。同時,在溫度系數T=5的情況下,通過現有知識蒸餾方法訓練的學生網絡模型與學生網絡單獨訓練時得到的模型的性能相比,各項性能都得到了提升,較原有學生網絡的準確率提升5.16%,并不斷逼近教師網絡模型的準確率,在宏精確率和宏F1值上都超過了教師網絡模型,漲幅分別為1.19%和0.07%,且其計算資源占用量遠小于原始教師網絡?;诖耍x擇T=5作為實驗中的溫度參數T。

表9 不同優化方法的性能對比Table 9 Performance comparison of different models
3.3.1 第1階段有效性實驗
Resnet8模型與Resnet8+stage1模型相比,前者是Resnet8模型直接訓練得到的學生網絡模型;而后者是經過改進的兩階段知識蒸餾方法第1階段的Resnet8模型,再直接訓練得到的學生網絡模型。由圖6可知,Resnet8+stage1模型在除“其他類型”切面圖像外的各個分類的成功樣本數較Resnet8模型增加3~20例不等。由表9可知,Resnet8+stage1模型較Resnet8模型在準確率上提升了1.53%,宏召回率提高3.92%,宏F1值提高2.2%,僅在宏精確率上降低0.07%。以上實驗結果充分表明了改進的兩階段知識蒸餾方法的第1階段訓練的必要性和有效性,具有相同殘差結構的學生網絡在第1階段的訓練中,從教師網絡的隱藏層特征表達能學習到有用的權重信息。

圖6 混淆矩陣對比Fig.6 Confusion matrix with different methods
3.3.2 第2階段有效性實驗
Resnet8+stage1模型與Resnet8+Hint模型相比,前者是經過改進的兩階段知識蒸餾方法第1階段的Resnet8模型,再直接訓練得到的學生網絡模型;后者是經過改進的兩階段知識蒸餾方法的學生網絡模型。由圖7可知,Resnet8+Hint模型較Resnet8+stage1模型,在每個類別正確的分類樣本數的最大增幅達到了27.2%(腹部類切面圖像);由表9可知,Resnet8+Hint模型較Resnet8+stage1模型的各項指標性能有了大幅提升,準確率提升4.84%,宏精確率提升5.63%,宏召回率提升6.3%,宏F1值提升8.21%,以上實驗結果充分表明改進的兩階段知識蒸餾方法的第2階段訓練的有效性。

圖7 混淆矩陣對比Fig.7 Confusion matrix with different methods
Resnet8+KD模型與Resnet8+Hint模型相比,前者是經過傳統知識蒸餾方法訓練得到的學生網絡模型,后者是經過改進的兩階段知識蒸餾方法訓練得到的學生網絡模型。由圖8可知,Resnet8+Hint模型的主要提升在于“胎兒股骨”和“胎兒胸腔”切面的分類結果上,而Resnet8+KD模型在這兩類上的分類性能是次與前者的。由表9可知,Resnet8+Hint模型的準確率較Resnet8+KD模型提升1.21%,宏精確率提升了0.4%,宏召回率提升了1.83%,宏F1值提升了1.18%,以上各項性能指標的提升都充分證明了改進的兩階段知識蒸餾方法的有效性。

圖8 混淆矩陣對比Fig.8 Confusion matrix with different methods
經過改進的兩階段知識蒸餾方法的學生網絡模型在各項分類指標都取得了大幅提升,較原有學生網絡模型,準確率提升6.37%,其他各項性能也得到了明顯提升。較傳統知識蒸餾方法訓練的學生網絡模型,準確率提升1.21%,且在準確率指標上超過教師網絡模型1.09%。實驗表明,在改進的兩階段知識蒸餾方法的第1階段,與教師網絡具有相同殘差結構的學生網絡能以教師網絡的隱藏層特征表達作為監督信息,獲得良好的中間層初始權重,為第2階段知識蒸餾打下了良好基礎。同時,使用層數淺、參數量較少的學生網絡,可以有效避免模型因層數過深、參數量過大產生的過擬合問題,提升了模型的泛化能力,在保留分類性能的同時成功將模型參數量進行壓縮。綜上所述,充分表明了改進的兩階段知識蒸餾方法在提升學生網絡模型各項性能的有效性。
針對醫學圖像的特點,考慮到深度神經網絡模型在實際應用時的實時性能,本文提出了一種用于胎兒超聲切面識別的改進的兩階段知識蒸餾方法。利用兩種結構相似,但計算量相差較大的殘差網絡,即Resnet8作為學生網絡,Resnet101作為教師網絡,通過現有知識蒸餾方法和改進的兩階段知識蒸餾方法在胎兒超聲切面數據集上進行實驗,分別達到97.38%和98.59%的準確率,后者在各項分類的性能指標上都取得了突破,由此可以得出改進的兩階段知識蒸餾方法優于現有知識蒸餾方法的結論。通過對比實驗,表明改進的兩階段知識蒸餾方法的第1階段,在具有相同殘差結構的學生網絡和教師網絡之間進行隱藏層特征遷移的必要性和有效性。通過改進的兩階段知識蒸餾方法得到的學生網絡模型Resnet8+Hint在準確率和各項性能上遠超原有學生網絡模型,在分類性能方面超過了教師網絡模型,在計算資源占用量方面,大幅降低了對計算資源的需求,同時加快了實際應用時的分析速度,表明本文所述的改進的兩階段知識蒸餾方法的有效性。