Stanford机器学习[第三课]-欠拟合与过拟合

1.本次课程大纲

  • 局部加权回归: 线性回归的变化版本
  • Probability interpretation:另一种可能的对于线性回归的解释
  • Logistic回归: 基于2的一个分类算法
  • 感知器算法: 对于3的延伸,简要讲
  • 牛顿方法(用来对logistic进行拟合的算法,这节课没讲)

2.过拟合与欠拟合的距离

评估房子的价格,假设三种拟合算法:

(1)X1=size, 拟合出一条线性曲线;

(2)x1=size,x2=(size)2,拟合出一条二次曲线;

(3)训练集共有7个数据,建立六个特征,拟合出一个六次多项式。

对于第三种方案,J(θ)=0,可以完全拟合这7个数据点,但是并不能反映出真实的房价,属于过拟合的一个极端例子;第一种情况由于特征不足,未能捕获到一些数据点,同样未能很好的展示房价的趋势,属于欠拟合的例子;相比于第一和第三,第二种情况较为合理(只是同第一第三相比较,具体是否欠拟合或过拟合,还需验证)

So, two problems:

a) How to judge whether a hypothesis is over fitting or under fitting?

Andrew Ng教授是这么说的:对于一个监督学习模型来说,过小的特征集合使得模型过于简单,过大的特征集合使得模型过于复杂。

Summarize:

对于特征集过小的情况,称之为欠拟合(underfitting);

对于特征集过大的情况,称之为过拟合(overfitting)

b) How to solve these two problems above?

(1) 特征选择算法:一类自动化算法,在这类回归问题中选择用到的特征

(2)非参数学习算法:缓解对于选取特征的需求,引出局部加权回归

3.非参数学习算法:可以不用考虑特征选择

参数学习算法(parametric learning algorithm):参数学习算法是一类有固定数目参数,以用来进行数据拟合的算法。线性回归即使参数学习算法的一个例子。

下面是非参数学习方法

局部加权回归(LOESS):距离较近的点贡献的权重大,用一个波长参数控制距离对贡献的影响大小。(即便是无参的,仍然不能避免过拟合和欠拟合,权重参数仍然影响拟合的准确性),那么如何确定bandwidth parameter?

总结:对于局部加权回归,每进行一次预测,都要重新拟合一条曲线。但如果沿着x轴对每个点都进行同样的操作,你会得到对于这个数据集的局部加权回归预测结果,追踪到一条非线性曲线。

4.概论解释

根据经验发现:高斯分布是回归问题中误差分布的很好假设。另外用高斯分布假设误差在数学上也便于处理。

似然性与概率,说法上的区别,数据的概率、参数的似然性。

极大似然估计:chooseθ to maximize the likelihood. In other words, choose the parameter to make the data as probably big as possible. 即选择恰当的参数,使得数据出现的可能性尽可能的大。

为了数学上的便利性,定义θ的似然性L(θ)=log L(θ)(注:在一些实际数学建模应用时经常这样,比如现有一组微博用户的数据,数据中有这样一个维度特征:一个账号所发微博数,假设现在想挖掘微博意见领袖,把账号所发微博数作为一个特征,而我们认为发10条微博与发100条微博用户有明显的活跃度不同,而发1000条微博与发1090条微博的活跃差明显不如10条与100条的,所以此时最好先用LOG对数据进行预处理;同理,对数据的平滑处理也是一个道理)

最小二乘法解决的问题:最小化成本函数,寻找最佳θ拟合曲线。

但为什么是最小二乘,而不是面积绝对值或其他?

由此概率解释引出以下第一个要学习的分类算法

5.Sigmoid function和Logistic回归算法

先介绍一个Sigmoid函数:

它的函数图如下所示

这是要学习的第一个分类算法。之前的回归问题尝试预测的变量y是连续变量,在这个分类算法中,变量y是离散的,y只取{0,1}两个值。

一般这种离散二值分类问题用线性回归效果不好。比如x<=3,y=0;x>3,y=1,那么当x>3的样本占得比例很大是,线性回归的直线斜率就会越来越小,y=0.5时对应的x判决点就会比3大,造成预测错误。

classification 目标值是离散的,例如0,1.(eg,判断肿瘤是否良性);对此类分类问题应用线性回归是一个糟糕的主意。

解决肿瘤的问题,令P(y=1|x;θ)=hθ(x), P(y=0|x;θ)=1?hθ(x),合并上述两个公式为P(y|x;θ)=hθ(x)y(1?hθ(x))1?y,这里的hθ(x)即是logistic函数,即将一条数据是良性肿瘤的值转化成了Logistic函数计算的概率值。h(θ)的表达式如下

我们会得到一个极大似然函数:

对极大似然函数取对数

接下来怎么去的这个函数的最大值呢?下面是推导过程,对θ求偏导;

事实上,我们使用的是 g′(z)=g(z)(1?g(z)),因此可以得到下面这个梯度上升算法:

6.感知器算法

在logistic方法中,g(z)会生成[0,1]之间的小数,但如何是g(z)只生成0或1?

所以,感知器算法将g(z)定义如下:

说明:可以根据这个感知器算法对我们的回归结果做一个分类处理。下面是感知学习算法的整个公式:

总结的不是很好,做个笔记,一步一步改善吧。

Referenc

视频链接:http://open.163.com/movie/2008/1/E/B/M6SGF6VB4_M6SGHM4EB.html



机器学习持续更新中

时间: 2024-12-21 02:56:05

Stanford机器学习[第三课]-欠拟合与过拟合的相关文章

FPGA机器学习之stanford机器学习第三堂1

