博客專欄

        EEPW首頁 > 博客 > 針對不平衡問題建模的有趣Loss

        針對不平衡問題建模的有趣Loss

        發布人:數據派THU 時間:2023-07-25 來源:工程師 發布文章

        文章綜述了康奈爾大學、康奈爾科技、谷歌Brain和Alphabet公司的基于有效樣本數的類平衡損失(CB損失)。使用每個類的有效樣本數量來重新為每個類的Loss分配權重。


        1. 類別平衡問題

        圖片

        圖片


        兩個類,分別來自長尾數據集的頭部和尾部(iNaturalist 2017 dataset)假設有像上面那樣的不平衡的類。head:對于索引小的類,這些類有較多的樣本。Tail:對于大索引的類,這些類的樣本數量較少。黑色實線:直接在這些樣本上訓練的模型偏向于優勢類紅色虛線通過反向類頻率來重新加權損失可能會在具有高類不平衡的真實數據上產生較差的性能。藍虛線:設計了一個類平衡項,通過反向有效樣本數來重新加權損失。


        2. 有效樣本數量


        2.1. 定義


        圖片

        數據間信息重疊,左:特征空間S,中:1個樣本數據的單位體積,右:數據間信息重疊


        直覺上,數據越多越好。但是,由于數據之間存在信息重疊,隨著樣本數量的增加,模型從數據中提取的邊際效益會減少


        左:給定一個類,將該類的特征空間中所有可能數據的集合表示為S。假設S的體積為N且N≥1。中:S子集中的每個樣本的單位體積為1,可能與其他樣本重疊。Right:從S中隨機抽取每個子集,覆蓋整個S集合。采樣的數據越多,S的覆蓋率就越好。期望的采樣數據總量隨著樣本數量的增加而增加,以N為界。


        因此,將有效樣本數定義為樣本的期望體積。


        這個想法是通過使用一個類的更多數據點來捕捉邊際效益的遞減。由于現實世界數據之間的內在相似性,隨著樣本數量的增加,新添加的樣本極有可能是現有樣本的近重復。另外,cnn是用大量的數據增廣來訓練的,所有的增廣實例也被認為與原始實例相同。對于一個類,N可以看作是唯一原型的數量。


        2.2. 數學公式


        圖片

        新的采樣數據與以前的采樣數據重疊或不重疊


        En表示樣本的有效數量(期望體積)。為了簡化問題,不考慮部分重疊的情況。也就是說,一個新采樣的數據點只能以兩種方式與之前的采樣數據交互:完全在之前的采樣數據集中,概率為p,或完全在原來的數據集之外,的概率為1- p。


        有效數字:En = (1?β^n)/(1?β),其中,β = (N? 1)/N,這個命題可以用數學歸納法證明。當E1 = 1時,不存在重疊,E1 =(1?β^1)/(1?β) = 1成立。假設已經有n?1個樣本,并且即將對第n個樣本進行采樣,現在先前采樣數據的期望體積為En ?1,而新采樣的數據點與先前采樣點重疊的概率為 p = E(n?1)/N。因此,第n個實例采樣后的期望體積為:


        圖片


        此時:


        圖片


        我們有:


        圖片


        上述命題表明有效樣本數是n的指數函數。超參數β∈[0,1)控制En隨著n的增長有多快。


        3. 類別平衡 Loss (CB Loss)


        類別平衡(CB)loss可以寫成:

        圖片


        其中,ny是類別y的ground-truth的數量。β = 0對應沒有重新加權, β → 1對應于用反向頻率進行加權。


        提出的有效樣本數的新概念使我們能夠使用一個超參數β來平滑地調整無重權和反向類頻率重權之間的類平衡項。


        所提出的類平衡項是模型不可知的和損失不可知的,因為它獨立于損失函數L和預測類概率p的選擇。


        3.1. 類別平衡的 Softmax 交叉熵損失


        給定一個標號為y的樣本,該樣本的softmax交叉熵(CE)損失記為:


        圖片


        假設類y有ny個訓練樣本,類平衡(CB)softmax交叉熵損失為:


        圖片


        3.2. 類別平衡的 Sigmoid 交叉熵損失


        當對多類問題使用sigmoid函數時,網絡的每個輸出都執行一個one-vs-all分類,以預測目標類在其他類中的概率。在這種情況下,Sigmoid不假定類之間的互斥性。由于每個類都被認為是獨立的,并且有自己的預測器,所以sigmoid將單標簽分類和多標簽預測統一起來。這是一個很好的屬性,因為現實世界的數據通常有多個語義標簽。sigmoid交叉熵(CE)損失可以寫成:


        圖片


        類平衡(CB) sigmoid交叉熵損失為:


        圖片


        3.3. 類別平衡 Focal Loss


        Focal loss (FL)是在RetinaNet中提出的,可以減少分類很好的樣本的損失,聚焦于困難的樣本。


        圖片


        類別平衡的 (CB) Focal Loss為:


        圖片


        4. 實驗結果


        4.1. 數據集


        圖片

        用于評估類平衡損失有效性的數據集


        試驗了CIFAR-10和CIFAR-100的5個不平衡系數分別為10、20、50、100和200的長尾版本。iNaturalist 和ILSVRC是天然的類別不平衡數據集。


        圖片

        在人工創建的具有不同不平衡因子的長尾CIFAR-100數據集中,每類訓練樣本的個數


        上面顯示了每個類具有不同不平衡因素的圖像數量。


        4.2. CIFAR 數據集


        圖片

        ResNet-32在長尾CIFAR-10和CIFAR-100測試集上用不同的損失函數訓練的分類錯誤率


        loss類型的超參數搜索空間為{softmax, sigmoid, focal}, [focal loss]的超參數搜索空間為β∈{0.9,0.99,0.999,0.9999},γ∈{0.5,1.0,2.0}。在CIFAR-10上,最佳的β一致為0.9999。但在CIFAR-100上,不同不平衡因子的數據集往往有不同且較小的最優β。


        圖片

        有和沒有類平衡項時的分類錯誤率


        在CIFAR-10上,根據β = 0.9999重新加權后,有效樣本數與樣本數接近。這意味著CIFAR-10的最佳重權策略與逆類頻率重權類似。在CIFAR-100上,使用較大的β的性能較差,這表明用逆類頻率重新加權不是一個明智的選擇,需要一個更小的β,具有更平滑的跨類權重。例如,一個特定鳥類物種的獨特原型數量應該小于一個一般鳥類類的獨特原型數量。由于CIFAR-100中的類比CIFAR-10更細粒度,因此CIFAR-100的N比CIFAR-10小。


        4.3. 大規模數據集


        圖片

        在所有數據集驗證集上,使用不同損失函數訓練的大規模數據集上的Top-1和Top-5分類錯誤率


        使用了類平衡的Focal Loss,因為它具有更大的靈活性,并且發現β = 0.999和γ = 0.5在所有數據集上都獲得了合理的良好的性能。值得注意的是,使用了類別平衡的Focal Loss來代替Softmax交叉熵,ResNet-50能夠達到和ResNet-152相應的性能。


        圖片

        ILSVRC 2012(左)和iNaturalist 2018(右)的ResNet-50訓練曲線


        以上數字顯示類平衡的Focal Loss損失經過60個epochs的訓練后,開始顯示其優勢。


        *博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。



        關鍵詞: AI

        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 罗定市| 滦南县| 拜城县| 中山市| 黔江区| 文山县| 渝北区| 仁怀市| 确山县| 英吉沙县| 四子王旗| 沙田区| 五指山市| 西乌| 仪征市| 无极县| 嘉荫县| 绥中县| 肇源县| 遂昌县| 陈巴尔虎旗| 霍州市| 崇礼县| 麻栗坡县| 西宁市| 防城港市| 青岛市| 华池县| 始兴县| 乡宁县| 军事| 淅川县| 湘西| 太仆寺旗| 临朐县| 昌宁县| 阿克苏市| 南皮县| 屏南县| 文化| 青铜峡市|