论文链接:https://arxiv.org/pdf/2011.04233.pdf
论文出处:WACV2020
论文代码:https://github.com/liuruijin17/LSTR
研发团队:西安交通大学人工智能与机器人研究所
过程踩坑:
- 基于tusimple 数据集从零训练训练,过程中出现 loss 下降至一个局部最优解,此时loss 在15 附近,无法继续收敛下降 。
原因分析: 使用的Adam 优化器,batch_size=8, lr 从1 ,开始,想法是开始用大学习率让loss 快速下降,缩短训练时间, 学习率衰减0.1, 0.01, 0.001, 0.0001 , 当较大学习率训练震荡时,而且没有充分训练,在同一个学习率下没有达到epoch 就简单认为震荡直接调到1/10 的学习率,很可能直接收敛到很差的局部最小值点,而后面的学习因为学习率已经被降低,就再也跳不出去了。。。
在使用adam 优化器时,最好从默认 lr = 0.001 开始,同级学习率下训练要充分epoch合适,batchsize_size 调至16,loss跳出坑,复现达到论文的效果。
2.训练过程中测试与 训练完成后测试的可视化效果差别非常大
3.不同远近端加权loss 方式对训练和结果的影响
由于LSTR 是基于原图(透视图)对车道线进行检测拟合, 本质是最小二乘法, 因为近多远少(标注是平均标注)导致车道线的检测近端拟合效果要好于远端, 远端(尤其是弯道)拟合并不好,偏差比较大。想通过对远近端不同位置的loss 进行加权来调节增强对远端的拟合能力
a.简单除暴 递增式 【1,2,3,4,5…56】
b. 【1,2,3,4,5…56】/56
c.【1,2,3,4,5…56】/(56**0.5)
d. (1,2,3,4,5…56】/56)**0.5
e.[1,1,1,1,1,1,1,…1,222222,33333,4444,555,66,7,8]**0.5
f. .[1,1,1,1,1,1,1,…1,222222,33333,4444,555,66,7,8]**0.3
理解了很多地方用 C**0.5 做调节因子的原因, 分布限制在合理范围,分布更合理。[有效实用性高]
4.非共享曲率参数与共享曲率参数的差异。