零基礎可上手 | 手把手教你用Cloud AutoML做毒蜘蛛分類器
原作:Matt Fraser
安妮 編譯自 Shine Solutions
量子位 出品 | 公眾號 QbitAI
近日,一名叫Matt Fraser的小哥用Cloud AutoML製作了一個分類器,能識別分類澳大利亞的各種毒蜘蛛。
在這篇文章中,小哥手把手教你如何在零基礎的情況下也做一個影像分類器出來,非常簡單容易上手,可以說是好玩又實用了。量子位將這篇文章全文翻譯整理,與大家分享。
警告:這篇文章中包含蜘蛛(and蜘蛛俠)的照片,過敏患者請繞行~
簡介
兩個月前,谷歌釋出了全自動訓練AI無需寫程式碼的Cloud AutoML,即使你不懂機器學習,也能訓練出一個定製化的機器學習模型了,這則訊息當時還震驚了AI圈。
對,在這篇文章中,我就小露一手自己是怎樣在幾個小時之內,用開發利器Cloud AutoML
訓練出一個毒蜘蛛圖片分類器的。在開始訓練前我手頭沒有任何資料,它僅僅需要你對機器學習相關的基本概念有一個基礎的瞭解。
我可能可以教會老媽也訓練一個出來!
獲取資料
獲取資料是訓練機器學習模型的第一步,可我不想跑去澳大利亞的叢林收集毒蜘蛛的照片。
怎麼辦!
幸好,谷歌還提供另外一個工具幫我做這件事:谷歌影像搜尋。
手動下載數百張照片也挺麻煩,所以我用了一個簡單的Python指令碼小工具批量下載了圖片。
批量下載小工具程式碼:
https://github.com/hardikvasa/google-images-download
我用“whitetail spider(白尾蜘蛛)”和“redback spider(紅背蜘蛛)”關鍵詞搜尋,每種蜘蛛各蒐集100張照片。
至此,獲取資料這步完美通關。
如果你的很多圖片是沒有標記的,你可以將它們匯入Cloud AutoML Vision服務中,然後選擇Human Labeling Service人工打標籤。
將資料集匯入Cloud AutoML
Cloud AutoML先把蒐集的照片放入谷歌雲端儲存系統中,你可以用UI將影像匯入這個工具。為了節約時間,我用gcloud command line tool將影像複製到系統裡。
接下來,我需要包含每個影像bucket url和標籤的CSV。谷歌影像搜尋下載工具將其結果放入資料夾中,因此及我編寫了一個指令碼將檔案的列表一一放在下面格式的CSV中,最後上傳到同一個bucket裡。
gs://my-automl-bucket/path/to/image,whitetail
gs://my-automl-bucket/path/to/image,redback
之後我在Cloud AutoML中建立了一個新資料集,給出了我分類的CSV的位置:
訓練模型
匯入標記了的影像後,訓練模型只需要“基礎”和“高階”選項之間選擇再一個,之後點選一下就能一鍵訓練模型了。
我選擇的是免費方案,不到20分鐘我就收到了電子郵件,告知我的模型已經訓練好了!
模型評估
模型訓練好後,Cloud AutoML會提供一些不錯的工具幫助評估模型是否有效。如果你之前瞭解過一些機器學習的相關概念,能幫助你更好完成這一步。
你也可以上傳一些新照片檢測模型是否能正確分類。我上傳了下面兩張圖片,可以看出,雖然訓練示例影像的畫素很低,但執行效果還不錯。
當給模型一張高腳蛛的圖片時我有些困惑,因為這是它從未見過的品種。模型的整個“世界觀”都是基於在訓練集中提供的標籤,所以不管給它什麼,它都會根據這些標籤做出預測。
我又給模型一張蜘蛛俠的照片,有趣的是我發現它有有點分不清了。
可不是嘛!
使用模型
訓練完成後模型就會自動部署。這意味著只要你實現了模型的準確性,就可以通過Cloud Vision API指定模型在生產中使用它。理論上講目前資料集還是太小,你需要更多種類蜘蛛的更多的照片才能保證效果。
結論
谷歌的Cloud AutoML Vision服務標誌著機器學習技術向“人人可用”邁出了一大步。有了這樣的工具,任何開發者可以輕鬆構建一個自定義影像分類的應用程式。
可能你不久之後就會在應用商店中看到“ Spiderapp”這個應用,到時候不要太驚訝。
最後,附原文地址:
https://shinesolutions.com/2018/03/14/using-google-cloud-automl-vision-to-classify-poisonous-australian-spiders/amp/?__twitter_impression=true
— 完 —
加入社群
量子位AI社群15群開始招募啦,歡迎對AI感興趣的同學,加小助手微信qbitbot6入群;
此外,量子位專業細分群(自動駕駛、CV、NLP、機器學習等)正在招募,面向正在從事相關領域的工程師及研究人員。
進群請加小助手微訊號qbitbot6,並務必備註相應群的關鍵詞~通過稽核後我們將邀請進群。(專業群稽核較嚴,敬請諒解)
誠摯招聘
量子位正在招募編輯/記者,工作地點在北京中關村。期待有才氣、有熱情的同學加入我們!相關細節,請在量子位公眾號(QbitAI)對話介面,回覆“招聘”兩個字。
量子位 QbitAI · 頭條號簽約作者
վ'ᴗ' ի 追蹤AI技術和產品新動態
相關文章
- 手把手教你用DGL框架進行批量圖分類框架
- 手把手教你用DGL框架進行批次圖分類框架
- 【零基礎上手JavaWeb】快速上手 JavaScript DOM操作WebJavaScript
- 手把手教你用git,非常詳細,輕易上手Git
- 零基礎搭建智慧垃圾分類小程式
- 手把手教你用飛槳做詞向量模型 SkipGram模型
- 零基礎學習Java多久能給上手?Java
- 手把手教你快速構建自定義分類器
- 手把手教你用Python庫Keras做預測(附程式碼)PythonKeras
- Serverless 工程實踐 | 零基礎上手 Knative 應用Server
- Service Cloud 零基礎(二)Knowledge淺談Cloud
- Service Cloud零基礎學習(二)Entitlement & MileStoneCloud
- 搞定NLP領域的“變形金剛”!手把手教你用BERT進行多標籤文字分類文字分類
- 手把手教你用python做一個年會抽獎系統Python
- 手把手教你用Python構建你的第一個多標籤影象分類模型(附案例)Python模型
- 利用 AutoML 進行大規模影象分類和物件檢測TOML物件
- 分類器
- 想要上手機器翻譯?飛槳教你用Transformer 一戰到底ORM
- Service Cloud 零基礎(五)Trailhead學習 Embedded ChatCloudAI
- 手把手教你用Charles抓包
- 5.2.2 用TextCNN做文字分類CNN文字分類
- 手把手教你用原生JavaScript造輪子(1)——分頁器(最後更新:Vue外掛版本,本篇Over!)JavaScriptVue
- 手把手教你用Taro框架寫一個影象處理類微信小程式框架微信小程式
- Community Cloud零基礎學習(五)Topic(主題)管理UnityCloud
- 教你用Xd做網頁網頁
- 零基礎學習 Python 之初識「類」Python
- 動手實踐丨手把手教你用STM32做一個智慧魚缸
- 3分鐘上手,2小時起飛!教你玩轉OceanBase CloudCloud
- 手把手教你用vue搭建個人站Vue
- 手把手教你用Java實現AOPJava
- Flutter 初探(二):基礎類Widgets和佈局類Widgets上手Flutter
- 利用LSTM做語言情感分類
- 手把手教你用java實現二分查詢樹及其相關操作Java
- 表格技術七十二變|手把手教你用Canvas電子表格做電子簽名Canvas
- 教你用Pytorch建立你的第一個文字分類模型PyTorch文字分類模型
- 零基礎搭建前後端分離專案後端
- 手把手教你用Spuernova生成flutter程式碼Flutter
- [譯] 手把手教你用 Playground 建立 App FrameworkAPPFramework