在大模型训练中,文本分类任务的数据质量直接影响模型性能。本文将分享一套可复现的数据质量控制流程。
1. 数据清洗与去重 首先进行基础清洗,去除特殊字符和异常长度文本:
import pandas as pd
import re
def clean_text(text):
text = re.sub(r'[\r\n\t]', ' ', text)
text = re.sub(r'[^\w\s]', '', text)
return text.strip()
df['cleaned_text'] = df['text'].apply(clean_text)
# 去重处理
df.drop_duplicates(subset=['cleaned_text'], inplace=True)
2. 异常值检测 使用TF-IDF向量计算余弦相似度识别异常样本:
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.metrics.pairwise import cosine_similarity
vectorizer = TfidfVectorizer(max_features=10000)
tfidf_matrix = vectorizer.fit_transform(df['cleaned_text'])
similarities = cosine_similarity(tfidf_matrix)
# 标记相似度低于阈值的样本为异常值
3. 类别平衡检查 通过可视化类别分布,确保训练集各分类均衡:
import matplotlib.pyplot as plt
plt.hist(df['label'], bins=20)
plt.title('Label Distribution')
plt.show()
4. 数据增强策略 对少数类样本进行回译或同义词替换,提升模型泛化能力。
这套流程已在多个大模型训练项目中验证有效。

讨论