Auto Byte

專注未來出行及智能汽車科技

微信掃一掃獲取更多資訊

Science AI

關注人工智能與其他前沿技術、基礎學科的交叉研究與融合發展

微信掃一掃獲取更多資訊

Vladimir Lyashenko作者陳萍編輯

有人一周內清理了PASCAL數據集中的17120張圖像,將mAP提高了13%

干凈的數據對于你的 AI 模型的表現有多重要?

有研究稱,他們使用一種技術在一周內清理了 PASCAL VOC 2012 數據集中的 17120 張圖像,并發現 PASCAL 中 6.5% 的圖像有不同的錯誤(缺失標簽、類標簽錯誤等)。他們在創紀錄的時間內修復了這些錯誤,并將模型的性能提高了 13% 的 mAP。


通常情況下,模型性能較差可能是由于訓練數據質量不高引起的。即使在 2022 年,由于數據是公司最重要的資產之一,開發人員也經常因數據質量低劣而感到工作棘手。本文中,總部位于德國柏林的面向視覺 AI 從業者的下一代注釋工具提供商 Hasty,希望通過更快、更高效地清理數據來簡化和降低視覺 AI 解決方案開發的風險。

他們開發了 AI Consensus Scoring (AI CS) 功能,它是 Hasty 生態系統的一部分(Hasty 是該公司開發的一個端到端的 AI 平臺,可讓 ML 工程師和領域專家更快地交付計算機視覺模型,從而縮短變革性產品和服務的上市時間),該功能使得手動共識評分(consensus scoring)成為過去,其將 AI 集成到質量控制流程中,使其更快、更便宜,并且隨著用戶添加的數據越多,性能擴展越好。

本文中,研究者將利用 AI CS 功能來改進、更新和升級最流行的目標檢測基準數據集 PASCAL VOC 2012 。

我們先來簡單介紹一下 PASCAL,它是一個著名的學術數據集,可用于目標檢測語義分割等視覺 AI 任務的基準模型。PASCAL 已有十多年的歷史,現在還一直被廣泛使用,近 4 年就有 160 篇論文使用它。

PASCAL 在過去十年中沒有改變,世界各地的團隊在科研中都保持該數據集的「原樣」進行科研。但是,該數據集是很久以前注釋的,當時算法還沒有今天準確,注釋要求也沒有那么嚴格,會出現很多錯誤。例如下圖所示:盡管馬是在前景并且可見,但沒有馬的標簽,這些質量問題在 PASCAL 中很常見。


如果讓人工來處理 PASCAL 數據集,成本高昂且非常耗時,該研究使用 AI 進行質量控制并提高 PASCAL 的質量,他們的目的是如果數據質量足夠好,模型性能會不會隨之提高,為了執行這個測試,他們設置了一個包含以下步驟的實驗:

  • 在 Hasty 平臺上使用 AI Consensus Scoring 功能清洗 PASCAL VOC 2012;

  • 使用 Faster R-CNN 架構在原始的 PASCAL 訓練集上訓練自定義模型;

  • 使用相同的 Faster R-CNN 架構和參數,在清理后的 PASCAL 訓練集上準備一個自定義模型;

  • 實驗之后,得出結論。


下面為實驗過程,以第一人稱進行編譯整理, 看看他們是如何做到的以及結果如何?


清洗 PASCAL VOC 2012

我們的首要任務是改進數據集。我們從 Kaggle 獲得數據集,將其上傳到 Hasty 平臺,導入注釋,并安排兩次 AI CS 運行。對于那些不熟悉我們 AI CS 功能的人,該功能支持類、目標檢測實例分割審查,因此它會檢查注釋的類標簽、邊界框、多邊形和掩碼。在進行審查時,AI CS 會尋找額外或缺失的標簽、偽影、錯誤類別的注釋,以及形狀不精確的邊界框或實例。

PASCAL VOC 2012 包含 17.120 張圖像和 20 個不同類別的約 37.700 個標簽。我們已經針對 28.900 (OD) 和 1.320 (Class) 潛在錯誤任務運行了目標檢測和類別審查。


AI CS 可以讓你發現潛在問題。然后,你可以專注于修復錯誤,而無需花幾天或幾周的時間來查錯。

我們要檢查這些潛在錯誤并解決它們,最重要的是,我們希望修改后的注釋比原始注釋器更準確。具體包括:

  • 當 AI CS 檢測到潛在錯誤時,我們嘗試修復每張圖像上所有可能出現的這些錯誤;

  • 我們沒有打算注釋每個可能的目標,如果注釋遺漏了一個目標,并且在前景中或在沒有縮放的情況下肉眼可見,我們就注釋它;

  • 我們試圖讓邊界框像像素一樣完美;

  • 我們還對部分(數據集類目標未注釋部分)進行了注釋,因為原始數據集具有它們的特性。


