news 2026/7/25 6:59:53

数据工程:高质量微调语料的清洗、去重与格式化

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
数据工程:高质量微调语料的清洗、去重与格式化

在AI圈有一句至理名言:Garbage In, Garbage Out(垃圾进,垃圾出)。对于微调DeepSeek这样的基座模型,数据的质量比数量重要十倍。向模型喂1万条精修的高质量数据,效果往往好于喂100万条从网上随便爬来的脏数据。

数据工程是微调流程中耗时最长、也是最见功力的环节。本文将深入拆解从原始文本到高质量训练集的完整ETL流水线。

1. 格式标准化

微调数据通常需要转换为特定的JSON格式。目前业界最主流的两种格式是 Alpaca 和 ShareGPT。

Alpaca 格式(单轮对话)

适合简单的 指令-响应 任务,结构清晰,Token开销小。

[{"instruction":"将下面的句子翻译成英文。","input":"今天天气真好。","output":"The weather is nice today."}]

ShareGPT 格式(多轮对话)

这是目前最推荐的通用格式,特别是在昇腾ModelLink套件中。它能完整保留多轮对话的上下文逻辑,对于训练模型联系上下文(Context Awareness)的能力至关重要。

[{"conversations":[{"from":"human","value":"你好"},{"from":"gpt","value":"你好!有什么可以帮你的吗?"},{"from":"human","value":"讲个笑话"},{"from":"gpt","value":"为了解决数据问题,程序员决定..."}]}]

格式转换实战

在实际工程中,我们经常需要将各种杂乱的数据源(CSV, Excel, PDF)统一转换为ShareGPT格式。建议编写一个通用的转换脚本,处理字段映射和默认值填充。

2. 数据清洗 (Cleaning)

原始数据往往充满了噪音,直接扔进模型会导致模型学会各种奇怪的癖好。

HTML标签与特殊字符

爬虫抓来的数据常带有<br>&nbsp;\u200b等不可见字符。这些噪音会占用宝贵的Token空间,甚至干扰模型的语义理解。必须使用正则进行暴力清洗。

importredefclean_text(text):# 去除HTML标签text=re.sub(r'<[^>]+>','',text)# 去除多余的空白字符text=re.sub(r'\s+',' ',text).strip()# 去除零宽字符text=re.sub(r'[\u200b\u200c\u200d\ufeff]','',text)returntext

长度过滤

  • 太短的数据:Output只有 嗯、好的、收到 的样本是无效的,会让模型变懒。建议过滤掉Output长度小于5个Token的样本。
  • 太长的数据:超过模型Context Window(如4096或8192)的数据会被强制截断,导致语义不完整。建议在预处理阶段就进行切分或丢弃。

3. 去重 (Deduplication)

重复数据是导致模型 复读机 现象的元凶。如果训练集中包含大量相似样本,模型会死记硬背(Overfitting),导致泛化能力下降。

精确去重

计算每条数据的MD5哈希,完全一样的直接删掉。这是最基础的操作。

模糊去重 (MinHash + LSH)

这是处理海量文本的神器。它能识别出 意思差不多但措辞微调 的重复样本。比如 请帮我写个请假条 和 帮我写一份请假申请。

在Python中,可以使用datasketch库来实现高效的MinHash去重:

fromdatasketchimportMinHash,MinHashLSHdefget_minhash(text,num_perm=128):m=MinHash(num_perm=num_perm)forsintext.split():m.update(s.encode('utf8'))returnm# 创建LSH索引lsh=MinHashLSH(threshold=0.8,num_perm=128)# 插入数据并检查重复fori,textinenumerate(data):m=get_minhash(text)result=lsh.query(m)ifnotresult:lsh.insert(f"doc_{i}",m)# 保存有效数据else:# 发现重复,丢弃pass

4. 隐私脱敏 (Redaction)

如果使用企业内部数据,千万要小心PII(个人敏感信息)泄露。模型有很强的记忆力,你肯定不希望它在回答别人问题时,突然蹦出CEO的手机号或客户的身份证号。

Microsoft Presidio 实战

推荐使用微软开源的Presidio库,它能自动识别手机号、邮箱、身份证、银行卡号等敏感实体,并进行替换。

