图像检测训练(easycv)组件提供了主流的YOLOX和FCOS检测模型,用于目标检测的训练。若需在图像中标识并框选高风险实体,您可使用该组件构建目标检测模型,并进行推理分析。本文介绍图像检测训练(easycv)组件的配置方法和使用示例。
前提条件
已开通OSS并完成授权,详情请参见开通OSS服务和云产品依赖与授权:Designer。
使用限制
仅Designer提供该算法组件。
仅支持DLC引擎。
可视化配置组件参数
输入桩
输入桩(从左到右)
限制数据类型
建议上游组件
是否必选
训练数据
OSS
否。
如果没有通过输入桩配置该参数,也可以在字段设置页签的训练数据oss路径参数中配置。
评估数据
OSS
否。
如果没有通过输入桩配置该参数,也可以在字段设置页签的测试数据oss路径参数中配置。
类别列表文件
OSS
否。
如果没有通过输入桩配置该参数,也可以在字段设置页签的类别列表文件oss路径参数中配置。
组件参数
页签
参数
是否必选
描述
默认值
字段设置
训练模型类型
是
训练所选的模型类型,支持以下取值:
FCOS
YOLOX
YOLOv5
YOLOv7
YOLOX
训练所用oss目录
否
存储训练模型的OSS目录。例如
examplebucket.oss-cn-shanghai-internal.aliyuncs.com/test/ckpt/
。假如为空,使用工作空间默认路径无
训练集标注结果文件路径
否
如果数据源格式是PAI标注格式,则提供文件后缀名为manifest的文件。
如果数据源格式是COCO格式,则提供后缀名为.json的文件。
如果通过了输入桩配置算法组件的标注训练数据,则为空。如果同时通过输入桩和该参数配置了算法组件的标注训练数据,则优先使用输入桩配置的输入。
无
测试集标注结果文件路径
否
如果数据源格式是PAI标注格式,则提供文件后缀名为manifest的文件。
如果数据源格式是COCO格式,则提供后缀名为.json的文件。
如果通过了输入桩配置算法组件的标注测试数据,则为空,如果同时通过输入桩和该参数配置了算法组件的标注测试数据,则优先使用输入桩配置的输入。
无
类别列表文件oss路径
否
填入后缀名为txt的标签列表文件。
如果通过了输入桩配置算法组件的类别列表文件,则为空。如果同时通过输入桩和该参数配置了算法组件的类别列表文件,则优先使用输入桩配置的输入。
无
预训练模型oss路径
否
如果有自己的预训练模型,则将该参数配置为自己预训练模型的OSS路径。如果没有配置该参数,则使用PAI提供的默认预训练模型。
无
训练数据oss路径
是
仅当数据源格式为COCO格式时候,才会显示填写此单元格,此处填写的为COCO格式数据的训练图片路径。
无
测试数据oss路径
是
仅当数据源格式为COCO格式时候,才会显示填写此单元格,此处填写的为COCO格式数据的测试图片路径。
数据源格式
是
支持以下取值:
COCO格式
PAI标注格式(模型类型YOLOv5、YOLOv7仅支持PAI标注格式的数据集)
PAI标注格式
参数设置
YOLOX模型结构
是
仅当训练模型类型为YOLOX时,才会显示填写此单元格,此处下拉选择你所想选择的结构。
yolox-s
yolox-m
yolox-l
yolox-x
yolo-s
检测类别数目
是
数据中类别标签的数目。
20
图像尺度
是
图像resize后的大小,填写时候记得空格:高和宽之间使用空格分隔例如 320 320。
320 320
优化方法
是
仅训练模型类型为YOLOX时,支持配置该参数。
模型训练的优化方法,支持以下取值:
momentum
adam
momentum
初始学习率
是
初始学习率
0.01
训练batch_size
是
训练的批大小,即单次模型迭代或训练过程中使用的样本数量。
8
评估batch_size
是
评估的批大小,即单次模型迭代或训练过程中使用的样本数量。
8
epoch轮数
是
总的训练迭代轮数。
说明如果是YOLOX,总的epoch需要大于warmup epochs + 最后稳定lr的epochs。
20
loss打印频率
否
loss(损失值)打印频率。默认为200,表示每200个训练批次,打印一次loss(损失值)。
验证频率
否
默认为2,表示相隔2个epoch进行验证。
warmup epochs
否
仅当模型为YOLOX时,需要填写。
5
最后稳定lr的epochs
否
仅当模型为YOLOX时,需要填写。
5
导出的模型类型
是
导出模型的格式,提供两种导出格式。
raw
jit(模型类型YOLOv5、YOLOv7不支持导出jit格式)
onnx
raw
保存checkpoint的频率
否
保存模型文件的频率。取值1表示对所有训练数据都进行一次迭代。
1
执行调优
gpu机型选择
是
此算法不支持没有GPU的机器运行。
4
开启半精度fp16
否
是否使用fp16半精度模式。
false
单机或分布式
是
只支持DLC分布方式训练。
分布式DLC
输出桩
输出桩(从左到右)
数据类型
下游组件
输出模型
OSS路径。该路径是您在字段设置页签的训练所用oss目录参数配置的OSS路径,训练生成SavedModel格式的模型存储在该路径下。
示例
对于FCOS、YOLOX、YOLOv5、YOLOv7,您可以使用图像检测训练(eayscv)算法组件构建如下工作流。
本示例中,您需要按照以下流程配置组件:
通过PAI提供的智能标注模块进行图片标注,详情请参见处理标注任务。
使用读OSS数据组件读取标注结果文件xxx.manifest,即配置读OSS数据组件的OSS数据路径参数为标注结果数据集的OSS路径。例如
oss://examplebucket.oss-cn-shanghai.aliyuncs.com/ev_demo/xxx.manifest
。将训练数据和评估数据接入图像检测训练(easycv)算法组件,并配置具体参数,详情请参见上文的可视化配置组件参数。
对于FCOS、YOLOX,您还可以通过通用图像预测组件进行离线推理,详情请参见通用图像预测。
相关文档
训练完成图像检测模型后,您可以在图像检测训练(easycv)组件的下游,接入通用图像预测组件,对模型进行预测,来检测模型效果。详情请参见通用图像预测。
关于Designer组件更详细的内容介绍,请参见Designer概述。
Designer预置了多种算法组件,你可以根据不同的使用场景选择合适的组件进行数据处理,详情请参见组件参考:所有组件汇总。