• 1引言
  • 2引例 Polynomial Curve Fitting
    • 1泛化性能评价
    • 2减小过拟合
      • 21增大数据集
      • 22beyas
      • 23归则化 regularization


作者Christopher M. Bishop

1引言:

模式识别已经有较长的研究历史,甚至在天文和原子光谱(atomic spectra)也有着重要的应用。
下面使用手写识别这个例子对相关概念做通俗的介绍(in a relatively informed way)

我们的目的是构建一个模型(Machine)从这些图片的信息中得到我们想要的结果。
图片的信息是我们输入的,这里是28*28像素组成的784维向量
我们可以自己设定规则或者使用启发式的方法来设立这个模型,类似于当图片信息满足某一个条件就是1或者是2,但是这种人工规则的方法有时候并不好用。
使用机器学习的方法有时候可以获得更好的结果,既然是学习,就要有以前的可以学习的样本,这些用来训练机器的样本就是训练样本
如果告诉了每个样本的目标值(1,2,3…)那么这个训练样本就包含目标向量
通过样本学习的过程就叫作训练或者学习
如果我们的训练目标是有限的,就叫做分类,如果是无限的就叫做回归
学习完成之后,用这个训练好的模型可以去识别之前没有遇见过的东西,这样能力叫作泛化
在大多数的应用中,输入值都需要进行预处理,比如可以进行归一化等等。预处理会有助于算法的运行,使计算更迅速,更准确,这个过程也叫作特征抽取。注意对数据进行预处理时可能会丢失有用的信息。
上面这种有目标向量的模型的学习过程,是有监督学习,如果没有目标向量就是无监督学习。无监督学习可能需要将相同的数据放在一起归类,这种就叫做聚类,如果要发现数据分布的规律就叫做密度估计,有的时候需要将数据降维并投影到2d或者3d这一过程叫作可视化
还有一种学习叫作reinforcement learning 增强学习,比如一个机器人有四条腿,我们要让他自己学会先前走,如果他向前走了1步,那我们就给他一个回报reward,鼓励他以下,最后他就会学会如何很好的行走,这种学习方式就是增强学习,这本书不足详细阐述。
上面的学习种类不同,但是也有一些想通之处。
绪论中将会介绍一个引例及以后经常用到的三大部分probability theory, decision theory, and information theory 概率论、决策论及信息论。

2引例 Polynomial Curve Fitting

多项式拟合
本例的任务是用多项式拟合一个正弦图sin(2πx)sin(2\pi x),图中有是个已知点特征是X,目标向量时t,我们目标是用现在的点拟合的方程,在【0,1】内出现新的x时能较好的预测到新的t点。


如何确定多相式中的参数呢?一个常用的方法就是使用最小二乘法

上式是一个大月等于0的方程,只有拟合的函数全部命中时才会等于0.
当多次项次数M如果确定,其各系数可由最小化上式得到。
M如何确定呢?
M的确定是一个模型选择的问题,下图中比较了M=0,1,3,9的四种情况

可以看出在0-1范围内,m=0,1和9都不能很好的表示原图像.当M=9时虽然所有的点都与原本的10个点重合,但是与原图像相比相差太多,这种只能拟合现有已知点但是对于未知点不能很好的预测的现象就是过拟合(没有泛化能力)。

2.1泛化性能评价

如何定量的考虑和比较模型的泛化能力呢?
我们可以使用一个新的数据集,代入已经训练好的模型,看其误差函数的表现情况,在这里可以使用下面的误差函数,均方根(root-mean-square)来评价,其分母除以n可以得出平均的误差,因此可以比较在测试集数量不同的情况下的拟合情况。


上图是M等于1-9时的图像,可以看出在m=9时其预测集的误差太大(虽然在训练集上的误差很小,因为有10个参数所以这10个点可以全部拟合)。
下表给出了不同M值时的参数大小变化情况,太大的正负值变化是我们应该避免的问题,至于原因,在之前的ufldl的笔记中曾经提过,这样会时的震荡更剧烈。

其次M越大,将会更多的描述现有的数据集,这意味着其中的噪声部分也会被描述出来。

2.2减小过拟合

2.2.1增大数据集

如何避免过拟合呢?看下图

同样M=9时,不同的样本数量得到了不同的结果。
可以发现当n=100时的九次方多项式的拟合结果就比较好了。也就是说样本点越多,得到的模型越不容易过拟合,这也是因为他们的共性更加明显了。
所以一般来说我们要求的样本点数的量 一般要是模型中参数的几倍比如5倍或者10倍。也就是说样本的数量会决定参数的数量的上限。

2.2.2beyas

后面我们将会看到上面的最小二乘法是最大似然法的一个表现形式。其实在beyas角度建立模型时,模型有效参数的数量会根据训练集样本的数量来自动的调整。

2.2.3归则化 regularization

regularization就是在原来误差函数的基础上加上一个规则,也就是对前面提到的过大的参数进行惩罚。
原来的误差函数

加了惩罚之后的

其中
其中的w0w_0一般不被包含在惩罚项中,因为它的加入会使得到的表达式因为初始训练集目标变量的不同而不同,即使加入有点时候回给他单独弄一个惩罚项。
这种规则化在统计叫作shrinkage,还有一种特殊的规则化叫作ridge regression,在神经网络中叫作 weight decay.
下图是加入不同的惩罚因子λ\lambda的结果


下图是不同惩罚因子下得到的测试集结果

