YoloV8改進策略:蒸餾改進|CWDLoss|使用蒸餾模型實現YoloV8無損漲點|特征蒸餾

摘要

在本文中,我們成功應用蒸餾策略以實現YoloV8小模型的無損性能提升。我們采用了CWDLoss作為蒸餾方法的核心,通過對比在線和離線兩種蒸餾方式,我們發現離線蒸餾在效果上更為出色。因此,為了方便廣大讀者和研究者應用,本文所描述的蒸餾方法僅保留了離線蒸餾方案。此外,我們還提供了相關論文的譯文,旨在幫助大家更深入地理解蒸餾方法的原理和應用。

論文翻譯:《用于密集預測任務的通道知識蒸餾》

https://arxiv.org/pdf/2011.13256
知識蒸餾(KD)已被證明是訓練緊湊密集預測模型的簡單有效工具。通過從大型教師網絡轉移而來的額外監督來訓練輕量級學生網絡。大多數先前的針對密集預測任務的KD變體都在空間域中對學生網絡和教師網絡的激活圖進行對齊,通常是通過在每個空間位置標準化激活值并最小化逐點和/或成對差異來實現的。與先前的方法不同,我們提出對每個通道的激活圖進行標準化以獲得軟概率圖。通過簡單地最小化兩個網絡的通道概率圖之間的Kullback-Leibler(KL)散度,蒸餾過程更關注于每個通道的最顯著區域,這對于密集預測任務來說是非常有價值的。

我們在一些密集預測任務上進行了實驗,包括語義分割和對象檢測。實驗表明,我們提出的方法在性能上顯著優于最先進的蒸餾方法,并且在訓練過程中需要的計算成本更低。特別地,我們在COCO數據集上將RetinaNet檢測器(ResNet50主干)的mAP提高了3.4%,在Cityscapes數據集上將PSPNet(ResNet 18主干)的mIoU提高了5.81%。代碼可在以下網址獲取:
https://git.io/Distiller

在這里插入圖片描述

1、引言

密集預測任務是計算機視覺中的一組基礎任務,包括語義分割[48,6]和對象檢測[21,30]。這些任務需要在像素級別上學習強大的特征表示,以實現對復雜場景的理解。因此,最先進的模型通常需要高計算成本,這使得它們難以部署到移動設備上。因此,針對密集預測任務設計的緊湊網絡引起了廣泛關注。此外,先前的工作已經研究了通過使用知識蒸餾(KD)來有效訓練輕量級網絡。緊湊網絡在大教師網絡的監督下進行訓練,可以獲得更好的性能。對于圖像分類任務,已經提出了許多開創性的工作[16,2]并進行了深入研究。

密集預測任務是逐像素預測問題,比圖像級分類更具挑戰性。先前的研究[25,20]發現,直接將分類中的KD方法[16,2]轉移到語義分割可能無法獲得令人滿意的結果。嚴格對齊教師和學生網絡之間的逐點分類分數或特征圖可能會施加過于嚴格的約束,導致次優解。
在這里插入圖片描述

最近的工作[25,24,18]關注于加強不同空間位置之間的相關性。如圖2(a)所示,每個空間位置的激活值{}^{1}被標準化。然后,通過聚合不同空間位置的一個子集來執行一些特定于任務的關系,例如成對關系[25,35]和類間關系[18]。這樣的方法可能在捕獲空間結構信息方面比逐點對齊更好,并提高學生網絡的性能。

然而,在激活圖中,每個空間位置對知識轉移的貢獻是相等的,這可能會從教師網絡中帶來冗余信息。

在這項工作中,我們提出了一種新穎的針對密集預測任務的通道級知識蒸餾方法,通過標準化每個通道的激活圖來實現,如圖2(b)所示。然后,我們最小化了教師網絡和學生網絡之間標準化通道激活圖的非對稱Kullback-Leibler(KL)散度,這些激活圖被轉換為每個通道的分布。我們在圖2?中展示了通道級分布的一個示例。每個通道的激活傾向于編碼場景類別的顯著性。對于每個通道,學生網絡被引導更多地關注于模仿具有顯著激活值的區域,從而在密集預測任務中實現更準確的定位。例如,在對象檢測中,學生網絡更加關注于學習前景對象的激活。

最近的一些工作利用了通道中包含的知識。通道蒸餾[50]提出將每個通道的激活轉換為一個聚合的標量,這對于圖像級分類可能有所幫助,但空間聚合丟失了所有空間信息,因此不適合密集預測。其他工作,如MGD[41]、通道交換[33]和CSC[26]顯示了通道級信息的重要性。MGD將教師通道與學生通道進行匹配,并將其視為一個分配問題來解決。通道交換[33]使用一個融合模塊來動態地在不同模態的子網絡之間交換通道。

我們展示了針對每個通道的簡單標準化操作可以極大地提高基于空間蒸餾的基線性能。所提出的通道級蒸餾方法簡單且易于應用于各種任務和網絡結構。我們總結我們的主要貢獻如下:

  • 與現有的空間蒸餾方法不同,我們為密集預測任務提出了一種新穎的通道級蒸餾范式。我們的方法簡單但有效。
  • 所提出的通道級蒸餾在語義分割和對象檢測方面顯著優于最先進的KD方法。
  • 我們在四個基準數據集上展示了使用不同網絡結構在語義分割和對象檢測任務上的一致改進,證明了我們的方法是通用的。鑒于其簡單性和有效性,我們相信我們的方法可以作為密集預測任務的強大基線KD方法。

