Google AutoML 圖像分類模型使用指南(附詳細操作步驟)

在本教程中,我將向您展示如何在Google AutoML中創建單個標籤分類模型。我們將使用一個由

generate.photos AI生成的面孔數據集 。我們將訓練我們的算法來確定一張臉是男性還是女性。之後,我們將模型部署到雲中並創建該算法的Web瀏覽器版本。

一.獲得項目分類數據

好吧,讓我們開始吧!首先,讓我們看一下我們將要分類的數據。總共約有2,000張人臉照片。

Google AutoML 圖像分類模型使用指南(附詳細操作步驟)

很難相信這些面孔不是真實的!好吧,現在讓我們獲取地面真理標籤來訓練我們的算法。通過創建圖片分類作業,我們可以使用 wao.ai 迅速完成此操作,您可以在此處的視頻中看到此過程。

工作完成後,我們將獲得一個包含真實標籤的CSV文件(文末有下載地址)。

二.建立項目

是時候開始使用Google AutoML了。在本節中,我們將在Google AutoML上創建一個數據集並開始訓練我們的模型。

如果還沒有,請在 Google Cloud Platform 上創建一個帳戶。之後,我們需要創建一個新項目。

Google AutoML 圖像分類模型使用指南(附詳細操作步驟)

創建項目後,我們可以使用頂部的側邊欄或搜索欄導航到Google AutoML。您可能需要啟用一些API並設置結算功能,GCP才會引導您完成該過程。

Google AutoML 圖像分類模型使用指南(附詳細操作步驟)

接下來,我們可以點擊“圖像分類入門”。

Google AutoML 圖像分類模型使用指南(附詳細操作步驟)

這使我進入了“數據集”視圖。在“數據集”視圖中,我們可以單擊“創建新數據集”,併為我們的數據集填寫一些細節以進行訓練。

Google AutoML 圖像分類模型使用指南(附詳細操作步驟)

三.格式化輸入數據

現在將我們的數據實際放入Google Cloud Platform。所有數據都必須位於GCP存儲桶中。瀏覽器界面無法正常工作,因為我們的數據集太大。

但是,GCP命令行工具應該可以正常運行。你也可以安裝 Google Cloud SDK(包括命令行工具)

現在,我們只需要執行gsutil cp -r path / to / faces gs:// YOUR_BUCKET / faces即可將文件移到存儲庫中。確保將YOUR_BUCKET更改為為您創建的存儲庫的名稱(以下屏幕快照中我的存儲庫名稱為woven-icon-263815-vcm)。

Google AutoML 圖像分類模型使用指南(附詳細操作步驟)

接下來,我們將要將真實標籤CSV從 wao.ai 轉換為

AutoML 期望的CSV輸出。

我們原始的CSV如下所示:

Google AutoML 圖像分類模型使用指南(附詳細操作步驟)

為了讓Google AutoML使用它,我們需要將其轉換為:

Google AutoML 圖像分類模型使用指南(附詳細操作步驟)

我在ipython終端中使用Pandas DataFrame進行了此操作(如下所示)

Google AutoML 圖像分類模型使用指南(附詳細操作步驟)

Google AutoML 圖像分類模型使用指南(附詳細操作步驟)

四.完成創建數據集

現在,我們已經有了Google AutoML所需格式的CSV,現在就可以完成創建數據集的準備了。

將我們創建的新CSV上傳到您的存儲庫,然後在“導入數據集”屏幕中選擇該庫。

Google AutoML 圖像分類模型使用指南(附詳細操作步驟)

導入數據後,您可以從瀏覽器查看我們所有的圖像和標籤。

Google AutoML 圖像分類模型使用指南(附詳細操作步驟)

五.創建模型

在本部分中,我們將創建一個使用易於使用的API在GCP上運行的雲模型,以及可以導出到Tensorflow並在本地或本地託管的移動設備,瀏覽器上運行的Edge模型。

1.訓練雲模型

導航到“訓練”選項卡,然後單擊“開始訓練”。我使用了所有默認選項。

Google AutoML 圖像分類模型使用指南(附詳細操作步驟)

Google AutoML 圖像分類模型使用指南(附詳細操作步驟)

Google AutoML 圖像分類模型使用指南(附詳細操作步驟)

幾個小時後,模型完成,並概述了模型的性能和所用的預算(我分配的全部16小時:)

Google AutoML 圖像分類模型使用指南(附詳細操作步驟)

