Andrew Ng机器学习课程10补充


VC dimension

讲到了如果通过最小化训练误差,使用一个具有d个参数的hypothesis class进行学习,为了学习好,一般需要参数d的线性关系个训练样本。到这里需要指出一点,这个结果是基于empirical risk minimization得到的,而对于那些大部分的discriminative的学习算法采用的通过最小化training error或者training error的近似值,前面推导的结论并不总是可以用,而对于non_ERM 学习,给出好的理论保证仍然是一个活跃的研究领域。

In other words, the number of training examples needed to learn “well” using H is linear in the VC dimension of H.而对于大部分的hypothesis classes,VC dimension粗略的等于参数的个数。


model selection

How can we automatically select a model that represents a good tradeoff between the twin evils of bias and variance?

最直观的方法:直接选择最smallest training error的hypothesis

这种方法不行,比如多项式的阶数,这种方法总会选择得到high-variance,high-degree polynomial model。

hold-out cross validation

随机把S分为训练集和验证集,在训练集上训练hypothesis model,在验证集上获取hypothesis,然后选择最小验证误差的hypothesis,之后再用全部的数据进行训练。但是对于那些对初始条件或者初始数据比较敏感的算法,最好不要再进行retraining,因为在训练集上表现好的model,并不一定意味着在验证集上也表现好。这种hold-out cross validation的方法主要的缺点就是waste样本数据,即使是采用了retraining。

k-fold cross validation

随机将S分割为大小相同的k份,每次在k-1份上进行训练,而在另外一份上进行validation,循环k次,将每次得到的误差进行平均作为estimated generalization error,然后挑选最低的model,最后retraining这个model在整个S上。一般选择k为10。

leave-one-out cross validation

上一个方法中,将k=样本数量m,就叫做leave-one-out cross validation。

上面两种方法进行cross validation都会有计算量的问题,实际上当样本数量足够多时,可以采用hold-out cross validation,样本数量不足而计算能力达到要求时,可以采用k-fold或者leave one out的cross validation。

Feature Selection

Feature Selection是model selection的一种特殊和重要的案例,主要有两种方法:前向搜索和后向搜索,前向搜索是从空集开始逐个添加剩余最好的进来,而后向搜索是从满集开始,逐个剔除其中最差的出去。这两种方法的缺点就是计算量大。

还有一种是filter feature selection,采用启发式的选择,计算量相比上面两种要小,主要的思想是计算xi与y的相关度,或者是互信息等。

Andrew Ng机器学习课程10补充的更多相关文章

  1. Andrew Ng机器学习课程10

    Andrew Ng机器学习课程10 a example 如果hypothesis set中的hypothesis是由d个real number决定的,那么用64位的计算机数据表示的话,那么模型的个数一 ...

  2. Andrew Ng机器学习课程笔记(五)之应用机器学习的建议

    Andrew Ng机器学习课程笔记(五)之 应用机器学习的建议 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7368472.h ...

  3. Andrew Ng机器学习课程笔记(四)之神经网络

    Andrew Ng机器学习课程笔记(四)之神经网络 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7365730.html 前言 ...

  4. Andrew Ng机器学习课程笔记(一)之线性回归

    Andrew Ng机器学习课程笔记(一)之线性回归 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7364598.html 前言 ...

  5. Andrew Ng机器学习课程13

    Andrew Ng机器学习课程13 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ 引言:主要从一般的角度介绍EM算法及其思想,并推导了EM算法的收敛性.最后 ...

  6. Andrew Ng机器学习课程12

    Andrew Ng机器学习课程12 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ 引言:主要讲述了batch learning和online learnin ...

  7. Andrew Ng机器学习课程笔记--week1(机器学习介绍及线性回归)

    title: Andrew Ng机器学习课程笔记--week1(机器学习介绍及线性回归) tags: 机器学习, 学习笔记 grammar_cjkRuby: true --- 之前看过一遍,但是总是模 ...

  8. Andrew Ng机器学习课程笔记--汇总

    笔记总结,各章节主要内容已总结在标题之中 Andrew Ng机器学习课程笔记–week1(机器学习简介&线性回归模型) Andrew Ng机器学习课程笔记--week2(多元线性回归& ...

  9. Andrew Ng机器学习课程笔记(六)之 机器学习系统的设计

    Andrew Ng机器学习课程笔记(六)之 机器学习系统的设计 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7392408.h ...

随机推荐

  1. 数码管动态显示——74HC04

    1.电路设计: p0实现段选,p2实现位选,74hc04是反相器,有反向和放大的双重作用. 2.程序设计: #include<reg52.h> code unsigned char sev ...

  2. PHP Socket 编程之9个主要函数的使用之测试案例

    php的socket编程算是比较难以理解的东西吧,不过,我们只要理解socket几个函数之间的关系,以及它们所扮演的角色,那么理解起来应该不是很难了,在笔者看来,socket编程,其实就是建立一个网络 ...

  3. P1168 中位数(线段树)

    题目描述 给出一个长度为N的非负整数序列A[i],对于所有1 ≤ k ≤ (N + 1) / 2,输出A[1], A[3], …, A[2k - 1]的中位数.即前1,3,5,……个数的中位数. 输入 ...

  4. IDEA中常用快捷键

    Alt+Enter 牛掰的万能快捷键,实现接口和抽象类.导入包.异常捕获.转换lambda表达式.equals的翻转和更换访问修饰符等,无所不能.   Ctrl+D 复制当前行 Ctrl+Y 删除行 ...

  5. Java 面向对象(十七)

    第一章 File类 1.1 概述 java.io.File 类是文件和目录路径名的抽象表示,主要用于文件和目录的创建.查找和删除等操作. 1.2 构造方法 public File(String pat ...

  6. C#中使用typeof关键字和GetType()获取类的内部结构(反射机制)

    一.问题描述 java有反射机制,C#也有反射机制,在C#中typeof关键字用于获取类型的System.Type对象,该对象的GetMethods()方法可以得到类型中定义的方法对象的计集合,调用方 ...

  7. Docker部署OpenProject

    效果如下: 部署教程: 下载镜像: docker pull openproject/community: Install OpenProject with Docker Docker is a way ...

  8. 什么是epistatic effects | 上位效应

    epistatic与interaction之间的区别与联系? genetic上的interaction是如何定义的? Epistasis is the phenomenon where the eff ...

  9. 100-continue

    https://wiki.open.qq.com/wiki/技术优化原则#1._.E7.A8.8B.E5.BA.8F.E8.AE.BE.E8.AE.A1.E6.97.B6.E9.9C.80.E8.A6 ...

  10. GridLayout: GridLayout使用简介(转)

    Android 布局之GridLayout 1 GridLayout简介 GridLayout是Android4.0新提供的网格矩阵形式的布局控件. GridLayout的继承关系如下:java.la ...