训练模型
完成标注后,即可开始训练模型。本文介绍如何在“训练”参数栏配置训练参数、训练模型、查看训练信息。
配置训练参数
开始训练前,应先为深度学习模型配置训练参数。单击 参数配置 打开“训练参数配置”窗口,可配置数据增强参数、训练参数与模型微调参数(仅开发者模式)。
为深度学习模型调整最优参数需要进行多次尝试,首次训练建议使用 Mech-DLK 提供的默认参数值,可适用于大多数应用场景。 |
数据增强
训练模型的数据需要尽量包含实际可能出现的所有情况,若现场不具备相应的采集条件,可以针对缺失的情况在训练前调整数据增强参数,在原有数据的基础上丰富训练数据。但必须确保倍增的图像数据与现场实际情况一致,如果现场不会出现旋转的情况,那么不需要调整这一参数,否则可能会影响模型效果。
鼠标悬浮在 可查看各参数的调节效果。 |
-
亮度
图像的明暗程度。现场光照变化较大时,可以通过调整 亮度 范围倍增不同光照状态下的图像数据。
-
对比度
图像灰度反差的大小。目标物体和背景差异较小时,适当调整 对比度 范围,可以使目标物体特征更明显。
-
平移
将图像所有的像素坐标分别加上指定的水平偏移量和垂直偏移量。现场物体(料筐、托盘等)位置移动范围较大时,可以通过调整 平移 参数,随机倍增横向、纵向平移的数据。
-
旋转
指图像以某一点为中心旋转一定的角度,形成一张新的图像。一般情况下保持默认参数设定即可满足需求。物体摆放角度变化较大时,通过调整 旋转 参数,可以随机倍增多种角度的图像数据。
-
缩放
将图像按一定比例缩小或放大。物体摆放高度差异较大时,通过调整 缩放 参数 ,可以随机倍增不同缩放程度图像数据。
-
水平翻转
图像左右翻转 180°。若待目标物体存在左右对称的情况,可以开启 水平翻转 。
-
垂直翻转
图像上下翻转 180°。若目标物体存在上下对称的情况,可以开启 垂直翻转 。
训练参数
-
输入图像尺寸
训练时输入神经网络的图像宽高(单位:像素)。建议使用默认设定;若图像中的物体或标注缺陷区域较小时,需要适当调大 输入图像尺寸 。图像尺寸越大,模型精度越高,但是训练速度越慢。
-
批量大小
神经网络训练一次选取的样本数量。建议使用默认设定;若需要提高训练速度时,可以适当调大 批量大小 参数,参数设置太大会导致显存占用变高。
-
模型类型
“缺陷分割”模块
标准
标准 模式可适用于大多数应用场景
“实例分割”模块
标准(推荐 GPU 部署)
适用于对精度要求较高的场景,该模式会导致训练速度变慢
轻量(推荐 CPU 部署)
适用于对训练速度要求较高的场景
-
评估间隔轮次
模型训练时,每评估一次间隔的轮次数量。建议使用默认设定,调大 间隔轮次 参数可以提升训练速度 ,参数值越大训练越快;参数值越小训练越慢,但有助于挑选最优模型。
-
总轮次
模型训练的总轮次。建议使用默认设定,若待识别图像特征较复杂时,需要适当增加训练轮次,提升模型效果,但会导致训练时间变长。
训练轮次并非越大越好,总轮次设置较大时,模型准确率稳定后还会持续训练,会导致训练时间变长,且有过拟合的风险。 -
学习率
学习率决定神经网络训练过程中每一次迭代优化的步长。建议使用默认设定,图表损失曲线收敛较慢时,可以适当调大学习率;若图表精度波动较大,可以适当调小学习率。
-
GPU ID
用户训练设备的显卡信息。若用户设备有多块 GPU ,可以在指定的 GPU 上训练。
-
网络简化
该选项用于简化神经网络结构。默认不勾选。训练数据相对简单时,勾选该选项可以提高训练和推理速度。
-
训练时最大目标个数
该选项用于限定能识别到的最大目标个数,默认不勾选,勾选并设定数值后一般能加快推理速度。一定情况下,设定此参数有助于减少GPU显存使用。
模型微调
在模型上线一段时间后,若发现一些场景模型不能覆盖,此时需要进行模型迭代。传统的方案是增加数据重新训练,但可能会降低整体识别准确率,同时花费时间较长。 可以使用“模型微调”的方式对模型迭代,既能保持模型当前的准确率,也能节省时间。
此功能仅在“开发者模式”下可用。 |
可通过以下方式对模型进行微调:
-
采集模型识别效果不好的图像。
-
使用 Mech-DLK 打开模型所属的工程。
-
在
中开启“开发者模式”。 -
将采集的图像加入到训练集和验证集中。
-
完成新增图像的标注。
-
在
中开启 微调。 -
在训练参数中,适当调低“学习率”参数;“总轮次”参数可以降低为50~80。
-
单击确认保存配置好的参数信息。
-
完成模型的训练和导出。
在实例分割算法中,如需微调超级模型,开启“超级模型微调”后,选择超级模型路径。 |