Logit Standardization in Knowledge Distillation 知識蒸餾中的logit標準化

摘要

知識蒸餾涉及使用基于共享溫度的softmax函數將軟標簽從教師轉移到學生。然而,教師和學生之間共享溫度的假設意味著他們的logits在logit范圍和方差方面必須精確匹配。這種副作用限制了學生的表現,考慮到他們之間的能力差異,以及教師天生的logit關系足以讓學生學習。為了解決這個問題,我們建議將溫度設置為logit的加權標準差,并在應用softmax和KL散度之前進行logit標準化的即插即用Z-score預處理我們的預處理使學生可以關注教師的基本Logit關系,而不是要求大小匹配,并且可以提高現有基于logit的蒸餾方法的性能。我們還展示了一個典型的例子,其中教師和學生之間的傳統共享溫度設置不能可靠地產生真實的蒸餾評估;然而,我們的Z-score成功地緩解了這一挑戰。

介紹

Hinton等人首先提出通過最小化他們預測之間的KL散度,將教師的知識提煉給學生。這里softmax函數的縮放因子,稱為溫度T,它的引入是為了軟化預測概率。傳統上,溫度是預先全局設置的超參數,并在整個訓練過程中保持固定。CTKD采用對抗學習模塊來預測樣本溫度,以適應不同的樣本難度。然而,現有的基于logit的KD方法仍然假設教師和學生應該共享溫度,忽略了KL散度中不同溫度值的可能性。在這項工作中,我們證明了分類和KD中的一般softmax表達式是從信息論中的熵最大化原理推導出來的。在這個推導過程中,拉格朗日乘數出現,并以溫度的形式出現,在此基礎上,我們建立了教師和學生的溫度之間的不相關性,以及不同樣本的溫度之間的不相關性。這個證明支持我們在教師和學生之間以及在樣本之間分配不同溫度的動機。

對比logit預測的精確匹配,發現預測的類間關系足以使學生達到與教師相似的成績。一個輕量級的學生在預測具有可比范圍和方差的對數時面臨著與一個笨重的教師相比的挑戰。然而,我們證明在KL散度中共享溫度的傳統做法仍然隱含地強制學生和教師logit之間的精確匹配。現有的基于logit的KD方法沒有意識到這個問題,通常會陷入陷阱,導致整體性能下降。為了解決這個問題,我們建議**使用加權logit標準偏差作為自適應溫度,并在應用softmax之前將Z-score logit標準化作為預處理步驟。**這種預處理將logit的任意范圍映射到有界范圍,允許學生logit具有任意范圍和方差,同時有效地學習和保留教師logit的固有關系。我們提出了一個典型的案例,其中在softmax中共享溫度設置下的KL散度損失可能會產生誤導,并且不能可靠地衡量蒸餾學生的表現。相比之下,使用我們的Z-score預處理,在這種情況下消除了共享溫度的問題。

貢獻

(1)基于信息論中的熵最大化原理,利用拉格朗日乘子導出了基于logit的KD中softmax的一般表達式。我們表明,溫度來自于衍生的乘數,允許它被不同的樣本和不同的學生和老師選擇。

(2)為了解決由共享溫度引起的傳統基于logit的KD管道的問題,包括隱式強制logit匹配和學生模型不真實的索引。我們提出了一種logit蒸餾的預處理,以自適應地在教師和學生之間以及跨樣本分配溫度,能夠促進現有的基于logit的KD方法。

Background and Notation

我們擁有一個轉移數據集D包含所有N樣本image-20240507151657662,這里image-20240507151730809分別是第n個樣本的圖片和標簽。H,W,K是圖片的高度、寬度和類的數量。給定一個輸入image-20240507151933686,教師image-20240507151945859和學生image-20240507151952195分別預測logit向量image-20240507152002696image-20240507152011985。即image-20240507152019110

人們普遍接受的是,使用涉及溫度T的softmax函數將logit轉換為概率向量image-20240507152154423,使它們的第k項具有:

image-20240507152204210

其中image-20240507152239585,分別是image-20240507152250262的第k項。知識蒸餾的過程本質上是讓image-20240507152416325模擬image-20240507152425611對任何類和所有樣本。目標是通過最小化KL散度來實現的。

image-20240507152440476

當只對z進行優化時,理論上等于交叉熵損失:

image-20240507152522114

注意,它們在經驗上是不等價的,因為它們的梯度由于image-20240507152617000的負熵項而發散。

方法

溫度之間的不相關性

在第4.1.1和4.1.2中,我們首先基于信息論中的熵最大化原理推導了分類和KD中涉及溫度的softmax函數。這意味著學生和教師的溫度可以是不同的,并且樣本明智地不同。

分類中的Softmax推導

可以證明分類中的softmax函數在概率歸一化條件下和信息論中狀態期望的約束是熵最大的唯一解。該推導在置信度校準中也被利用來制定溫度標度。假設我們有如下約束熵最大化優化:

image-20240507155308232

第一個約束由于對離散概率密度的要求而成立,第二個約束控制了分布的范圍,使模型能夠準確地預測目標類。設image-20240507155449205為one-hot硬概率分布,其值除目標指標image-20240507155528753外均為0。第二個約束實際上是image-20240507155804958。這相當于使模型預測正確的標簽image-20240507160059345。應用拉格朗日乘子image-20240507160111846,得到:

image-20240507160121908

image-20240507160214783image-20240507160222457求偏導,得到約束條件。相反,對image-20240507160239395求導得到:

image-20240507160253772

通過使導數為0得到解:

image-20240507160407249

image-20240507160505724是配分函數滿足歸一化條件。

KD中的softmax推導

根據這一思想,我們定義了一個熵最大化問題來表示KD中的soft最大值。給定一個訓練有素的教師及其預測,我們有預測學生的目標函數如下:

image-20240507161000045

通過應用拉格朗日乘子image-20240507161214545

image-20240507161228095

image-20240507161254195求導得到

image-20240507161307807

假設image-20240507161347570為簡單起見,它給出:

image-20240507161353795

其中image-20240507161503360由于概率密度的歸一化條件成立。式8中的公式與式6結構相同。

不同的溫度

image-20240507161628174image-20240507161640750的偏導數分別指向Eq.4中的兩個約束,并且約束與image-20240507161712300無關。類似的情況也適用于式7.因此,不能給出它們的顯示表達式,因此可以手動定義它們的值。如果設image-20240507161927965,則式6和式8轉化為涉及學生和教師共同溫度的KD表達式。

當時image-20240507162100452,公式恢復到分類中常用的傳統softmax函數。最終,我們可以選擇image-20240507162113229,這表明教師和學生可以有不同的溫度。

明智的選取不同的溫度

通常為所有樣本定義一個全局溫度。即對于任意image-20240507162707036被定義為恒定值。相反,由于缺乏對它們的限制,它們可能在不同的樣本中有所不同。選擇一個全局常數作為溫度缺乏依據。因此,允許采用按樣本變化的溫度。

共用溫度的缺點

在本節中,我們展示了傳統KD管道中共享溫度設置的兩個缺點。我們首先通過引入兩個超參數image-20240507170612183,將公式8中的softmax用一般公式重寫:

image-20240507170620576

其中image-20240507170816202可以消去并且不違反等式。當image-20240507170826208時,會得到公式8中的特殊情況。通過引入image-20240507170838890,可以得到教師情況下的類似方程。

對于一個最終得到的很好的蒸餾學生,我們假設KL散度損失達到最小,并且預測教師的密度匹配能力,即image-20240507171206813image-20240507171221108。那么對于任意一對指標image-20240507171253261,很容易得到:

image-20240507171301785

通過對j從1到K求和,我們得到:

image-20240507171334735

