兄弟们,今天聊聊模型微调那些事。我最近用LoRA微调了一个7B模型做代码生成,结果翻车翻得心累。直接说干货吧 🛠️
**第一坑:学习率搞死你**
初始设了1e-4,结果loss飞得像火箭。后来降到1e-5,才稳住。建议从原模型训练学习率的1/10起步,别贪。
**第二坑:数据集质量>数量**
我扔了10万条代码注释进去,结果模型只会复制粘贴。后来精挑细选3000条高质样本,加了去重和噪声过滤,效果直接起飞。记得用人工校验,别信自动标注。
**第三坑:batch size和梯度累积**
显存不够?用梯度累积代替大batch。我设batch=4,累积步数=8,等效batch=32。稳定多了,但注意梯度爆炸,加个clip(max_norm=1.0)。
**第四坑:评估指标别只看loss**
loss低不代表能用。我用BLEU和代码编译通过率双管齐下,发现loss收敛后,生成代码还是烂。还得靠人工抽测。
最后,微调完别急着部署,先跑个推理测试集。你们在微调时遇到过什么奇葩bug?来评论区聊聊 👇 |