2、相關工作

在知識蒸餾領域,大多數工作都集中在分類任務上[11,12,16,27,36,38,45]。然而,這里的工作旨在研究針對密集預測任務的高效和有效的蒸餾方法,而不僅僅是像分類任務中那樣簡單地應用逐像素蒸餾。

語義分割的知識蒸餾。在[35]中,構建了一個局部相似度圖來最小化教師網絡和學生網絡之間分割邊界信息的差異,其中使用中心像素與其8個鄰域像素之間的歐幾里得距離作為傳輸的知識。Liu等人[24,25]提出了兩種方法來捕捉像素之間的結構化信息,包括像素之間的成對相似性和由判別器捕獲的全局相關性。在[34]的工作中,重點在于具有相同標簽的像素之間的類內特征變化,其中通過構建每個像素的特征與其對應的類級原型之間的余弦距離集來傳輸結構知識。He等人[14]則采用了一個特征適配器來減輕教師網絡和學生網絡之間的特征不匹配問題。

此外,正如您所提到的,通道級的知識蒸餾方法在密集預測任務中也逐漸受到關注。例如,一些方法通過標準化每個通道的激活圖并最小化教師網絡和學生網絡之間標準化通道激活圖的非對稱KL散度來改進知識蒸餾的效果。這種方法能夠讓學生網絡更加關注于模仿具有顯著激活值的區域,從而實現更準確的定位。與現有的空間蒸餾方法相比,通道級蒸餾在語義分割和對象檢測方面表現出了顯著的性能提升,并證明了其在不同網絡結構和基準數據集上的通用性。

目標檢測的知識蒸餾。在目標檢測任務中,許多方法發現區分前景和背景區域在蒸餾過程中非常重要。例如,MIMIC [20]通過 L 2 L_{2} L2?損失強制學生網絡的RPN內部特征圖與教師網絡相似,并發現直接應用逐像素損失可能會損害目標檢測的性能。Wang等人 [32] 提出蒸餾對象錨點位置附近的細粒度特征。Zhang和Ma [43] 使用注意力生成的掩碼來區分前景和背景,取得了顯著的效果。

然而,與這些方法不同,我們的方法通過柔和地對齊通道激活來區分前景和背景區域。具體來說,我們關注每個通道中包含的知識。最近的一些工作 [50] 也開始關注每個通道中包含的知識。例如,Zhou等人計算每個通道中激活的平均值,并在分類任務中對每個通道的加權差異進行對齊。CSC [26] 計算所有空間位置和所有通道之間的成對關系以傳輸知識。而Channel exchanging [33] 提出每個通道中包含的信息是通用的,可以在不同的模態之間共享。

3、我們的方法

我們首先回顧文獻中相關的空間知識蒸餾方法。

3.1、空間蒸餾

現有的KD方法通常采用逐點對齊或對齊空間位置之間的結構化信息,這可以表示為:

? ( y , y S ) + α ? φ ( ? ( y T ) , ? ( y S ) ) \ell(y, y^{S}) + \alpha \cdot \varphi(\phi(y^{T}), \phi(y^{S})) ?(y,yS)+α?φ(?(yT),?(yS))

在這里,任務損失 ? ( ? ) \ell(\cdot) ?(?)仍然被應用,其中 y y y是真實標簽。例如,在語義分割中,通常使用交叉熵損失。為了稍微濫用符號,這里 y S y^{S} yS y T y^{T} yT分別代表學生網絡和教師網絡的logits或內部激活。 α \alpha α是一個超參數,用于平衡損失項。下標 T {}^{T} T S {}^{S} S分別表示教師網絡和學生網絡。我們在表1中列出了代表性的空間蒸餾方法。

這些方法的簡要概述如下。注意力轉移(Attention Transfer,AT)[42]使用注意力掩碼將特征圖壓縮為單個通道以進行蒸餾。逐像素損失(Pixel-wise Loss)[17]直接對齊逐點的類別概率。局部親和力(Local Affinity)[35]通過中心像素與其8個鄰域像素之間的距離來計算。成對親和力(Pairwise Affinity)[25, 14, 24]被用來傳遞像素對之間的相似性。計算每個像素的特征與其對應的類別原型之間的相似性以傳遞結構知識[34]。在[25, 24]中的整體損失使用對抗性方案來對齊兩個網絡特征圖之間的高階關系。請注意,最后四項考慮了像素之間的相關性。如表1所示,現有的KD方法都是空間蒸餾方法。所有這些方法都將空間位置上的 N N N個通道激活值作為特征向量進行操作。
在這里插入圖片描述

3.2、通道蒸餾

為了更好地利用每個通道中的知識,我們提出了在教師網絡和學生網絡之間柔和地對齊對應通道激活的方法。為此,我們首先將一個通道的激活轉換為概率分布,這樣我們就可以使用概率距離度量(如KL散度)來衡量差異。如圖2?所示,不同通道的激活傾向于編碼輸入圖像的場景類別的顯著性。此外,經過良好訓練的語義分割教師網絡顯示出每個通道清晰的特定于類別的掩碼激活圖,如圖1右側所示。在這里,我們提出了一種新穎的通道蒸餾范式,以指導學生從訓練有素的教師那里學習知識。

