CV未來在這68張圖上?Google Brain深扒ImageNet:頂級模型全都預測失敗
過去的十年里,ImageNet基本就是計算機視覺領域的「晴雨表」,看準確率有沒有提升,就知道有沒有新技術問世。
「刷榜」一直是模型創新的原動力,把模型Top-1準確率推動到90%+,比人類還高。
但ImageNet數據集是否真的像我們想象中的那么有用?
很多論文都曾對ImageNet發出質疑,比如數據的覆蓋度、偏見問題、標簽是否完善等等。
其中最重要的是,模型90%的準確率是否真的準確?
最近Google Brain團隊和加州大學伯克利分校的研究人員重新審視了幾個sota模型的預測結果,發現模型真正的準確率還可能被低估了!
論文鏈接:https://arxiv.org/pdf/2205.04596.pdf
研究人員通過對一些頂級模型所犯的每一個錯誤進行人工審查和分類,以便深入了解基準數據集的長尾錯誤。
其中主要關注ImageNet的多標簽子集評估,最好的模型已經能達到97%的Top-1的準確率。
這項研究的分析結果顯示,將近一半的所謂的預測錯誤根本就不是錯誤,并且還在圖片中發現了新的多標簽,也就是說,如果沒有人工審查過預測結果,這些模型的性能可能都是被「低估」的!
不熟練的眾包數據標注員往往會把數據標注錯誤,在很大程度上也影響了模型準確率的真實性。
為了校準ImageNet數據集,促進未來的良性進展,研究人員在文中提供了一個更新版的多標簽評估集,并把sota模型預測存在明顯錯誤的68個例子組合為一個新數據集ImageNet-Major,以方便未來CV研究者攻克這些bad case
還上「技術債」
從文章的標題「什么時候面團成了百吉餅?」就可以看出作者主要關注ImageNet里的標簽問題,這也屬于是歷史遺留問題了。
下圖是一個非常典型的標簽歧義例子,圖片里的標簽為「面團」,模型的預測結果為「百吉餅」,錯了嗎?
這個模型理論上來說并沒有預測錯誤,因為面團正在烤,馬上就要成百吉餅了,所以既是面團又是百吉餅。
可以見得模型實際上已經能夠預測到這個面團「即將成為」百吉餅,但在準確率上卻沒有拿到這一分。
實際上,以標準ImageNet數據集的分類任務作為評價標準,缺乏多標簽、標簽噪聲、未指定的類別等問題都在所難免。
從負責識別此類對象的眾包標注員的角度來看,這是一個語義甚至是哲學上的難題,只能通過多標簽來解決,所以在ImageNet的衍生數據集中主要改善的就是標簽問題。
距ImageNet成立已經過了16年,當時的標注人員、模型開發者對數據的理解肯定不如今天豐富,而ImageNet又是早期的大容量、標注相對良好的數據集,所以ImageNet很自然而然地成了CV刷榜的標準。
但標注數據的預算顯然不如開發模型來的多,所以標簽問題的改善也成了一種技術債。
為了找出ImageNet中剩下的錯誤,研究人員使用了一個具有 30 億參數的標準ViT-3B模型(能夠達到 89.5% 的準確度),其中JFT-3B作為預訓練模型,并在ImageNet-1K上進行了微調。
使用ImageNet2012_multilabel的數據集作為測試集的情況下,ViT-3B初步達到的準確率為96.3%,其中模型明顯錯誤預測了676個圖像,然后對這些例子進行深入研究。
在重新標注數據時,作者沒有選擇眾包,而是組建了一個5名專家評審組成的小組進行標注,因為這類標注錯誤對于非專業人員來說很難識別出來。
比如圖(a),普通的標注人員可能寫一個「桌子」就過了,但實際上圖片里還有很多其他物體,比如屏幕、顯示器、馬克杯等等。
圖(b)的主體為兩個人,但標簽為picket fence(柵欄),顯然也是不完善的,可能的標簽還有領結、制服等等。
圖(c)也是一個明顯的例子,如果只標出來「非洲象」,那象牙可能就被忽視掉了。
圖(d)的標簽為lakeshore(湖岸),但標注成seashore(海濱)實際上也沒毛病。
為了增加標注效率,研究者還開發了一個專用的工具,能夠同時顯示模型預測的類別、預測分數、標簽和圖像。
在某些情況下,專家組之間可能還存在標簽的爭議,這時候就把圖片放到谷歌搜索里來輔助標注。
比如說有一個例子里,模型的預測結果里包含出租車,但圖片里面除了「一點黃色」之外根本沒有出租車的牌子。
這張圖片的標注主要是通過谷歌圖片搜索發現圖像的背景是一個標志性的橋梁,然后研究人員定位到了圖片所在的城市,對該城市中的出租車圖像進行檢索后,認可了這張圖片里確實包含出租車而非一輛普通的汽車。并且從車牌的設計上進行對比,也驗證了模型的預測是正確的。
在對研究的幾個階段發現的錯誤進行初步審查后,作者首先根據錯誤的嚴重程度將其分為兩類:
1. 主要錯誤(Major):人類能夠理解標簽的含義,并且模型的預測和標簽完全不沾邊;
2. 次要錯誤(Minor):標簽的可能是錯誤的或者不完善導致的預測錯誤。需要專家審查數據后進行糾正。
對于ViT-3B模型犯的155個主要錯誤,研究人員又找了其他三個模型共同預測來提高預測結果的多樣性。
四個模型全都預測失敗的主要錯誤有68個,然后分析了所有模型對這些例子的預測,并驗證了它們沒有一個是正確的新的多標簽,即每個模型的預測結果確實都是主要錯誤。
這68個例子有幾個共同特點,首先就是不同方式訓練的sota模型都在這個子集上犯了錯誤、并且專家評審也認為預測結果完全和正確不沾邊。
68張圖像的數據集也足夠小,方便后續研究者進行人工評估,如果未來攻克了這68個例子,那CV模型也許會取得新突破。
通過分析數據,研究者又將預測錯誤劃分為四種類型:
1. 細粒度錯誤,其中預測的類別跟真實標簽相似,但不完全相同;
2. 具有詞表外(OOV)的細粒度,其中模型識別其類別正確但在 ImageNet 中不存在該對象的類別;
3. 虛假相關性,其中預測的標簽是從圖像的上下文中讀取的;
4. 非原型,其中標簽中的對象與預測標簽相似、但并非完全一致。
在審查了原始 676 個錯誤后,研究人員發現其中298 個應該是正確的,或者可以確定原始標簽是錯誤或有問題的。
總的來說,通過文章的研究結果可以得出四個結論:
1. 當一個大型、高精度模型做出其他模型沒有的新預測時,大概其中50%都是正確的新多標簽;
2. 更高精度的模型在類別和錯誤嚴重性之間沒有表現出明顯的相關性;
3. 如今SOTA模型在人工評估的多標簽子集上的表現在很大程度上匹配或超過了最佳專家人類的表現;
4. 有噪音的訓練數據和未指定的類別可能是限制有效衡量圖像分類改進的一個因素。
或許圖像標簽問題還得等待自然語言處理技術來解決?