【手把手教學】快速利用 AutoML Vision 提升 PCB 瑕疵檢測精準度

自 2018 年 Google 在 Google Cloud Next 年會重磅推出 Cloud AutoML 技術,資料科學與 AI 普及化應用的時代已正式來臨。暨上篇工廠製程革新:AutoML Vision 如何優化製造業的目視檢測,改善品管?,本篇文章將進一步實際教學如何快速利用 AutoML Vision 提升 PCB 的瑕疵檢測精準度。以下教學,將以兩個 PCB 資料集,示範兩種不同模型的操作步驟:單一標籤分類模型(判斷是否有瑕疵)、物件偵測模型(判斷是否有瑕疵、偵測瑕疵處、判斷瑕疵類型)。

如果看完本篇教學文,有興趣實作練習的朋友,也歡迎造訪 Google Cloud Qwiklab,自費報名 2 小時的線上課程: Classify Images of Clouds in the Cloud with AutoML Vision

文章目錄

 

什麼是 AutoML、AutoML Vision?

AutoML 是一種 AI 自動化建模的技術,相較於仰賴專業的 AI 資料科學家自行建模,過程需反覆挑選、測試、訓練、優化,才能順利上線一版模型,有了 AutoML,企業不需要撰寫程式碼,也不需擁有太深的 AI 技術,即可透過點擊簡潔、明瞭的 UI 介面快速導入 AI。

相較一般自行建模的機器學習開發流程:目標設定、準備資料、資料處理、建立模型、優化模型、模型上線,AutoML 僅需專注於前三個資料前處理的步驟:目標設定、準備資料、資料處理。

AutoML Vision 選取模型目標畫面
AutoML Vision 選取模型目標畫面
一般機器學習開發流程
一般機器學習開發流程
AutoML 可簡化機器學習開發流程
AutoML 可簡化機器學習開發流程

透過 AutoML,您僅需匯入充足數量(建議每個 label 的圖片各 1,000 張)的高品質圖片(步驟 1),AutoML 即可針對上傳的 dataset 自動建立專屬的機器學習模型供測試預測結果(步驟 2-4),最後 AutoML 提供 REST API、Phython 兩種選擇(步驟 5),供使用者可以快速後續利用模型於產品服務中。

AutoML 流程

目前 Google Cloud 提供以下 6 種 AutoML 服務,而本次文章分享的 AutoML Vision 即是針對圖片資料進行分析預測。

  1. Vertex AI:整合客製化建模、AutoML 的一站式 AI 平台服務
  2. AutoML Vision:圖像資料分析預測(例如:PCB 瑕疵檢測)
  3. AutoML Video Intelligence:影像、鏡頭資料分析預測(例如:影片內容分類)
  4. AutoML Natural Language:文字結構、語意分析預測(例如:Chatbot 客戶評價分析)
  5. AutoML Translation:文字翻譯模型,支援 50 種語言(例如:領域專業術語翻譯)
  6. AutoML Tables:結構化資料分析預測,可處理多種表格資料(例如:銷量預測)

 

 

情境一:單一標籤分類模型(黑白 PCB 圖片 dataset

步驟一:匯入

  1. 準備好 CSV 檔資料集:A 欄為圖片用途(TRAIN)、B 欄為圖片連結、C 欄為標籤(good、ng)

    A 欄

    B 欄

    C 欄

    TRAIN

    gs://cloud-ai-workshop-us/…/PCB Data1/img0001.jpg

    good

    TRAIN

    gs://cloud-ai-workshop-us/…/PCB Data1/img0002.jpg

    ng


    (參考 AutoML Vision 文件,了解需準備的圖片張數、圖片檔型、圖片大小、資料集 CSV 檔格式)

  2. 新建資料集:
    1. 從左邊 Menu 選單的 ARTIFICIAL INTELLIGENCE,點選 Vision,進到 Datasets頁面
    2. 填寫資料集名稱、選取模型目標(單一標籤分類模型)

  3. 從 Cloud Storage 選取您的資料集 CSV 檔案

 

 步驟二:映像檔

  1. 匯入後,可快速檢視圖片集

  2. 針對標記錯誤的圖片,也可以手動個別修改標記(good、ng)

步驟三:訓練

  1. 填寫模型名稱,並指定將模型放在雲端(Cloud hosted)或地端(Edge)(備註:選擇 Cloud hosted 將無法輸出到地端使用)
  2. 輸入訓練模型的機器時數預算(建議 16 小時)

步驟四:評估

  1. 訓練好的模型,可在評估分頁,查詢模型的精準度(precision)、喚回度(recall)、混淆矩陣(confusion matrix),以判斷模型是否有符合產品可上線的指標

步驟五:測試及使用

  1. 部署模型,選擇部署至於雲端的機器台數

  2. 從電腦上傳幾張照片,測試模型預測結果,上傳後將顯示每張圖片瑕疵處、預測信心度(以下為示意圖,非情境一實際結果),並選擇以 REST API 或 Phython 將模型應用在您的產品中

 

情境二:物件偵測模型(彩色 PCB 圖片 dataset

步驟一:匯入

  1. 準備好資料集:A 欄為圖片用途(TRAIN)、B 欄為圖片連結、C 欄為標籤(missing_hole、spur、spurious_copper、mouse_bite、short、open_circuit 6 種瑕疵)

    A 欄

    B 欄

    C 欄

    TRAIN

    gs://cloud-ai-workshop-us/…/PCB Data2/img0001.jpg

    missing_hole

    TRAIN

    gs://cloud-ai-workshop-us/…/PCB Data2/img0002.jpg

    spur

    (參考 AutoML Vision 文件,了解需準備的圖片張數、圖片檔型、圖片大小、資料集 CSV 檔格式)

  2. 新建資料集:
    1. 從左邊 Menu 選單的 ARTIFICIAL INTELLIGENCE,點選 Vision,進到 Datasets頁面
    2. 填寫資料集名稱、選取模型目標(物件偵測模型)
  3. 從 Cloud Storage 選取您的資料集 CSV 檔案

步驟二:映像檔

  1. 匯入後,可快速檢視圖片集

  2. 針對標記錯誤的圖片,也可以手動個別修改標記、直接補標註新的瑕疵處

步驟三:訓練

  1. 填寫模型名稱,並指定將模型放在雲端(Cloud hosted)或地端(Edge)(備註:選擇 Cloud hosted 將無法輸出到地端使用)
  2. 輸入訓練模型的機器時數預算(建議 16 小時)

步驟四:評估

  1. 訓練好的模型,可在評估分頁,查詢模型的精準度(precision)、喚回度(recall),以判斷模型是否有符合產品可上線的指標

步驟五:測試及使用

  1. 部署模型,選擇部署至於雲端的機器台數

  2. 從電腦上傳幾張照片,測試模型預測結果,上傳後將顯示每張圖片瑕疵處、預測信心度(以下為示意圖,非情境二實際結果),並選擇以 REST API 或 Phython 將模型應用在您的產品中

想立即啟用 AutoML Vision 嗎?歡迎立即與 iKala Cloud 聯繫!

 

閱讀更多:

 

參考資訊: