1.loss无法下降
问题描述:
问题可以描述为,200条数据,进行LORA训练,前几步误差在30多,9万次训练后误差也大于0.5.

此时学习率lr如下:
lr_schedule=_optimizer.CosineDecaySchedule(
warmup_steps=5_000, # 1000步预热,帮助稳定初始训练
peak_lr=1e-5, # 峰值学习率(从默认值调低)
decay_steps=300_000, # 总衰减步数
decay_lr=1e-7, # 最终学习率
),
排除学习率过大可能。
相似问题查找
经GITHUB相关问题查找,发现uu有遇到loss爆炸相关情况(loss 1000+),问题原因是归一化文件norm_stats.json中的action中的某些维度为0.导致std间相差倍数过大,或者某一维度的q0和q99过于接近


问题分析:
查看我自己的action的std发现第4,第6维度相较于其他几个维度明显过大(相差100倍)。


对原始数据进行分析,发现在action进行转换的时候,由于没有对弧度值限制在[0,2pai]内,导致最终的关节角相差了2pai的倍数,出现了关节角的跳变。处理方式:将差值限制在[0,2pai]



处理后结果
处理后发现第4第6维的std明显减小了,损失也恢复正常