當我們使用LaTeX格式來表示數學符號時,我們會使用$符號來包圍LaTeX代碼。對于您提供的文本,我們可以將其轉化為LaTeX格式,并用$符號包圍起來。以下是轉化后的結果:

教師網絡和學生網絡分別表示為 T T T S S S,來自 T T T S S S 的激活圖分別為 y T y^{T} yT y S y^{S} yS。通道蒸餾損失可以一般性地表示為:

φ ( ? ( y T ) , ? ( y S ) ) = φ ( ? ( y c T ) , ? ( y c S ) ) . \varphi\left(\phi\left(y^{T}\right), \phi\left(y^{S}\right)\right)=\varphi\left(\phi\left(y_{c}^{T}\right), \phi\left(y_{c}^{S}\right)\right) \,. φ(?(yT),?(yS))=φ(?(ycT?),?(ycS?)).

? ( ? ) \phi(\cdot) ?(?) 用于將激活值轉換為概率分布,具體為:

? ( y c ) = exp ? ( y c , i T ) ∑ i = 1 W ? H exp ? ( y c , i T ) , \phi\left(y_{c}\right)=\frac{\exp \left(\frac{y_{c, i}}{T}\right)}{\sum_{i=1}^{W \cdot H} \exp \left(\frac{y_{c, i}}{T}\right)} \,, ?(yc?)=i=1W?H?exp(Tyc,i??)exp(Tyc,i??)?,

其中 c = 1 , 2 , … , C c=1,2,\ldots,C c=1,2,,C 索引通道; i i i 索引通道中的空間位置。 T T T 是一個超參數(溫度)。如果教師和學生之間的通道數不匹配,我們會使用一個 1 × 1 1 \times 1 1×1 的卷積層來上采樣學生網絡的通道數。 φ ( ? ) \varphi(\cdot) φ(?) 評估了來自教師網絡和學生網絡的通道分布之間的差異。我們使用 KL 散度:

φ ( y T , y S ) = T 2 C ∑ c = 1 C ∑ i = 1 W ? H ? ( y c , i T ) ? log ? [ ? ( y c , i T ) ? ( y c , i S ) ] . \varphi\left(y^{T}, y^{S}\right)=\frac{\mathcal{T}^{2}}{C} \sum_{c=1}^{C} \sum_{i=1}^{W \cdot H} \phi\left(y_{c, i}^{T}\right) \cdot \log \left[\frac{\phi\left(y_{c, i}^{T}\right)}{\phi\left(y_{c, i}^{S}\right)}\right] \,. φ(yT,yS)=CT2?c=1C?i=1W?H??(yc,iT?)?log[?(yc,iS?)?(yc,iT?)?].

KL 散度是一個不對稱度量。從上面的方程中我們可以看到,如果 ? ( y c , i T ) \phi\left(y_{c, i}^{T}\right) ?(yc,iT?) 很大, ? ( y c , i S ) \phi\left(y_{c, i}^{S}\right) ?(yc,iS?) 也應該盡可能大以最小化 KL 散度。否則,如果 ? ( y c , i T ) \phi\left(y_{c, i}^{T}\right) ?(yc,iT?) 非常小,KL 散度就不會太關注最小化 ? ( y c , i S ) \phi\left(y_{c, i}^{S}\right) ?(yc,iS?) 的值。

KL散度是一個非對稱度量。從方程(4)中我們可以看到,如果 ? ( y c , i T ) \phi\left(y_{c, i}^{T}\right) ?(yc,iT?)很大,為了最小化KL散度, ? ( y c , i S ) \phi\left(y_{c, i}^{S}\right) ?(yc,iS?)也應該盡可能地大,與 ? ( y c , i T ) \phi\left(y_{c, i}^{T}\right) ?(yc,iT?)一樣大。否則,如果 ? ( y c , i T ) \phi\left(y_{c, i}^{T}\right) ?(yc,iT?)非常小,KL散度在最小化 ? ( y c , i S ) \phi\left(y_{c, i}^{S}\right) ?(yc,iS?)時就不會太關注。因此,學生網絡傾向于在前景顯著區域產生類似的激活分布,而教師網絡背景區域對應的激活對學習的影響較小。我們假設KL的這種非對稱性質有利于密集預測任務的KD學習。

4、實驗

在本節中,我們首先描述實現細節和實驗設置。然后,我們將我們的通道級蒸餾方法與其他最先進的蒸餾方法進行比較,并在語義分割任務上進行消融研究。最后,我們在語義分割和對象檢測任務上展示了使用不同基準和學生網絡結構時的一致改進。

4.1、實驗設置

數據集。我們在這里使用了三個公開的語義分割基準數據集,分別是Cityscapes [8]、ADE20K [49]和Pascal VOC [10]。此外,我們還將提出的蒸餾方法應用于MS-COCO 2017 [23]上的對象檢測任務,這是一個包含超過120k張80個類別的圖像的大規模數據集。

Cityscapes 數據集用于城市場景語義理解。它包含5,000張精細標注的圖像,其中2,975/500/1,525張圖像分別用于訓練/驗證/測試,提供了30個常見類別,其中19個類別用于評估和測試。每張圖像的尺寸為2048x1024像素。這些圖像來自50個不同的城市。在我們的實驗中,我們沒有使用粗略標注的數據。

