emo_loss 会变成nan
您好,请教一下。 我再qwen 上使用这个loss,进行的是下游任务的微调,原本的loss 是 mle。 使用的是: EMO/language_modeling/gpt2.py 中的emo 。
他在训练的过程中会出现这样的现象:
以及:
请问这个情况大概是为什么?
补充一下,上面emo_loss 不为nan 的情况算出来的 final_loss 是一个比较大的负数:
你好,bf16或者fp16的LLM训练的话可以使用instruction_tuning/emo_llama.py里提供的例子。我这边微调LLaMa2和Mistral loss处于正常范围(从1.x开始下降)。
按照你的想法,我修改了这个代码。
结果训练训练崩了,我试试降降学习率吧。
4e-6 的学习率,训练还是会蹦,作者有什么建议吗?
我这边没有训练过qwen,所以不知道是不是有什么模型特定的原因。我的SFT训练环境设置是global_batch_size=128, 4卡A100-80G, max_sequence_length=512/1024/4096都实验过,learning rate=2e-5, lr_scheduler_type=linear, warmup_ratio=0.03, training_epochs=3。你可以参考下,用这套config在LLaMa1/LLaMa2/Mistral上是正常收敛的。