針對原始視頻數據,您可以使用視頻分類訓練算法組件對其進行模型訓練,從而獲得用于推理的視頻分類模型。本文介紹視頻分類訓練算法組件的配置方法及使用示例。
前提條件
已開通OSS并完成授權,詳情請參見開通OSS服務和云產品依賴與授權:Designer。
使用限制
僅Designer提供該算法組件。
僅支持DLC計算引擎。
算法簡介
視頻分類模塊提供主流的3D卷積神經網絡和Transformer模型用于視頻分類任務的訓練,目前已經支持的模型包括X3D系列的X3D-XS、X3D-M及X3D-L和Transformer模型的swin-t、swin-s、swin-b、swin-t-bert,其中swin-t-bert支持視頻加文本的雙模態輸入。
視頻分類訓練算法組件位于組件庫視覺算法文件夾下的離線訓練模型子文件夾。
可視化配置組件
輸入樁
輸入樁(從左到右)
限制數據類型
建議上游組件
是否必選
訓練數據
OSS
讀OSS數據
否。如果沒有通過該輸入樁傳入訓練數據,則需要在字段設置頁簽中的訓練數據文件oss路徑參數配置訓練數據,詳情請參見下文的組件參數。
評估數據
OSS
讀OSS數據
否。如果沒有通過該輸入樁傳入評估數據,則需要在字段設置頁簽中的評估數據文件oss路徑參數配置評估數據,詳情請參見下文的組件參數。
組件參數
頁簽
參數
是否必選
描述
默認值
字段設置
訓練所用oss目錄
是
存儲訓練模型的OSS目錄,例如
oss://pai-online-shanghai.oss-cn-shanghai-internal.aliyuncs.com/test/test_video_cls
。無
數據目錄
否
存儲視頻文件的OSS目錄,若不為空,則會和標簽文件中的視頻文件名共同拼接為完整的視頻文件路徑,例如數據目錄為
oss://pai-vision-data-hz/EasyMM/DataSet/kinetics400/
,標簽文件中的視頻文件名為video/1.mp4
,則最終的視頻文件路徑為oss://pai-vision-data-hz/EasyMM/DataSet/kinetics400/video/1.mp4
無
訓練數據文件oss路徑
否
如果沒有通過輸入樁配置算法組件的訓練數據,則需要配置該參數,表示訓練數據文件所在的OSS路徑,例如
oss://pai-vision-data-hz/EasyMM/DataSet/kinetics400/train_pai.txt
。如果同時通過輸入樁和該參數配置了算法組件的訓練數據,則優先使用輸入樁配置的輸入。
若標簽文件中不包含文本,標簽文件每行的存儲格式為
視頻文件名 標簽
,元素之間使用空格分隔,若標簽文件中包含文本,每行的存儲格式為視頻文件名\t文本\t標簽
,元素之間使用\t分隔無
評估數據文件oss路徑
否
如果沒有通過輸入樁配置算法組件的評估數據,則需要配置該參數,表示評估數據文件所在的OSS路徑,例如
oss://pai-vision-data-hz/EasyMM/DataSet/kinetics400/train_pai.txt
。如果同時通過輸入樁和該參數配置了算法組件的評估數據,則優先使用輸入樁配置的輸入。
無
預訓練模型oss路徑
否
建議使用預訓練模型,以提高訓練模型的精度。
無
參數設置
視頻分類模型網絡
是
選擇使用的識別模型網絡,支持以下取值:
x3d_xs
x3d_l
x3d_m
swin_t
swin_s
swin_b
swin_t_bert
x3d_xs
是否多標簽
否
任務是否屬于多標簽。
目前僅swin_t_bert支持多標簽訓練。
false
分類類別數目
是
分類類別的數量。
無
初始學習率
是
初始學習率。
x3d模型推薦使用學習率0.1,swin模型推薦使用學習率0.0001。
0.1
訓練迭代輪數
是
訓練的迭代輪數。
x3d模型推薦300,swin模型推薦30。
10
warmup迭代輪數
是
開始設置較小的學習率進行訓練,直到warmup迭代輪數才使學習率達到初始學習率,從而防止模型梯度爆炸。例如設置warmup迭代輪數為35時,模型訓練的學習率會逐漸增加,到第35 Epoch時增加到初始學習率。
35
訓練batch_size
是
訓練的批大小,即單次模型迭代或訓練過程中使用的樣本數量。
32
模型保存頻率
否
保存Checkpoint的頻率,以Epoch為單位。取值為1表示每完成一次訓練就保存一次Checkpoint。
1
執行調優
開啟半精度
是
選中該參數,表示使用FP16半精度進行模型訓練,用來降低內存占用。
無
單機或分布式
否
運行模式,支持以下取值:
single_dlc:單機DLC。
distribute_dlc:分布式DLC。
single_dlc
gpu機型選擇
否
選擇運行的GPU規格。
8vCPU+60GB Mem+1xp100-ecs.gn5-c8g1.2xlarge
輸出樁
輸出樁(從左到右)
數據類型
下游組件
輸出模型
OSS路徑。該路徑是您在字段設置頁簽的訓練所用oss目錄參數配置的OSS路徑,訓練生成的.pth模型存儲在該路徑下。
示例
您可以使用視頻分類訓練算法組件構建如下工作流。本示例中,您需要按照以下流程配置組件:
使用兩個讀OSS數據組件分別讀取視頻數據文件作為訓練數據和評估數據,即配置讀OSS數據組件的OSS數據路徑參數為視頻數據文件的OSS路徑。
視頻數據文件的格式如下圖所示。該文件的每一行為一個視頻存放路徑和分類標簽,二者之間使用空格分隔。
將訓練數據和評估數據接入視頻分類訓練算法組件,并配置具體參數,詳情請參見上文的可視化配置組件。
相關文檔
關于Designer組件更詳細的內容介紹,請參見Designer概述。
Designer預置了多種算法組件,你可以根據不同的使用場景選擇合適的組件進行數據處理,詳情請參見組件參考:所有組件匯總。