SOLVER Group定义所有和训练优化相关的配置
初始学习率
0.1
学习率是否经过warmup过程,如果设置为True,则学习率会从0开始,经过LR_WARMUP_STEPS
步后线性增长到指定的初始学习率
False
学习率warmup步数
2000
学习率的衰减策略,支持poly
piecewise
cosine
三种策略
poly
-
当使用
poly
衰减时,假设初始学习率为0.1,训练总步数为10000,则在power分别为0.4
0.8
1
1.2
1.6
时,衰减曲线如下图:- power = 1 衰减曲线为直线
- power > 1 衰减曲线内凹
- power < 1 衰减曲线外凸
-
当使用
poly
衰减时,假设初始学习率为0.1,训练总步数为10000,power为1
,开启了LR_WARMUP,且LR_WARMUP_STEP为2000时,衰减曲线如下图: -
当使用
piecewise
衰减时,假设初始学习率为0.1,GAMMA为0.9,总EPOCH数量为100,DECAY_EPOCH为[10, 20],衰减曲线如下图: -
当使用
cosine
衰减时,假设初始学习率为0.1,总EPOCH数量为100,衰减曲线如下图:
学习率Poly下降指数,仅当策略为LR_POLICY
为poly
时有效
0.9
学习率piecewise下降指数,仅当策略为LR_POLICY
为piecewise
时有效
0.1
学习率piecewise下降间隔,仅当策略为LR_POLICY
为piecewise
时有效
[10, 20]
L2正则化系数
0.00004
起始EPOCH值
0
训练EPOCH数
30(需要根据实际需求进行调整)
训练时,保存模型的间隔(单位为EPOCH)
10(意味着每训练10个EPOCH保存一次模型)
训练时选择的损失函数, 支持softmax_loss(sotfmax with cross entroy loss)
,
dice_loss(dice coefficient loss)
, bce_loss(binary cross entroy loss)
三种损失函数。
其中dice_loss
和bce_loss
仅在两类分割问题中适用,softmax_loss
不能与dice_loss
或bce_loss
组合,dice_loss
可以和bce_loss
组合使用。使用示例如下:
['softmax_loss']
或['dice_loss','bce_loss']
['softmax_loss']