频道栏目
首页 > 网络 > 云计算 > 正文

线性回归最小二乘法和梯度下降法

2017-04-08 09:19:47           
收藏   我要投稿

问题描述

首先我们定义问题,线性回归要解决的问题就是根据给出的数据学习出一个线性模型。
例如我们最常说的身高和体重的关系,以及房屋面积和房价的关系,这里给出一个瑞典汽车保险数据集
数据集 可以直接复制出来用
两列分别表示
索赔要求数量
对所有索赔的总赔付,以千瑞典克朗计
数据前五行

108 392,5
19  46,2
13  15,7
124 422,2
40  119,4

我们按照这个数据集作出图如下
汽车保险索赔要求和总赔付

大概观察一下可以用线性模型去定义,现在的问题是根据现有的这个数据集合,我们要学习出一个模型,然后给出索赔要求数量我们能够预测总赔付。
下面给出两种解决方法,并分析这两种方法区别。

最小二乘法

上面这个问题就是最简单的一元线性模型,首先看几个定义
分类问题 监督学习中,如果预测的变量是离散的,我们称其为分类(如决策树,支持向量机等)
回归问题如果预测的变量是连续的,我们称其为回归
一元线性回归分析中,如果只包括一个自变量和一个因变量,且二者的关系可用一条直线近似表示,这种回归分析称为一元线性回归分析。
多元线性如果回归分析中包括两个或两个以上的自变量,且因变量和自变量之间是线性关系,则称为多元线性回归分析。
对于二维空间线性是一条直线;对于三维空间线性是一个平面,对于多维空间线性是一个超平面

对于上面的数据集,我们可以用多条直线去拟合,那么怎么定义那一条直线是最优呢?

首先定义模型:
其中ei为样本误差
这里写图片描述

定义损失函数:
这里写图片描述

上面是损失函数,我们现在目的使得损失函数尽可能的小,就是求如上Q的最小值,函数求极值问题,这里就用到了导数,导数的意义是导数大于0的x处函数递增,导数小于0处x的函数递减,导数为0既为函数的极值点
这里写图片描述

上面x和y都是已知的数据集,β是我们要求的结果,两个函数两个未知数,就可以解方程了。
这里写图片描述

证明也很简单,这里给个证明的链接,剩下就是几次求和的事儿了。

多元线性回归

首先我们假设模型:
这里写图片描述

而对于数据集合中n个个体,每个模型有:
这里写图片描述
表示成矩阵形式:
这里写图片描述

跟一元的一样,首先我们损失函数:
这里写图片描述

同样通过求偏导数为0解方程可以得到结果:
这里写图片描述

梯度下降法

上一篇:RDD学习
下一篇:HBase创建表已经存在,删除表又不存在的问题
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站