其中,image-20240507171444024分別為學生和教師logit向量的均值,即image-20240507171458324,(image-20240507171559852類似)通過等式9對i從1到K的平方求和,我們可以得到:

image-20240507171530337

是輸入向量標準差的函數。從公式9到10中,我們可以描述一個受過良好訓練的學生在loigt移位和方差匹配方面的兩個屬性。

Logit shift

由式(9)可知,在傳統的共享溫度(image-20240507184055995)設置下,學生和教師在任意指標上的對數之間存在恒定的位移,即:

image-20240507184111202

其中,可以image-20240507184143849認為是第n個樣本的常數。這意味著在傳統的KD方法中,學生被迫嚴格模仿教師轉移的logit。考慮到模型大小和容量的差距,學生可能無法像老師那樣產生廣泛的logit范圍。相比之下,當學生的Logit排名與教師匹配時,即給定對教師Logit進行排序的指標image-20240507190621657,使得image-20240507190640718,則image-20240507190827483成立。logit關系是使學生和教師一樣善于預測基本知識。因此,這種logit變化是基于傳統KD管道的副作用,并且會迫使學生產生不必要的困難結果。

方差匹配

從公式10中,我們得出結論,學生和教師的溫度之比等于他們的預測對數的標準差之比,即:

image-20240507191653843

在vanillaKD的溫度共享設置中,學生被迫預測logit,使image-20240507191748255。這是另一個限制學生預測對數標準差的。相反,由于超參數來自拉格朗日乘法器,并且可以靈活調整,我們可以定義image-20240507191905707image-20240507191915221image-20240507191922908。這樣,公式12中的等式總是成立的。

Logits標準化

因此,為了打破這兩個束縛,我們建議將超參數分別設置為其對數的均值和加權標準差,即:

image-20240507192120528

其中,Z為算法中的Z-score函數。教師logit的情況與此類似,略去。在教師模型和學生模型中引入并共享一個基礎溫度T。Z-score標準化至少有4個有利的性質,即0均值、有限標準差、單調性和有界性。

0均值

標準化向量的均值很容易被證明為0.在以前的工作中,假設平均值為0,并且通常在經驗上違反。相反,Z-score函數本質上保證平均值為0。

有限標準差

加權Z-score輸出的標準差image-20240507194436409可以表示為1/T。這個性質使標準化的學生和教師logit對數映射到一個相同的高斯分布,平均值為0,標準差確定。表轉化的映射是多對一的,這意味著它的反向是不確定的。因此,原始學生logit向量image-20240507194657883的方差和取值范圍不受限制。

單調性

很容易證明Z-score是一個線性變換函數,因此這是單調函數。這種屬性確保轉換后的學生logit與原始logit保持相同的排名。因此,教師logit中必要的內在關系得以保留并轉移給學生。

有界性

標準化的對數可以在image-20240507195418886范圍內表示。與傳統KD相比,可以控制logit范圍,避免指數值過大。為此,我們定義了一個基本溫度來控制范圍。

所提出的logit標準化預處理偽代碼在算法2中給出。

Toy Case

圖2展示了一個典型的案例,其中傳統的基于logit的共享溫度KD設置可能會導致對學生成績的不真實評估。第一個學生image-20240508125848616預測的對數在量級上更接近教師T,而第二個學生image-20240508125924127保留了與老師相同的固有對數關系。因此,的KL散度損失較低,為0.1749,明顯優于第二位學生image-20240508131753331。然而,image-20240508132953676對“Bird”的預測是錯誤的,而image-20240508133002014對”dog“的預測是正確的,這與損失對比是矛盾的。通過應用我們的Z分數,所有logit都被重新縮放,并且在評估中強調logit之間的關系而不是它們的大小。即image-20240508133219265的損失為0,遠好于image-20240508133227541的0.0995,這與預測到的預測是一致的。
在這里插入圖片描述

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

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

相關文章

TypeScript學習筆記:入門指南

