Andrew Ng机器学习课程9


首先以一个工匠为例,说明要成为一个出色的工匠,就需要掌握各种工具的使用,才能知道在具体的任务中选择什么工具来做。所以今天要讲的就是机器学习的理论部分。


bias variance trade off,以线性回归为例,underfitting对应high的bias(偏差),overfitting对应high的variance(方差),主要是拟合出了一些奇怪的特性。同样的对于分类问题,复杂的分类边界(decision boundary)也可能出现high variance,而简单的分类边界出现high bias。


training data set:(x(i),y(i))独立同分布,定义了一个简单的训练误差为犯错误的个数所占样本数的比例,叫做经验风险最小化(ERM)。这样的话是一个非凸优化问题,比较困难,通常采用其近似形似进行。利用e^作为对generalization error的估计,我们最关心的还是prediction error,也就是在实际使用中的error,叫做generalization error。跟台大机器学习课程一样,引入了霍弗丁不等式(hoffeding)来说明一个upper bound,独立同分布的变量的观测值的均值估计的量与真实的量之间的差大于某一个值得概率要小于某一个与差值相关的概率,说明一个非常有意义的事情,当观测的样本数量逐渐增加,这个概率的upper bound将指数下降。

ϕ^=1m∑xi
p(|ϕ−ϕ^|>γ)≤2exp(−2γ2m)

下面主要说明在何种条件下能够通过training error作为一个generalization error的很好估计,通过hoffeding不等式建立一个upper bound的关系,有利于推出如何的训练条件能够保证是好的估计。最后得到了如下形式的联系:

p(|e(hj)−e^(hj)|>γ)≤2exp(−2γ2m)

这是对于一个hypothesis hj来说的,后面要推广到对于hypothesis set中的k个都成立,然后得到了如下形式的泛化指标:

p(在hypothesis set中不存在|e(hj)−e^(hj)|>γ)≥1−2k×exp(−2γ2m)

上式说明了一个一致性收敛问题,就是说在hypothesis set中至少以概率为1−2k×exp(−2γ2m)得到的训练误差的估计e^(h)与generalization error e(h)之间的差值在γ内,这就是uniform convergence 的结果。

后面又引入了sample complexity即样本复杂度bound,说明的是为了达到对误差的一定bound或需要多少训练样本。公式中可以看出,log选项说明对于增加模型复杂度即Hypothesis的数量k,而在保证同样的error bound时,样本数量不用增加太多,因为log是增长速度最慢的一个函数了。


training error会随着hypothesis model complexity的增加而下降,而generalization error随之下降后增加,对应着high bias到high variance,即underfitting到overfitting


2015-9-10 艺少

Andrew Ng机器学习课程9的更多相关文章

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

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

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

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

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

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

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

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

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

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

  6. Andrew Ng机器学习课程笔记(三)之正则化

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

  7. Andrew Ng机器学习课程笔记(二)之逻辑回归

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

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

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

  9. Andrew Ng机器学习课程6

    Andrew Ng机器学习课程6 说明 在前面尾随者台大机器学习基石课程和机器学习技法课程的设置,对机器学习所涉及到的大部分的知识有了一个较为全面的了解,可是对于没有动手敲代码并加以使用的情况,基本上 ...

  10. Andrew Ng机器学习课程10补充

    Andrew Ng机器学习课程10补充 VC dimension 讲到了如果通过最小化训练误差,使用一个具有d个参数的hypothesis class进行学习,为了学习好,一般需要参数d的线性关系个训 ...

随机推荐

  1. HTML5新增常用标签

    1.header 标签定义文档的页眉(介绍信息). <body> <article> <header> <h1>What Does WWF Do?< ...

  2. Windows 10操作系统中的邮件应用

    早期的邮件收发软件Outlook express曾被广泛使用,然而现在却很难下载到,在Windows 10操作系统中也无法使用. 实际上,Windows 10中存在“邮件”应用,可以直接作为邮件的收发 ...

  3. PHP is_numeric() 函数

    is_numeric() 函数用于检测变量是否为数字或数字字符串. 例子 <?php $var_name1=; $var_name2="a678"; $var_name3=& ...

  4. FWT快速沃尔什变换例题

    模板题 传送门 #include<bits/stdc++.h> #define ll long long #define max(a,b) ((a)>(b)?(a):(b)) #de ...

  5. 配置Windows实例NTP服务

    本文介绍如何开启和配置Windows NTP服务,保证实例本地时间精确同步. Windows实例NTP服务介绍 目前,所有地域下ECS实例默认采用CST(China Standard Time)时区, ...

  6. java输出程序运行时间

    做了一个MapReduce的小练习,想测试一下程序运行时间: 代码: long start = System.currentTimeMillis(); /*运行的程序主体*/ long end = S ...

  7. adb-andorid记录当前手机的日志当前显示的app进程及activity,

    adb logcat -v time> /home/sumsang.log adb shell dumpsys window | grep mCurrentFocus

  8. vim 替换所有字符串

    将dev 替换 为 prod: :%s/dev/prod/g

  9. Ubuntu --- 安装deb包

    在Ubuntu下安装deb包需要使用dpkg命令.Dpkg 的普通用法: 1.sudo dpkg -i <package.deb> 安装一个 Debian 软件包,如你手动下载的文件. 2 ...

  10. 使用NGINX+LUA实现WAF功能 和nginx 防盗链

    使用NGINX+LUA实现WAF功能 一.了解WAF 1.1 什么是WAF Web应用防护系统(也称:网站应用级入侵防御系统 .英文:Web Application Firewall,简称: WAF) ...