iT邦幫忙

2023 iThome 鐵人賽

DAY 27
0
tags: 第 16 屆 iThome 鐵人賽 (2023)

{%hackmd BJrTq20hE %}

在本範例中,我使用 AI Maker 針對 YOLOv7 影像辨識應用所提供的 yolov7 範本,從無到有逐步建立一個 YOLO 影像辨識應用。系統所提供的 yolov7 範本中事先定義了從訓練任務到推論各階段任務中所需使用的環境變數、映像檔、程式等設定,方便您快速地開發屬於自己的 YOLO 網路。

主要步驟如下:

1.資料集準備

在此階段,我們要準備機器學習訓練的影像資料集及標註資料,並上傳至指定位置。

2.資料標註

在此階段,將標註影像中的物體,標註資料稍後會用於神經網路的訓練。

3.訓練 YOLO 模型

我們將設定相關訓練任務,以進行神經網路的訓練與擬合,並將訓練好的模型儲存。

1. 準備資料集

YOLOv7 模型必須在已標註的資料上進行訓練,以學習該資料中的物件類別。以下將說明兩種資料的準備方法:

1.1 上傳自有資料集
請先準備好欲訓練的資料集,如:貓、狗、人… 等圖片。依照下列步驟,將圖片集上傳至本系統所提供的儲存服務中,並將圖片集依照指定的目錄結構存放,以供後續開發使用。

如果沒有資料及的話可以到COCO128 資料集 為例,此資料集為 COCO train 2017 中的前 128 張圖片,包含圖片以及已經標註好的資料,請先下載此資料集至本機並解壓縮。

解壓縮後,會在 coco128 資料夾中看到 images 以及 labels 兩個資料夾,其中 images 資料夾裡面放的是訓練的圖片,而 labels 資料夾存放的是標註資料的文字檔。

2. 資料標註

為了使 YOLO 網路能夠學習與辨認我們所提供影像,我們須先將準備訓練的影像進行標註。本章節中,我們將透過 AI Maker 所整合的 CVAT 工具(Computer Vision Annotation Tool),對欲執行訓練的資料進行標註。

在模型訓練好後或是已經有訓練好的模型,可以使用 CVAT 工具(Computer Vision Annotation Tool) 的輔助標註功能,來降低人工標註的時間以及成本

  1. 訓練 YOLO 模型
    完成 資料集的準備 後,就可以使用這些資料,來訓練與擬合我們的 YOLO 網路了。接下來您可以使用 AI Maker 訓練任務 來訓練我們的 YOLO 網路。

從 OneAI 服務列表選擇「AI Maker」,再點擊「訓練任務」,進入訓練任務管理頁面後,切換至「一般訓練任務」,接著點擊「+建立」,新增一個訓練任務。

基本資訊
首先是基本資訊的設定,我們先選擇 一般訓練任務,並選用系統內建的 yolov7 範本,來帶入固定使用的環境變數與設定,設定畫面如下:


硬體設定
參考目前的可用配額與訓練程式的需求,從列表中選出合適的硬體資源。

儲存設定
這個階段預設一組儲存設定,名稱:dataset,掛載路徑:/dataset,請選擇您存放訓練資料的儲存體,例如:yolo-dataset。


選擇演算法

啟動訓練任務
完成訓練任務的設定後,回到訓練任務管理頁面,可以看到剛剛建立的任務。點擊該任務,可檢視訓練任務的詳細設定。若此時任務的狀態顯示為 Ready,即可點擊 啟動,執行訓練任務

3.3 檢視訓練結果
操作步驟請參閱 AI Maker > 檢視訓練結果 文件,其中訓練任務的 Metrics 可以參考以 mAP_0.5,以本例來說即為 mAP_0.5,值越大越好。

3.4 註冊模型
從運行列表中挑選出符合預期的結果,再點選右側「註冊模型」,將之儲存至模型庫中;若無符合預期結果,則重新調整環境變數與超參數的數值或數值範圍。

資料參考

https://docs.oneai.twcc.ai/s/casestudy-yolov7#AI-Maker-%E6%A1%88%E4%BE%8B%E6%95%99%E5%AD%B8---YOLOv7-%E5%BD%B1%E5%83%8F%E8%BE%A8%E8%AD%98%E6%87%89%E7%94%A8


上一篇
DAY 26 YOLv7模型架構
下一篇
DAY 28 YOLOv7 影像辨識應用
系列文
Diffusion 模型、物件偵測Yolo v7& Yolo v4 30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言