Deep Leaning 学习笔记之组织机器学习项目(2.2)—— 不匹配的培训和开发/测试集

本文探讨了在机器学习项目中训练集和开发/测试集分布不匹配的问题。通过两种不同的数据分配策略,分析了数据分布不一致对模型性能的影响。讨论了数据分布不匹配导致的偏差和方差问题,并通过误差分析来识别模型的高偏差或高方差。强调了确保开发集和测试集遵循相同分布的重要性,以便更准确地评估模型性能。
摘要由CSDN通过智能技术生成

2 不匹配的培训和开发/测试集

2.1 不同分布上的训练和测试

假设:网图20W数据,用户上传1W数据

  • option1:随机打乱,然后分配。Train:205000,Dev:2500,Test:2500
  • 这样不好。因为在dev和test set中,大量的数据还是源于网图,并不是我们想要的对于用户上传的预测结果,这样会扰乱我们对模型优化的方向。
  • option2:将20w网图和5000用户上传图作为train set,然后用用户上传的图,2500作为dev set,2500作为test set。
  • 这样虽然说训练集和开发,测试集不同分布,但是效果要比option1好。
    在这里插入图片描述

2.2 数据分布不匹配的偏差和方差

思想:把训练集的一部分取出来,当做train-dev set,这样保证训练集和train-dev set有着相同的分布,然后看各个误差情况,进行误差分析。
假设右侧区域分布:
1 丨2
——–
3 丨4

  1. Train set error和贝叶斯误差相差不多,同时,train-dev set error和train set error差距较大且dev error差距很大——右部分左上侧示例(1,9,10),图1区域。说明训练模型对于未见过的train-dev set(同一分布)的误差也很大,说明模型方差过高。
  2. 如果Train set error和贝叶斯误差相差不多,同时,train-dev set error和train set error差距不大但是dev error差距很大——右部分右上侧示例(1,1.5,10),那么训练的模型对于未见过的train-dev set表现也还挺好,但是对dev set 的表现不行,说明是因为训练集和开发集不同分布所导致的
  3. 同样,右侧左下角图3区域,为高偏差问题,因为训练出来的模型和贝叶斯误差差距很大。但是方差不高,因为不管是同分布的train-dev set还是不同分布的dev set,表现都差距不大。
  4. 右侧右下角图4区域,又高偏差又高方差。
    在这里插入图片描述

小结一下:
图1区域:可以看到由上到下依次是:偏差、方差、数据不匹配、测试集性能。

  • 记住,你的开发集和测试集服从相同分布,因为开发集上的表现,要比测试集好太多, 所以这个巨大差异的唯一理由是对开发集的过拟合, 如果是这样的话, 你可能会考虑倒回去, 取得更多的开发集数据。

图2区域:

  • 也许人类水平性能为4%, 训练集误差为7% ,训练-开发集误差为10% ,但是到了开发集时 ,你惊讶的发现开发集的实际误差要小得多 ,也许都是6%
  • 它是这样的效果 ,即训练集数据甚至 要比开发集和测试集更难学习 。 如果有时基于您的应用, 开发/测试集分布更容易学习,那么这些数字实际上是会下降的 。
    在这里插入图片描述
    课程:Structuring Machine Learning Projects
    week2,第五个18分钟视频。
    一般来说红框区域内已经足够找出问题了,但是上面填满有时会有意外发现。
    在这里插入图片描述
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值