利用 AutoML 進行大規模影象分類和物件檢測
文 / Google Brain 團隊研究科學家 Barret Zoph、Vijay Vasudevan、Jonathon Shlens 和 Quoc Le
幾個月之前,我們推出了 AutoML 專案,這是一種實現機器學習模型設計自動化的方式。儘管我們發現 AutoML 能夠設計出效能可與人類專家設計的神經網路相媲美的小型神經網路,但這些成果仍被限制在 CIFAR-10 和 Penn Treebank 一類的小型學術資料集方面。我們對這種方法在更大、更具挑戰性的資料集(例如 ImageNet 影象分類和 COCO 物件檢測)上的表現充滿好奇。在學術競賽中,人類已經發明瞭許多最先進的機器學習架構來處理這些資料集。
在學習可轉移的架構來實現可擴充套件的影象識別 (Learning Transferable Architectures for Scalable Image Recognition) 論文中,我們將 AutoML 應用到 ImageNet 影象分類和 COCO 物件檢測資料集中 - ImageNet 和 COCO 是計算機視覺領域兩個最受認可的大規模學術資料集。這兩個資料集對我們來說是一項非常大的挑戰,因為它們要比 CIFAR-10 和 Penn Treebank 資料集大許多數量級。例如,單單將 AutoML 直接應用到 ImageNet 中就需要對我們的方法進行數月的訓練。
為了能夠將我們的方法應用到 ImageNet,我們對 AutoML 方式做了兩點調整,讓它可以更容易地處理大規模資料集:
-
我們重新設計了搜尋空間,以便 AutoML 找到最佳層並靈活進行多次堆疊來建立最終網路。
-
我們在 CIFAR-10 上執行了架構搜尋,並將學到的最好架構轉移到 ImageNet 影象分類和 COCO 物件檢測中。
通過這種方法,AutoML 能夠找到在 CIFAR-10 以及 ImageNet 分類和 COCO 物件檢測上都有優異表現的最佳層。這兩個層組合形成一種新的架構,我們稱之為“NASNet”。
▲ 我們的 NASNet 架構由兩種型別的層組成:正常層(左)和還原層(右)。這兩種層都由 AutoML 設計。
在 ImageNet 影象分類上,NASNet 在驗證集上的預測準確率達到了 82.7%,超過了我們之前構建的所有 Inception 模型。此外,NASNet 的準確率比之前公佈的所有結果提升了 1.2%,與 arxiv.org 上報告的最佳未公佈結果不相上下。NASNet 還可以調整規模,生成一系列可以實現較高準確率的模型,同時將計算開銷控制在非常低的水平。例如,小版本的 NASNet 可以實現 74% 的準確率,比面向移動平臺的同等規模最先進模型提升了 3.1%。大型 NASNet 則可實現最高的準確率,同時將 arxiv.org 上最佳報告結果(即 SENet)的計算開銷減半。
▲ NASNet 與人類發明的各種規模的最先進模型在 ImageNet 影象分類中的準確率。
我們還將學到的特徵從 ImageNet 轉移到物件檢測。在實驗中,將在 ImageNet 分類中學到的特徵與 Faster-RCNN 框架相結合超過了 COCO 物件檢測任務之前公佈的最佳預測效能,無論檢測任務在最大的模型上執行,還是在針對移動裝置優化的模型上執行,結果都是如此。我們最大的模型的平均準確率 (mAP) 達到了 43.1%,比之前公佈的最佳結果提升了 4%。
▲ 結合使用 Faster-RCNN 和 NASNet 的示例物件檢測。
我們認為,NASNet 在 ImageNet 和 COCO 上學到的影象特徵可重用於許多計算機視覺應用。因此,我們在 Slim 和物件檢測 TensorFlow 程式碼庫中將 NASNet 開源,方便大家使用它在影象分類中進行推理,以及進行物件檢測。我們希望更廣大的機器學習社群能夠利用這些模型開展構建工作,解決我們還未想到的眾多計算機視覺問題。
特別感謝 Jeff Dean、Yifeng Lu、Jonathan Huang、Vivek Rathod、Sergio Guadarrama、Chen Sun、Jonathan Shen、Vishy Tirumalashetty、Xiaoqiang Zheng、Christian Sigg 和 Google Brain 團隊對這個專案的大力幫助。
檢視全文及文中連結,請戳文末“閱讀原文”。
推薦閱讀:
Google釋出TensorFlow Lattice,先前知識推動靈活性提升
相關文章
- 利用Hog特徵和SVM分類器進行行人檢測HOG特徵
- 亞馬遜:用CNN進行影象分類的Tricks亞馬遜CNN
- 巧用Proxyman Scripting 進行資料分類檢測
- 使用colmap對大規模場景進行分組重建
- 自己訓練SVM分類器進行HOG行人檢測HOG
- 詳解計算機視覺五大技術:影象分類、物件檢測、目標跟蹤、語義分割和例項分割計算機視覺物件
- 利用機器學習進行惡意程式碼分類機器學習
- 物體檢測實戰:使用 OpenCV 進行 YOLO 物件檢測OpenCVYOLO物件
- 影象處理入門:目標檢測和影象檢索綜述
- 另類PHP安全漏洞:利用弱型別和物件注入進行SQLiPHP型別物件SQL
- 利用BLEU進行機器翻譯檢測(Python-NLTK-BLEU評分方法)Python
- 大腦是如何識別和分類物件? - mpg物件
- 使用Grail進行大規模基礎設施管理AI
- kaggle季軍新手筆記:利用fast.ai對油棕人工林影象進行快速分類(附程式碼)筆記ASTAI
- 聚焦Python和OpenCV的影像處理,3D場景重建,物件檢測和跟蹤 - 物件分類和定位PythonOpenCV3D物件
- 影象相似度比較和檢測影象中的特定物
- 利用HOG特徵進行人體檢測HOG特徵
- 利用cache特性檢測Android模擬器Android
- 影象中二維碼的檢測和定位
- 前端進階-類和物件前端物件
- COVID-19:利用Opencv, Keras/Tensorflow和深度學習進行口罩檢測OpenCVKeras深度學習
- 大咖佈道丨證券行業規模化敏捷和核心能力演進行業敏捷
- 影象邊緣檢測—sobel運算元(灰度影象,彩色影象)
- 如何對Mac進行基礎檢測和速度測試Mac
- 如何開展大規模整合測試
- 模擬利用MV進行資料遷移
- Python-OpenCV 處理影象(五):影象中邊界和輪廓檢測PythonOpenCV
- 騰訊回應:正配合監管進行合規檢測YQ
- CVPR 2022|達摩院開源低成本大規模分類框架FFC框架
- 按照網路規模來分,伺服器分為哪幾類?伺服器
- 詳解計算機視覺五大技術:影像分類、物件檢測、目標跟蹤、語義分割和例項分割...計算機視覺物件
- 利用Scikit-learn機器學習庫的特徵分類進行vnpy期貨量化交易機器學習特徵
- python:利用iloc語句對列表的分類變數進行操作Python變數
- 利用CNN對股票「圖片」進行漲跌分類——一次嘗試CNN
- 利用python庫stats進行t檢驗Python
- Mac電腦如何將檔案進行分類和整理?Mac
- Mac電腦如何對檔案進行分類和整理Mac
- 影象特徵提取:Sobel邊緣檢測特徵