2.訓練“邊緣”模型(可在任何地方運行的模型

創建邊緣模型的方法基本相同,只需單擊“邊緣”而不是“雲”即可。創建邊緣模型時,可以優化速度或準確性。我決定針對準確性進行優化,因為我想將邊緣模型與雲模型進行比較。

Google AutoML 圖像分類模型使用指南(附詳細操作步驟)

Google AutoML 圖像分類模型使用指南(附詳細操作步驟)

六.結果

在“評估”標籤中,我們可以看到模型的效果。雲模型能夠獲得94.5%的準確性。邊緣模型能夠獲得95.5%的準確性。令我驚訝的是,雲模型的性能稍差一些,特別是因為它的培訓預算更大!

總的來說,我對兩個模型的性能都很滿意。混淆矩陣表明,在預測男性時,雲模型犯錯誤的人數要多於女性,而邊緣模型的失誤率更高。

雲模型性能

在下面的屏幕截圖中,您可以看到雲模型的混亂矩陣以及AutoML報告的一些統計信息。在預測女性方面要比男性稍好。

Google AutoML 圖像分類模型使用指南(附詳細操作步驟)

邊緣模型性能

在下面的屏幕截圖中,您可以看到邊緣模型的混淆矩陣以及AutoML報告的一些統計信息。邊緣模型在預測男性方面略勝一籌!

Google AutoML 圖像分類模型使用指南(附詳細操作步驟)

七.邊緣案例

Google AutoML為您提供了模型在哪些方面表現良好以及哪些地方出錯的細目。下面的快照中顯示了誤報和誤報的一些示例。

Google AutoML 圖像分類模型使用指南(附詳細操作步驟)

Google AutoML 圖像分類模型使用指南(附詳細操作步驟)

八.部署模型

現在我們已經獲得了滿意的模型,我們應該使用它們!我們的雲模型可以部署在GCP上,我們的Edge模型可以下載並與Tensorflow一起運行。讓我們探索雲模型和邊緣模型的部署。

雲部署

導航到“ TEST&USE”標籤,然後單擊“ DEPLOY MODEL”按鈕。為了進行測試,我決定只部署到一個節點。部署模型大約花了一個小時。

Google AutoML 圖像分類模型使用指南(附詳細操作步驟)

雲模型公開了一個易於使用的API,您可以在其中上傳一個簡單的JSON對象並接收到一組帶有概率的預測。對我來說,這是完美且完美的集成API。

Google AutoML 圖像分類模型使用指南(附詳細操作步驟)

我們還可以直接在瀏覽器中使用API​​並檢查結果。我從訓練集中上傳了一些面部照片,看起來一切正常!總的來說,如果您有能力在後臺運行雲實例,那麼我會說使用API​​非常容易。

九.邊緣部署

對於Edge Deployment,我們有多種下載模型的方法。每個選項都非常強大:

  • TF Lite:允許您在移動設備上運行模型
  • TensorFlow.js:允許您在網絡瀏覽器中運行模型
  • 核心ML:允許您在Apple設備上運行模型
  • 容器: 允許您在Docker容器中運行模型(對於Web服務器而言是完美的)
Google AutoML 圖像分類模型使用指南(附詳細操作步驟)

我下載了 Tensorflow.js 模型並構建了一個使用Edge模型和您的網絡攝像頭的演示。注意:此模型不會將您的圖像上傳到服務器,所有內容都在本地運行!

十.最後

總體而言,Google AutoML在此任務上易於使用且非常有效。我期待著嘗試其他雲提供商,看看他們的比較!


附文中幾個重要的跳轉鏈接(部分鏈接需要翻牆):

1.面孔數據集:https://generated.photos/

2.帶標籤分類的人臉數據:https://wao.ai/blog/single-label-image-classification-google-automl#

3.標籤分類教學視頻:https://www.youtube.com/watch?v=adjwhyqdXOM

4.CSV文件:https://wao.ai/blog/single-label-image-classification-google-automl#

5.Google Cloud SDK : https://cloud.google.com/sdk/

6.網絡攝像頭的演示視頻 :

https://wao.ai/blog/can-ai-guess-our-sex


本文由未艾信息(http://www.weainfo.net)編譯,

查看更多最新資訊,歡迎大家點擊閱讀原文登錄我們的AI社區。

關注我們的公眾號:為AI吶喊(weainahan)


分享到:


相關文章: