什么是线性回归?

线性回归方程是利用数理统计中的回归分析,来确定两种或两种以上变数间相互依赖的定量关系的一种统计分析方法之一。线性回归也是回归分析中第一种经过严格研究并在实际应用中广泛使用的类型。按自变量个数可分为一元线性回归分析方程和多元线性回归分析方程。摘至百度百科。

函数模型

线性回归的函数模型为 h w ( x i ) = w 0 + w 1 x 1 + w 2 x 2 + . . . + w n x n h_w(x^i)=w_0+w_1x_1+w_2x_2+...+w_nx_n hw​(xi)=w0​+w1​x1​+w2​x2​+...+wn​xn​
也可以写成 h w ( x i ) = w T x i = W T X h_w(x^i)=w^Tx_i=W^TX hw​(xi)=wTxi​=WTX,其中 X = [ 1 x 1 . . . x n ] X=\begin{bmatrix} 1 \\x_1\\... \\x_n \end{bmatrix} X=⎣⎢⎢⎡​1x1​...xn​​⎦⎥⎥⎤​,
W = [ w 0 w 1 . . . w n ] W=\begin{bmatrix} w_0 \\w_1\\... \\w_n \end{bmatrix} W=⎣⎢⎢⎡​w0​w1​...wn​​⎦⎥⎥⎤​,假如存在数据集 D = ( X 1 , Y 1 ) , ( X 2 , Y 2 ) , . . . , ( X n , Y n ) D={(X_1,Y_1), (X_2, Y_2), ... ,(X_n, Y_n)} D=(X1​,Y1​),(X2​,Y2​),...,(Xn​,Yn​),为了方便我们写成矩阵形式如下 X = [ 1 , x 1 1 , x 2 1 , . . . , X n 1 1 , x 1 2 , x 2 2 , . . . , x n 2 . . . . . . 1 , x 1 n , x 2 n , . . . , x n n ] X = \begin{bmatrix} 1, x_1^1, x_2^1, ..., X_n^1 \\ 1, x_1^2, x_2^2, ..., x_n^2 \\......\\1, x_1^n, x_2^n, ..., x_n^n \end{bmatrix} X=⎣⎢⎢⎡​1,x11​,x21​,...,Xn1​1,x12​,x22​,...,xn2​......1,x1n​,x2n​,...,xnn​​⎦⎥⎥⎤​, 所以 h w ( x i ) = X W h_w(x^i) = XW hw​(xi)=XW,线性回归中就是我们直到了D,也就是知道了 X X X,需要求出W,这里使用最小二乘法。

最小二乘法

什么是最小二乘呢?通俗的讲就是我们假设一条直线出来,然后把数据点带入假设的直线得到观测值,求使得实际值和观测值相减的平方和最小的参数,对变量求偏导联立可解。

损失函数

定义线性回归损失函数为: J ( W ) = 1 2 M ∑ i = 0 M ( h w ( x i ) − y i ) 2 = 1 2 M ( X W − y ) T ( X W − Y ) J(W)=\frac{1}{2M}\sum_{i=0}^{M}(h_w(x^i)-y^i)^2=\frac{1}{2M}(XW-y)^T(XW-Y) J(W)=2M1​∑i=0M​(hw​(xi)−yi)2=2M1​(XW−y)T(XW−Y)

求W