frompresidio_analyzerimportAnalyzerEnginefrompresidio_anonymizerimportAnonymizerEngine analyzer=AnalyzerEngine()anonymizer=AnonymizerEngine()text="联系张三,电话是13800138000"results=analyzer.analyze(text=text,entities=["PHONE_NUMBER","PERSON"],language='zh')anonymized_result=anonymizer.anonymize(text=text,analyzer_results=results)print(anonymized_result.text)# 输出: 联系<PERSON>,电话是<PHONE_NUMBER>

这种处理方式既保留了句子的语法结构,又彻底消除了隐私风险。

5. 思维链增强 (CoT Augmentation)

为了提升模型的逻辑推理能力,我们可以在构建数据时,人为地加入 思考过程。这是让小模型拥有大智慧的关键。

普通数据

{"input":"1+1=?","output":"2"}

CoT增强数据

{"input":"1+1=?","output":"这是一个基本的数学加法运算。我们将两个单位数值相加。\n1加1等于2。\n答案是2。"}

实战技巧:可以利用DeepSeek-V3或GPT-4作为 教师模型,将简单的问答数据扩写为带有详细推理步骤的CoT数据,然后再用来微调7B或13B的小模型。这种方法被称为 知识蒸馏(Knowledge Distillation)。

6. 数据质量评估

在正式开始训练前,必须对清洗后的数据进行质量评估。

  • 困惑度分布(Perplexity):使用基座模型计算数据的PPL。PPL过高通常意味着乱码或非自然语言;PPL过低则可能意味着内容过于简单或重复。
  • 多样性分析:对数据进行聚类分析,查看Topic分布是否均匀。如果90%的数据都集中在 闲聊 类别,那么微调出来的模型在专业领域一定表现不佳。

数据工程是一项枯燥但高回报的投资。当你建立起一套自动化的ETL(Extract, Transform, Load)清洗流水线后,你会发现模型的每一次迭代都变得稳健而可预期。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/23 0:33:19

前端萌新别慌:用HTML+CSS画个会跳动的心,表白神器速成!

前端萌新别慌&#xff1a;用HTMLCSS画个会跳动的心&#xff0c;表白神器速成&#xff01;前端萌新别慌&#xff1a;用HTMLCSS画个会跳动的心&#xff0c;表白神器速成&#xff01;先泼点冷水&#xff1a;这玩意儿其实土得掉渣心形到底怎么"画"出来的&#xff1f;几何…

作者头像 李华
网站建设 2026/7/24 0:56:56

计算机毕业设计之基于Python的疫情数据分析系统

伴随着互联网时代的到来&#xff0c;使得传统产业和互联网相结合迸发出惊人的能量。计算机硬件的快速发展和网络的普及导致疫情数据分析系统中的大数据呈现爆炸式增长&#xff0c;大数据可视化分析对疫情数据分析也具有重要的意义。疫情数据分析系统和可视化展示二者是相辅相成…

作者头像 李华
网站建设 2026/7/23 2:21:24

springboot基于手机客户端的酒店预订系统的设计与实现-开题报告

目录 系统背景与意义技术选型依据核心功能模块创新点设计预期成果 项目技术支持可定制开发之功能亮点源码获取详细视频演示 &#xff1a;文章底部获取博主联系方式&#xff01;同行可合作 系统背景与意义 随着移动互联网普及&#xff0c;酒店预订需求从PC端转向手机端。传统酒…

作者头像 李华
网站建设 2026/7/23 2:14:55

在线考试系统选择指南:关键维度解析与企业实践参考

当下&#xff0c;无论是教育机构、企业内训还是资格认证&#xff0c;在线考试已成为一种高效、便捷的评估方式。面对市场上众多的解决方案&#xff0c;如何甄选出一套稳定、安全且符合自身需求的在线考试系统&#xff1f;本文将从关键评估维度出发&#xff0c;为您的决策提供清…

作者头像 李华
网站建设 2026/7/22 0:42:35

信息管理毕设创新的题目推荐

1 引言 毕业设计是大家学习生涯的最重要的里程碑&#xff0c;它不仅是对四年所学知识的综合运用&#xff0c;更是展示个人技术能力和创新思维的重要过程。选择一个合适的毕业设计题目至关重要&#xff0c;它应该既能体现你的专业能力&#xff0c;又能满足实际应用需求&#xf…

作者头像 李华