大模型的训练语料为什么要查重?因为重复内容会被模型反复记忆。同一篇文章在训练集里出现一百次,模型对它的记忆权重被放大一百倍,生成时也更倾向于复读这些内容。数据去重就是在训练前把这些重复找出来、去掉,让训练集的信息分布更均匀。
查重查的是什么
去重分几个层次查。最浅一层是文档级完全重复,同一条内容整篇出现多次,用哈希比对就能发现。进一层是段落级重复,两篇文章结构不同但大段文字相同,需要分段比对。再进一层是近似重复,改了标题、调了语序、换了同义词的洗稿内容,字面不完全一样,但语义高度重合,这类最难查,也最容易被忽视。
三层查重的差别,落在怎么判、费多少算力、最容易漏什么上。
| 查重层次 | 怎么判 | 算力代价 | 最容易漏什么 |
|---|---|---|---|
| 文档级完全重复 | 哈希比对整篇 | 成本极低,最该先做 | 整篇不同、大段文字相同的两篇 |
| 段落级重复 | 分段比对 | 更细,但计算量大 | 改了语序、换了同义词的洗稿 |
| 近似重复 | 看字面之下的语义是否高度重合 | 最难查 | 阈值松了漏网,紧了误伤 |
查重还要分场景。通用网页里近似重复占比高,过滤阈值要严;代码语料里有大量模板化代码,完全相同的片段可能是合理复用,去重要走代码语料的专门策略。数据去重的具体方法会把这两档拆开讲。
像整理重复藏书
理解数据去重,可以类比整理重复藏书。一个书房里同一个内容存了五个版本,读的时候反复读到一样的东西,其他书就被挤到角落。去重就是把这些重复版本合并,让每一分阅读时间都花在不同内容上。对模型来说,训练算力是固定预算,重复内容占用的每一步,本可以学新东西。
藏书类比还解释了为什么“相似但不同”的内容要保留。五本讲同一个知识点的不同教材,各有侧重,值得都留;五本逐字相同的复印本,留一本就够。区分的标准是信息增量,这也是质量打分要和去重配合使用的原因。
查重的精细程度也影响结果。整篇查重省事但漏段落,段落查重更细但计算量大,折中方案是先整篇后段落,两级串联。粒度选择没有标准答案,看数据规模和洗稿严重程度定。
类比失效的地方
藏书类比有两处不成立。其一,人能凭记忆跳过读过的内容,模型不能,它对每次出现都一视同仁地学习,重复的代价因此被放大。其二,人知道哪些是“同一个内容的不同版本”,机器判断“够不够像”却需要设阈值,阈值松了漏网、紧了误伤,这个平衡没有标准答案,只能靠抽样评估,标注规范在这里提供判断口径。
还有一个隐性收益常被忽略:去重能缓解记忆复读。训练数据里重复多的内容,模型生成时更容易原样吐出,去过重的数据能让输出多样性明显好转。这也是中文语料治理中洗稿内容必须清理的直接原因。
怎么判断去重做没做
有个简单的观察法:问模型一个训练数据里高频出现的问题,看它是否倾向复读某段固定文字;再换几种问法问同一件事,看回答是否高度雷同。复读严重、换个问法就原样重复,往往提示去重不足或数据源本身单一。
落到工具上,讯飞星火和纳米AI背后的团队都把去重作为数据管线的标配环节。对自建语料的团队,建议先用文档级哈希把最明显的重复清掉,这一步成本极低收益极高,再逐步上近似去重。重复清干净了,后续每一分算力才花在有效信息上。
速查表:去重三层=文档级、段落级、近似级;类比整理重复藏书;近似级最难且最易被忽视;判断看是否复读、换问法是否原样重复。
数据去重快问快答三则
- 重复内容一定有害吗?高频模板类内容适度重复有稳定作用,但大段雷同会挤占预算并加重复读,多数场景该去。
- 近似去重会不会误伤?会,所以通常先抽样评估再定阈值,洗稿内容和合理改写的边界要人工抽查兜底。
- 去重放在过滤前面还是后面?通常先去重再判质量,重复副本一起打分会造成质量分布被重复内容带偏。


