机器学习-4

15人阅读 评论(0) 收藏 举报
分类:

本文来自于网易云课堂

在不同的划分上进行训练和测试

深度学习算法对训练数据的胃口很大,当你收集到足够多的数据集并构成训练集时算法效果最好。这导致很多团队用尽一切办法收集数据然后把他们堆到训练集里,让训练的数据量更大,即使有些数据都来自和开发集测试集不同的分布。所以在深度学习时代,越来越多的团队,都用来自和开发集和测试集分布不同的数据来训练。这里有一些微妙的地方,一些最佳做法,来处理训练集和测试集存在差异的情况。
假如你要开发一个识别猫的app,你的数据源有两个。一个是用户上传的图片,这些图片可能很业余,甚至很模糊。另一个是通过爬虫网络得到很多取景专业,高分辨率,拍摄专业的图片。前期你的用户量很少,可能用户的图片很少,不到1万张。而通过网络爬虫,也许你从互联网上下载了超过20万张猫图。你真正关心的算法表现是你的最终系统处理来自应用程序的这个图片分布时效果好不好。

现在你进入了两难的境地。一个是来自用户的小的数据集,它是一种分布,而另一个是大得多的数据集,来自另一个分布,图片的外观和你真正想要处理的并不一样。那么你该怎么做呢?

这里有一种选择,你可以将两种数据组合在一起,这样你就有了21万张图片,然后将这21万张图片随机分配到训练、开发和测试集中。这么做有一些好处,你的训练集、开发集和测试集都来自同一分布,这样更好管理。但坏处在于,而且坏处还不小,就是如果你观察开发集,看看这2500个样本,里面很多都是网页上的图片,并不是你真正关心的图片,你真正要处理的是来自手机的图片。根据分布,2500个样本中真正来自于用户的期望只有119。设立开发集的目标是瞄准你的目的,而采用这种方式很大程度都在优化网络图片,这并不是你想要的。所以,这一个选项不推荐考虑。
这里写图片描述
第二个选项还是205000张图片,5000张来自于。但是开发集和测试集都是2500张用户图片。这样将数据分成训练集、开发集和测试集的好处在于现在你瞄准的目标就是你想要处理的目标。缺点在于分布不一样。但事实证明这样划分在长期能给你带来更好的系统性能。

不同匹配数据划分的偏差和方差

分析方差和偏差会让你确定一个方向,但当数据分布不同时,分析偏差和方差的方式可能不一样。
这里写图片描述
同样以猫分类问题举例子,对于同一分布,训练集误差为1%而开发集误差为10%,那么你会说存在很大的方差问题。但是如果是不同分布,这个结论就不能轻易的下了。特别是,也许算法在开发集上做的不错,可能是因为训练集很容易识别,因为训练集都是高分辨率图片,但开发集难识别的多。所以也许模型并没有方差问题,这只不过反映了开发集包含更难准确分类的图片。所以这个分析的问题在于,当你看训练误差,再看开发误差,有两件事变了。首先算法只见过训练集数据,没见过开发集数据。第二,开发集数据来自不同的分布,而且因为你同时改变了两件事情,很难确认这增加的9%误差,有多少是因为算法没看到开发集中的数据导致的,这是问题方差的部分。以及有多少是因为开发集数据就是不一样导致的。为了弄清楚哪个因素影响更大,定义一组新的数据是有意义的,我们称之为训练-开发集,这是一个新的数据子集。这个数据集来自于训练集,与训练集同一分布,但是不参与到训练中。
这里写图片描述
从上图可以看到,第一种就是属于方差问题,第二种属于数据不匹配的问题。因为贝叶斯误差基本为0,所以第三种是存在偏差问题了。而第四个例子不仅有偏差还有方差问题。
这里写图片描述
你突然发现在开发集上和测试集上表现良好。如果你发现这种现象,这说明训练集数据其实比你的开发集和测试集难识别的多,才导致了误差 下降。
这里写图片描述
这里以后视镜语音识别的例子介绍一下更普适的分析。事实证明,我们可以将这些误差放到一张表中。水平轴上放入不同的数据集,
第一项可能是来自小型智能音箱的语音识别问题的数据。第二项是收集的和后视镜(rear view)有关的语音数据。

