跳到主要内容

训练参数

训练代数

训练代数默认12,不建议修改。

批量大小

分类默认批量大小32,检测类模型批量大小默认2。

当图像尺寸比较大时(比如2048),可以适当降低批量大小,避免爆显存导致训练时间过长。

爆显存示意图:

学习率

一般使用默认值 0.001 就可以了,如果遇见训练 loss 不稳定,甚至是 loss nan 的情况,可以将学习率降低10倍,看看是否还会nan。

训练 loss 不稳定

下图可以看到 loss 出现了“插针”的现象,突然变很高,又回归正常。

训练 loss nan

下图可以看到,训练 loss 走到第4代之后,就nan了,之后模型无法回归正常。

使用OK图训练

当我们做缺陷检测时,经常会遇见过检的情况,也就是将OK图检测为NG。这时就需要告诉模型,哪些是OK,让模型学习OK不应该检出结果。

过检现象

下图是一个气球检测模型,在浴缸内检测到假气球,也就是过检:

准备OK数据

当需要启动OK图训练时,我们要在数据集根目录内创建名为OK的文件夹,并且将过检图片放在这个文件夹内。

注意,不要将任何有目标物体的数据放在这个文件夹中,否则可能会造成漏检问题。

勾选使用OK图训练

在启动训练时,勾选使用OK图训练:

降过检效果

启动降过检之后,模型不会检出气泡: