一.线性回归的定义 线性回归算法属于监督学习的一种,主要用于模型为连续函数的数值预测。
线性回归算法整体思路: 线性回归属于监督学习,因此方法和监督学习应该是一样的,
先给定一个训练集, 根据这个训练集学习出一个线性函数 然后测试这个函数训练的好不好(即此函数是否足够拟合训练集数据) 挑选出最好的函数(cost function最小)即可 (a) 根据给定数据架设预测函数h(x) (b) 计算代价函数J (c) 计算各参数偏导 (d) 更新参数 (e) 重复2~4直到代价函数跟新的步长小于设定值或者是重复次数达到预设值。 注意: (1)因为是线性回归,所以学习到的函数为线性函数,即直线函数; (2)因为是单变量,因此只有一个x;
二. 单变量线性回归 我们能够给出单变量线性回归的模型: 从上面“方法”中,我们肯定有一个疑问,怎么样能够看出线性函数拟合的好不好呢? 我们需要使用到Cost Function(代价函数) 代价函数越小,说明线性回归地越好(和训练集拟合地越好), 当然最小就是0,即完全拟合;
-给定输入向量x,输出向量y,theta向量 然后输出 Cost值;
三 最小二乘法 Normal Equation最常用的就是最小二乘法。 对θθ矩阵求导,得到其最优解为 θ^∗=(XTX)−1XTyθ^∗=(XTX)−1XTy 四 梯度下降法 梯度下降法(Gradient Descent)需要根据平方误差,定义该线性回归模型的损失函数(Cost Function): J(θ)=J(θ0,θ1,...,θn)=12m∑i=1m(hθ(x(i))−y(i))2J(θ)=J(θ0,θ1,...,θn)=12m∑i=1m(hθ(x(i))−y(i))2 线性回归的损耗函数的值与回归系数θ的关系是碗状的,只有一个最小点。线性回归的求解过程如同Logistic回归,区别在于学习模型函数hθ(x)不同. 五 局部加权线性回归 线性回归的一个问题是有可能出现欠拟合现象,因为它求的是具有最小均方误差的无偏估计。显而易见,如果模型欠拟合将不能取得最好的预测效果。所以有些方法允许在估计中引人一些偏差,从而降低预测的均方误差。其中的一个方法是局部加权线性回归(Locally Weighted Linear Regression, LWLR )。在该算法中,我们给待预测点附近的每个点赋予一定的权重.于是公式变为: θ^=(XTWX)−1XTWyθ^=(XTWX)−1XTWy W是(m,m)矩阵,m表示样本数。 LWLR使用 “核”(与支持向量机中的核类似)来对附近的点赋予更高的权重。核的类型可以自由选择,最常用的核就是高斯核,高斯核对应的权重如下: w(i,i)=exp(|x(i)−x|−2k2)w(i,i)=exp(|x(i)−x|−2k2) k需要优化选择. 局部加权线性回归也存在一个问题,即增加了计算量,因为它对每个点做预测时都必须使用整个数据集,而不是计算出回归系数得到回归方程后代入计算即可。因此该算法不被推荐。 --------------------- 作者:lgy54321 来源:CSDN 原文:blog.csdn.net/lgy54321/ar… 版权声明:本文为博主原创文章,转载请附上博文链接! |
|