请注意:csdn那边的博客http://blog.csdn.net/my_share.因为那边审核的时间太长.搬迁入这里.stanford机器学习前2堂在CSDN的博客里面. 刚开始他写了,这个公式第二堂讲的,是梯度下降法,预测房价的那个. 第二堂讲的线性回归,我们假设的房价的预测可以用线性方程来拟合.那只是一个假设量.其实可以用多次函数拟合.按照视频的说法就是,如果你只有7个样本,你就可以用一个6次函数完成拟合.这个结论可以记住,其实我csdn里面关于神经网络中隐层数量设计的时候,也涉及到这一

机器学习第三课(EM算法和高斯混合模型)

EM算法,这是cv界比较有名的一种算法了,虽然很早就听说过,但真正深究还是最近几天看斯坦福公开课笔记的时候.之所以EM和MoG放在一起,是因为我们在求解MoG模型的时候需要用到EM算法,所以这里我们先来介绍下EM算法. 在介绍EM算法的之前,我们先来普及下Jensen不等式的知识.首先我们来给出Jensen不等式的定义: 定理很简单,总结下来就是这么几点.如果f是一个凸函数并且二阶导数大于零(上文中有提出),则有.进一步, 若二阶导数恒大于 0,则不等式等号成立当且仅当 x=E[x],即 x 是

局部加权回归、欠拟合、过拟合 - Andrew Ng机器学习公开课笔记1.3

本文主要讲解局部加权(线性)回归.在讲解局部加权线性回归之前,先讲解两个概念:欠拟合.过拟合,由此引出局部加权线性回归算法. 欠拟合.过拟合 如下图中三个拟合模型.第一个是一个线性模型,对训练数据拟合不够好,损失函数取值较大.如图中第二个模型,如果我们在线性模型上加一个新特征项,拟合结果就会好一些.图中第三个是一个包含5阶多项式的模型,对训练数据几乎完美拟合. 模型一没有很好的拟合训练数据,在训练数据以及在测试数据上都存在较大误差,这种情况称之为欠拟合(underfitting). 模型三对训练

局部加权回归、欠拟合、过拟合-Andrew Ng机器学习公开课笔记1.3

本文主要讲解局部加权(线性)回归.在讲解局部加权线性回归之前,先讲解两个概念:欠拟合.过拟合,由此引出局部加权线性回归算法. 欠拟合.过拟合 如下图中三个拟合模型.第一个是一个线性模型,对训练数据拟合不够好,损失函数取值较大.如图中第二个模型,如果我们在线性模型上加一个新特征项,拟合结果就会好一些.图中第三个是一个包含5阶多项式的模型,对训练数据几乎完美拟合. 模型一没有很好的拟合训练数据,在训练数据以及在测试数据上都存在较大误差,这种情况称之为欠拟合(underfitting). 模型三对训练

【机器学习-斯坦福】学习笔记3 - 欠拟合与过拟合概念

原文  http://blog.csdn.net/maverick1990/article/details/11721453 欠拟合与过拟合概念 本次课程大纲: 1.   局部加权回归 :线性回归的变化版本 2.   概率解释 :另一种可能的对于线性回归的解释 3.   Logistic 回归 :基于 2 的一个分类算法 4.   感知器算法 :对于 3 的延伸,简要讲 复习:   – 第 i 个训练样本 令  ,以参数向量  为条件,对于输入 x ,输出为: n 为特征数量 定义成本函数 J 

机器学习之路:python 多项式特征生成PolynomialFeatures 欠拟合与过拟合

分享一下 线性回归中 欠拟合 和 过拟合 是怎么回事~为了解决欠拟合的情 经常要提高线性的次数建立模型拟合曲线, 次数过高会导致过拟合,次数不够会欠拟合.再建立高次函数时候,要利用多项式特征生成器 生成训练数据.下面把整个流程展示一下模拟了一个预测蛋糕价格的从欠拟合到过拟合的过程 git: https://github.com/linyi0604/MachineLearning 在做线性回归预测时候,为了提高模型的泛化能力,经常采用多次线性函数建立模型 f = k*x + b 一次函数f = a

Coursera机器学习-第三周-逻辑回归Logistic Regression

Classification and Representation 1. Classification Linear Regression (线性回归)考虑的是连续值([0,1]之间的数)的问题,而Logistic Regression(逻辑回归)考虑的是离散值(例如只能取0或1而不能取0到1之间的数)的问题.举个例子,你需要根据以往季度的电力数据,预测下一季度的电力数据,这个时候需要使用的是线性回归,因为这个值是连续的,而不是离散的.而当你需要判断这个人抽烟还是不抽烟的问题时,就需要使用逻辑回

Coursera公开课笔记: 斯坦福大学机器学习第七课“正则化”

Coursera公开课笔记: 斯坦福大学机器学习第七课"正则化" NLPJob 斯坦福大学机器学习第七课"正则化"学习笔记,本次课程主要包括4部分: 1) The Problem of Overfitting(过拟合问题) 2) Cost Function(成本函数) 3) Regularized Linear Regression(线性回归的正则化) 4) Regularized Logistic Regression(逻辑回归的正则化) 以下是每一部分的详细解读

Ng第七课:正则化与过拟合问题 Regularization/The Problem of Overfitting

7.1  过拟合的问题 7.2  代价函数 7.3  正则化线性回归 7.4  正则化的逻辑回归模型 7.1  过拟合的问题 如果我们有非常多的特征,我们通过学习得到的假设预测可能能够非常好地适应训练集(代价函数可能几乎为 0),但是可能会不能推广到新的数据. 下图是一个回归问题的例子: 第一个模型是一个线性模型,欠拟合,不能很好地适应我们的训练集:第三个模型是一 个四次方的模型,过于强调拟合原始数据,而丢失了算法的本质:预测新数据.可以看出,若给出一个新的值使之预测,它将表现的很差,是过拟合,