零樣本學習(Zero-Shot Learning)著重於訓練過程中沒有出現過的類別進行分類,基於語意描述的零樣本學習透過預先定義的每個類別的高階語義資訊來實現從可見類別(seen class)到未見類別(unseen class)的知識遷移。傳統零樣本學習在測試階段僅需要對未見類進行識別,而廣義零樣本學習(GZSL)需要同時識別可見類和未見類,其評測指標是可見類類平均準確率與未見類類平均準確率的調和平均。
一種通用的零樣本學習策略是使用可見類樣本和語意訓練從語意空間到視覺樣本空間的條件產生模型,再藉助未見類語意產生未見類的偽樣本,最後使用可見類樣本和未見類偽樣本訓練分類網路。然而,要學習兩個模態(語意模態與視覺模態)間的良好映射關係通常需要大量樣本(參考 CLIP),這在傳統零樣本學習環境下無法實現。因此,使用未見類語義產生的視覺樣本分佈通常和真實樣本分佈存在偏差(bias),這意味著以下兩點:1. 這種方法獲得的未見類準確率有限。 2. 在未見類平均每類生成偽樣本數量與可見類平均每類樣本數量相當的情況下,未見類準確率與可見類準確率存在較大差值,如下表 1 所示。
我們發現就算只學習語義到類別中心點的映射,並將未見類別語義映射為的單一樣本點複製多次再參加分類器訓練也能得到接近使用生成模型的效果。這意味著生成模型產生的未見類偽樣本特徵對分類器來說是較為同質(homogeneity)的。
先前的方法通常透過產生大量未見類偽樣本來迎合GZSL 評測指標(儘管大的採樣數量對未見類類間判別沒有幫助)。然而這種重採樣(re-sampling)的策略在長尾學習(Long-tail Learning)領域被證明會導致分類器在部分特徵上過擬合,在這裡即是與真實樣本偏移的偽未見類特徵。這種情況不利於可見類和未見類真實樣本的辨識。那麼,能否捨棄這種重採樣策略,轉而將產生未見類偽樣本的偏移性和同質性(或可見類與未見類的類別不平衡)作為歸納偏置(inductive bias)植入分類器學習呢?
基於此,我們提出了一個即插即用的分類器模組,只需修改一行程式碼就能提升生成零樣本學習方法的效果。每個不可見類只需產生 10 個偽樣本,就能達到 SOTA 水準。 與其他生成型零樣本方法相比,新方法在計算複雜度上具有巨大優勢。 研究成員來自南京理工大學和牛津大學。
本文以一致化訓練與測試目標為指引,推導出廣義零樣本學習評測指標的變分下界。以此建模的分類器能夠避免使用重採用策略,防止分類器在產生的偽樣本上過度擬合對真實樣本的辨識造成不利影響。所提方法能夠使基於嵌入的分類器在生成型方法框架上有效,減少了分類器對於產生偽樣本品質的依賴。
#我們決定從分類器的損失函數著手。假設類別空間已經被產生的未見類別偽樣本所完善,先前的分類器以最大化全域準確率為最佳化目標:
其中為全域準確率,表示分類器輸出,表示樣本分佈,為樣本X 對應標籤。而GZSL 的評測指標為:
#其中
# #分別代表可見類別和未見類別集合。訓練目標和測試目標的不一致意味著先前的分類器訓練策略沒有考慮可見類和未見類的差異。自然而然地,我們試圖透過對
進行推導來實現訓練與測試目標一致的結果。經過推導,我們得到了其下界:
#其中
代表可見類別- 未見類別先驗,其與數據無關,在實驗中作為超參數進行調整,代表可見類或未見類內部先驗,在實現過程中以可見類樣本頻率或均勻分佈代替。透過最大化
的下界,我們得到了最終的最佳化目標:
###############由此,我們的分類建模目標相較先前發生了以下改變:######################透過使用交叉熵(cross-entropy)擬合後驗機率#### #####,我們得到分類器損失為:###############這與長尾學習中的邏輯調整(Logit Adjustment)類似,因此我們稱之為零樣本邏輯調整(ZLA)。至此,我們實現了透過引入參數化先驗將可見類與未見類的類別不平衡作為歸納偏移植入到分類器訓練中,並且在代碼實現中只需對原始logits 加上額外偏置項就能達到以上效果。
到目前為止,零樣本遷移的核心,即語意先驗(semantic prior )僅在訓練生成器與生成偽樣本階段發揮作用,對未見類的識別完全取決於生成的未見類偽樣本的品質。顯然,如果能夠在分類器訓練階段引入語義先驗,將會有助於未見類別的識別。在零樣本學習領域有一類基於嵌入(embedding-based)的方法能夠實現這項功能。然而,這一類方法與生成模型學習到的知識是相似的,即語義與視覺間的聯繫(semantic-visual link),這導致在先前的生成型框架中(參考論文f-CLSWGAN)直接引入基於嵌入的分類器無法取得比原先更好的效果(除非這種分類器本身就有更好的零樣本性能)。透過本文提出的 ZLA 策略,我們能夠改變產生的未見類偽樣本在分類器訓練中所扮演的角色。從原先的提供不可見類資訊到現在的調整不可見類與可見類間的決策界限(decision boundary),我們得以在分類器訓練階段引入語意先驗。具體地,我們採用了原型學習的方法將每個類別的語意映射為視覺原型(即分類器權值),再將調整的後驗機率(adjusted posterior)建模為樣本與視覺原型間的餘弦相似度(cosine similarity),即
#其中為溫度係數。在測試階段,樣本被預測為與其餘弦相似度最大的視覺原型對應類別。
我們將所提出的分類器與基礎WGAN 結合,在每個未見類別中產生10 個樣本的情況下達到了媲美SoTAs 的效果。另外我們將其插入到更先進的 CE-GZSL 方法中,在不改變其他參數(包括生成樣本數量)的情況下提升了初始效果。
在消融實驗中,我們將基於生成的原型學習器(prototype learner)與純原型學習器進行了比較。我們發現,最後一個 ReLU 層對於純原型學習器的成功至關重要,因為將負數置零可以增大類別原型與未見類特徵的相似度(未見類特徵同樣經過 ReLU 激活)。然而將部分數值置零也限制了原型的表達,不利於更進一步的辨識性能。借助偽未見類樣本來彌補未見類資訊不僅能在使用 RuLU 時達到更高性能,更能在沒有 ReLU 層的情況下實現進一步的性能超越。
在另一項消融研究中,我們將原型學習器與初始分類器進行比較。結果顯示當產生大量未見類別樣本時,原型學習器與初始分類器相比沒有優勢。而在使用本文提出的 ZLA 技術時,原型學習器顯示出其優越性。正如前文所說,這是因為原型學習器和生成模型都在學習語義 - 視覺聯繫,所以語義資訊很難被充分利用。 ZLA 使生成的未見類樣本能夠調整決策邊界,而不是僅僅提供未見類信息,從而對原型學習器起到激活作用。
#以上是以一行程式碼大幅提升零樣本學習方法效果,南京理工&牛津提出即插即用分類器模組的詳細內容。更多資訊請關注PHP中文網其他相關文章!