【論文閱讀】Between-class Learning for Image Classification


文章:Between-class Learning for Image Classification

鏈接:https://arxiv.org/pdf/1711.10284.pdf

CVPR2018

作者嘗試了將在音頻上的方法用在圖像上的,並提出了一種將圖像作為波形處理的混合方法(作者認為圖形波長融合人類沒法識別,但對機器而言卻是有意義的信息)。cnns有將輸入數據作為波形處理的操作,作者提出的BC learning 其實就是將兩個不同類的圖像混合,並訓練模型輸出混合比,靠近哪個就分為哪類。

 

一、Between-Class learning (BC learning)

在分類問題的標准學習中,從數據集中選取一個單一的訓練示例並輸入到模型中。然后,該模型被訓練為輸出一個熱標簽。相比之下,在bc學習中,從數據集中選取了屬於不同類的兩個訓練示例,並與隨機比例混合。然后,將混合數據輸入到模型中,並對模型進行了輸出各類混合比的訓練。模型的輸出和比例標簽之間KL-divergence(散度)作為損失函數,而不是通常的交叉熵損失。注意在測試階段不進行混合。

BC learning旨在通過解決預測兩個不同類的混合比例的問題來學習分類問題。它們通過將屬於不同類的兩個聲音以隨機比例混合在一起,生成了類之間的例子。然后將混合聲音輸入模型,並訓練模型輸出每個類的混合比。對特征分布施加限制,而這是標准學習所不能實現的,因此提高了泛化能力。在聲音分類任務中取得了超過人類水平的性能。

舉個例子,有兩個類的集合{x1,t1},{x2,t2},x表示數據,t為它們的標簽(one-hot編碼表示)。按照一定的比例r將兩個類混合,得到新的類別和標簽{rx1+(1-r)x2,rt1+(1-r)t2}。當然這是最簡單的融合方式。由於聲能與振幅的平方成正比,通常表示成。換句話說,如果兩個類的聲壓等級分別為G1,G2,則融合后的變成

理論支持的話,從物理學上講,兩個人的聲音混在一起,我們人類還是能分辨出來誰的聲音大,BC learning根據這個提出的。。。。

 

 二、BC learning 的效果(在音頻上)

黑色虛線表示特征的軌跡,當我們輸入兩個特定聲音的混合到模型中,將混合比從0改為1。

1模擬BC learning enlarges Fisher’s criterion。如果fisher在a類(紅色)和b類(藍色)的特征分布之間的標准很小,如圖2(左上)所示,將類a和b按一定比例(品紅)混合得到的聲音的特征分布變得很大,並且會與類a和類b的一個或兩個特征分布有很大的重疊。在這種情況下,模型不能輸出投影到重疊區域的混合示例的混合比,並且bc學習給出了很大的損失。為了使模型輸出混合比並使bc學習損失小,費舍爾的准則應該如圖2(右上)所示是大的。在這種情況下,重疊會變得很小,bc學習會帶來很小的損失。因此,bc學習擴大了費舍爾在特征空間中的標准

2考慮特征分布之間位置關系的正則化。如果每個類別的特征沒有如圖2所示的標准分布(左下),則除a和b類外,c類的判定邊界將出現在a類和b類之間,而A類和B類的一些混合音會被錯誤地歸為C類。這是一種不理想的情況,因為兩個類的混雜音幾乎不可能變成其他類的音。bc學習給這種情況帶來很大的損失,因為bc學習訓練模型輸出a類和b類的混合比。如果每個類的特征如圖2(右下)所示正則分布,另一方面,c類的判定邊界不出現在a類和b類之間,該模型可以輸出混音比,而不是將混音錯歸為c類。因此,bc學習的損失變得很小。因此,bc學習具有規范特征分布的位置關系的作用。通過這種方法,他們認為bc學習具有約束特征分布的能力,從而提高了泛化能力

 

三、為啥能用到圖像上

圖像作為像素值,可以通過二維傅里葉變換轉換成各種頻率區域的組件。而且一些卷積濾波器可以作為頻率濾波器。因此,由於對機器來說,兩張圖像的混合物是兩張波形的混合物,所以對聲音有效的東西對圖像也有效。當然,傅里葉變換、小波變換只是提出來時候怕麻煩找現成的,實驗的時候是卷積網絡辦到的(卷積網絡的確有這個方面的應用,不得不說一句,真是萬能的卷積網絡啊)。

 

作者可視化了一下,用的是PCA。模型是CIFAR-10上的11層卷積,第10層卷積出來的特征圖用PCA可視化。看起來圖還是不錯的,與之前在聲音上的圖挺相似的。哦,這里的混合比例是0.5:0.5.所以之后作者就改了混合比例改名為BC+。

 

先看下BC learning的結果吧。

虛線表示使用默認學習計划時的訓練曲線,實線表示使用較長學習計划時的訓練曲線。像迭代次數衰減什么的直接去看文章吧,這里不說了。

 

其實BC+,就是考慮了音頻的特性,把圖像轉換的和音頻盡量相似。例如0均值啊,歸一化啊什么的。然后混合起來就變成了

,δ是方差,u是均值。

對比試驗。沒有太明顯的下降。畢竟這篇文章主要是創意新,結果不那么差就夠了。

 

 

這里解釋一下,mixing method那塊,a表示每張圖像減去這張圖像素均值,b表示歸一化了,c考慮了能量(振幅平方)。Label那塊,single : t = t1 if r > 0.5, otherwise t = t2;;multi : t = t1 + t2。。#mix class那塊,N=1: 兩張圖像來源於同一類。N=1or2:完全隨機地選擇兩個圖像,並且允許這兩個圖像有時是同一個類,有時是來自兩個類。

 

 

最后,我們在圖6中可視化了標准和bc學習的特征(其實之前可視化的也是這個,不過只是選擇了兩個類上色,並畫出了0.5:0.5的混合類)。我們將pca應用於11層cnn的第10層的激活,針對cifar-10的訓練數據。如下圖所示,bc學習所獲得的特征是球狀分布的,並且在班級內差異很小,而標准學習所獲得的特征則是從近到遠的決策邊界上廣泛分布的。我們對附錄中的學習特征進行了進一步的分析。這樣,bc學習確實對特征分布施加了限制,而標准學習是無法實現的。我們猜想這就是為什么bc學習提高了分類性能。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM