最小二乘法-公式推导

简介: 基本思想 求出这样一些未知参数使得样本点和拟合线的总误差(距离)最小 最直观的感受如下图(图引用自知乎某作者) 而这个误差(距离)可以直接相减,但是直接相减会有正有负,相互抵消了,所以就用差的平方 推导过程 1 写出拟合方程y=a+bxy=a+bx 2 现有样本(x1,y1),(x2,y2).

基本思想

求出这样一些未知参数使得样本点和拟合线的总误差(距离)最小

最直观的感受如下图(图引用自知乎某作者)

而这个误差(距离)可以直接相减,但是直接相减会有正有负,相互抵消了,所以就用差的平方



推导过程

1 写出拟合方程
y = a + b x

2 现有样本 ( x 1 , y 1 ) , ( x 2 , y 2 ) . . . ( x n , y n )

3 设 d i 为样本点到拟合线的距离,即误差
d i = y i ( a + b x i )

4 设 D 为差方和(为什么要取平方前面已说,防止正负相互抵消)
D = i = 1 n d i 2 = i = 1 n ( y i a b x i )

5 根据一阶导数等于0,二阶大于等于0(证明略)求出未知参数
对a求一阶偏导
D a = i = 1 n 2 ( y i a b x i ) ( 1 )   = 2 i = 1 n ( y i a b x i )  
= 2 ( i = 1 n y i i = 1 n a b i = 1 n x i )   = 2 ( n y ¯ n a n b x ¯ )

对b求一阶偏导
D b = i = 1 n 2 ( y i a b x i ) ( x i )   = 2 i = 1 n ( x i y i a x i b x i 2 )  
= 2 ( i = 1 n x i y i a i = 1 n x i b i = 1 n x i 2 )   = 2 ( i = 1 n x i y i n a x ¯ b i = 1 n x i 2 )

令偏导等于0得
2 ( n y ¯ n a n b x ¯ ) = 0
=> a = y ¯ b x ¯

2 ( i = 1 n x i y i n a x ¯ b i = 1 n x i 2 ) = 0 并将 a = y ¯ b x ¯ 带入化简得
=> i = 1 n x i y i n x ¯ y ¯ + n b x ¯ 2 b i = 1 n x i 2 = 0
=> i = 1 n x i y i n x ¯ y ¯ = b ( i = 1 n x i 2 n x ¯ 2 )
=> b = i = 1 n x i y i n x ¯ y ¯ i = 1 n x i 2 n x ¯ 2

因为 i = 1 n ( x i x ¯ ) ( y i y ¯ ) = i 1 n ( x i y i x ¯ y i x i y ¯ + x ¯ y ¯ ) = i = 1 n x i y i n x ¯ y ¯ n x ¯ y ¯ + n x ¯ y ¯
i = 1 n ( x i x ¯ ) 2 = i 1 n ( x i 2 2 x ¯ x i + x ¯ 2 ) = i = 1 n x i 2 2 n x ¯ 2 + n x ¯ 2 = i = 1 n x i 2 n x ¯ 2

所以将其带入上式得

目录
相关文章
|
机器学习/深度学习 数据可视化 Python
逻辑回归那些事—使用牛顿法解决实际问题
逻辑回归是机器学习中的重要章节,本文将带你从公式推导到算法实现详细讲述这部分内容,想学习这个高大上的技能么,快来看吧!!!
5480 0
|
5月前
|
机器学习/深度学习 算法 调度
多元线性回归梯度下降法
梯度下降法是一种通用的优化算法,尤其适用于机器学习中找到最优解。与解析解法不同,它不局限于特定情况,能在数据规模较大时依然有效。该方法通过迭代逐步接近最优解,每次迭代利用损失函数的梯度信息调整参数。学习率是控制参数更新幅度的关键因素,太大会导致发散,太小则收敛慢。全量梯度下降每次使用所有样本更新,收敛稳定但速度慢;随机梯度下降每次仅用一个样本,速度快但可能产生较大波动;小批量梯度下降取两者之间,以一定的样本批量进行更新,兼顾速度和稳定性。
66 1
曲线拟合-最小二乘法
线性最小二乘法及matlab例程
|
算法 固态存储
【双目视觉】 立体匹配算法原理之“代价函数”
Census方法任取左图一个像素点P,观察周围3*3窗口的像素点灰度值,如果小于P就置1,否则为0,然后编码。右图也是如此。最后异或比较,根据异或后的结果,看‘1’的个数,计算汉明距离
183 0
L5-参数估计:矩估计与极大似然估计
L5-参数估计:矩估计与极大似然估计
L5-参数估计:矩估计与极大似然估计
|
机器学习/深度学习
PRML 1.1 多项式曲线拟合
PRML 1.1 多项式曲线拟合
PRML 1.1 多项式曲线拟合
|
人工智能 开发者
马尔科夫不等式 | 学习笔记
快速学习马尔科夫不等式
190 0
马尔科夫不等式 | 学习笔记
|
算法
F#实现Runge–Kutta算法求解常微分方程
不少工程问题中涉及的微分方程,我们很难求出方程的解析解,或者说根本不存在精确的解析解。此时,我们需要利用电脑,结合数值分析的方法来近似求出微分方程的相关解,并研究其性质。通过求出多个自变量的值,并求出对应的解,那么可以绘制出图形来辅助研究方程的特征。本文将介绍F#实现Runge–Kutta算法求解微分方程。
846 0
F#实现Runge–Kutta算法求解常微分方程
|
人工智能 算法 Python
最小二乘法多项式曲线拟合原理与实现
概念 最小二乘法多项式曲线拟合,根据给定的m个点,并不要求这条曲线精确地经过这些点,而是曲线y=f(x)的近似曲线y= φ(x)。   原理 [原理部分由个人根据互联网上的资料进行总结,希望对大家能有用]          给定数据点pi(xi,yi),其中i=1,2,…,m。
2445 1
|
算法 Python 机器学习/深度学习
02 回归算法 - 线性回归求解 θ(最大似然估计求解)
回顾线性回归的公式:θ是系数,X是特征,h(x) 是预测值。 h(x) = θ0 + θ1x1 + θ2x2 + … + θnxn h(x) = Σ θixi( i=0~n ) h(x) = θTX = [θ1,θ2,θ3,…,θn] * [x1,x2,x3,…,xn]T 最终要求是计算出θ的值,并选择最优的θ值构成算法公式,使预测值能够尽可能接近真实值。
1895 0