日本在线看黄a美女久草|日本动漫亚洲在线一区|日韩人妻无码免费视频|A√有码中文字幕|日韩一级片视频热久久久|一区二区三区四区精品无码在线|亚洲AV成人无码一二三app|亚洲综合图片绯色|91极品人妻在线网站|国产成人精品一区二三区四区五区

您正在使用IE低版瀏覽器,為了您的雷峰網(wǎng)賬號安全和更好的產(chǎn)品體驗(yàn),強(qiáng)烈建議使用更快更安全的瀏覽器
此為臨時鏈接,僅用于文章預(yù)覽,將在時失效
人工智能開發(fā)者 正文
發(fā)私信給skura
發(fā)送

0

用特別設(shè)計(jì)的損失處理非均衡數(shù)據(jù)

本文作者: skura 2019-09-22 08:47
導(dǎo)語:CVPR 2019論文點(diǎn)評

本文是對 CVPR 2019 論文「Class-Balanced Loss Based on Effective Number of Samples」的一篇點(diǎn)評,全文如下:

這篇論文針對最常用的損耗(softmax 交叉熵、focal loss 等)提出了一種按類重新加權(quán)的方案,以快速提高精度,特別是在處理類高度不平衡的數(shù)據(jù)時尤其有用。

本文的實(shí)現(xiàn)方法(PyTorch)的 github 地址為:https://github.com/vandit15/Class-balanced-loss-pytorch

有效樣本數(shù)

在處理長尾數(shù)據(jù)集(一個數(shù)據(jù)集的大多數(shù)樣本屬于少數(shù)類,而其它許多類的數(shù)據(jù)很少)時,決定如何權(quán)衡不同類的損失是很棘手的。通常,權(quán)重設(shè)置為類支持的逆或類支持的平方根的逆。

用特別設(shè)計(jì)的損失處理非均衡數(shù)據(jù)

傳統(tǒng)重加權(quán)與這里提到的重加權(quán)

然而,如上圖所示,這種現(xiàn)象是因?yàn)殡S著樣本數(shù)的增加,新數(shù)據(jù)點(diǎn)帶來的額外好處減少了。在訓(xùn)練神經(jīng)網(wǎng)絡(luò)時使用重?cái)?shù)據(jù)增強(qiáng)(如重縮放、隨機(jī)裁剪、翻轉(zhuǎn)等)時,新添加的樣本很可能是現(xiàn)有樣本的近似副本。用有效樣本數(shù)重新加權(quán)得到了較好的結(jié)果。

有效樣本數(shù)可以想象為 n 個樣本覆蓋的實(shí)際體積,其中總體積 N 由總樣本數(shù)表示。

用特別設(shè)計(jì)的損失處理非均衡數(shù)據(jù)

有效樣本數(shù)

我們寫出其公式:

用特別設(shè)計(jì)的損失處理非均衡數(shù)據(jù)

有效樣本數(shù)

這里,我們假設(shè)一個新的樣本將只以兩種方式與先前采樣的數(shù)據(jù)交互:完全覆蓋或完全沒有交集(如上圖所示)。在這種假設(shè)下,用歸納法可以很容易地證明上述表達(dá)式(請參閱本文的證明)。

我們也可以像下面這樣寫:

用特別設(shè)計(jì)的損失處理非均衡數(shù)據(jù)

每個樣本的貢獻(xiàn)

這意味著第 j 個樣本對有效樣本數(shù)貢獻(xiàn)為 β^(j-1)。

上述方程的另一個含義是,如果 β=0,則 En=1。同時,En=n 則 β=1。后者可以很容易地用 L'Hopital's 法則證明。這意味著當(dāng) N 很大時,有效樣本數(shù)與樣本數(shù)相同。在這種情況下,唯一原型數(shù) N 很大,每個樣本都是唯一的。然而,如果 N=1,這意味著所有數(shù)據(jù)都可以用一個原型表示。

類平衡損失

