1.线性预测器最佳预测系数线性方程推导

2.最小二乘法

2.1 简介

最小二乘法(又称最小平方法)是一种数学优化技术。它通过最小化误差的平方和寻找数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。

2.2 举例

比如说,我们知道夏天来了,天气一热我们就想吃冰棍,那么温度(x)和冰棍的销量(y)应该有着某种线性关系,我们假设这种线性关系为:
f ( x ) = a x + b f(x)=ax+b f(x)=ax+b
通过最小二乘法的思想,总误差为:
ε = ∑ i = 1 N [ f ( x i ) − y i ] 2 = ∑ i = 1 N [ a x i + b − y i ] 2 ε= ∑_{i=1}^{N}[f(x_i)-y_i]^2=∑_{i=1}^{N}[ax_i+b-y_i]^2 ε=i=1∑N​[f(xi​)−yi​]2=i=1∑N​[axi​+b−yi​]2
不同的a,b 会导致不同的 ε,根据多元微积分的知识,当:
{ ∂ ∂ a ϵ = 2 ∑ ( a x i + b − y i ) x i = 0 ∂ ∂ b ϵ = 2 ∑ ( a x i + b − y i ) = 0 \begin{cases} \frac{\partial}{\partial a}\epsilon=2\sum (ax_i+b-y_i)x_i=0\\ \quad\\ \frac{\partial}{\partial b}\epsilon=2\sum (ax_i+b-y_i)=0\end{cases} ⎩⎪⎨⎪⎧​∂a∂​ϵ=2∑(axi​+b−yi​)xi​=0∂b∂​ϵ=2∑(axi​+b−yi​)=0​

这个时候 ε 取最小值。
对于a,b 而言,上述方程组为线性方程组,用之前的数据解出来:
{ a ≈ m b ≈ n \begin{cases} a\approx m\\ \quad\\ b\approx n\end{cases} ⎩⎪⎨⎪⎧​a≈mb≈n​

从而求得了最佳匹配的a和b,也就是数m和n。

上面我们假设了 f ( x ) = a x + b f(x)=ax+b f(x)=ax+b 进行求解,我们其实也可以选用 f ( x ) = a x 2 + b x + c f(x)=ax^2+bx+c f(x)=ax2+bx+c 来进行拟合,结果与上式不同。其实,最小二乘的方法,还有多种,下面介绍其中三种的基本原理。

2.3 梯度下降法

2.3.1 梯度

在微积分里面,对多元函数的参数求偏导数,把求得的各个参数的偏导数以向量的形式写出来,就是梯度。比如函数f(x,y), 分别对x,y求偏导数,求得的梯度向量就是 ( ∂ f ∂ x , ∂ f ∂ y ) (\frac{∂f}{∂x}, \frac{∂f}{∂y}) (∂x∂f​,∂y∂f​)T,简称grad f(x,y)或者▽f(x,y)。对于在点(x0,y0)的具体梯度向量就是 ( ∂ f ∂ x 0 , ∂ f ∂ y 0 ) (\frac{∂f}{∂x_0}, \frac{∂f}{∂y_0}) (∂x0​∂f​,∂y0​∂f​)T
那么这个梯度向量求出来有什么意义呢?他的意义从几何意义上讲,就是函数变化增加最快的地方。具体来说,对于函数f(x,y),在点 ( x 0 , y 0 ) (x_0,y_0) (x0​,y0​),沿着梯度向量的方向就是 ( ∂ f ∂ x 0 , ∂ f ∂ y 0 ) (\frac{∂f}{∂x_0}, \frac{∂f}{∂y_0}) (∂x0​∂f​,∂y0​∂f​)T的方向是f(x,y)增加最快的地方。或者说,沿着梯度向量的方向,更加容易找到函数的最大值。反过来说,沿着梯度向量相反的方向,梯度减少最快,也就是更加容易找到函数的最小值。

2.3.2 算法详解

首先来看看梯度下降的一个直观的解释。比如我们在一座大山上的某处位置,由于我们不知道怎么下山,于是决定走一步算一步,也就是在每走到一个位置的时候,求解当前位置的梯度,沿着梯度的负方向,也就是当前最陡峭的位置向下走一步,然后继续求解当前位置梯度,向这一步所在位置沿着最陡峭最易下山的位置走一步。这样一步步的走下去,一直走到觉得我们已经到了山脚。当然这样走下去,有可能我们不能走到山脚,而是到了某一个局部的山峰低处。

从上面的解释可以看出,梯度下降不一定能够找到全局的最优解,有可能是一个局部最优解。当然,如果损失函数是凸函数,梯度下降法得到的解就一定是全局最优解。

梯度下降法的先决条件: 确认优化模型的假设函数和损失函数

假设我们的优化模型采用线性回归,假设函数表示为 h θ ( x 1 , x 2 , . . . x n ) = θ 0 + θ 1 x 1 + . . . + θ n x n h_\theta(x_1, x_2, ...x_n) = \theta_0 + \theta_{1}x_1 + ... + \theta_{n}x_{n} hθ​(x1​,x2​,...xn​)=θ0​+θ1​x1​+...+θn​xn​

其中,θi为模型参数, x i x_i xi​为每个样本的n个特征值

对应于上面的假设函数,损失函数为:
J ( θ 0 , θ 1 . . . , θ n ) = 1 2 m ∑ j = 1 m ( h θ ( x 0 ( j ) , x 1 ( j ) , . . . x n ( j ) ) − y j ) 2 J(\theta_0, \theta_1..., \theta_n) = \frac{1}{2m}\sum\limits_{j=1}^{m}(h_\theta(x_0^{(j)}, x_1^{(j)}, ...x_n^{(j)}) - y_j)^2 J(θ0​,θ1​...,θn​)=2m1​j=1∑m​(hθ​(x0(j)​,x1(j)​,...xn(j)​)−yj​)2

算法相关参数初始化:主要是初始化 θ 0 , θ 1 . . . , θ n \theta_0, \theta_1..., θ_n θ0​,θ1​...,θn​,算法终止距离

最小二乘:梯度下降法、牛顿法、高斯-牛顿法相关推荐

  1. 牛顿法、梯度下降法、高斯牛顿法、Levenberg-Marquardt算法

    何为梯度? 一般解释: f(x)在x0的梯度:就是f(x)变化最快的方向 举个例子,f()是一座山,站在半山腰, 往x方向走1米,高度上升0.4米,也就是说x方向上的偏导是 0.4 往y方向走1米,高 ...

  2. 最优化方法总结——梯度下降法、最速下降法、牛顿法、高斯牛顿法、LM法、拟牛顿法

    目录 1 最优化方法的结构 2 常用最优化方法对比分析 3 相关计算公式 1 最优化方法的结构 最优化问题的一般形式为: 其中为决策变量,是目标函数,为约束集或可行域.特别地,如果,则最优化问题成为无 ...

  3. 牛顿法、梯度下降法与拟牛顿法

    牛顿法.梯度下降法与拟牛顿法 0 引言 1 关于泰勒展开式 1.1 原理 1.2 例子 2 牛顿法 2.1 x 为一维 2.2 x 为多维 3 梯度下降法 4 拟牛顿法 4.1 拟牛顿条件 4.2 D ...

  4. 最小均方误差的推导+最小二乘法、梯度下降法、牛顿法、高斯牛顿法

    最小二乘法(又称最小平方法)是一种数学优化技术.它通过最小化误差的平方和寻找数据的最佳函数匹配.利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小.最小二乘法 ...

  5. 梯度下降法,牛顿法,高斯-牛顿迭代法,附代码实现

    ---------------------梯度下降法------------------- 梯度的一般解释: f(x)在x0的梯度:就是f(x)变化最快的方向.梯度下降法是一个最优化算法,通常也称为最 ...

  6. SLAM从0到1——状态估计之最小二乘问题解法:最速下降法、牛顿法、高斯牛顿法、LM法...

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 学习3D视觉核心技术,扫描查看介绍,3天内无条件退款 圈里有高质量教程资料.可答疑解惑.助你高效解决问 ...

  7. 迭代求解最优化问题TOA定位——最小二乘问题、高斯牛顿法

    迭代求解最优化问题TOA定位--最小二乘问题.高斯牛顿法 优化算法/TOA室内定位/ Target localization with range-only measurements 方法:1-非线性 ...

  8. 优化:梯度下降法、牛顿法、共轭梯度法

    1.基本概念 1.1 方向导数 1.2 梯度的概念 如果考虑z=f(x,y)描绘的是一座在点(x,y)的高度为f(x,y)的山.那么,某一点的梯度方向是在该点坡度最陡的方向,而梯度的大小告诉我们坡度到 ...

  9. 什么是牛顿法(Newton methods)?什么是拟牛顿法(Quasi Newton methods)?牛顿法和梯度下降法的区别是什么?

    什么是牛顿法(Newton methods)?什么是拟牛顿法(Quasi Newton methods)?牛顿法和梯度下降法的区别是什么? 牛顿法的最初提出是用来求解方程的根的.对于最优化问题,其极值 ...

最新文章

  1. 【MySQL解惑笔记】忘记MySQL数据库密码
  2. Spring Cloud构建分布式电子商务平台:服务消费(基础)
  3. 企业级的开发组件02 - DevExpress DXperience Universal 2011.2.5 Final
  4. SAP:2019年会有多么不一样?
  5. linux下载b站的视频+ffmpeg抽取出mp3
  6. 微课|玩转Python轻松过二级(2.4节):常用内置函数用法精要1
  7. 没有人愿意把自己放在被动的位置,一切皆是有原因的
  8. .php on line 0,控制台运行php报错 undefined symbol: gdImageCreateFromJpeg in Unknown on line 0 解决方法...
  9. linux下文件管理方式iscsi-ipsan
  10. access查询设计sol视图_access查询类型分哪几种?
  11. 2009-2012年中国网络游戏市场投资分析及前景预测报告
  12. linux tty core code,linux tty core 源码分析(6)
  13. pair及pair在vector中的使用
  14. WebStorm使用npm命令提示: ‘npm‘ 不是内部或外部命令,也不是可运行的程序的解决方法
  15. Swift 中的类与结构体
  16. linux根分区写保护,目录写保护,求助大神
  17. acwing 846. 树的重心
  18. stm32采集交流电压信号_基于STM32的交流电压检测.pdf
  19. 连载26:软件体系设计新方向:数学抽象、设计模式、系统架构与方案设计(简化版)(袁晓河著)...
  20. iGrimaceV8 V8在线威锋源apt.so/qwkjv8手机直接下载安装教程

热门文章

  1. spark Error initializing SparkContext System memory 466092032 must be at least 471859200.
  2. 富士康:等夏普状况好转后,会交给日本人来管理
  3. linux系统安装内存测试,一种Linux系统下基于IDK内存注错的测试方法及系统与流程...
  4. 0202函数的求导法则-导数与微分-高等数学
  5. 揭秘吴孟达周星驰恩怨情仇
  6. const 与 指针的恩怨情仇!!!
  7. SEO学习笔记五(SEO实战密码读书笔记)
  8. 《逍遥游-庄子》笔记
  9. python的if和else的缩进问题_Python if else对缩进的要求
  10. 用python如何把一个数字拆开再拼接上