根据Andrew Ng在斯坦福的《机器学习》视频做笔记,已经通过李航《统计学习方法》获得的知识不赘述,仅列出提纲。

1 学习建议

误差太大,如何改进?

  • 使用更多的训练样本→解决高方差
  • 选用更少的特征→解决高方差
  • 选取更多的特征→解决高偏差
  • 增加多项式特征→解决高偏差
  • 减小\(\lambda\)→解决高偏差
  • 增大\(\lambda\)→解决高方差

评估机器学习算法的性能

对数据进行“洗牌”,然后再分成训练集和测试集。通常用70%的数据作为训练集,用剩下30%的数据作为测试集。

  1. 对训练集进行学习,得到参数\(\theta\)

  2. 计算测试误差(不加入正则项):对于线性回归,可以用之前的代价函数;对于逻辑回归,除了之前的代价函数,还有一种称为0/1错误分类的方法
    \[
    err(h_\theta(x),y)=\left\{
    \begin{aligned}
    1 && if \ h_\theta(x) \ge 0.5,y=0 \\
    && or \ h_\theta(x) \lt 0.5,y=1 \\
    0 && otherwise
    \end{aligned}
    \right.
    \]

    \[
    Test \ error = \frac{1}{m_{test}}\sum_{i=1}^{m_{test}}err(h_\theta(x_{test}^{(i)}),y_{test}^{(i)})
    \]

模型选择

使用测试集选择次幂\(d\),因此需要验证集→可参考交叉验证

使用60%的数据作为训练集,使用20%的数据作为交叉验证集,使用20%的数据作为测试集

  1. 对训练集进行学习,得到参数\(\theta^{(i)}\),即多个模型
  2. 用验证集计算验证误差(不加入正则项),得到参数\(d\),即选择模型
  3. 计算测试误差(不加入正则项),即对模型进行测试

机器学习诊断法(偏差or方差?)

\(d\)大,则高方差;\(d\)小,则高偏差

偏差:训练误差和验证误差都很大

方差:训练误差小,但是验证误差大,即验证误差远大于训练误差

正则化和偏差、方差

\(\lambda\)大,则高偏差;\(\lambda\)小,则高方差

选取一系列可能尝试的\(\lambda\)值:0,0.01,0.02,0.04,...,20

  1. 训练出12个\(\lambda\)值正则化的模型
  2. 计算验证误差,得到\(\lambda\)
  3. 计算测试误差

绘制学习曲线

用来判断学习算法中的问题

高偏差时,随着训练集数量增加,验证误差不会明显下降,基本变平,此时使用更多的训练样本无用

高方差时,随着训练集数量增加,验证误差一直增大,训练误差一直减小,此时使用更多的训练样本有用

机器学习(3)- 学习建议<误差出现如何解决?>的更多相关文章

  1. 机器学习&深度学习经典资料汇总,data.gov.uk大量公开数据

    <Brief History of Machine Learning> 介绍:这是一篇介绍机器学习历史的文章,介绍很全面,从感知机.神经网络.决策树.SVM.Adaboost到随机森林.D ...

  2. 近200篇机器学习&深度学习资料分享(含各种文档,视频,源码等)(1)

    原文:http://developer.51cto.com/art/201501/464174.htm 编者按:本文收集了百来篇关于机器学习和深度学习的资料,含各种文档,视频,源码等.而且原文也会不定 ...

  3. 近200篇机器学习&深度学习资料分享【转载】

    编者按:本文收集了百来篇关于机器学习和深度学习的资料,含各种文档,视频,源码等.而且原文也会不定期的更新,望看到文章的朋友能够学到更多. <Brief History of Machine Le ...

  4. 机器学习&深度学习资料分享

    感谢:https://github.com/ty4z2008/Qix/blob/master/dl.md <Brief History of Machine Learning> 介绍:这是 ...

  5. 新手的java学习建议

    前言 进入IT领域,就像进入大海—浩瀚而广阔.然而,它又很容易让人迷茫,不知所措.所以,在IT的海洋中,找好一艘船特别重要,这艘船带你前进.减少迷失.这艘船或许是一个人,或一本书,又或许是一篇文章. ...

  6. [转载]机器学习&深度学习经典资料汇总,全到让人震惊

    自学成才秘籍!机器学习&深度学习经典资料汇总 转自:中国大数据: http://www.thebigdata.cn/JiShuBoKe/13299.html [日期:2015-01-27] 来 ...

  7. 机器学习&深度学习基础(目录)

    从业这么久了,做了很多项目,一直对机器学习的基础课程鄙视已久,现在回头看来,系统的基础知识整理对我现在思路的整理很有利,写完这个基础篇,开始把AI+cv的也总结完,然后把这么多年做的项目再写好总结. ...

  8. 机器学习理论基础学习12---MCMC

    作为一种随机采样方法,马尔科夫链蒙特卡罗(Markov Chain Monte Carlo,以下简称MCMC)在机器学习,深度学习以及自然语言处理等领域都有广泛的应用,是很多复杂算法求解的基础.比如分 ...

  9. 机器学习&深度学习资料

    机器学习(Machine Learning)&深度学习(Deep Learning)资料(Chapter 1) 机器学习(Machine Learning)&深度学习(Deep Lea ...

随机推荐

  1. VS2010在WIN7下安装报错“下列组件安装失败”如何解决

    VS2010在WIN7下安装报错“下列组件安装失败”如何解决 http://www.111cn.net/net/42/75914.htm

  2. timewrap 算法

    何为延迟补偿?如何进行坐标差值?B客户端屏幕上A已经跑到东边了,但是收到服务器说"A正在西边往北跑",B到底该何去何从?我若干年前的一个实现版本,将简明扼要的解决这个问题: 影子跟 ...

  3. 51nod1475(贪心&枚举)

    题目链接:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1475 题意:中文题诶- 思路:看懂题意后,首先想到的是贪心: ...

  4. bzoj 3876: [Ahoi2014&Jsoi2014]支线剧情【有上下界有源汇最小费用最大流】

    每条边流量有下界有费用,很显然是有上下界有源汇最小费用最大流 连边(s,1,(0,inf),0),(i,t,(0,inf),0),表示从1出发inf次从每个点结束inf次 连边(i,j,(1,inf) ...

  5. 分布式通信-tcp/ip 单播

    服务端 public class SingleBroadCastSocketServer { public static void main(String[] args) { ServerSocket ...

  6. cobian backup 11 使用

    主机和备份机器创建备份用户(bf) 在备份机器上 设置备份用户, 备份目录右键安全,添加刚刚创建的备份bf用户,并授予所有权限 设置文件夹共享,并设置共享用户为刚刚创建的bf用户 并且在高级共享设置去 ...

  7. [題解]luogu_P1144最短路計數

    1.無權圖最短路邊權為1 2.如果兩個點恰好不能被更新(d[y]==d[x]+1)那麼就能通過x的所有最短路到達y,所以ans[y]+=ans[x] 3.如果兩個點不能恰好被更新(d[y]>d[ ...

  8. 【模板】平衡树——Treap和Splay

    二叉搜索树($BST$):一棵带权二叉树,满足左子树的权值均小于根节点的权值,右子树的权值均大于根节点的权值.且左右子树也分别是二叉搜索树.(如下) $BST$的作用:维护一个有序数列,支持插入$x$ ...

  9. 【loj10064】黑暗城堡

    #10064. 「一本通 3.1 例 1」黑暗城堡 内存限制:512 MiB 时间限制:1000 ms 标准输入输出 题目类型:传统    评测方式:文本比较 上传者: 1bentong 提交     ...

  10. Python + request接口测试中Cookie和Session的获取和使用

    Cookie和Session的简单理解  由于Http协议是无状态的,所以产生了cookie和session进行状态的管理. 从哪里来,在哪里,到哪里去: --> Cookie是由服务端生成,存 ...