Python 线性回归(Linear Regression) 基本理解

背景

学习 Linear Regression in Python – Real Python,对线性回归理论上的理解做个回顾,文章是前天读完,今天凭着记忆和理解写一遍,再回温更正。

线性回归(Linear Regression)

刚好今天听大妈讲机器学习,各种复杂高大上的算法,其背后都是在求”拟合“。

线性回归估计是最简单的拟合了。也是基础中的基础。

依然是从字面上先来试着拆解和组合:

首先,Regression 回归,指的是研究变量之间的关系,这个由来在Python 线性回归(Linear Regression) - 到底什么是 regression?一文中讲多了,这里不多重复。

然后,linear 线性,很直观:直线。

二者连在一起,便是:变量之间呈直线关系。

那具体是哪些变量之间?

因变量 y 和 自变量 (x1...xr) 之间。

?? = ??? + ?????? + ? + ?????? + ??

当只有一个 x1 的时候,就是最简单的线性回归 ?? = ??? + ??????

具体怎么理解这个公式呢?

举个简化的例子:员工的工资 y 与 学历 x 的关系。

假设学历越高,工资也越高,二者是某种程度上的线性关系,

那在理论上会存在这么一个公式 y = ??? + ?????,其中,x1...xn, y1...yn:

  • x 和 y 的数据很容易拿到(当然合法渠道了,假设你是 hr 总监)
  • hr 总监想做的是,根据这组 (x y)数据,找出 ??? 和 ??? 的值,二者称为回归系数
  • 这样,下一次招聘的时候,根据应聘者的学历,可以先估一个工资了。

这个过程便是:数据 -> 建立模型 f(x) -> 预测

只是,理论和实际总是有差别的,就像 1/3 ~= 0.3333333333333...

所以,实际拟合到的模型可能是这样的: f(x) = ??? + ?????

??? 和 ??? 分别与 ??? 和 ??? 有多接近?

当然是拟合出来的越接近越好;

如何知道有多接近?

简单,

  • 将 x1...xn 代入到拟合后的模型中 f(x),
  • 求得新的 new_y1...new_yn
  • 再跟原 y1...yn 比较,比如 new_y1 - y1 (称为残差)
    • 这里要用到最小二乘法(method of ordinary least squares)
    • 因为残差可能是负的,
    • 所以用残差平方和

回归要解决的问题就是:以最简单的线性回归为例:

  • 找到最佳的 ??? 和 ???, 使模型 f(x) = ??? + ????? 最接近理论上的线性模型 y = ??? + ?????
  • 然后,用这个拟合好的模型 f(x) = ??? + ????? 来预测新的数据

线性回归好多种

除了上面例子中的最简单的线性回归,还有:

  • 多元线性回归:Multiple linear Regression

    • ??(???, ???) = ??? + ?????? + ??????
  • 多项式回归:Polynomial Regression
    • ??(??) = ??? + ????? + ?????2....

即从二维转为三维、多维空间拟合了。这个有点复杂了,不过原理和前面是相通的。

拟合的程度

