AI 术语表 · 入门 · 经典机器学习、推荐与搜索
交叉验证
交叉验证是把数据分成若干份,轮流用其中一份做评估,对模型进行多次训练和评估,从而更可靠地衡量性能的方法。
关于这个术语
- 难度
- 入门 · 写给初次接触者的核心概念
- 分类
- 基础概念
- 加入时间
- 2026-10-09
通俗解释 这就像不只用一次考试,而是用多次单元小测来衡量学生的水平。它能减少因为碰巧遇到简单题而导致分数虚高的情况。
工作原理
最常见的是 K 折(K-fold)交叉验证。例如把数据分成 5 份,留出其中 1 份用于评估,用其余 4 份训练。轮换评估用的那一份,重复 5 次,所有数据都会被用于评估一次。最后对 5 次的分数取平均,并同时查看分数的波动程度。
5 折交叉验证流程
- 1分成 5 份均匀划分数据
- 21 份用于评估用其余 4 份训练
- 3记录分数在评估份上测量性能
- 4轮换后重复 5 次每一份都用于评估一次
- 5查看平均值与偏差汇总 5 次分数进行判断
为什么重要
如果只划分一次数据进行评估,分数可能会因哪些数据被分到评估集而有很大差异。交叉验证汇总了多次划分的结果,因此受运气影响更小。它在数据较少时尤其有用,因为所有数据都能均衡地用于训练和评估。在选择模型设置(超参数)或比较多个模型时,它也被用来筛掉过拟合的模型。
注意事项
由于需要多次训练模型,时间和计算成本会相应增加。因此,相比从头训练大型 LLM,它更多用于相对较小的模型或表格数据。对于有时间顺序的数据,划分时要保持顺序,避免用未来的数据评估过去;存在类别不平衡时,则使用让每一份比例保持一致的分层(stratified)方式。如果在划分之前就用全部数据做预处理,可能会造成数据泄漏,需要注意。
示例
假设一家医院用数百名患者的记录构建疾病风险预测模型。数据较少,只划分一次进行评估的话分数很大程度上取决于偶然,因此用 5 折交叉验证同时查看平均性能和偏差,并据此决定在梯度提升和决策树中选用哪种模型。此时按患者划分数据,避免同一患者的记录同时出现在训练集和评估集中。