有了损失函数之后我们的目标就是最小化损失函数,也就是求取一个 W W W使得 J ( W ) J(W) J(W)最小,这里需要分2种情况来讨论。
a) 矩阵满秩可求解时(也就是对W求导等于0)
J ( W ) = 1 / 2 ( X W − y ) T ( X W − y ) = 1 / 2 [ W T X T X W − W T X T y − y T X W + Y T Y ] = 1 / 2 [ W T X T X W − 2 W T X T y + y T y ] J(W)=1/2(XW-y)^T(XW-y)=1/2[W^TX^TXW-W^TX^Ty-y^TXW+Y^TY]=1/2[W^TX^TXW-2W^TX^Ty+y^Ty] J(W)=1/2(XW−y)T(XW−y)=1/2[WTXTXW−WTXTy−yTXW+YTY]=1/2[WTXTXW−2WTXTy+yTy], ∂ J ( W ) ∂ W = 0 \frac{\partial J(W)}{\partial W} = 0 ∂W∂J(W)​=0=》 ∂ J ( W ) ∂ W = 1 / 2 [ W T X T X − 2 X T y ] = 0 \frac{\partial J(W)}{\partial W} = 1/2[W^TX^TX-2X^Ty]=0 ∂W∂J(W)​=1/2[WTXTX−2XTy]=0=》 X T X W = X T y X^TXW=X^Ty XTXW=XTy=》 W = ( X T X ) − 1 X T y W=(X^TX)^{-1}X^Ty W=(XTX)−1XTy
b)矩阵不满秩(梯度下降)
梯度下降的原理大概可以把目标函数比作一座山,我们站在某个山坡上,往四周看一看,从哪个方向向下走一步,可以下降得最快。将梯度下降应用到线性回归中:首先对 θ \theta θ赋值,这个值可以是随机的,也可以让 θ \theta θ是一个全为0的向量,接下来改变 θ \theta θ的值,使得 j ( θ ) j(\theta) j(θ)按照梯度下降的方向进行减少。描述一下梯度减少的过程,对于函数 J ( θ ) J(\theta) J(θ)求偏导 J J J。重复下面的过程: ∂ ∂ θ 1 2 ∑ i = 1 m ( h θ ( x ) − y ) 2 = ( h θ ( x ) − y ) x ( i ) \frac{\partial}{\partial \theta}\frac{1}{2}\sum_{i=1}^{m}(h_{\theta}(x)-y)^2=(h_\theta(x)-y)x^(i) ∂θ∂​21​∑i=1m​(hθ​(x)−y)2=(hθ​(x)−y)x(i),下面是更新的过程,也就是会 θ i \theta_i θi​会向着梯度最小的方向减少。 θ i \theta_i θi​表示更新之前的值,后面减去的部分代表按梯度方向减少的量,\alpha表示步长,也就是每次按照梯度减少的方向变换多少。 θ i = θ i − α ∂ ∂ θ J ( θ ) = θ i − α ( h θ ( x ) − y ) x i \theta_i=\theta_i-\alpha\frac{\partial}{\partial\theta}J(\theta)=\theta_i-\alpha(h_\theta(x)-y)x^i θi​=θi​−α∂θ∂​J(θ)=θi​−α(hθ​(x)−y)xi,对于之前假设的数据集D: X = [ 1 , x 1 1 , x 2 1 , . . . , X n 1 1 , x 1 2 , x 2 2 , . . . , x n 2 . . . . . . 1 , x 1 n , x 2 n , . . . , x n n ] X = \begin{bmatrix} 1, x_1^1, x_2^1, ..., X_n^1 \\ 1, x_1^2, x_2^2, ..., x_n^2 \\......\\1, x_1^n, x_2^n, ..., x_n^n \end{bmatrix} X=⎣⎢⎢⎡​1,x11​,x21​,...,Xn1​1,x12​,x22​,...,xn2​......1,x1n​,x2n​,...,xnn​​⎦⎥⎥⎤​, W = [ w 0 w 1 . . . w n ] W=\begin{bmatrix} w_0 \\w_1\\... \\w_n \end{bmatrix} W=⎣⎢⎢⎡​w0​w1​...wn​​⎦⎥⎥⎤​, y = [ y 1 y 2 . . . y n ] y=\begin{bmatrix} y1\\ y2 \\... \\y_n \end{bmatrix} y=⎣⎢⎢⎡​y1y2...yn​​⎦⎥⎥⎤​, h = X W h=XW h=XW。对损失函数求偏导如下: ∂ ∂ W j J ( W ) = 1 M ∑ i = 1 i = m ( h w x ( i ) − y ( i ) ) x j i \frac{\partial}{\partial W_j}J(W)=\frac{1}{M}\sum_{i=1}^{i=m}(h_w^{x(i)}-y^(i))x_j^i ∂Wj​∂​J(W)=M1​∑i=1i=m​(hwx(i)​−y(i))xji​ W j : W j − α ∂ ∂ W j J ( W ) W_j:W_j - \alpha \frac{\partial }{\partial W_j}J(W) Wj​:Wj​−α∂Wj​∂​J(W),使用矩阵表示:
E = X − y = [ h 1 − y 1 h 2 − y 2 . . . h n − y n ] E=X-y=\begin{bmatrix}h_1-y_1\\ h_2-y_2 \\...\\h_n-y_n \end{bmatrix} E=X−y=⎣⎢⎢⎡​h1​−y1​h2​−y2​...hn​−yn​​⎦⎥⎥⎤​, W = W − 1 M α X T E W=W-\frac{1}{M}\alpha X^TE W=W−M1​αXTE