有了上述目標,我們首先檢查了現有注釋類標簽的類審查運行,試圖找出潛在的錯誤。超過 60% 的 AI CS 建議非常有用,因為它們有助于識別原始數據集不明顯的問題。例如,注釋器將沙發和椅子混淆。我們通過重新標記整個數據集的 500 多個標簽來解決這個問題。

原始注釋示例。圖中有兩張沙發和兩把扶手椅。兩把扶手椅中的一張標注為沙發,而另一把則標注為椅子。數據標注發生了一些錯誤,需要修復。


修改后的標注,扶手椅是椅子,沙發是沙發。

在分析 OD 和 Class 審查時,我們發現 PASCAL 最突出的問題不是錯誤分類注釋、奇怪的邊界框或額外的標簽。它最大的問題是缺少許多潛在的注釋。我們很難估計確切的數字,但我們覺得有數千個未標記的目標應該被標記。

OD 審查通過數據集,尋找額外或缺失的標簽和錯誤形狀的邊界框。并非所有缺失的注釋都被 AI CS 突出顯示,但我們已盡最大努力改進 AI CS 預測的至少有一個缺失標簽的所有圖片。結果,OD 審查幫助我們在 1.140 張圖像中找到了 6.600 個缺失注釋。


我們花了大約 80 個小時來審查所有建議并清理數據集,這是一個了不起的結果。


在原始 PASCAL 上訓練自定義模型

如上所述,我們決定設置兩組實驗,訓練兩個模型,一個在初始的 PASCAL 上,另一個在經過清理的 PASCAL 版本上。為了進行神經網絡訓練,我們使用了 Hasty 另一個功能:Model Playground,這是一個無需編碼的解決方案,允許你在簡化的 UI 中構建 AI 模型,同時保持對架構和每個關鍵神經網絡參數的控制。

在整個工作過程中,我們對模型進行了多次迭代,試圖為任務找到最佳超參數。最后,我們選擇了:


  • 以 ResNet101 FPN 為骨干的更快的 R-CNN 架構;

  • 采用 R101-FPN COCO 權值進行模型初始化;

  • 模糊,水平翻轉,隨機剪切,旋轉和顏色抖動作為增強;

  • AdamW 為求解器,ReduceLROnPlateau 為調度器;

  • 就像在其他 OD 任務中一樣,使用了損失組合(RPN Bounding Box 損失、RPN 分類損失、最終 Bounding Box 回歸損失和最終分類損失);

  • 作為指標,我們有 COCO mAP,幸運的是,它直接在 Model Playground 中實現。


大約一天半的時間來訓練。假設架構的深度、網絡正在處理的圖像數量、計劃的訓練迭代次數(10.000)以及 COCO mAP 在 5.000 張圖片中每 50 次迭代計算的事實,它并沒有花費太長時間。以下是模型取得的結果:

原始模型訓練迭代的平均損失。


跨原始模型驗證迭代的 COCO mAP 圖。

使用這種架構實現的最終 COCO mAP 結果是驗證時的 0.42 mAP。在原始 PASCAL 上訓練的模型的性能不如最先進的架構。盡管如此,考慮到我們在構建模型上花費的時間和精力很少(經歷了 3 次迭代,每次花費 1 小時),這仍然是一個不錯的結果。無論如何,這樣的結果會讓我們的實驗更有趣。讓我們看看是否可以在不調整模型參數的情況下,通過改進數據來獲得所需的指標值。


在更新的 PASCAL 上訓練的自定義模型

在這里,我們采用相同的圖像進行訓練和驗證,以訓練以下模型作為基線。唯一的區別是拆分中的數據更好(添加了更多標簽并修復了一些標簽)。

不幸的是,原始數據集并沒有在其訓練 / 測試集拆分中包含 17120 個圖像中的每一個,有些圖片被遺漏了。因此盡管在原始數據集中添加了 6600 個標簽,但在訓練 / 測試拆分中,我們只得到了大約 3000 個新標簽和大約 190 個修復標簽。

盡管如此,我們繼續使用 PASCAL VOC 2012 改進后的訓練 / 測試拆分來訓練和驗證模型,看看效果如何。


更新模型的訓練迭代中的 AverageLoss 圖。

更新模型的驗證迭代中的 COCO mAP 圖。


直接比較

正如我們所見,新模型的性能優于原始模型。與之前模型的 0.42 值相比,它在驗證時達到了 0.49 COCO mAP。這樣看很明顯實驗是成功的。

結果在 45-55 COCO mAP 之內,這意味著更新后的模型比原始模型效果更好,并提供了所需的度量值。是時候得出一些結論并討論我們剛剛目睹的情況了。

結論

本文展示了以數據為中心的 AI 開發概念。我們的思路是通過提升數據以獲得更好的模型,進而也獲得了想要的結果。如今,當模型開始接近性能的上限時,通過調整模型將關鍵指標的結果提高 1-2% 以上可能是具有挑戰性且成本高昂的事。但是,你不應該忽略構建機器學習并不僅僅是模型和參數,還有兩個關鍵組成部分——算法和數據。


