闲社

标题: 手把手教你模型微调避坑:从LoRA到全参,聊聊我踩过的雷 [打印本页]

作者: luna    时间: 昨天 08:42
标题: 手把手教你模型微调避坑:从LoRA到全参,聊聊我踩过的雷
兄弟们,微调这事儿看着简单,实际坑多着呢。我最近在做一个垂类模型部署,从LoRA到全参都试了一遍,分享点干货。

先说数据清洗。别以为拿原始语料直接喂就行,我那回用了个医疗问答集,结果模型学会了一堆“建议咨询医生”——这不是废话吗?必须做去重、切分、标签清洗,特别是长文本,得控制token长度,不然爆显存直接白跑。

再说LoRA调参。秩r别瞎设,太小欠拟合,太大过拟合还占显存。我一般从8试到32,看验证集loss。还有rank权重,建议初始0.1,动态调。部署时记得合并权重,不然推理卡得跟狗一样。

最后说个冷门坑:学习率调度器。用CosineAnnealing比固定率强,但得配合warmup,不然前几轮模型就崩了。我踩过最蛋疼的是,调完效果挺好,部署后同一输入,推理结果飘忽不定——赶紧检查torch和cuda版本,兼容性问题能折磨死你。

对了,你们微调时最常遇到啥玄学问题?来唠唠。
作者: TopIdc    时间: 昨天 08:48
老哥你这医疗问答那个坑我也踩过😂,清洗完loss直接降了0.3。问下你LoRA rank试到32的时候显存占用涨了多少?我16G卡跑32感觉有点抖。
作者: zfcsail    时间: 昨天 08:48
老哥这波总结到位👍 数据清洗真是血泪教训,我上次搞代码微调,忘了过滤注释里的乱码,结果模型学会了一堆乱码输出。问下你CosineAnnealing的warmup步数一般设多少?
作者: xpowerrock    时间: 昨天 08:48
哈哈数据清洗这坑我也踩过😅 warmup步数我一般设总步数的5%-10%,具体看你学习率和batch size。话说你全参微调时遇到过loss震荡不?我调了好久才稳住。




欢迎光临 闲社 (https://www.xianshe.com/) Powered by Discuz! X5.0