介紹 TypeScript 是一個由微軟開發的開源編程語言,它是 JavaScript 的超集,添加了靜態類型和面向對象的特性,使得 JavaScript 更加適合大型項目的開發。本文將介紹 TypeScript 的基本概念、特點以及其在實際項目中的作用。 特點 靜態類型系…

農業生產中,土壤墑情的監測方法有哪些?

農業是人類的生命之源,而土壤墑情則是農業生產的基礎。我們應該倍加珍惜土地資源,合理利用水資源,努力創造出更加宜人的生長環境。讓每一滴水都能為農作物帶來生機,讓每一寸土地都能孕育豐收。這樣才能實現農業可持續發展的目標&a…

存內計算加速大模型——REM-CiM的RGB-事件融合多模態類比計算內存(CiM)技術

本文為大模型&存內計算融合專題的首篇文章,我們將以這篇名為《REM-CiM: Attentional RGB-Event Fusion Multi-modal Analog CiM for Area/Energy-efficient Edge Object Detection during both Day and Night》為例[1],探討其在文中提到的多模態大模…

python dict賦值時有逗號自動變成元組

webpack 查找n.m時用的加載器是頁面上調用的,因為賦值了s等于加載器 s(‘8536’) s.m[‘8536’] headers[Cookie] f_m_h5_tk{cookie_list[0]}; _m_h5_tk_enc{cookie_list[1]}{accept: */*, accept-language: zh-CN,zh;q0.9, cache-control: no-cache, pragma: no-…

護眼臺燈和普通臺燈差別很大嗎?專業護眼燈品牌有哪些?

隨著科技的不斷演進,臺燈的設計也日益脫胎換骨,從曾經的笨重造型轉變為如今輕盈雅致的外觀。它們的功能同樣經歷了多樣化的革新,變得更加人性化和便捷。作為學習、閱讀和辦公環境中不可或缺的照明工具,臺燈所提供的光線舒適度至關…

小紅書java社招一二三面面經

面試前,先找面經哥,點擊此處查看更多面經 面試公司:小紅書 面試職位:后端開發工程師 整體評價:已拿offer 📝面試題: 【一面】 講一下MySQL優化 1、索引優化的細節 2、前綴索引原理 3、MySQ…

LazyDiffusion:革新交互式圖像編輯的擴散模型

Adobe Research和特拉維夫大學的研究人員聯合開發了一種名為LazyDiffusion的新型擴散變換器,它能夠高效地生成部分圖像更新,特別適用于交互式圖像編輯。該模型通過創新的編碼器-解碼器架構,顯著提升了圖像編輯的效率,同時保持了與…

QML 本地存儲(Setting,sqlite)

Qt hello - 專注于Qt的技術分享平臺 QML 原生的儲存方有兩種: 1,Settings 跟QWidget 中的QSettings 一樣,可以簡單的存儲一些配置。 2,Sqlite sqlite數據庫。可以存儲一些復雜的數據。 一,Settings 我們以一個按鈕的位…

鴻蒙DevEco Studio 4.1 Release-模擬器啟動方式錯誤

軟件版本:DevEco Studio 4.1 Release 報錯提示: 沒有權限查看處理指導 Size on Disk 顯示1.0MB 嘗試方案(統統無效): 1、“windows虛擬機監控程序平臺”、"虛擬機平臺"已開啟 啟用CPU虛擬化 2、C…

DIY可視化軟件環境準備

DIY官網可視化工具做好的可視化拖拽開發工具無須編程、零代碼基礎、所見即所得設計工具支持輕松在線可視化導出微信小程序、支付寶小程序、頭條小程序、H5、WebApp、UNIAPP等源碼 支持組件庫,高顏值,卡片,列表,輪播圖,導航欄,按鈕,標簽,表單,單選,復選,下拉選擇,多層選擇,級聯選…

【大華可見光攝像頭】ffmpeg獲取視頻流并下載mp4 報錯‘subtype‘ 不是內部或外部命令,也不是可運行的程序

我現在要通過ffmpeg獲取大華攝像頭視頻流并下載成mp4,但我在cmd窗口運行下面命令的時候,發現報錯: D:\Java\ffmpeg\ffmpeg-master-latest-win64-gpl\bin\ffmpeg.exe -y -i rtsp://admin:123xxx.xxx.xxx.xxx/cam/realmonitor?channel1&s…

springboot 連接hive的坑

本地運行時倒是沒啥問題,一上線啟動接連報錯。網上各種找答案,本質上還是依賴沖突報錯,不知道使用哪個具體類 Caused by: java.lang.NoSuchMethodError: javax.servlet.ServletContext.getVirtualServerName()Ljava/lang/String;The followi…

代碼隨想錄-算法訓練營day36【貪心算法06:單調遞增的數字、監控二叉樹、總結】

代碼隨想錄-035期-算法訓練營【博客筆記匯總表】-CSDN博客 第八章 貪心算法 part06● 738.單調遞增的數字 ● 968.監控二叉樹 ● 總結 詳細布置 738.單調遞增的數字 https://programmercarl.com/0738.%E5%8D%95%E8%B0%83%E9%80%92%E5%A2%9E%E7%9A%84%E6%95%B0%E5%AD%97.html…

Qt Tab鍵切換焦點順序:setTabOrder()

使用這個方法setTabOrder(),設置使得焦點的順序從前到后依次是: ui->lineEdit》 ui->lineEdit_2》ui->lineEdit_3 》ui->lineEdit_4 焦點先在ui->lineEdit上,當按下Tab鍵時,焦點跑到ui->lineEdit_2上。。。按…

同步假設 - 同步方法對實時控制系統的抽象

同步假設是如SCADE、Lustre等同步語言所基于的基礎。這些假設是對實時系統環境的一種抽象。對本文討論涉及到的內容,可進一步參考《Representation and Analysis of Reactive Behaviors: A Synchronous Approach》(SyncCharts, 1996)。 同步方法采用了一種理想化的抽…

通過顏色學習css

文章目錄 1.生成html2.添加css鏈接3.將h1標簽text-align元素4.添加div標簽4.1、為類marker添加元素4.2、添加兩個新的div標簽4.3、修改div標簽的類型并修改css元素4.4、為類container添加元素4.5、以數字形式添加顏色4.5、container添加padding屬性4.6、組合css中的顏色屬性4.7…

【Matlab】Matlab之美,抓緊來膜拜大神的創星之作(附2024Matlab教程+代碼)

軟件介紹 MATLAB是一款商業數學軟件,用于算法開發、數據可視化、數據分析以及數值計算的高級技術計算語言和交互式環境,主要包括MATLAB和Simulink兩大部分,可以進行矩陣運算、繪制函數和數據、實現算法、創建用戶界面、連接其他編程語言的程序…

自回歸模型的優缺點及改進方向

在學術界和人工智能產業中,關于自回歸模型的演進與應用一直是一個引發深入討論和多方觀點交鋒的熱門議題。尤其是Yann LeCun,這位享譽全球的AI領域學者、圖靈獎的獲得者,以及被譽為人工智能領域的三大巨擘之一,他對于自回歸模型持…

Rust:函數封裝,struct 還是 mod?

在Rust中,是否將一組功能相關的靜態函數組織到一個結構體(struct)中,或者直接利用模塊(mod)機制來組織,主要取決于你的具體需求和設計考慮。以下是一些指導原則: 使用結構體封裝靜態…

華為與達夢數據簽署全面合作協議

4月26日,武漢達夢數據庫股份有限公司(簡稱“達夢數據”)與華為技術有限公司(簡稱“華為”)在達夢數據武漢總部簽署全面合作協議。 達夢數據總經理皮宇、華為湖北政企業務總經理呂曉龍出席并見證簽約;華為湖…