Model selection and training/cross validation/test sets|模型选择和训练/交叉验证/测试集

bolin
发布于 2025-07-13 / 3 阅读
0
0

Model selection and training/cross validation/test sets|模型选择和训练/交叉验证/测试集

一、模型选择的定义

63F51390-ECEC-405C-83CB-86AF4BF16190.png

这张图片讨论了模型选择(Model Selection)中的一个关键概念:

  1. 核心问题:当模型参数(w,b)通过训练集拟合后,训练误差 Jtrain(w,b) 通常会低于真实的泛化误差(模型在新数据上的表现)。

  2. 模型复杂度示例:图中展示了一个多项式模型 fw,b(x⃗)=w1x1+w2x2+w3x3+w4x4+b,暗示随着多项式阶数(如 x4)增加,模型可能过拟合训练数据。

  3. 测试误差的作用:指出测试误差 Jtest(w,b) 比训练误差更能反映模型的泛化能力,是模型选择的重要依据。


88CF9A8A-BF90-4911-9EED-C5AD7CB7772F.png

这张图片通过不同多项式阶数(d=1,2,3,10)的模型示例,说明了模型选择中的关键问题:

  1. 模型复杂度对比

    • 展示了从线性模型(d=1)到高阶多项式(d=10)的逐步复杂化,每个模型对应一组参数 w<d>,b<d> 和测试误差 Jtest(w<d>,b<d>)

    • 最终选择 d=5 的模型,并报告其测试误差 Jtest(w<5>,b<5>)

  2. 核心问题

    • 指出测试误差 JtestJtest 可能低估真实泛化误差,因为多项式阶数 d 是基于测试集选择的(即测试集被间接用于模型设计,导致乐观估计)。


二、训练,交叉验证,测试集

BE6F1320-86BB-447D-91ED-3E38728939A4.png

这张图片展示了机器学习中数据集划分的标准方法及其比例分配:

  1. 数据划分结构

    • 训练集(Training Set):占60%(示例中6条数据,mtrain=6),用于模型参数(w,bw,b)的拟合。

    • 验证集(Cross Validation/Development Set):占20%(2条数据,mcv=2),用于模型选择(如选择多项式阶数 d)和超参数调优。

    • 测试集(Test Set):占20%(2条数据,mtest=2),仅用于最终评估模型泛化性能。

  2. 关键细节

    • 表格中列出的数据样本(如尺寸size和价格price)对应不同集合(标注为dev settraining set等)。


D54B6929-0DAA-4E09-9D38-9467199DB5ED.png

这张图片展示了模型选择(Model Selection)的具体流程,重点在于使用交叉验证集(Cross Validation Set)来评估和选择最佳模型:

  1. 候选模型列表

    • 展示了从简单(d=1,线性模型)到复杂(d=10,10阶多项式)的一系列模型,形式为 fw,b(x⃗)=w1x1+w2x2+⋯+b

  2. 验证集评估

    • 每个模型在交叉验证集上计算误差 Jcv(w<d>,b<d>),用于比较不同复杂度(d)的表现。

    • 最终选择验证误差最小的模型(示例中为 d=4 的四阶多项式)。

  3. 泛化误差估计

    • 选定模型后,独立测试集的误差 Jtest(w<4>,b<4>) 用于最终报告泛化性能,确保评估无偏。

图片强调了分阶段评估的重要性:验证集用于模型选择,测试集仅用于最终验证


三、神经网络架构选择

1CD35E43-3E16-4031-8A02-E858AC9D9E8C.png

这张图片展示了神经网络架构选择(Model Selection for Neural Networks)的过程,重点在于通过验证集评估不同结构的性能:

  1. 候选架构列表

    • 提供了三种不同隐藏层单元数的神经网络结构(25单元、20单元、12单元),分别对应参数 W(1),b(1)W(2),b(2)W(3),b(3)

  2. 验证集评估

    • 每个架构在交叉验证集上计算误差 Jcv(W(i),b(i))i=1,2,3),用于比较不同复杂度的表现。

    • 最终选择验证误差最小的架构(示例中为20单元的 W(2),b(2))。

  3. 泛化误差估计

    • 独立测试集的误差 Jtest(W(2),b(2)) 用于最终报告模型的泛化性能,确保评估的客观性。


评论