如果沒有額外的信息,我們不能為每個類設(shè)置單獨(dú)的 β 值,因此,使用整個數(shù)據(jù),我們會將其設(shè)置為特定值(通常設(shè)置為0.9、0.99、0.999、0.9999 之一的數(shù)值)。

因此,類平衡損失可以寫成:

用特別設(shè)計(jì)的損失處理非均衡數(shù)據(jù)

CB 損失

這里,L(p,y)  可以是任何損失函數(shù)。

類平衡 focal loss

用特別設(shè)計(jì)的損失處理非均衡數(shù)據(jù)

類平衡 focal loss

原始版本的 focal loss 有一個 alpha 平衡變量。相反,我們將使用每個類的有效樣本數(shù)對其重新加權(quán)。

類似地,這種重新加權(quán)項(xiàng)也可以應(yīng)用于其他著名的損失(sigmoid 交叉熵、softmax 交叉熵等)。

應(yīng)用

在開始應(yīng)用之前,在使用基于 sigmoid 的損耗進(jìn)行訓(xùn)練時要注意一點(diǎn):用 b=-log(c-1)初始化最后一層的偏差,其中類的數(shù)量是 c,而不是 0。這是因?yàn)樵O(shè)置 b=0 在訓(xùn)練開始時會導(dǎo)致巨大的損失——每個類的輸出概率接近 0.5。因此,我們可以假設(shè)類 prior 是 1/c,并相應(yīng)地設(shè)置值 b。

類的權(quán)重計(jì)算

用特別設(shè)計(jì)的損失處理非均衡數(shù)據(jù)

計(jì)算標(biāo)準(zhǔn)化權(quán)重

上面的代碼行是一個簡單的實(shí)現(xiàn),獲取權(quán)重并將其標(biāo)準(zhǔn)化。

用特別設(shè)計(jì)的損失處理非均衡數(shù)據(jù)

獲取 one-hot 標(biāo)簽的 PyTorch 張量

在這里,我們得到權(quán)重的 one hot 值,這樣它們就可以分別與每個類的損失值相乘。

實(shí)驗(yàn)

用特別設(shè)計(jì)的損失處理非均衡數(shù)據(jù)

類平衡提供了顯著的優(yōu)勢,特別是當(dāng)數(shù)據(jù)集高度不平衡時(不平衡=200100)。

結(jié)論

利用有效樣本數(shù)的概念,可以解決數(shù)據(jù)重合的問題。由于我們沒有對數(shù)據(jù)集本身做任何假設(shè),因此重新加權(quán)項(xiàng)通常適用于多個數(shù)據(jù)集和多個損失函數(shù)。因此,類不平衡的問題可以用一個更合適的結(jié)構(gòu)來解決,這一點(diǎn)很重要,因?yàn)楝F(xiàn)實(shí)世界中的大多數(shù)數(shù)據(jù)集都存在大量的數(shù)據(jù)不平衡。

參考

[1] Class-Balanced Loss Based on Effective Number of Samples: https://arxiv.org/abs/1901.05555 

via:https://towardsdatascience.com/handling-class-imbalanced-data-using-a-loss-specifically-made-for-it-6e58fd65ffab

雷鋒網(wǎng)雷鋒網(wǎng)雷鋒網(wǎng)

雷峰網(wǎng)版權(quán)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知

用特別設(shè)計(jì)的損失處理非均衡數(shù)據(jù)

分享:
當(dāng)月熱門文章
最新文章
請?zhí)顚懮暾埲速Y料
姓名
電話
郵箱
微信號
作品鏈接
個人簡介
為了您的賬戶安全,請驗(yàn)證郵箱
您的郵箱還未驗(yàn)證,完成可獲20積分喲!
請驗(yàn)證您的郵箱
立即驗(yàn)證
完善賬號信息
您的賬號已經(jīng)綁定,現(xiàn)在您可以設(shè)置密碼以方便用郵箱登錄
立即設(shè)置 以后再說