Pascal VOC 數據集包含 1 , 464 / 1 , 449 / 1 , 456 1,464 / 1,449 / 1,456 1,464/1,449/1,456 張圖像用于訓練/驗證/測試。它包含20個前景對象類別和一個額外的背景類別。此外,該數據集通過額外的粗略標注進行了擴充,其中包含10,582張訓練圖像。我們使用訓練分割進行訓練,并在21個類別上通過驗證集測量最終性能。

ADE20K 數據集涵蓋了150個不同場景的類別。它包含 20 K / 2 K / 3 K 20 \text{K} / 2 \text{K} / 3 \text{K} 20K/2K/3K 張圖像用于訓練、驗證和測試。在我們的實驗中,我們報告了驗證集上的分割精度。

評估指標。為了評估我們在語義分割上提出的通道分布蒸餾方法的性能和效率,我們遵循先前的工作[18,24],在所有實驗中通過單尺度設置下的平均交并比(mIoU)來測試每種策略。每秒浮點運算次數(FLOPs)是在固定輸入大小為 512 × 1024 512 \times 1024 512×1024 像素的情況下計算的。此外,對于Pascal VOC和ADE20K,我們列出了平均類別準確率(mAcc)。為了評估在對象檢測上的性能,我們報告了平均精度(mAP)、推理速度(FPS)和模型大小(參數),遵循[43]中的工作。

實現細節。對于語義分割,教師網絡在所有實驗中都是使用ResNet 101(PSPNet-R101)作為骨干網絡的PSPNet。我們采用了幾種不同的架構,包括PSPNet[48]、使用ResNet18和MobileNetV2作為骨干網絡的Deeplab[44]作為學生網絡,以驗證我們方法的有效性。

在消融研究中,我們基于以ResNet 18為骨干網絡的PSPNet(PSPNet-R18)來分析我們方法的有效性。除非另有說明,學生網絡的每張訓練圖像都被隨機裁剪為 512 × 512 512 \times 512 512×512像素。批處理大小設置為8,訓練步數設置為 40 K 40 \text{K} 40K。在所有實驗中,我們設置溫度參數 T = 4 \mathcal{T}=4 T=4,對于logits圖的損失權重 α = 3 \alpha=3 α=3,對于特征圖的損失權重 α = 50 \alpha=50 α=50。對于對象檢測,我們采用與[43]中相同的教師網絡、學生網絡和訓練設置。

4.2、與最近的知識蒸餾方法比較

為了驗證我們提出的通道蒸餾方法的有效性,我們將我們的方法與以下當前流行的蒸餾方法進行了比較:

  • 注意力轉移(Attention Transfer, AT) [42]:Sergey等人計算每個空間位置所有通道的和,以獲得單個通道注意力圖。他們使用 L 2 L_{2} L2?損失來最小化注意力圖之間的差異。
  • 局部親和力(Local Affinity, LOCAL) [35]:對于每個像素,構建一個局部相似度圖,該圖考慮了該像素與其8個鄰域像素之間的相關性。同樣,使用 L 2 L_{2} L2?損失來最小化局部親和力圖之間的差異。
  • 像素級蒸餾(Pixel-wise Distillation, PI) [25,24,34,7]:使用KL散度來對齊兩個網絡中每個空間位置的分布。
  • 成對蒸餾(Pair-wise Distillation, PA) [25,14,24]:考慮了所有像素對之間的相關性。
  • 類內特征變化蒸餾(Intra-class Feature Variation Distillation, IFVD) [34]:將每個像素的特征與其對應的類原型之間的相似度集合視為類內特征變化,以傳遞結構知識。
  • 全局蒸餾(Holistic Distillation, HO) [25,24,34]:通過鑒別器計算特征圖的全局嵌入,用于最小化高階關系之間的差異。

我們在內部特征圖和最終logits圖上應用了所有這些流行的蒸餾方法。在所有實驗中,都應用了傳統的交叉熵損失。表2報告了空間蒸餾方法的計算復雜度和性能。

給定的輸入特征圖(logits圖)的大小為 h f × w f × c ( h s × w s × n ) h_{f} \times w_{f} \times c\left(h_{s} \times w_{s} \times n\right) hf?×wf?×c(hs?×ws?×n),其中 h f ( h s ) × w f ( w s ) h_{f}\left(h_{s}\right) \times w_{f}\left(w_{s}\right) hf?(hs?)×wf?(ws?) 是特征圖(logits圖)的形狀。 c c c 是通道數, n n n 是類別數。

如表2所示,所有蒸餾方法都能提高學生網絡的性能。我們的通道蒸餾方法在所有空間蒸餾方法中表現最好。我們的方法比最佳的空間蒸餾方法(AT)高出2.5%。此外,我們的方法更加高效,因為它在訓練階段需要的計算成本比其他方法更少。

此外,我們在表3中列出了我們的方法與兩種最近的先進方法PA [25]和IFVD [18]的詳細類別IoU(Intersection over Union,交并比)。這些方法旨在在語義分割中轉移結構信息。我們的方法顯著提高了多個對象的類別準確性,如交通燈、地形、墻壁、卡車、公共汽車和火車,這表明通道分布可以很好地轉移結構知識。

4.3、消融研究

