移除ImageNet標簽錯誤,模型排名發(fā)生大變化
此前,ImageNet 因為存在標簽錯誤的問題而成為熱門話題,這個數(shù)字說出來你可能會大吃一驚,至少有十萬個標簽是存在問題的。那些基于錯誤標簽做的研究,很可能要推翻重來一遍。
由此看來管理數(shù)據(jù)集質(zhì)量還是很重要的。
很多人會使用 ImageNet 數(shù)據(jù)集作為 benchmark,不過基于 ImageNet 預訓練的模型,最終結(jié)果可能會因為數(shù)據(jù)質(zhì)量而變化。
本文中,來自 Adansons 公司的工程師 Kenichi Higuchi 對《 Are we done with ImageNet? 》一文中的 ImageNet 數(shù)據(jù)集進行重新研究,在去除錯誤標簽數(shù)據(jù)后,重新評估 torchvision 上發(fā)布的模型。
從 ImageNet 中刪除錯誤數(shù)據(jù)并重新評估模型
本文將 ImageNet 中的標簽錯誤分為三類,如下所示。
(1) 標注錯誤的數(shù)據(jù)
(2) 對應多個標簽的數(shù)據(jù)
(3) 不屬于任何標簽的數(shù)據(jù)
總結(jié)來看,錯誤數(shù)據(jù)大約有 14000 多個,考慮評估數(shù)據(jù)的數(shù)量為 50000,可以看出錯誤數(shù)據(jù)占比極高。下圖是一些有代表性的錯誤數(shù)據(jù)。
方法
在不重新訓練模型的情況下,該研究通過只排除標注錯誤的數(shù)據(jù),也就是上述(1)類錯誤數(shù)據(jù),以及從評估數(shù)據(jù)中排除所有錯誤數(shù)據(jù),也就是 (1)-(3) 錯誤數(shù)據(jù),來重新檢查模型的準確率。
為了刪除錯誤數(shù)據(jù),需要使用一個描述標簽錯誤信息的元數(shù)據(jù)文件。在這個元數(shù)據(jù)文件中,如果包含 (1)-(3) 類錯誤,信息將在「correction」屬性中描述。
該研究使用一款名為 Adansons Base 的工具,Adansons Base 通過將數(shù)據(jù)集鏈接到元數(shù)據(jù)來過濾數(shù)據(jù)。這里測試了 10 個模型,如下所示。
10 個用于測試的圖像分類模型
結(jié)果
結(jié)果如下表所示(數(shù)值是以 % 為單位的精度,括號中的數(shù)字是排名)
10 個分類模型的結(jié)果
以 All Eval 數(shù)據(jù)為基線,排除錯誤數(shù)據(jù)類型(1),準確率平均提高 3.122 分;排除所有錯誤數(shù)據(jù) (1)~(3) ,準確率平均提高 11.743 分。
和預想的一樣,排除錯誤數(shù)據(jù),準確率全面提高,這一點毫無疑問,因為與干凈數(shù)據(jù)相比,存在錯誤數(shù)據(jù)很容易出錯。
當在不排除錯誤數(shù)據(jù)的情況下進行評估,以及錯誤數(shù)據(jù)(1)~(3) 都被排除時,模型的準確率排名發(fā)生了變化。
本文中,錯誤數(shù)據(jù) (1) 有 3670 個,占全部 50000 條數(shù)據(jù)的 7.34%,移除后準確率平均提高了 3.22 點左右。當移除錯誤數(shù)據(jù)后,數(shù)據(jù)規(guī)模發(fā)生了變化,單純的比較準確率可能存在偏差。
結(jié)論
盡管并未特別強調(diào),但是在做評估訓練時,使用準確標記的數(shù)據(jù)很重要。
在比較模型之間的準確率時,以前的研究可能得出錯誤的結(jié)論。所以應該先對數(shù)據(jù)進行評估,但這真的可以用來評估模型的性能嗎?
許多使用深度學習的模型往往不屑于對數(shù)據(jù)進行反思,而是渴望通過模型的表現(xiàn)性能來提高準確性和其他評估指標,即使是評價數(shù)據(jù)中包含錯誤數(shù)據(jù),也沒進行準確的處理。
當創(chuàng)建自有的數(shù)據(jù)集時,比如在業(yè)務中應用 AI 時,創(chuàng)建高質(zhì)量的數(shù)據(jù)集直接關系到提高 AI 的準確率和可靠性。本文的實驗結(jié)果表明,僅僅提高數(shù)據(jù)質(zhì)量就可以將準確率提高約 10 個百分點,這表明在開發(fā) AI 系統(tǒng)時不僅要改進模型,還要改善數(shù)據(jù)集。
然而,保證數(shù)據(jù)集的質(zhì)量并不容易。雖然增加元數(shù)據(jù)的數(shù)量以正確評估 AI 模型和數(shù)據(jù)的質(zhì)量很重要,但管理起來可能很麻煩,尤其是對于非結(jié)構化數(shù)據(jù)。