在該研究中,我們并沒有試圖擊敗任何 SOTA 或獲得比此前研究更好的結果。我們希望通過實驗結果展示:花費時間改進數據有利于模型性能。希望通過添加 3000 個缺失標簽使 COCO mAP 增加 13% 的案例足夠令人信服。

通過清理數據和向圖像添加更多標簽可以獲得的結果很難預測。效果很大程度上取決于你的任務、NN 參數和許多其他因素。即使在本文的例子中,我們也不能確定多 3000 個標簽會是能帶來額外 13% mAP 的。盡管如此,結果不言自明。雖然有時很難確定通過獲得更好的數據來改進模型指標的上限,這是值得嘗試的方向。

原文鏈接:https://hasty.ai/content-hub/articles/cleaning-pascal-improving-map-by-13?utm_source=mk832ksa
理論Pascal VOC
相關數據
機器學習技術

機器學習是人工智能的一個分支,是一門多領域交叉學科,涉及概率論、統計學、逼近論、凸分析、計算復雜性理論等多門學科。機器學習理論主要是設計和分析一些讓計算機可以自動“學習”的算法。因為學習算法中涉及了大量的統計學理論,機器學習與推斷統計學聯系尤為密切,也被稱為統計學習理論。算法設計方面,機器學習理論關注可以實現的,行之有效的學習算法。

調度技術

調度在計算機中是分配工作所需資源的方法。資源可以指虛擬的計算資源,如線程、進程或數據流;也可以指硬件資源,如處理器、網絡連接或擴展卡。 進行調度工作的程序叫做調度器。調度器通常的實現使得所有計算資源都處于忙碌狀態,允許多位用戶有效地同時共享系統資源,或達到指定的服務質量。 see planning for more details

基準技術

一種簡單的模型或啟發法,用作比較模型效果時的參考點?;鶞视兄谀P烷_發者針對特定問題量化最低預期效果。

參數技術

在數學和統計學裡,參數(英語:parameter)是使用通用變量來建立函數和變量之間關系(當這種關系很難用方程來闡述時)的一個數量。

超參數技術

在機器學習中,超參數是在學習過程開始之前設置其值的參數。 相反,其他參數的值是通過訓練得出的。 不同的模型訓練算法需要不同的超參數,一些簡單的算法(如普通最小二乘回歸)不需要。 給定這些超參數,訓練算法從數據中學習參數。相同種類的機器學習模型可能需要不同的超參數來適應不同的數據模式,并且必須對其進行調整以便模型能夠最優地解決機器學習問題。 在實際應用中一般需要對超參數進行優化,以找到一個超參數元組(tuple),由這些超參數元組形成一個最優化模型,該模型可以將在給定的獨立數據上預定義的損失函數最小化。

計算機視覺技術

計算機視覺(CV)是指機器感知環境的能力。這一技術類別中的經典任務有圖像形成、圖像處理、圖像提取和圖像的三維推理。目標識別和面部識別也是很重要的研究領域。

神經網絡技術

(人工)神經網絡是一種起源于 20 世紀 50 年代的監督式機器學習模型,那時候研究者構想了「感知器(perceptron)」的想法。這一領域的研究者通常被稱為「聯結主義者(Connectionist)」,因為這種模型模擬了人腦的功能。神經網絡模型通常是通過反向傳播算法應用梯度下降訓練的。目前神經網絡有兩大主要類型,它們都是前饋神經網絡:卷積神經網絡(CNN)和循環神經網絡(RNN),其中 RNN 又包含長短期記憶(LSTM)、門控循環單元(GRU)等等。深度學習是一種主要應用于神經網絡幫助其取得更好結果的技術。盡管神經網絡主要用于監督學習,但也有一些為無監督學習設計的變體,比如自動編碼器和生成對抗網絡(GAN)。

語義分割技術

語義分割,簡單來說就是給定一張圖片,對圖片中的每一個像素點進行分類。圖像語義分割是AI領域中一個重要的分支,是機器視覺技術中關于圖像理解的重要一環。

實例分割技術

實例分割是檢測和描繪出現在圖像中的每個不同目標物體的任務。

目標檢測技術

一般目標檢測(generic object detection)的目標是根據大量預定義的類別在自然圖像中確定目標實例的位置,這是計算機視覺領域最基本和最有挑戰性的問題之一。近些年興起的深度學習技術是一種可從數據中直接學習特征表示的強大方法,并已經為一般目標檢測領域帶來了顯著的突破性進展。

推薦文章
暫無評論
暫無評論~
塔城颂嫌租售有限公司 玻璃棉北京有限公司| 钉扣机有限公司| 气动单组合仪表有限公司| 扳手北京有限公司| 杭州神源电子设备有限公司| 制棒机有限公司| 上海纽岱信息科技有限公司| 随车吊北京有限公司| 浙江咸亨国际科技股份有限公司| 深圳 龙火科技有限公司| 292 185 553 167 392