在本節中,我們展示了通道蒸餾的有效性,并討論了語義分割中超參數的選擇。基線學生模型是PSPNet-R18,教師模型是PSPNet-R101。所有結果均在Cityscapes驗證集上進行評估。

通道蒸餾的有效性。歸一化的通道概率圖和不對稱KL散度在我們的蒸餾方法中起著重要作用。我們通過四種不同的變體進行實驗,以展示表4中提出的方法的有效性。

所有蒸餾方法都應用于相同的激活圖作為輸入,并且我們使用與第4.1節中描述的相同的訓練方案。
'PI’代表像素級知識蒸餾,它對每個空間位置的激活進行歸一化。' L 2 w / o N O R M L2 w/o NORM L2w/oNORM’表示我們直接最小化來自兩個網絡的特征圖之間的差異,這種方法在所有通道的所有位置都平等地考慮差異。'Bhat’是Bhattacharyya距離[3],它是一個對稱分布度量,用于對齊每個通道中的差異。

從表4中我們可以看到,使用不對稱KL散度來衡量歸一化通道差異的方法取得了最佳性能。請注意,由于KL散度是不對稱的,因此學生和教師的輸入不能互換。我們嘗試在KL散度中改變輸入的順序,但訓練并沒有收斂。

溫度參數和損失權重的影響。我們通過在不同的損失權重α下調整溫度參數 T \mathcal{T} T來改變通道概率圖。實驗在logits圖上進行。結果如圖3所示。
在這里插入圖片描述

所有結果都是三次運行的平均值。損失權重設置為1, 2, 3,而 T ∈ [ 1 , 5 ] \mathcal{T} \in [1,5] T[1,5]。如果我們增加 T \mathcal{T} T,則分布會變得更軟。

從圖中可以看出,較軟的概率圖可能有助于知識蒸餾。此外,在一定范圍內,性能是穩定的。如果 T \mathcal{T} T設置得太小,性能似乎會下降。在這種情況下,該方法僅關注有限的顯著像素。我們在Cityscapes驗證集上使用PSPNet 18時,在 T \mathcal{T} T=4和 α = 3 \alpha=3 α=3時取得了最佳性能。

4.4、語義分割

我們展示了所提出的通道蒸餾方法可以與其他先前的語義分割蒸餾方法相結合,即用于分割/密集預測的結構知識蒸餾(SKDS [24] 和 SKDD [25])以及類內特征變化蒸餾(IFVD [34]),并且適用于各種學生網絡。

我們在logits圖(Ours-logits)和特征圖(Ours-feature)上都使用了所提出的通道蒸餾。同時,根據先前的方法[25,18],我們也包括了logits圖上的像素級蒸餾(PI)和整體蒸餾(HO)。
在這里插入圖片描述

我們首先在Cityscapes數據集上評估了我們方法的性能。使用不同編碼器和解碼器的各種學生網絡來驗證我們方法的有效性。編碼器包括ResNet18(在ImageNet上預訓練權重進行初始化,以及通道減半的ResNet18變體[13]),解碼器包括PSPhead [48]和ASPPhead [6]。表5展示了在Cityscapes上的結果。Pascal VOC [10]和ADE20K [49]上的實驗結果在補充材料中給出。

我們的方法在五個學生網絡和三個基準測試中均優于SKD和IFVD,這進一步表明通道蒸餾在語義分割中是有效的。

對于與教師具有相同架構類型的學生,即 PSPNet-R 1 8 ° ( 0.5 ) \text{PSPNet-R} 18^{\circ}(0.5) PSPNet-R18°(0.5) PSPNet-R 1 8 ° \text{PSPNet-R} 18^{\circ} PSPNet-R18° PSPNet-R18 ? \text{PSPNet-R18}^{\star} PSPNet-R18?,改進更為顯著。對于與教師架構類型不同的學生,即 Deeplab-R 1 8 ° ( 0.5 ) \text{Deeplab-R} 18^{\circ}(0.5) Deeplab-R18°(0.5) Deeplab-R18 ? \text{Deeplab-R18}^{\star} Deeplab-R18?,我們的方法與SKDS和IFVD相比也實現了一致的改進。因此,我們的方法能夠很好地適用于不同的教師和學生網絡。

緊湊模型容量的學生網絡( PSPNet-R18 ° ( 0.5 ) \text{PSPNet-R18}^{\circ}(0.5) PSPNet-R18°(0.5))顯示出比容量更大的學生( PSPNet-R18 ? \text{PSPNet-R18}^{\star} PSPNet-R18?)更差的蒸餾性能( 68.57 % 68.57\% 68.57% vs 75.90 % 75.90\% 75.90%)。這可能是因為小網絡的能力與教師網絡相比有限,無法充分吸收當前任務的知識。對于 PSPNet-R18 \text{PSPNet-R18} PSPNet-R18,使用在ImageNet上訓練的權重進行初始化的學生獲得了最好的蒸餾性能(從 70.09 % 70.09\% 70.09%提高到 75.90 % 75.90\% 75.90%),進一步證明了良好的初始化參數有助于蒸餾。因此,更好的學生會帶來更好的蒸餾性能,但隨著教師和學生網絡之間的差距減小,這種改進變得不那么顯著。

4.5、目標檢測

我們也將我們的通道蒸餾方法應用于目標檢測任務。實驗在MS COCO2017 [23]上進行。

