很多新手标注完数据不知道怎么划分,今天把数据集划分讲清楚。
一、三个集合分别是什么
1. 训练集(Train Set):用来训练模型,让模型学习规律,占比最大
2. 验证集(Validation Set):训练过程中调参用,判断模型效果
3. 测试集(Test Set):最终评估用,模拟真实场景,不能参与训练
二、常见划分比例
1. 小数据集(<1万条):6:2:2 或 7:2:1
2. 中等数据集(1-100万):8:1:1
3. 大数据集(>100万):98:1:1 或 99:0.5:0.5
4. 数据量越大,验证集和测试集比例可以越小
5. 关键是保证测试集足够评估模型
三、划分原则
1. 随机划分:数据打乱后随机分,保证分布一致
2. 分层抽样:分类问题保证每个集合类别比例一致
3. 不重复:同一条数据不能同时出现在两个集合
4. 不泄漏:测试集绝对不能参与训练和调参
5. 代表性:三个集合的数据分布要和真实场景一致
四、时间序列数据特殊处理
1. 不能随机划分,要按时间顺序
2. 训练集用早期数据,测试集用晚期数据
3. 模拟用过去预测未来的真实场景
4. 比如用1-6月数据训练,7月验证,8月测试
五、交叉验证
1. K折交叉验证:把数据分K份,轮流用K-1份训练1份验证
2. 常用5折或10折
3. 适合小数据集,充分利用数据
4. 结果取平均,更稳定可靠
5. 缺点是训练K次,耗时较长
六、标注时要注意什么
1. 标注前就规划好划分方案
2. 三个集合的标注标准必须完全一致
3. 同一批数据不要让不同标注员标准不统一
4. 相似图片(视频连续帧)要放在同一个集合,防止信息泄漏
5. 测试集标注质量要求最高,最好由资深标注员做
七、常见错误
1. 测试集参与训练:数据泄漏,结果虚高
2. 类别不均衡:划分后某类样本太少
3. 重复数据:相似数据分到不同集合
4. 划分后才发现标注标准不一致
5. 验证集反复用:相当于变相训练,结果不可靠
八、实用建议
1. 划分前先去重和清洗
2. 固定随机种子,保证划分可复现
3. 保存划分索引,不要每次重新随机
4. 数据量不够优先用交叉验证
5. 测试集只在最终评估时用一次
理解数据集划分是做好数据标注和模型训练的基础。大家有什么疑问评论区交流。
一、三个集合分别是什么
1. 训练集(Train Set):用来训练模型,让模型学习规律,占比最大
2. 验证集(Validation Set):训练过程中调参用,判断模型效果
3. 测试集(Test Set):最终评估用,模拟真实场景,不能参与训练
二、常见划分比例
1. 小数据集(<1万条):6:2:2 或 7:2:1
2. 中等数据集(1-100万):8:1:1
3. 大数据集(>100万):98:1:1 或 99:0.5:0.5
4. 数据量越大,验证集和测试集比例可以越小
5. 关键是保证测试集足够评估模型
三、划分原则
1. 随机划分:数据打乱后随机分,保证分布一致
2. 分层抽样:分类问题保证每个集合类别比例一致
3. 不重复:同一条数据不能同时出现在两个集合
4. 不泄漏:测试集绝对不能参与训练和调参
5. 代表性:三个集合的数据分布要和真实场景一致
四、时间序列数据特殊处理
1. 不能随机划分,要按时间顺序
2. 训练集用早期数据,测试集用晚期数据
3. 模拟用过去预测未来的真实场景
4. 比如用1-6月数据训练,7月验证,8月测试
五、交叉验证
1. K折交叉验证:把数据分K份,轮流用K-1份训练1份验证
2. 常用5折或10折
3. 适合小数据集,充分利用数据
4. 结果取平均,更稳定可靠
5. 缺点是训练K次,耗时较长
六、标注时要注意什么
1. 标注前就规划好划分方案
2. 三个集合的标注标准必须完全一致
3. 同一批数据不要让不同标注员标准不统一
4. 相似图片(视频连续帧)要放在同一个集合,防止信息泄漏
5. 测试集标注质量要求最高,最好由资深标注员做
七、常见错误
1. 测试集参与训练:数据泄漏,结果虚高
2. 类别不均衡:划分后某类样本太少
3. 重复数据:相似数据分到不同集合
4. 划分后才发现标注标准不一致
5. 验证集反复用:相当于变相训练,结果不可靠
八、实用建议
1. 划分前先去重和清洗
2. 固定随机种子,保证划分可复现
3. 保存划分索引,不要每次重新随机
4. 数据量不够优先用交叉验证
5. 测试集只在最终评估时用一次
理解数据集划分是做好数据标注和模型训练的基础。大家有什么疑问评论区交流。
