雷鋒網(wǎng)AI開發(fā)者按,如果你曾經(jīng)使用過諸如 CIFAR、MNIST、ImageNet 或 IMDB 之類的數(shù)據(jù)集,那么你可能會假設(shè)類標(biāo)簽是正確的。令人吃驚的是,ImageNet 中可能至少有 10 萬個標(biāo)簽有問題。為什么我們不早點找到它們?在海量數(shù)據(jù)集中描述和發(fā)現(xiàn)標(biāo)簽錯誤的原則性方法非常具有挑戰(zhàn)性,解決方案也很有限。
cleanlab 是一個帶有標(biāo)簽錯誤的機器學(xué)習(xí)和深度學(xué)習(xí)框架,和 PyTorch 類似。在中了解更多信息。
cleanlab 加上 confidentlearning-reproduce repo 就可以重現(xiàn)中的結(jié)果。
2012 年 ILSVRC ImageNet 訓(xùn)練集中通過置信學(xué)習(xí)確定的前 32 個標(biāo)簽問題。標(biāo)簽錯誤用紅色框表示,綠色表示本體論問題,藍色表示多標(biāo)簽圖像
上圖顯示了使用置信學(xué)習(xí)發(fā)現(xiàn)的 2012 ILSVRC ImageNet 訓(xùn)練集中的標(biāo)簽錯誤的例子。為了便于解釋,我們將使用 CL 在 ImageNet 中發(fā)現(xiàn)的標(biāo)簽問題分為三類:
- 多標(biāo)簽圖像(藍色):在圖像中有多個標(biāo)簽
- 本體論問題(綠色):包括“是”或 “有”兩種關(guān)系,在這些情況下,數(shù)據(jù)集應(yīng)該包含其中一類
- 標(biāo)簽錯誤(紅色):數(shù)據(jù)集別的類的標(biāo)簽比給定的類標(biāo)簽更適合于某個示例
使用置信學(xué)習(xí),我們可以使用任何合適的模型在任何數(shù)據(jù)集中找到標(biāo)簽錯誤。下面是常見數(shù)據(jù)集中的其他三個實際示例。
什么是置信學(xué)習(xí)?
置信學(xué)習(xí)(CL)已成為監(jiān)督學(xué)習(xí)和弱監(jiān)督的一個子領(lǐng)域,可以被用于:
- 描述標(biāo)簽噪聲
- 查找標(biāo)簽錯誤
- 學(xué)習(xí)噪聲標(biāo)簽
- 發(fā)現(xiàn)本體論問題
CL 基于噪聲數(shù)據(jù)剪枝的原理,通過計數(shù)對噪聲進行評估,并對實例進行排序以進行置信訓(xùn)練。在這里,我們在 Angluin 和 Laird 分類噪聲的假設(shè)基礎(chǔ)上,將 CL 泛化到直接估計給定噪聲標(biāo)簽和無噪聲標(biāo)簽之間的聯(lián)合分布。
帶噪標(biāo)簽與不帶噪標(biāo)簽置信聯(lián)合與估計聯(lián)合分布的置信學(xué)習(xí)過程及實例,其中,y~ 表示觀察到的噪聲標(biāo)簽,y* 表示潛在的未損壞標(biāo)簽
從上圖可以看出,CL 需要兩個輸入:
- 樣本外預(yù)測概率(矩陣大小:類的樣本數(shù))
- 噪聲標(biāo)簽(矢量長度:示例數(shù))
出于弱監(jiān)督的目的,CL 包括三個步驟:
- 估計給定噪聲標(biāo)簽和潛在(未知)未損壞標(biāo)簽的聯(lián)合分布,以充分描述類條件標(biāo)簽噪聲
- 查找并刪除帶有標(biāo)簽問題的噪音示例
- 去除訓(xùn)練誤差,通過估計潛在先驗重新加權(quán)實例
置信學(xué)習(xí)的優(yōu)點
與大多數(shù)機器學(xué)習(xí)方法不同,置信學(xué)習(xí)不需要超參數(shù)。我們使用交叉驗證從樣本中獲得預(yù)測概率。置信學(xué)習(xí)還有許多其他優(yōu)點:
- 直接估計噪聲和真標(biāo)簽的聯(lián)合分布
- 適用于多類數(shù)據(jù)集
- 查找標(biāo)簽錯誤(錯誤按最有可能到最不可能的順序排列)
- 是非迭代的(在 ImageNet 中查找訓(xùn)練標(biāo)簽錯誤需要 3 分鐘)
- 在理論上是合理的(現(xiàn)實條件下準(zhǔn)確地找到標(biāo)簽誤差和聯(lián)合分布的一致估計)
- 不假設(shè)標(biāo)簽噪聲是隨機均勻的(在實踐中通常行不通)
- 只需要預(yù)測概率和噪聲標(biāo)簽(可以使用任何模型)
- 不需要任何真實(保證不損壞)的標(biāo)簽
- 自然擴展到多標(biāo)簽數(shù)據(jù)集
- 作為 cleanlab Python 包,它是免費、開源的,用于描述、查找和學(xué)習(xí)標(biāo)簽錯誤
置信學(xué)習(xí)的原則
CL 是在處理噪音標(biāo)簽的文獻中制定的原則之上建立起來的:
- 剪枝以搜索標(biāo)簽錯誤。例如,通過損失重加權(quán)使用軟剪枝,以避免迭代重標(biāo)記的收斂陷阱。
- 對干凈數(shù)據(jù)進行統(tǒng)計訓(xùn)練,避免在不完全預(yù)測概率的情況下重新加權(quán)損失(Natarajan et al.,2017),從而避免學(xué)習(xí)模型權(quán)重中的錯誤傳播。
- 對訓(xùn)練期間使用的示例進行排序,以允許使用不規(guī)范概率或 SVM 決策邊界距離進行學(xué)習(xí)。
置信學(xué)習(xí)的理論發(fā)現(xiàn)
有關(guān) CL 算法、理論和證明的全部內(nèi)容,請閱讀 這篇論文 。這里,我總結(jié)一下論文的主要觀點。
理論上,論文給出了 CL(定理 2:一般的逐例穩(wěn)健性)準(zhǔn)確地發(fā)現(xiàn)標(biāo)簽錯誤并一致地估計噪聲和真實標(biāo)簽的聯(lián)合分布的現(xiàn)實條件。我們的條件允許每個例子和每個類的預(yù)測概率中有錯誤出現(xiàn)。
置信學(xué)習(xí)是如何工作的?
為了了解 CL 是如何工作的,讓我們假設(shè)我們有一個包含狗、狐貍和牛的圖像的數(shù)據(jù)集。CL 通過估計噪聲標(biāo)簽和真標(biāo)簽的聯(lián)合分布(下圖右側(cè)的 Q 矩陣)來工作。
左:置信計數(shù)示例,這是一個不正常的聯(lián)合估計;右:有三類數(shù)據(jù)的數(shù)據(jù)集的噪聲標(biāo)簽和真標(biāo)簽的聯(lián)合分布示例
繼續(xù)我們的示例,CL 統(tǒng)計 100 個標(biāo)記為 dog 的圖像,這些圖像很可能屬于 dog 類,如上圖左側(cè)的 C 矩陣所示。CL 還統(tǒng)計了 56 幅高概率標(biāo)記為 fox 的圖像和 32 幅高概率標(biāo)記為 cow 的圖像。
你可能對它的數(shù)學(xué)過程比較好奇,好吧,這個計數(shù)過程采用的是下面的公式:
置信聯(lián)合方程
使用標(biāo)簽噪聲的聯(lián)合分布查找標(biāo)簽問題
從上圖右側(cè)的矩陣中,估計標(biāo)簽問題:
- 將聯(lián)合分布矩陣乘以示例數(shù)。讓我們假設(shè)我們的數(shù)據(jù)集中有 100 個示例。所以,在上圖中(右邊的 Q 矩陣),有 10 個標(biāo)記為 dog 的圖像實際上是狐貍的圖像。
- 將 10 張標(biāo)記為 dog 的圖片標(biāo)記為標(biāo)簽問題,其中屬于 fox 類的可能性最大。
- 對矩陣中的所有非對角項重復(fù)此操作。
注意:雖然這簡化了本文中使用的方法,但抓住了本質(zhì)。
置信學(xué)習(xí)的實際應(yīng)用
在高噪音和高稀疏的情況下,平均來說,CL 提高了 10% 以上高噪聲學(xué)習(xí)水平和 30% 以上的高稀疏學(xué)習(xí)水平。
上表顯示了 CIFAR-10 上帶噪聲標(biāo)簽的多類學(xué)習(xí)的 CL 與最新方法的比較。在高稀疏性(見下一段)和 40%、70% 的標(biāo)簽噪聲的情況下,CL 的表現(xiàn)優(yōu)于 Google 表現(xiàn)最好的 MentorNet、Co-Teaching 和 Facebook 研究院的 Mix-up,性能超過它們 30%。在使用置信學(xué)習(xí)之前,對這一基準(zhǔn)的改進要小得多(大約只有幾個百分點)。
稀疏性(Q 中零的分數(shù))概括了這樣一個概念,即現(xiàn)實世界中的數(shù)據(jù)集,如 ImageNet,有一些類不太可能被錯誤地標(biāo)記為其他類,例如 p(tiger,oscilloscope) ~ 0 in Q。如上表中突出顯示的單元格所示,與 Mixup、MentorNet、SCE-loss 和 Co-Teaching 等最新方法相比,CL 顯著增強了對稀疏性的魯棒性。這種魯棒性來自于直接建模 Q,即噪聲和真實標(biāo)簽的聯(lián)合分布。
CL 清洗 ImageNet 提高 ResNet 測試精度
在上圖中,每種方法的直線上的每個點,從左到右,描述了訓(xùn)練的準(zhǔn)確性,去除了 20%、40%…、100% 的估計標(biāo)簽錯誤。黑色虛線用所有例子描述了訓(xùn)練時的準(zhǔn)確性。當(dāng)移除少于 100k 個訓(xùn)練示例時,使用 CL 在清洗過的 ImageNet 訓(xùn)練集上訓(xùn)練(不添加合成噪聲),觀察 ResNet 驗證精度的提高。當(dāng)超過 100k 個訓(xùn)練實例被移除時,觀察使用 CL 相對于隨機移除的改善,如紅色虛線所示。
在添加標(biāo)簽噪聲的 CIFAR 中標(biāo)簽噪聲的良好表征
上圖顯示了 CIFAR 中標(biāo)簽噪聲聯(lián)合分布的 CL 估計,標(biāo)簽噪聲增加了 40%。觀察(b)中的 CL 估計與(a)中的真實分布有多接近,以及(c)中矩陣中每個項的絕對差的低誤差。概率被放大 100 倍。
ImageNet 本體論問題中類命名問題的自動發(fā)現(xiàn)
CL 通過直接估計標(biāo)簽噪聲的聯(lián)合分布,自動發(fā)現(xiàn)數(shù)據(jù)集中類的本體論問題。在上表中,我們顯示了在我們估計單類數(shù)據(jù)集 ImageNet 的標(biāo)簽噪聲聯(lián)合分布時最大的偏離對角線。每行都列出了噪聲標(biāo)簽、真標(biāo)簽、圖像 id、計數(shù)和聯(lián)合概率。因為這些是非對角的,所以噪聲類和真類必須是不同的,但是在第 7 行中,我們看到 ImageNet 實際上有兩個不同的類,它們都被稱為 maillot。
最后的想法
via: https://l7.curtisnorthcutt/confident-learning
雷鋒網(wǎng)雷鋒網(wǎng)雷鋒網(wǎng)