為了驗證我們方法的有效性,我們使用了不同范式下的各種學生網絡,即基于錨點的兩階段方法(Faster RCNN [28])、基于錨點的一階段方法(RetinaNet [21])和無錨點方法(RepPoints [37])。為了進行公平的比較,我們使用了與[43]中相同的教師和相同的超參數進行實驗。

唯一的改動是將特征對齊改為了我們的通道蒸餾。表6報告了實驗結果。從表中可以看出,我們的方法在強大的基線學生網絡上實現了一致的改進(大約提高了 3.4 % 3.4\% 3.4%的mAP)。與先前的最先進蒸餾方法[43]相比,我們簡單的通道蒸餾表現得更好,尤其是在無錨點方法上。我們提高了RepPoints的性能 3.4 % 3.4\% 3.4%,而Zhang等人只提高了 2 % 2\% 2%。此外,我們可以看到所提出的蒸餾方法能更顯著地提高 A P 75 AP_{75} AP75?

5、結論

在本文中,我們為密集預測任務提出了一種新穎的通道蒸餾方法。與先前的空間蒸餾方法不同,我們將每個通道的激活值歸一化為概率圖。然后,應用非對稱KL散度來最小化教師網絡和學生網絡之間的差異。實驗結果表明,所提出的蒸餾方法在四個公共基準數據集上,對于不同網絡主干結構的語義分割和目標檢測任務,均一致優于現有的最先進蒸餾方法。

此外,我們的消融實驗證明了通道蒸餾的有效性和效率,并且它可以進一步補充空間蒸餾方法。我們希望所提出的簡單而有效的蒸餾方法能夠作為許多其他密集預測任務(包括實例分割、深度估計和全景分割)中有效訓練緊湊網絡的有力基線。

附錄

A、在Pascal VOC和ADE20K上的結果

為了進一步證明所提出的通道分布蒸餾(CD)的有效性,我們僅在Pascal VOC和ADE20K的特征圖上應用所提出的CD作為最終結果。實驗結果分別在表7和表8中報告。我們使用了具有不同編碼器和解碼器的多個學生網絡變體來驗證我們方法的有效性。這里,編碼器包括ResNet18和MobileNetV2,解碼器包括PSPhead和ASPP-head。

Pascal VOC。我們在Pascal VOC數據集上評估了我們方法的性能。蒸餾結果列在表7中。我們提出的CD提高了無蒸餾的PSPNet-R18性能 3.83 % 3.83\% 3.83%,在SKDS和IFVD的基礎上分別提升了 1.51 % 1.51\% 1.51% 1.21 % 1.21\% 1.21%。在使用不同編碼器和解碼器的其他學生網絡上,我們也取得了一致的改進。使用我們的方法,PSPNet-MBV2的增益為 3.55 % 3.55\% 3.55%,在SKDS和IFVD的基礎上分別提升了 1.98 % 1.98\% 1.98% 1.20 % 1.20\% 1.20%。對于Deeplab-R18,我們的CD將學生網絡從 66.81 % 66.81\% 66.81%提升至 69.97 % 69.97\% 69.97%,在SKDS和IFVD的基礎上分別提升了 1.84 % 1.84\% 1.84% 1.55 % 1.55\% 1.55%。此外,使用我們的蒸餾方法,Deeplab-MBV2的性能從 50.80 % 50.80\% 50.80%提升至 54.62 % 54.62\% 54.62%,在SKDS和IFVD的基礎上分別提升了 2.51 % 2.51\% 2.51% 1.23 % 1.23\% 1.23%
在這里插入圖片描述

ADE20K。我們也在ADE20K數據集上評估了我們的方法,以進一步證明CD比其他結構知識蒸餾方法更有效。結果如表8所示。我們提出的CD將無蒸餾的PSPNetR18提升了 3.83 % 3.83\% 3.83%,并在多個方面分別超越了SKDS和IFVD 1.51 % 1.51\% 1.51% 1.21 % 1.21\% 1.21%。對于具有不同編碼器和解碼器的其他學生網絡,也始終實現了顯著的性能提升。對于PSPNetMBV2,我們的方法取得了 27.97 % 27.97\% 27.97%的卓越性能,分別比學生網絡、SKDS和IFVD提升了 4.82 % 4.82\% 4.82% 3.18 % 3.18\% 3.18% 2.64 % 2.64\% 2.64%。使用我們的CD,Deeplab-R18的增益為 2.48 % 2.48\% 2.48%,分別超越了SKDS和IFVD 1.85 % 1.85\% 1.85% 0.84 % 0.84\% 0.84%。最后,使用我們的通道蒸餾,Deeplab-MBV2的性能從 24.98 % 24.98\% 24.98%提高到 29.18 % 29.18\% 29.18%,分別比SKDS和IFVD提升了 3.08 % 3.08\% 3.08% 1.93 % 1.93\% 1.93%

B、更多的可視化結果

我們在圖6中列出了可視化結果,以直觀地展示通道分布蒸餾方法(CD)優于空間蒸餾策略(注意力轉移)。此外,為了評估所提出的通道分布蒸餾的有效性,我們在圖7和圖8中可視化了三種范式下學生網絡的通道分布,即原始網絡、通過注意力轉移(AT)蒸餾和通過通道分布蒸餾分別蒸餾的網絡。
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