可以看出太大太小都不好。
从上面可以看出,如果使用最小二乘法求解模型,我们对于复杂度的掌控,现在用的是额外的验证集来测试模型的合理性,但是这有点浪费数据,因此我们将在以后探索更好的形式。
后面的章节中我们将会逐渐减少主观的判断作用,更多地使用概率的角度来解决问题。

PRML 01 绪论:引言与引例相关推荐

  1. fluent算例及利用c语言程序算法,第01章 fluent简单算例17

    第01章 fluent简单算例17 第一章 开始 赵玉新(国防科技大学航天学院) 注意:此文只用于流体力学的教学和科学研究,如若涉及到版权问题请于本人联系. 本章对FLUENT做了大致的介绍,其中包括 ...

  2. 数据结构与算法:01 绪论

    绪论 知识结构: 一.什么是数据结构 例1:电话号码薄的查询问题. (a1,b1),(a2,b2),-,(an,bn)(a_1,b_1),(a_2,b_2),\dots,(a_n,b_n) (a1​, ...

  3. PRML(2)--绪论(下)模型选择、纬度灾难、决策论、信息论

    PRML绪论 1.3 模型选择 1.4 纬度灾难 1.5 决策论 1.5.1最小错误分率 1.5.2最小化期望损失 1.5.3拒绝选项 1.5.4推断和决策 1.5.5 回归问题的损失函数 1.6 信 ...

  4. PRML(1)--绪论(上)多项式曲线拟合、概率论

    PRML绪论 1.1 多项式曲线拟合 1.1.1 问题描述 1.1.2 最小化平方和误差 1.1.3 多项式阶数确定 1.1.4 有趣问题--高阶模型为什么效果不好 1.1.4 数据集规模对模型的影响 ...

  5. 【机器学习】数值分析01——绪论及误差分析

    数值分析--绪论及误差分析 文章目录 数值分析--绪论及误差分析 全文目录 数值分析的作用及其学习工具使用 数值分析常用工具 数值分析的具体实例(多项式简化求值) 计算机数值误差产生机理 计算机的数值 ...

  6. 【数据结构-ZZU】01. 绪论

    一.绪论 1. 理解数据元素.数据结构.数据的逻辑结构与物理结构.逻辑结构与物理结构间的关系. 基本概念: 数据结构:指相互之间存在一种或多种特定关系的数据元素的集合.(数据结构就是研究数据的逻辑结构 ...

  7. SOPC教学笔记01——绪论

    绪论 一.SOC和SOPC SOC CPU(内核):RISC V,ARM(Cotext.A)-- 硅基 自己根据需要去设计外设:通信(CAN.UART.IIC.SPI--).存储器--.ADC.DMA ...

  8. Dan Boneh密码学-01.绪论

    1.1引言 密码学--保护数据的常见工具,保护硬盘文件 (1)如何使用密码学原型(2)推导.构建加密机制的安全性 应用: web通信受HTTPS协议保护 无线流量的egWi-Fi 可使用WPA2协议保 ...

  9. Macromedia Flash MX 2004 V7.01 简体中文版下载地址及例视频教程(swf版)

    Macromedia Flash MX 2004 V7.01 简体中文版 软件大小:48.65 MB 软件语言:简体中文 软件类别:国外软件 / 动画制作 运行环境:XP, 2000, NT, Win ...

最新文章

  1. mysql教程左右链接_mysql的左右内连接用法实例
  2. MxGraph从入门到精通之5:在Vue项目中使用MxGraph
  3. Amarino例程无法使用的问题
  4. php7 ast,PHP7 的抽象语法树(AST)带来的变化
  5. linux tar 命令使用
  6. 服务器子系统设备结构图,设备集中管理的方法、服务端和系统
  7. matlab风玫瑰图,风玫瑰图的Matlab编程绘制
  8. 计算机vfp知识要点,2017年职称计算机VisualFoxPro基础知识:表的基本操作
  9. word设置多级标题
  10. 简述改变计算机桌面背景的方法,怎么设置和更改桌面背景
  11. 易语言可以写鸿蒙系统,华为王成录:鸿蒙 OS 系统是不同设备的统一语言
  12. 2018年最流行的十大编程语言,有你用的吗?
  13. MySQL的启动和关闭
  14. 文件上传漏洞及解析漏洞总结
  15. 学生表(Student)、课程表(Course)、成绩表(Score)以及教师信息表(Teacher)...
  16. Top-Down!!!
  17. 苏嵌实训——day19
  18. 消息系统与媒体服务器交互逻辑,基于MCP的融合多媒体会议系统的设计和实现
  19. 荣耀的D-Day:跨越科技硬件的“英吉利海峡”
  20. 本科生如何才能进入腾讯,阿里等一流的互联网公司?

热门文章

  1. C#控制台应用程序——防伪码
  2. 腾讯音乐收购懒人听书 开始占领长音频行业?
  3. 计算机改变生活ppt,科技改变生活5G改变生活方式PPT模板
  4. Command line is too long. Shorten command line for PictureApplication or also for Spring Boot defaul
  5. 队列的应用--银行客户的平均排队问题
  6. cf游戏介绍模板html,2016CFYY游戏频道设计模板
  7. 最小二乘法推导以及理解
  8. 最小二乘法(实例详解)
  9. java-php-python-ssm网上专家门诊预约系统计算机毕业设计
  10. linux内核支持浮动ip,Linux配置浮动IP实现WEB高可用