练LoRA时loss卡在高位下不来,多半不是玄学,挨个排查基本都能找到原因。我踩过的几个按顺序摆出来:
- 学习率给太大。表现是loss来回震荡,就是不往下走。调小一档往往就顺了,这项改起来成本最低,我一般最先查它。
- 数据集脏。标签乱写、图片质量参差不齐,模型分不清到底该学什么,loss自然降不下去。与其反复改参数,不如先把数据清一遍。
- 步数和批次没配好。数据本来就少还硬堆步数,基本等于白练,后面一大段都在原地打转。
- 底模选错、分辨率不匹配。这两个不太显眼,但同样会拖后腿,前面几项都排除了再回头看它们。
还有一点,loss数值本身别太当回事。它只是个参考,曲线好看不代表出图好,最后还是要拿出图效果说话。排查的时候最好一次只动一项,动完跑一轮看图再决定下一步,不然就算救回来了,也说不清到底是哪一项起的作用,下次照样踩。