官方結果

蒸餾結果

Validating runs\detect\train6\weights\best.pt...
Ultralytics YOLOv8.2.20 🚀 Python-3.11.5 torch-2.1.2 CUDA:0 (NVIDIA GeForce RTX 3090, 24575MiB)
YOLOv8n summary (fused): 168 layers, 3011888 parameters, 0 gradients, 8.1 GFLOPsClass     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 15/15 [00:02<00:00,  7.24it/s]all        230       1412      0.889       0.76      0.876      0.563c17        230        131      0.933      0.952      0.975      0.758c5        230         68      0.952      0.838      0.952      0.739helicopter        230         43      0.836      0.814      0.842      0.477c130        230         85      0.921      0.828      0.925      0.612f16        230         57      0.859      0.749      0.823       0.49b2        230          2          1          0      0.995      0.201other        230         86        0.6       0.86      0.822      0.393b52        230         70      0.916      0.933      0.967      0.746kc10        230         62      0.968      0.966       0.98       0.77command        230         40      0.909        0.9      0.978      0.768f15        230        123      0.938      0.743      0.924      0.583kc135        230         91      0.801      0.842      0.912      0.603a10        230         27      0.675      0.296      0.616       0.22b1        230         20          1      0.833      0.923      0.441aew        230         25       0.92       0.92      0.971      0.753f22        230         17      0.621       0.77      0.692      0.472p3        230        105      0.995      0.962      0.993      0.784p8        230          1      0.769          1      0.995      0.497f35        230         32      0.897      0.547      0.827      0.373f18        230        125      0.972      0.992      0.991      0.768v22        230         41      0.926      0.909      0.957      0.601su-27        230         31       0.92          1      0.995      0.777il-38        230         27      0.864      0.926       0.95      0.654tu-134        230          1          1          0     0.0711     0.0497su-33        230          2          1          0      0.595      0.303an-70        230          2      0.838          1      0.995      0.721tu-22        230         98      0.969      0.939      0.986      0.653
Speed: 0.1ms preprocess, 1.4ms inference, 0.0ms loss, 1.2ms postprocess per image
Results saved to runs\detect\train6

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/14987.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/14987.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/14987.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

大語言模型PEFT

目錄 一、PEFT的關鍵概念和方法 部分參數微調 概念 方法 優勢 適配器&#xff08;Adapters&#xff09; 方法 優勢 低秩分解&#xff08;Low-rank Factorization&#xff09; 方法 優勢 差分微調&#xff08;Delta Tuning&#xff09; 方法 優勢 多任務學習&…

政策及需求多因素驅動下 中國適老化改造市場空間大

政策及需求多因素驅動下 中國適老化改造市場空間大 適老化改造是為了提高老年人居住環境的舒適度和安全性&#xff0c;滿足老年人居住需求進行的建筑改造&#xff0c;根據住房和城鄉建設部城市建設司發布的《城市居家適老化改造指導手冊》可以將適老化改造分為基礎性改造和提升…

【linux】新增磁盤的使用

查看硬盤和分區信息 【Linux】lsblk 命令使用-CSDN博客 lsblk 根據您提供的lsblk命令輸出&#xff0c;我們可以看到系統中的塊設備及其分區信息。以下是對每個設備的解釋&#xff1a; vda&#xff1a;這是一個大小為40G的磁盤設備。 vda1&#xff1a;這是vda磁盤的第一個分區…

Python學習---基于TCP協議的網絡通信程序案例

TCP簡介&#xff1a; ●TCP 面向連接、可靠的、基于字節流的傳輸控制協議 ●TCP的特點 ○面向連接 ○可靠傳輸 ■應答機制 ■超時重傳 ■錯誤校驗 ■流量管控 ●TCP通信模型 TCP嚴格區分客戶…

智慧展廳設計的難點有哪些

1、運用先進的展示技術 將全息影像、三維投影、虛擬現實、人機互動等技術做做完美銜接&#xff0c;把展廳的內容展示做到豐富多彩&#xff0c;從而讓展廳富有科技感和藝術性。 2、內容要生動有趣 從而更好地吸引參觀者。展廳設計師要與客戶有良好深入的溝通&#xff0c;搜集與整…

TP6 模型批量插入獲取插入的自增ID

在TP框架中&#xff0c;數據插入 添加一條數據,返回添加成功的條數 $data [foo > bar, bar > foo]; Db::name(user)->save($data); // 或者 Db::name(user)->insert($data); 批量添加 $data [[foo > bar, bar > foo],[foo > bar1, bar > foo1],[…

mysql相關知識總結