定位数据不匹配

如果你的训练集来自和开发测试集不同的分布,如果误差分析显示你有一个数据不匹配的问题,该怎么办?这个问题没有完全系统的解决方案,但我们可以尝试一些东西。
这里写图片描述

查看评论

机器学习4——推荐系统

整理自coursera,欢迎交流转载。 背景   现在我们考虑一个个性化的推荐系统,比如推荐电影、商品等。我们应该如何构建这个系统呢?其实推荐的方法有很多。比方说我们可以根据商品的流行度来...
  • u014303046
  • u014303046
  • 2016-10-26 10:59:55
  • 428

台大林轩田机器学习课程笔记4----训练 VS. 测试

训练vs测试
  • SteveYinger
  • SteveYinger
  • 2016-04-23 16:06:58
  • 861

你绝对能懂的“机器学习”(四)

我们知道,人类在发展、成长、生活的过程中积累了很多的经验。通过定期的对这些经验进行总结,获得了一些规律,这就叫“归纳”。利用这个“归纳”出来的“规律”,对类似的情况进行决策判断,从而指导我们的行动,这...
  • saltriver
  • saltriver
  • 2017-04-09 13:09:09
  • 526

机器学习(周志华) 参考答案 第四章 决策树 4.10

机器学习(周志华) 参考答案 第四章 决策树 4.4机器学习(周志华西瓜书) 参考答案 总目录 http://blog.csdn.net/icefire_tyh/article/details/5...
  • icefire_tyh
  • icefire_tyh
  • 2016-08-01 00:38:12
  • 1995

Udacity机器学习入门项目4:探索数据集

  • 2018年01月08日 11:34
  • 136KB
  • 下载

机器学习的四个层次

事实上有许多的途径可以了解机器学习,也有许多的资源例如书籍、公开课等可为所用,一些相关的比赛和工具也是你了解这个领域的好帮手。本文我将围绕这个话题,给出一些总结性的认识,并为你由程序员到机器学习高手的...
  • youdianjinjin
  • youdianjinjin
  • 2014-08-07 22:58:38
  • 846

周志华《机器学习》课后习题解答系列(四):Ch3.4 - 交叉验证法练习

3.4 比较k折交叉验证法与留一法。本题采用UCI中的 Iris Data Set 和 Blood Transfusion Service Center Data Set,基于sklearn完成。...
  • Snoopy_Yuan
  • Snoopy_Yuan
  • 2017-03-20 19:30:00
  • 1089

机器学习之项目实践

机器学习是一项经验技能,经验越多越好。在项目建立的过程中,实践是掌握机器学习的最佳手段。在实践过程中,通过实际操作加深对分类和回归问题的每一个步骤的理解,达到学习机器学习的目的。 预测模型项目模...
  • u012017783
  • u012017783
  • 2018-01-02 11:19:26
  • 448

周志华机器学习读书笔记第一章

(1)机器学习致力于研究如何通过计算的手段,利用经验来改善系统自身的性能。        机器学习所研究的内容,是关于在计算机上从数据中产生“模型”的算法。 (2)若我们预测的是离散值,此类学习任务称...
  • u013261340
  • u013261340
  • 2017-09-28 12:53:58
  • 232

机器学习笔记(1)—— 样本空间、假设空间、版本空间

例子,给出西瓜数据集,根据某个西瓜三个属性的描述,判断瓜的好坏 编号 色泽 根蒂 敲声 好瓜 1 青绿 蜷缩 浊响 是 2 乌黑 ...
  • H12590400327
  • H12590400327
  • 2018-03-14 00:52:17
  • 106
    个人资料
    持之以恒
    等级:
    访问量: 1万+
    积分: 713
    排名: 7万+
    最新评论