微调大模型时数据不够就猛灌,是圈里最常见的执念。「数据越多微调效果越好」错在哪?在于把数量和效果画了等号,忽视了配比、质量和多样性。正确说法是:数据质量、覆盖面和任务配比的影响,常常大于单纯的数量;堆到一定程度后,边际回报会快速衰减,甚至转向负面。
错在哪:只看条数不看构成
一万条同质样本的训练效果,可能不如一千条覆盖不同场景的样本。数量掩盖不了重复、噪声和偏科,模型会把数据里的偏差原样学走。只看条数,就像只看食材重量不看配方,做不出稳定的菜。
边际回报什么时候转负
早期加数据,效果提升明显;覆盖到位后继续加,提升趋平;再加低质重复样本,反而稀释有效信号,训练时间也拉长。典型的信号是 loss 还在降,但评测分不涨反跌,说明模型在记噪声,不是在学规律。
同一批数据加到不同阶段,回报不是一条直线。
| 加数据的阶段 | 效果走向 | 典型信号 | 该怎么处理 |
|---|---|---|---|
| 早期补数据 | 提升明显 | 评测分跟着数据量往上走 | 按场景缺口继续补 |
| 覆盖到位后继续加 | 提升趋平 | 新增数据带来的分数变化越来越小 | 停在提质上,别再堆量 |
| 再加低质重复样本 | 稀释有效信号,训练时间拉长 | loss 还在降,评测分不涨反跌 | 先修数据,把错标和矛盾清掉 |
更稳妥的做法
先把质量门槛立起来:去重、过滤、抽检,再谈数量。按场景补缺口,缺什么场景补什么数据,比整体加量更有效。配比上参考通用指令数据和垂直领域数据差在哪?的思路,构造方式可以看主动学习和被动标注有什么区别?,来源取舍见自建数据集和公开数据集差在哪?。
怎么判断该加还是该停
看两件事:评测集上还有没有系统性短板,加的数据是否对准短板;新增数据的边际回报是否还盖得住训练成本。两个答案都是否,就停在提质上,别再堆量。DeepSeek、腾讯元宝的技术分享里都提到过按场景补数据优先于整体扩量的经验。
补数据的最小实验
补数据也要讲实验方法。最小实验的做法是:只补一个场景的一小批样本,跑一轮短训练,用隔离评测集看这个场景的变化,同时看通用场景有没有掉分。一个变量一轮结论,几轮下来就知道该往哪加,别一次补太多,变量一多就看不出是谁起的作用。
实验前先立假设:预期补这批数据能提升哪个指标、幅度多少。没有假设的实验,看完分数也不知道算成算败。假设来自对短板的归因,不是来自感觉,假设越具体,实验结论越有用。
对照组也要留。同一批评测集,旧模型跑一遍,新模型跑一遍,两次的条件要一致。偷偷换了评测集或者换了评测提示词,对比就失去意义,这是很多团队反复踩的坑,对照不严,等于白跑。
实验记录要能复盘:数据版本、训练配置、评测结果、结论,四样写清楚。微调的迭代轮次一多,没有记录就会忘掉某版为什么那么设,重复交学费,这笔功夫省不得。
还有个反直觉的经验:补数据不如先修数据。很多场景分数上不去,根子是已有数据里有错标和矛盾,补新的只会放大混乱。先花半天清洗一轮,往往比补一千条新样本更见效。
再强调一次顺序:先定位,再补数据。评测集暴露短板后,先归因到具体场景和具体错误类型,再决定补什么、补多少。跳过定位直接补,等于没看菜谱就往锅里加料,钱花了,味道还是不对,下一轮还得从头再来一遍。定位做得越细,补数据的动作就越小,很多短板其实只需要补几十条对路的样本,而不是几千条安慰剂。
自查清单:加数据前先查覆盖缺口;新数据要过质量门槛;评测分不涨就停量转提质;边际回报盖不住成本时果断停。
关于「数据越多微调效果越好」再多问三句
- 多少数据算够?:没有固定数,看场景复杂度;覆盖到位后每加一批,先测边际回报再决定要不要留。
- 数据质量怎么量化?:从去重率、错标率、覆盖率三个数入手,比主观感觉靠谱。
- 合成数据能凑量吗?:能补场景,但模型自产数据的多样性有限,别全指着它扩盘。


