兄弟们,聊点干的。大模型训练,数据准备占70%的坑位,别光盯着模型架构吹牛逼。
先说数据清洗。别以为拿个爬虫抓几TB文本就完事,垃圾进垃圾出。HTML标签、乱码、重复数据,不处理干净,模型直接学成智障。建议先跑个正则过滤,再用MinHash去重,实测能让Loss下降0.3。
然后是数据配比。别瞎堆量,通用语料和领域数据要平衡。比如做代码模型,GitHub代码得占30%以上,不然连个for循环都写不明白。我见过有人怼80%百科文本,结果模型只会背百度词条。
别忘了数据多样性。全是英文+标准格式,模型泛化能力就废了。加些口语、方言、嘈杂场景的文本,tokenizer也得适配中英文混合,不然词表爆炸。我常用SentencePiece训练个32K的BPE,效果不错。
最后说质量验证。别直接开训,先抽1K样本跑个小型蒸馏模型,看困惑度。如果PPL高得离谱,赶紧回头查数据源,省得浪费GPU。
问题抛给各位:你们在数据准备时,怎么处理低质量长尾数据?是直接砍掉,还是加权保留?来评论区聊聊。🔥 |