预测数值型数据:回归(一)

标签: 数据 机器学习
2142人阅读 评论(0) 收藏 举报
分类:

  机器学习算法的基本任务就是预测,预测目标按照数据类型可以分为两类:一种是标称型数据(通常表现为类标签),另一种是连续型数据(例如房价或者销售量等等)。针对标称型数据的预测就是我们常说的分类,针对数值型数据的预测就是回归了。这里有一个特殊的算法需要注意,逻辑回归(logistic regression)是一种用来分类的算法,那为什么又叫“回归”呢?这是因为逻辑回归是通过拟合曲线来进行分类的。也就是说,逻辑回归只不过在拟合曲线的过程中采用了回归的思想,其本质上仍然是分类算法。
  假如我们要预测某一地区的房价,我们可能会列出以下的式子进行估计:
  
                   房价 = 0.7 * 面积 + 0.19 * 房子的朝向
  
   这个简单的式子就叫回归方程,其中0.7和0.19称为回归系数,面积和房子的朝向称为特征。有了这些概念,我们就可以说,回归实际上就是求回归系数的过程。在这里我们看到,房价和面积以及房子的朝向这两个特征呈线性关系,这种情况我们称之为线性回归。当然还存在非线性回归,在这种情况下会考虑特征之间出现非线性操作的可能性(比如相乘或者相除),由于情况有点复杂,不在这篇文章的讨论范围之内。
  简便起见,我们规定代表输入数据的矩阵为X (维度为m*n,m为样本数,n为特征维度),回归系数向量为 θ(维度为n*1)。对于给定的数据矩阵X ,其预测结果由:Y=Xθ 这个式子给出。我们手里有一些现成的x和y作为训练集,那么如何根据训练集找到合适的回归系数向量θ是我们要考虑的首要问题,一旦找到θ,预测问题就迎刃而解了。在实际应用中,我们通常认为能带来最小平方误差的θ就是我们所要寻找的回归系数向量。平方误差指的是预测值与真实值的差的平方。采用平方这种形式的目的在于规避正负误差的互相抵消。所以,我们的目标函数如下所示:   

minθi=0m(yixTiθ)2

  这里的m代表训练样本的总数。对这个函数的求解有很多方法,由于网络上对于详细解法的相关资料太少,下面展示一种利用正规方程组的解法:
这里写图片描述 (1)
这里写图片描述       AtrAB=BT(2)
  针对上式不太清楚的朋友可以看我之前写的这篇博文:http://blog.csdn.net/qrlhl/article/details/47758509。根据以上式子,解法如下:

这里写图片描述

  令其等于0,即可得:θ=(XTX)1XTy 。有一些需要说明的地方:第三步是根据实数的迹和等于本身这一事实推导出的(括号中的每一项都为实数),第四步是根据式(2)推导出来的。第五步是根据式(1)推导出来的,其中的C为单位矩阵I。这样,我们就得到了根据训练集求得回归系数矩阵θ的方程。这种方法的特点是简明易懂,不过缺点也很明显,就是XTX 这一项不一定可以顺利的求逆。由于只有满秩才可以求逆,这对数据矩阵X提出了一定的要求。有人也许会问XTX不是满秩的情况下怎么办?这个时候就要用到岭回归(ridge regression)了,这一部分留到下次再讲。
  说了这么久,放一张图上来看看线性回归的效果:

这里写图片描述
  
  可以看到,直线较好的拟合了数据点的变化趋势,可以作出相对较好的预测。但是细心的朋友可能会发现,如果在数据点的每一段用一小段直线拟合也许会获得更加好的结果,就像这样:
  
            这里写图片描述

  这种方法叫做局部加权线性回归(Locally Weighted Linear Regression,LWLR),关于这种方法的细节,我们下次再说。

查看评论

怎样用VC在容器端取得ActiveX控件的属性

怎样获得ActiveX控件的各项属性值我们需要在容器中获得ActiveX控件的各项属性值,这需要利用一些COM库提供的接口,这篇文章主要是对这一过程作一介绍,从而使大家对这些接口有所了解并学会使用.首...
  • flower
  • flower
  • 2000-10-09 11:10:00
  • 1024

机器学习算法与Python实践之(七)逻辑回归(Logistic Regression)

机器学习算法与Python实践之(七)逻辑回归(Logistic Regression)zouxy09@qq.comhttp://blog.csdn.net/zouxy09        机器学习算法...
  • zouxy09
  • zouxy09
  • 2014-03-02 23:49:58
  • 213392

大学生录取预测——逻辑回归

Dataset 每年高中生和大学生都会申请进入到各种各样的高校和事业单位中去。每个学生都有一组独一无二的考试分数,成绩,和背景。录取委员会根据这个决定接受或拒绝这些申请者。在这种情况下一个二进制分...
  • zm714981790
  • zm714981790
  • 2016-04-25 17:14:51
  • 4856

逻辑回归(Logistic Regression, LR)又称为逻辑回归分析,是分类和预测算法中的一种。通过历史数据的表现对未来结果发生的概率进行预测。例如,我们可以将购买的概率设置为因变量,将用户的

逻辑回归(Logistic Regression, LR)又称为逻辑回归分析,是分类和预测算法中的一种。通过历史数据的表现对未来结果发生的概率进行预测。例如,我们可以将购买的概率设置为因变量,将用户的...
  • hanghangaidoudou
  • hanghangaidoudou
  • 2018-02-06 16:29:01
  • 881

机器学习实战笔记-预测数值型数据:回归

8. 1 用线性回归找到最佳拟合直线线性回归 优点:结果易于理解,计算上不复杂。 缺点:对非线性的数据拟合不好。 适用数据类型:数值型和标称型数据。回归的目的是预测数值型的目标值。最直接的办法是...
  • LaputaFallen
  • LaputaFallen
  • 2017-11-16 17:31:24
  • 1159

《机器学习实战》预测数值型数据-回归(Regression)

本文转载自:http://blog.csdn.net/gamer_gyt/article/details/51405251 1:用线性回归找到最佳拟合曲线             回...
  • chivalrousli
  • chivalrousli
  • 2016-09-08 19:34:14
  • 3381

机器学习之预测数值型数据: 回归

本文主要记录本人在学习机器学习过程中的相关代码实现,参考《机器学习实战》 from numpy import * import matplotlib.pyplot as plt def load...
  • u012704941
  • u012704941
  • 2017-07-06 10:35:16
  • 336

《机器学习实战》——预测数值型数据:回归

这是基于《机器学习实战》一书的第八章内容总结而成的知识,有一些案例和相关的代码,即可获取。 8.1 用线性回归找到最佳拟合曲线 假设输入数据存放在矩阵X中,而回归系数存放在向量w中...
  • sun_wangdong
  • sun_wangdong
  • 2018-01-14 14:20:53
  • 123

回归-普通最小二乘法(OLS)解析式推导

导语    上一篇文章中解释了最小二乘损失函数的由来,本篇将继续向下推导,即系数WW的推导。前置知识    里面用到了几个常见的与矩阵相关的求导公式 ∂Xθ∂X=XT\frac{\partial X...
  • solo_sky
  • solo_sky
  • 2015-08-20 13:48:33
  • 5373

斯坦福机器学习笔记-Lecture 1,2

斯坦福机器学习笔记
  • u013859301
  • u013859301
  • 2016-08-27 16:09:01
  • 500
    个人资料
    持之以恒
    等级:
    访问量: 17万+
    积分: 2228
    排名: 2万+
    最新评论