实例分割开发说明
应用场景
对比物体检测,支持用多边形标注训练数据,模型可像素级识别目标。适合图中有多个主体、需识别其位置或轮廓的场景。
如以下几个场景:
- 专业检测:应用于专业场景的图像分析,比如在卫星图象中识别建筑、道路、森林;医学图象中定位病灶、测量面积等
- 智能交通:识别道路信息,包括车道表计、交通标志等
- 工业制造:识别工业生产过程中的瑕疵、异物等
以下为AutoDL训练方式及高阶调参训练模型的使用说明
AutoDL模式
发起训练
在任务列表页找到创建完成的实例分割任务,点击训练发起实例分割模型训练,如当前任务已有版本时点击训练将发起新版本训练
训练配置
在AutoDL模式下支持的训练配置包括导出类型、部署方式、选择算法、高级训练配置以及训练完成后同步发布为模型
导出类型
导出类型包括仅导出模型源文件或导出模型源文件与离线SDK
- 导出模型源文件:指训练完成后支持将模型源文件导出,模型源文件可通过Paddle-Inference转化至实际应用场景中
- 导出模型源文件与离线SDK:指训练完成后可直接将模型发布为SDK包,可直接用于业务集成,省去繁琐转化过程
部署方式
选择导出源文件与离线SDK时,用户可以基于最终模型部署环境提供针对性算法选择
选择算法
飞桨EasyDL针对应用开发者提供简单勾选即可完成训练配置的方式,提供高精度及高性能训练算法,可根据实际场景进行选择
相同训练数据情况下,高精度算法训练出的模型准确率更高,训练及预测耗时更长
相同训练数据情况下,高性能算法训练模型所需的训练及预测耗时更短,模型准确率平均比高精度算法低3%~5%
高级训练配置
高级训练配置开启状态下支持用户设置图像分辨率及迭代轮次(epoch)
- 图像分辨率:如检测目标在图片中占比较小,可适当调高图片分辨率以得到更高的精度,如检测目标在图片中占比较大,可适当调低图片分辨率以得到更高的训练效率
- 迭代轮次(epoch):训练集完整参与训练的次数,如模型精度较低,可适当调高迭轮次,使模型训练更完整
系统将根据您本地训练资源及训练模型推荐较优组合,一般情况下推荐不做更改,如实际任务场景有需求,请根据实际调整
训练完成后同步发布为模型
任务训练完成后可通过评估、校验验证任务效果,任务效果满足实际使用要求后发布为模型完成模型部署流程,如当前任务已经过多轮迭代且任务效果较有保证可勾选训练完成后同步发布为模型,并输入发布为的模型名称以及版本描述,训练成功后将会自动发布为模型
任务与模型一一对应,如当前任务已有版本发布为模型,则当前任务下的其他版本发布时仅支持发布在当前模型下
高级调参模式
发起训练
在任务列表页找到创建完成的实例分割任务,点击训练发起实例分割模型训练,如当前任务已有版本时点击训练将发起新版本训练
训练配置
在高级调参模式下支持的训练配置包括导出类型、选择算法、选择网络、是否自定义预训练模型、高级训练配置、训练完成后同步发布为模型
高级调参模式为高级版专属功能 开放更灵活的参数设置,支持用户手动/自动设置训练参数,系统自动设置参数训练完成后可视化展示
导出类型
导出类型包括仅导出模型源文件或导出模型源文件与离线SDK
- 导出模型源文件:指训练完成后支持将模型源文件导出,模型源文件可通过Paddle-Inference转化至实际应用场景中
- 导出模型源文件与离线SDK:指训练完成后可直接将模型发布为SDK包,可直接用于业务集成,省去繁琐转化过程
网络算法选择
支持用户根据实际应用场景手动选择训练使用的算法及网络,实例分割场景下提供的网络及算法列表及主要特点如下
预训练模型
系统基于每一种网络、算法提供了主流的预训练模型供训练使用,同时支持用户自定义预训练模型
自定义预训练模型:需使用paddlepaddle1.8.4 paddledetection以及对应的网络训练的预训练模型,在windows系统下不支持中文路径下的预训练模型
为节省您的本地空间,系统提供的预训练模型需要前往订阅模块-高阶调参模式预训练模型下载列表中下载对应的预训练模型使用
高级训练配置
高级训练配置中提供了网络参数、预处理参数、训练参数、优化器参数可供选择调整,系统将根据训练任务及数据情况自动设置高级参数,也支持勾选部分参数进行手动设置
可通过hover提示查看每个参数对训练过程的影响
注:参数设置过程中需考虑训练数据情况、本地设备资源情况等,如参数设置不合理,可能会导致训练失败
训练完成后同步发布为模型
任务训练完成后可通过评估、校验验证任务效果,任务效果满足实际使用要求后发布为模型完成模型部署流程,如当前任务已经过多轮迭代且任务效果较有保证可勾选训练完成后同步发布为模型,并输入发布为的模型名称以及版本描述,训练成功后将会自动发布为模型
任务与模型一一对应,如当前任务已有版本发布为模型,则当前任务下的其他版本发布时仅支持发布在当前模型下
添加数据
添加训练数据
训练数据将用于当前任务的训练,可选择数据总览页已上传且有标注数据的数据集
添加完成后可查看添加的数据集详情,如存在误添加的情况可将当前数据集移除
自定义验证集
验证集用来指导训练过程,通常数据质量更高的验证集训练出来的模型效果更好
验证集标签应与训练集完全一致,为获得更好的模型效果,验证集数据需要更贴近实际应用场景
如未设置自定义验证集,将在原训练数据中随机抽取30%用于指导训练过程
自定义测试集
自定义测试集用于模型效果的评估,上传不包含在训练集中的测试数据,可获得更可观的模型效果
测试集标签应是训练集的子集或全集
如未设置自定义测试集,将在会与验证集共用训练数据中随机抽取的30%用于模型效果评估
数据增强策略
模型训练的效果很大程度取决于数据的量级以及标注的结果,当在实践中无法收集到数目庞大的高质量数据时,可以通过配置数据增强策略,对数据本身进行一定程度的扰动从而产生"新"数据
数据增强提供默认配置以及手动配置两种配置方式
- 默认配置:训练过程中系统将自动根据训练情况选择数据增强策略
- 手动配置:可手动勾选数据增强算子,支持设置出现概率、强度以及查看当前算子的效果
训练环境选择
支持用户使用本地CPU、GPU资源发起训练,可在该模块选择具体环境进行模型训练
选用GPU训练需要依赖cuda及cudnn版本,以下为不同版本对于cuda版本的要求