训练数据质量审查报告
生成日期: 2026-04-08
审查人: 灵研
数据来源: /home/ai/zhineng-knowledge-system/data/training/
执行摘要
本次审查针对三个数据集:意图分类器、嵌入对、QA评测基准。总体来看,数据集规模适中、分布相对均衡,但存在以下问题:
- 严重的数据污染问题:超过60%的样本包含
\r字符(Windows换行符),需要清理 - 古籍主导的数据分布:QA评测中古籍占比82.5%,可能导致模型偏斜
- 合成数据特征明显:意图分类器样本存在模板化痕迹
- 类别不平衡:意图分类器中 "comparison" 类样本量显著偏少
1. 意图分类器 (Intent Classifier)
1.1 数据规模
| 数据集 | 样本数 | 占比 |
|---|---|---|
| 训练集 | 7,491 | 80.0% |
| 测试集 | 1,873 | 20.0% |
| 总计 | 9,364 | 100% |
1.2 意图分布
训练集分布:
- practice_method: 1,919 (25.6%)
- theory_explanation: 1,908 (25.5%)
- scientific_basis: 1,609 (21.5%)
- book_search: 1,601 (21.4%)
- comparison: 454 (6.1%) ← 严重不足
测试集分布:
- theory_explanation: 492 (26.3%)
- practice_method: 481 (25.7%)
- book_search: 399 (21.3%)
- scientific_basis: 391 (20.9%)
- comparison: 110 (5.9%) ← 同样不足
1.3 样本质量分析
正面发现: - 查询语义清晰,意图定义明确 - 5个意图类别覆盖主要用户需求场景 - 训练/测试集分布一致
负面发现:
- 合成数据特征:部分查询存在模板化痕迹(如"为什么要有XXX"、"XXX的科学原理是什么")
- 类别不平衡:comparison 类样本量仅为其他类的 1/4,可能影响模型对此类别的泛化能力
- 缺乏上下文:单轮查询,缺乏对话历史或上下文信息
1.4 样本示例
{"query": "请讲解混元整体理论建立在超常智能的层次上,这一理论虽然可以给现代科的方法", "intent": "practice_method"}
{"query": "1999集训会全集的科学原理是什么", "intent": "scientific_basis"}
{"query": "为什么要有超常接收", "intent": "theory_explanation"}
{"query": "哪本书提到过"上古之人,其知道者,法于阴阳,和于术数,饮食有节,起居有常,不妄 作劳,故能形与神俱,而尽终其天年,度百岁乃去。"", "intent": "book_search"}
1.5 改进建议
- 类别平衡:将
comparison类样本扩充至至少 1,500 个(与主要类别持平) - 去模板化:引入真实用户查询数据,减少合成数据痕迹
- 增加多轮对话:添加上下文信息,模拟真实对话场景
- 增强多样性:为每个意图类增加查询风格多样性(疑问句、陈述句、祈使句)
2. 嵌入对 (Embedding Pairs)
2.1 数据规模
| 数据集 | 样本数 | 说明 |
|---|---|---|
| 训练正样本对 | 2,189 | 用于对比学习 |
| 验证正样本对 | 244 | 验证集 |
| 困难负样本 | 100 | 跨域困难负样本 |
| 总计 | 2,533 | - |
2.2 数据来源分布
| 来源 | 样本数 | 占比 |
|---|---|---|
| guji_documents | 2,000 | 79.0% |
| documents | 371 | 14.7% |
| textbook_knowledge | 62 | 2.4% |
2.3 样本类型
正样本对:主要为 title_content 类型(标题+正文段落)
困难负样本:跨域困难负样本设计合理,例如:
- anchor: 气功相关
- negative: 教材或古籍中的相似但不相关内容
2.4 数据质量问题
严重问题:
- \r 污染:1,506/2,189 (68.8%) 的训练对包含 \r 字符
- 古籍编码:部分古籍文本存在乱码或编码不一致问题
示例:
注意末尾的 \r 和文本中的 \r\n 换行符。
2.5 改进建议
- 数据清洗:移除所有
\r字符,统一为 Unix 换行符\n - 增加负样本:当前仅有 100 个困难负样本,建议扩充至 500-1000 个
- 多样性增强:增加
summary_content、question_answer、related_docs等类型的正样本对 - 古籍文本规范化:对古籍文本进行统一的编码转换和格式清洗
3. QA评测基准 (QA Benchmark)
3.1 数据规模
| 数据集 | 样本数 | 占比 |
|---|---|---|
| 训练集 | 3,451 | 80.0% |
| 测试集 | 863 | 20.0% |
| 总计 | 4,314 | 100% |
3.2 类别分布
训练集分布:
- 古籍: 2,851 (82.6%) ← 严重主导
- 气功: 551 (16.0%)
- 教材: 49 (1.4%) ← 严重不足
测试集分布:
- 古籍: 709 (82.2%) ← 严重主导
- 气功: 141 (16.3%)
- 教材: 13 (1.5%) ← 严重不足
3.3 样本质量分析
正面发现:
- 查询-答案对质量较高,答案直接来源于原文
- 包含 doc_id 和 source_title 便于溯源
- 涵盖古文理解、专业术语解释等多种查询类型
负面发现:
- 严重的数据不平衡:古籍占比 >80%,模型可能偏向古籍领域
- \r 污染:1,540/3,451 (44.6%) 的训练样本包含 \r 字符
- 教材样本过少:仅 49 个训练样本,13 个测试样本,不足以支撑该领域的评测
3.4 样本示例
{
"query": " 《正月建寅候》诗诀\r讲了什么",
"answer": "正月寅宫元是木,木生火旺土长生;戌兼午未宫中喜,申酉休囚数莫行",
"doc_id": 244324,
"category": "古籍",
"source": "guji_documents",
"source_title": " 《正月建寅候》诗诀\r"
}
注意查询中的 \r 污染。
3.5 改进建议
- 类别平衡:
- 将教材样本扩充至至少 500 个(与气功持平)
- 保持古籍优势,但降低至 60-70% 的占比
- 数据清洗:移除所有
\r字符 - 增加复杂性:
- 添加需要多文档综合的查询
- 增加推理型查询(非直接提取)
- 添加负面样本(无答案的查询)
- 难度分级:根据答案难度将样本分为简单/中等/困难三个等级
4. 总体数据质量评分
| 维度 | 评分 | 说明 |
|---|---|---|
| 数据规模 | ⭐⭐⭐⭐☆ | 规模适中,可满足初步训练需求 |
| 类别平衡 | ⭐⭐☆☆☆ | 多处严重不平衡,需改进 |
| 数据清洁度 | ⭐⭐☆☆☆ | \r 污染严重,编码不统一 |
| 样本多样性 | ⭐⭐⭐☆☆ | 覆盖主要场景,但风格单一 |
| 标注质量 | ⭐⭐⭐⭐☆ | 标注准确,意图和答案明确 |
| 可追溯性 | ⭐⭐⭐⭐⭐ | 包含 doc_id 和 source 信息 |
综合评分: ⭐⭐⭐☆☆ (3.3/5.0)
5. 优先级改进建议
高优先级(必须完成)
-
数据清洗:
-
类别平衡:
- 意图分类器:
comparison类从 454 扩充至 1,500 - QA评测:
教材类从 49 扩充至 500
中优先级(强烈建议)
-
负样本扩充:将困难负样本从 100 扩充至 500-1000
-
去模板化:引入真实用户查询数据
低优先级(可选)
- 增加多轮对话:添加上下文信息
- 增加推理型查询:提升 QA 难度
6. 微调方案建议
基于当前数据质量,建议采用以下微调策略:
6.1 意图分类器
- 模型:
bert-base-chinese或hfl/chinese-roberta-wwm-ext-tiny - 训练策略:
- 先完成数据清洗和类别平衡
- 使用 5 折交叉验证评估
- 目标准确率:>85%
- 数据增强:对
comparison类进行回译(中→英→中)扩充
6.2 嵌入模型
- 模型:
sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2 - 损失函数:Triplet Loss + InfoNCE
- 训练策略:
- 先清洗
\r污染 - 扩充困难负样本至 500 个
- 使用渐进式训练(先简单负样本,后困难负样本)
- 评估指标:Recall@1, Recall@5, MRR
6.3 QA评测
- 模型:RAG + 生成式模型(如
Qwen/Qwen2-7B-Instruct) - 检索器:使用上述嵌入模型
- 训练策略:
- 先完成类别平衡(教材扩充)
- 使用检索增强生成
- 评估指标:Exact Match, F1 Score, BLEU
- 测试策略:按类别分别评估,确保各领域性能均衡
附录:统计详情
A.1 意图分类器详细统计
| Intent | Train | Test | Total | Train % | Test % |
|---|---|---|---|---|---|
| practice_method | 1,919 | 481 | 2,400 | 25.6% | 25.7% |
| theory_explanation | 1,908 | 492 | 2,400 | 25.5% | 26.3% |
| scientific_basis | 1,609 | 391 | 2,000 | 21.5% | 20.9% |
| book_search | 1,601 | 399 | 2,000 | 21.4% | 21.3% |
| comparison | 454 | 110 | 564 | 6.1% | 5.9% |
| Total | 7,491 | 1,873 | 9,364 | 100% | 100% |
A.2 嵌入对详细统计
| Dataset | Pairs | With \r | \r % |
|---|---|---|---|
| train_pairs | 2,189 | 1,506 | 68.8% |
| val_pairs | 244 | ~170 | ~70% |
| hard_negatives | 100 | ~60 | ~60% |
| Total | 2,533 | ~1,736 | ~68.5% |
A.3 QA评测详细统计
| Category | Train | Test | Total | Train % | Test % |
|---|---|---|---|---|---|
| 古籍 | 2,851 | 709 | 3,560 | 82.6% | 82.2% |
| 气功 | 551 | 141 | 692 | 16.0% | 16.3% |
| 教材 | 49 | 13 | 62 | 1.4% | 1.5% |
| Total | 3,451 | 863 | 4,314 | 100% | 100% |
报告结束