机器学习 day28(模型评估,模型选择,交叉验证集)

1. 为什么需要模型评估
在这里插入图片描述

  • 我们可以借助图像来判断模型是否良好。
  • 但当我们用单一特征来绘制f(x)图像时,模型容易出现过拟合现象。但如果增加一些输入特征的种类,绘制图像又会变得很困难。而模型评估可以解决这一痛点。

2. 模型评估
在这里插入图片描述

  • 通常我们将数据集的一大半设为训练集,一小半设为测试集。mtrain表示训练样例的个数,mtest表示测试样例的个数。
    在这里插入图片描述
  • 对线性回归模型,我们可以用带正则化项的成本函数来得到使成本函数最小的w、b
  • 可以通过不带正则化项,且数据为测试集来得到模型是否在新数据上表现良好,即不过拟合,能很好的泛化新数据
  • 可以通过不带正则化项,且数据为训练集来得到模型是否在训练集上表现良好
    在这里插入图片描述
  • 上图为线性回归模型过拟合的Jtrain、Jtest图像,它虽然能很好的拟合训练集,即Jtrain的值很小,但不能很好的拟合测试集,即Jtest的值很大
    在这里插入图片描述
  • 对逻辑回归模型,依然可以使用带正则化项的成本函数来得到使成本函数最小的w、b
  • 用Jtest、Jtrain来判断模型对测试集和训练集是否拟合良好,而Jtest、Jtrain仍然不带正则化项
    在这里插入图片描述
  • 对于逻辑回归模型,还有一种方法用来判断模型是否对测试集和训练集拟合良好
  • 分别计算Jtrain、Jtest对训练集和测试集分类错误的比例,并用此来判断模型是否拟合良好

3. 模型选择
在这里插入图片描述

  • 用训练集数据生成的w、b组成的f(x)模型,对于训练集一般是过拟合,对测试集则是欠拟合,即训练误差Jtrain要比测试误差Jtest少很多,但Jtest比Jtrain更公平,在表示该模型对不在数据集中的新实例的泛化能力是否良好方面
  • 选择模型的标准是泛化能力,泛化能力是指针对从未出现的新实例的拟合能力。因此不能使用Jtrain来判断,通过训练集得到w、b的模型是否泛化良好
    在这里插入图片描述
  • 引入超参数d,表示模型的多项式阶数,即不同模型的分类
  • 使用测试集数据,计算每个d对应的Jtest,来得到一个能使测试误差最小的d,即对应的模型。
  • 但此时只得出了在d的范围内,能使Jtest最小的模型,仍需要判断此模型是否良好,即泛化能力。注意:已经使用了测试集,不能再用测试集进行判断,会过拟合

4. 交叉验证集
在这里插入图片描述

  • 交叉验证集也叫开发集,至此,数据集共分为三部分:训练集、交叉验证集、测试集。
    在这里插入图片描述
  • 训练误差、验证误差、测试误差的公式如图,且都不包括正则化项
    在这里插入图片描述
  • 如上图所示:训练集–拟合w、b得到许多模型,验证集–拟合d挑选最优模型,测试集–测试模型的泛化能力

在这里插入图片描述

  • 若为逻辑回归,则Jcv可以改为计算交叉验证集分类错误的比例
  • 训练集在不同模型上拟合出每个模型的最优w、b,交叉验证集再从拟合好的模型中选择一个最优的模型,测试集最后测试这个模型的泛化能力
  • 为了保证模型对新数据的泛化程度有公平的估计,在确定最终模型之前,不能使用测试集对模型有任何评估,只能使用训练集和交叉验证集
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

丿罗小黑

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值