Linear Regression

本文代码,见github:

一, 线性回归原理

1.线性回归算法的优点。

    解决回归问题;

    思想简单,容易实现;

    许多强大的非线性模型的基础;

    结果具有很好的可解释性;

    蕴含机器学习中的很多重要的思想;

2.分类问题和回归问题的不同点(为了可视化,我们以二维为例)


分类问题(左图),x,y均表示特征

回归问题(右图),x表示特征,y表示标记(分类问题中标记(target)是离散值,回归问题中,target是连续值,比如:房价)。


上图中只有一个特征,称为简单的线性回归;若有两个或多个特征,需要在三维及更高的维度,称为多元线性回归。

3.简单线性回归原理的介绍



(1)式不同的样本点可能会相互抵消(如上图:在红线左侧的点的真值和估计值的差值小于0,在红线左侧的点的真值和估计值的差值大于于0,最后所有样本真值和估计值的差值相加会产生抵消的情况,不能很好的知道是否预测的准确)

(2)式不是凸优化问题,存在不可导点(因为我们要计算函数最小值,最终转化为求导=0,寻求最小点)

目标:,所以找到a和b,使得最小。

转化为最小二乘问题最小化误差的平方


最小二乘问题的原理,推导:见另一篇博客: 一些基本 的数学知识 2.最小二乘问题


这样我们就可以拟合出一条直线来近似的表示feature和target的线性关系:即




4. 根据上述原理,进行简单的代码实现

见 SimpleLinearRegression.ipynb (github地址在本文开始)


二. 衡量线性回归的指标


1. MSE,RMSE,MAE,R_Square





Q: 在分类准确度的测量中,1表示预测性能最好,0表示预测性能最差,不论是预测鸢尾花数据的分类还是手写数字的识别都是如此,即我们可以比较不同场景下的预测准确性。

    但是在上述衡量线性回归的指标中,误差总是与预测数据的大小有关,也就是说,用上述的衡量误差方法,在用线性回归预测学生成绩和房价这两个场景中,显然是无法比较谁的预测更准确一点。即没有统一化的标准




对R_Square进一步进行分析




将R_Square 变形为我们熟悉的形式,也方便编程的实现



2加载波士顿房价数据.对上述指标程序的实现。

具体程序见:MSE_RMSE_MAE_R2.ipynb



  










猜你喜欢

转载自blog.csdn.net/zhao_crystal/article/details/80341786