过犹不及用在这里也适合,过度拟合也很脆弱的,因为可能新增加一个或几个数据就破坏了之前的完美,就好像专门为你定制的帽子戴在别人头上就没那么合适和美了。

](https://files.realpython.com/media/poly-reg.5790f47603d8.png)

当然,拟合的不及也不好,这时候可能就要换模型或者调参了吧

Reference

本文由博客一文多发平台 OpenWrite 发布!

原文地址:https://www.cnblogs.com/learnbydoing/p/12169130.html

时间: 2024-11-10 17:42:27

Python 线性回归(Linear Regression) 基本理解的相关文章

Ng第二课:单变量线性回归(Linear Regression with One Variable)

二.单变量线性回归(Linear Regression with One Variable) 2.1  模型表示 2.2  代价函数 2.3  代价函数的直观理解 2.4  梯度下降 2.5  梯度下降的直观理解 2.6  梯度下降的线性回归 2.7  接下来的内容 2.1  模型表示 之前的房屋交易问题为例,假使我们回归问题的训练集(Training Set)如下表所示: 我们将要用来描述这个回归问题的标记如下: m                代表训练集中实例的数量 x          

机器学习方法(一):线性回归Linear regression

开一个机器学习方法科普系列,也做基础回顾之用.学而时习之. content: linear regression, Ridge, Lasso Logistic Regression, Softmax Kmeans, GMM, EM, Spectral Clustering Dimensionality Reduction: PCA.LDA.Laplacian Eigenmap. LLE. Isomap(修改前面的blog) SVM C3.C4.5 Apriori,FP PageRank minH

机器学习方法:回归(一):线性回归Linear regression

开一个机器学习方法科普系列:做基础回想之用.学而时习之:也拿出来与大家分享.数学水平有限,仅仅求易懂,学习与工作够用.周期会比較长.由于我还想写一些其它的,呵呵. content: linear regression, Ridge, Lasso Logistic Regression, Softmax Kmeans, GMM, EM, Spectral Clustering Dimensionality Reduction: PCA.LDA.Laplacian Eigenmap. LLE. Is

机器学习 Machine Learning(by Andrew Ng)----第二章 单变量线性回归(Linear Regression with One Variable)

第二章 单变量线性回归(Linear Regression with One Variable) <模型表示(Model Representation)>                                                             <代价函数(Cost Function)>                                                          <梯度下降(Gradient Descent)

机器学习 (一) 单变量线性回归 Linear Regression with One Variable

文章内容均来自斯坦福大学的Andrew Ng教授讲解的Machine Learning课程,本文是针对该课程的个人学习笔记,如有疏漏,请以原课程所讲述内容为准.感谢博主Rachel Zhang和 JerryLead 的个人笔记,为我做个人学习笔记提供了很好的参考和榜样. § 1.  单变量线性回归 Linear Regression with One Variable 1. 代价函数Cost Function 在单变量线性回归中,已知有一个训练集有一些关于x.y的数据(如×所示),当我们的预测值

机器学习笔记01:线性回归(Linear Regression)和梯度下降(Gradient Decent)

最近在Coursera上看吴大神的Machine Learning,感觉讲的真的很棒.所以觉得应该要好好做做笔记,一方面是加强自己对ML中一些方法的掌握程度和理解,另一方面也能方便自己或者同样爱好ML的同学. 线性回归(Linear Regression) 线性回归(Linear Regression)应该是机器学习中最基本的东西了.所谓回归,想必大家在高中时期的课程里面就接触过,给定一系列离散的点(x0,y0),求一条直线 f(x)=ax+b 以使得最小.在machine learning 中

Stanford机器学习---第二讲. 多变量线性回归 Linear Regression with multiple variable

原文:http://blog.csdn.net/abcjennifer/article/details/7700772 本栏目(Machine learning)包括单参数的线性回归.多参数的线性回归.Octave Tutorial.Logistic Regression.Regularization.神经网络.机器学习系统设计.SVM(Support Vector Machines 支持向量机).聚类.降维.异常检测.大规模机器学习等章节.所有内容均来自Standford公开课machine

多元线性回归(Linear Regression with multiple variables)与最小二乘(least squat)

1.线性回归介绍 X指训练数据的feature,beta指待估计得参数. 详细见http://zh.wikipedia.org/wiki/%E4%B8%80%E8%88%AC%E7%BA%BF%E6%80%A7%E6%A8%A1%E5%9E%8B 使用最小二乘法拟合的普通线性回归是数据建模的基本方法. 令最小二乘项的偏导为0(为0时RSS项最小),求Beta估计值,得到最小二乘的向量形式. 最小二乘其实就是找出一组参数beta使得训练数据到拟合出的数据的欧式距离最小.如下图所示,使所有红点(训练

Stanford公开课机器学习---2.单变量线性回归(Linear Regression with One Variable)

单变量线性回归(Linear Regression with One Variable) 2.1 模型表达(Model Representation) m 代表训练集中实例的数量 x 代表特征/输入变量 y 代表目标变量/输出变量 (x,y) 代表训练集中的实例 (x(i),y(i) ) 代表第 i 个观察实例 h 代表学习算法的解决方案或函数也称为假设(hypothesis) 单变量线性回归:只含有一个特征/输入变量 x hθ=θ0+θ1x 2.2 代价函数(Cost Function) 目标