线性回归 原理及公式推导相关推荐

  1. Logistic Regression(逻辑回归)原理及公式推导

    Logistic Regression(逻辑回归)原理及公式推导 Logistic Regression(逻辑回归)是机器学习中一个非常非常常见的模型,在实际生产环境中也常常被使用,是一种经典的分类模 ...

  2. 线性回归模型的公式推导

    线性回归模型的公式推导 y = θ 0 + θ 1 x 1 + θ 2 x 2 + θ 3 x 3 + . . . + θ m x m \theta_0 +\theta_1 x_1+\theta_2 ...

  3. 线性回归原理与spark/sklearn实现

    线性回归原理与spark/sklearn实现 @(SPARK)[spark, ML] 一.算法原理 1.线程回归与逻辑回归的区别 线性回归是一种很直观的数值拟合方式,它认为目标变量和属性值之间存在线性 ...

  4. 信息传播学习笔记(1)——SIS模型原理与公式推导

    本文是SIS模型的原理与公式推导,不涉及代码(后续补充). 对了宝贝儿们,卑微小李的公众号[野指针小李]已开通,期待与你一起探讨学术哟~摸摸大! 目录 1 背景 2 SIS模型原理 3 求解微分方程 ...

  5. LDPC译码原理(公式推导)及其matlab代码实现(超详细)

    目录 博文更改记录 一.背景概述 二.LDPC译码理论 2.1 LDPC码的表示方法 2.1.1LDPC码的矩阵表示 2.1.2 Tanner图表示 2.2符号说明 2.3LDPC译码算法 2.3.1 ...

  6. 基于matlab的一元线性回归原理

    一.一元线性回归原理 1.1.数学模型 一元线性回归分析是在排除其他影响因素,分析某一个因素(自变量:X)是如何影响另外一个事物(因变量:Y)的过程,所进行的分析是比较理想化的.对于一元线性回归来说, ...

  7. 【高级UI】【009】贝塞尔曲线图形原理和公式推导

    什么是贝塞尔曲线 贝塞尔曲线,英文名Bezier Curve,是计算机图形学非常重要的一种曲线 它可以将若干的点,用一条平滑自然的曲线来连接起来 比如我们在地图库中绘制用户行走轨迹时,如果用折线来展示 ...

  8. 【机器学习】<刘建平Pinard老师博客学习记录>线性回归原理

    目录 一.线性回归的模型函数和损失函数: 二.线性回归的算法: 1.梯度下降法: 2.最小二乘法: 三.线性回归的推广:多项式回归 四.线性回归的推广:广义线性回归 五.线性回归的正则化: 一.线性回 ...

  9. SVM原理及公式推导

    SVM原理及公式推导 1. SVM总结 支持向量机(SVM)是一类按监督学习方式对数据进行二元分类的广义线性分类器,其决策边界是对学习样本求解的最大边距超平面,可以将问题化为一个求解凸二次规划的问题. ...

最新文章

  1. 802.11 MESH WLANs
  2. 51Talk乘一带一路之东风,破普惠教育巨浪
  3. 2020年7月程序员工资统计,平均14357元,又跌了,扎心
  4. 计算机办公自动化考题,办公自动化试题(附答案).doc
  5. mac m1下编译spring框架
  6. 物联网有哪些技术 物联网跟云计算人工智能有什么关系
  7. micropython 网络驱动_network_网卡驱动
  8. 汇编语言(十)之最小偶数
  9. Win10如何删除3D对象文件夹
  10. [python]No module named ‘bs4‘
  11. u-boot之SPL分析
  12. 腐蚀rust图纸怎么找_怎么解决变压器油滤油机的温差效应?在这里可以得到解决...
  13. android 3dtouch插件,iOS-3DTouch的简单实现
  14. 如何下载飞思卡尔单片机的S19文件
  15. 【MATLAB】 曲面的绘制
  16. Ubuntu18.04 iso文件下载地址
  17. foxmail绑定qq邮箱服务器,开通IMAP服务 用Foxmail远程操作QQ邮箱
  18. 武汉科技大学java题库答案_武汉科技大学 java实验报告 实验二
  19. Windows 10的最新版本是什么?
  20. Word2010去除页眉上的横线

热门文章

  1. 一文读懂Java封装实例
  2. b+和b-数比较和优势
  3. python中1 is True 的结果为False,is判断与==判断的区别
  4. S9赛季:盗贼竞技场\插旗中技巧攻…
  5. 贝恩2021技术报告:到2025年,30%的云服务供应商将专注于人工智能计算工作负载
  6. 出线资格 finals berth
  7. 猜拳游戏android代码,android 简易的猜拳小游戏
  8. 数控加工仿真系统 - FANUC OI 铣床编程笔记(下)
  9. 基于STC8G2K64S4单片机控制小车循迹(直流电机和步进电机)
  10. 哈希算法原理与应用:确保数据完整性和安全性的关键技术