目錄 1.建表2.添加字段3.修改字段類型4.添加索引5.遇到的問題 1.建表 CREATE TABLE test.table_test ( id bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 主鍵id, day date DEFAULT NULL COMMENT 日期, show_cnt bigint(20) DEFAULT 0 COMMENT 曝光次數, play_time do…

無人機的相關基礎知識(看不懂了 待定以后繼續補充)

視頻&#xff1a; 【浙江大學】浙大博導帶你從0制作無人機_嗶哩嗶哩_bilibili 什么是無人飛行器 無人機自主導航構架 IMU&#xff08;加速度計和陀螺儀&#xff09;&#xff0c;可以測出當前的 加速度和角速度 這倆信息再去融合外部傳感器 &#xff08;例如視覺傳感器或者雷…

YoloV9實戰與改進——專欄目錄

摘要 &#x1f525;&#x1f680;本專欄教你如何嗨翻Yolov9&#xff01;&#x1f680;&#x1f525; &#x1f680;炸裂升級&#xff1a;嗨&#xff0c;小伙伴們&#xff01;這里有一波Yolov9的升級大招&#xff0c;帶你領略最新論文的精華&#xff01;&#x1f4a5; 什么注意…

爬蟲面試手冊

爬蟲面試手冊 薪資13~20k 崗位職責&#xff1a; 負責公司數據平臺的數據采集、運維優化&#xff1b;負責自動化腳本&#xff0c;爬蟲腳本;研究數據采集策略和防屏蔽規則&#xff0c;提升數據采集系統的穩定性、可擴展性&#xff0c;提高抓取的效率和質量; 崗位要求 本科及…

Java中的自動裝箱和拆箱

在Java中&#xff0c;自動裝箱&#xff08;Autoboxing&#xff09;和拆箱&#xff08;Unboxing&#xff09;是兩種重要的特性&#xff0c;它們允許在基本數據類型&#xff08;如int、char、double等&#xff09;和它們對應的包裝類&#xff08;如Integer、Character、Double等&…

技術周總結 2024.05.13-05.19(計算機網絡 浮點數不準確原因和解決 java ThreadLocal XSS)

文章目錄 一、05.18周六1.1&#xff09;網絡相關1.1.1&#xff09; 問題01&#xff1a;交換機和路由器的區別是什么&#xff1f;交換機&#xff08;Switch&#xff09;路由器&#xff08;Router&#xff09;總結 1.1.2&#xff09; 問題02&#xff1a;以太網介紹基本概念物理層…

lenovo聯想小新Pro 16 APH8 2023款(83AR)筆記本電腦原裝出廠Windows11系統鏡像安裝包下載

恢復出廠開箱狀態OEM預裝win11系統&#xff0c;自帶恢復重置初始化還原功能 下載鏈接&#xff1a;https://pan.baidu.com/s/1n_mPM4ZrLPrmXpCTukuyCQ?pwdmnwj 提取碼&#xff1a;mnwj 聯想原裝系統自帶所有驅動、出廠主題壁紙、系統屬性聯機支持標志、Office辦公軟件、聯想…

王安石,變革年代的文學巨匠

王安石&#xff0c;字介甫&#xff0c;號半山&#xff0c;生于北宋真宗天禧五年&#xff08;公元1021年&#xff09;&#xff0c;卒于哲宗元佑元年&#xff08;公元1086年&#xff09;&#xff0c;享年66歲。他是中國歷史上杰出的政治家、思想家、文學家和改革家&#xff0c;其…

2024年電工杯A題論文首發+摘要分享+問題一代碼分享

問題一論文代碼鏈接&#xff1a;https://pan.baidu.com/s/1kDV0DgSK3E4dv8Y6x7LExA 提取碼&#xff1a;sxjm --來自百度網盤超級會員V5的分享 園區微電網風光儲協調優化配置 摘要&#xff1a;園區微電網由風光發電和主電網聯合為負荷供電&#xff0c;為了盡量提高風光電量的…

python ofd轉pdf及圖片

本文部分內容參考&#xff0c;如有侵權請聯系刪除&#xff1a;使用 easyofd 解析ofd 文件_python模塊easyofd如何使用-CSDN博客 背景需求&#xff1a;需要將郵箱中得ofd格式發票提取出來轉換成pdf或者圖片。 在網上搜了發現使用pyofd包&#xff0c;安裝之后使用各種問題&…

.NET 一款兼容Exchange獲取密鑰的工具

01閱讀須知 此文所提供的信息只為網絡安全人員對自己所負責的網站、服務器等&#xff08;包括但不限于&#xff09;進行檢測或維護參考&#xff0c;未經授權請勿利用文章中的技術資料對任何計算機系統進行入侵操作。利用此文所提供的信息而造成的直接或間接后果和損失&#xf…

SCSS基本使用:構建高效、可維護的CSS架構

SCSS基本使用&#xff1a;構建高效、可維護的CSS架構 SCSS&#xff08;Sassy CSS&#xff09;是一個流行的CSS預處理器&#xff0c;它擴展了CSS的功能&#xff0c;提供了變量、嵌套規則、混合&#xff08;Mixins&#xff09;、函數等強大的編程特性&#xff0c;使得開發者能夠編…

甘肅教育雜志社-甘肅教育編輯部

《甘肅教育》來稿要求:    1、本刊對所有稿件有刪改權&#xff0c;如不同意刪改&#xff0c;請投稿時注明&#xff0c;切勿一稿多投&#xff0c;來稿一律文責自負。    2、稿件以word文檔格式&#xff0c;小四號宋體字&#xff0c;1.5倍行距。觀點鮮明&#xff0c;數據…

電商平臺的消費增值模式革新

在當今的電商市場&#xff0c;用戶留存和粘性是各大平臺競相追求的目標。而消費增值模式&#xff0c;以其獨特的激勵機制&#xff0c;正逐漸成為電商平臺吸引和留住用戶的新策略。 一、消費即投資&#xff1a;創新的返利機制 在傳統的電商消費中&#xff0c;消費者完成交易后&…