当前位置: 首页 > news >正文

最小二乘法简介

最小二乘法简介

    • 1、背景描述
    • 2、最小二乘法
      • 2.1、最小二乘准则
      • 2.2、最小二乘法
    • 3、最小二乘法与线性回归
      • 3.1、最小二乘法与线性回归
      • 3.2、最小二乘法与最大似然估计
    • 4、正态分布(高斯分布)



1、背景描述


在工程应用中,我们通常会用一组观测数据去估计模型的参数,模型是我们根据经验知识预先给定的。例如,我们有一组观测数据 ( x i , y i ) (x_i,y_i) (xi,yi),通过简单分析,我们猜测y与x之间存在线性关系,那么我们的模型可以给定为:
y = k x + b y=kx+b y=kx+b

该模型只有两个参数,理论上,我们只需要通过两组观测值建立二元一次方程组即可求解。类似的,如果模型有n个参数,我们只需要n组观测值即可求解。换句话说,这种情况下,模型的参数是唯一确定解

但是,在实际应用中,由于我们的观测会存在误差(偶然误差、系统误差等),所以我们总会做更多观测。例如,在上述例子中,尽管只有两个参数,但是我们可能会观测n组数据: ( x 0 , y 0 ) 、 ( x 1 , y 1 ) 、 . . . 、 ( x n − 1 , y n − 1 ) (x_0,y_0)、(x_1,y_1)、...、(x_{n-1},y_{n-1}) (x0,y0)(x1,y1)...(xn1,yn1),这会导致我们无法找到一条直线经过所有的点,也就是说,方程无确定解
在这里插入图片描述

于是,这就是我们要解决的问题:虽然没有确定解,但是我们能不能求出近似解,使得模型能在各个观测点上达到“最佳“拟合

那么“最佳”的准则是什么?可以是所有观测点到直线的距离和最小,也可以是所有观测点到直线预测点(真实值-理论值)的绝对值和最小,还可以是所有观测点到直线预测点(真实值-理论值)的平方和最小

在这里插入图片描述

2、最小二乘法

2.1、最小二乘准则


19世纪初(1806年),法国科学家勒让德发明了“最小二乘法”。勒让德认为,让误差(真实值-理论值)的平方和最小估计出来的模型是最接近真实情形的。换句话说,勒让德认为最佳的拟合准则是使 y i y_i yi y = f ( x i ) y=f(x_i) y=f(xi)的距离的平方和最小:
L = ∑ i = 1 m ( y i − f ( x i ) ) 2 L=\sum_{i=1}^m(y_i-f(x_i))^2 L=i=1m(yif(xi))2

这个准则也被称为最小二乘准则。这个目标函数取得最小值时的函数参数,就是最小二乘法的思想,所谓“二乘”就是平方的意思

勒让德在原文中提到:使误差平方和达到最小,在各方程的误差之间建立了一种平衡,从而防止了某一极端误差取得支配地位,而这有助于揭示系统的更接近真实的状态

至于为什么最佳准则就是误差平方而不是其它的,勒让德当时并没有给出解释,直到后来高斯建立了正态误差分析理论才成功回答了该问题

在这里插入图片描述

1829年,高斯建立了一套误差分析理论,从而证明了确实是使误差(真实值-理论值)平方和最小的情况下系统是最优的

误差分析理论其实说到底就一个结论:观察值的误差服从标准正态分布,即 ϵ ∈ N ( 0 , 1 ) ϵ∈N(0,1) ϵN(0,1)

关于正态分布的介绍见本文第4节

2.2、最小二乘法


最小二乘法就是一个数学公式,在数学上称为曲线拟合,不仅包括线性回归方程,还包括矩阵的最小二乘法

最小二乘法是解决曲线拟合问题最常用的方法。令

在这里插入图片描述

其中, φ k ( x ) \varphi_k(x) φk(x)是事先选定的一组线性无关的函数, a k a_k ak是待定系数 ( k = 1 , 2 , . . . , m , m < n ) (k=1,2,...,m,m<n) (k=1,2,...,m,m<n),拟合准则是使 y i ( i = 1 , 2 , . . . , n ) y_i(i=1,2,...,n) yi(i=1,2,...,n) f ( x i ) f(x_i) f(xi)的距离 δ i \delta_i δi的平方和最小,称为最小二乘准则

百度百科词条给出的基本原理如下:

在这里插入图片描述

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

最小二乘法是一种在误差估计、不确定度、系统辨识及预测、预报等数据处理诸多学科领域得到广泛应用的数学工具

3、最小二乘法与线性回归

3.1、最小二乘法与线性回归


对于勒让德给定的最佳拟合准则,我们可以看到,最小二乘法其实就是用来做函数拟合的一种思想。至于如何求解具体的参数那就是另外一个问题了

最小二乘法的本质是一种数学思想,它可以拟合任意函数。而线性回归只是其中一个比较简单且常用的函数,所以讲最小二乘法基本都会以线性回归为例

线性回归因为比较简单,可以直接推导出解析解,而且许多非线性的问题也可以转化为线性问题来解决,所以得到了广泛的应用

线性回归简介见文章:传送门

3.2、最小二乘法与最大似然估计


最大似然估计:最大化给定样本集发生的概率,即就是极大化似然函数(Likelihood Function),而似然函数就是样本的联合概率。由于我们通常都会假设样本是相互独立的,因此联合概率就等于每个样本发生的概率乘积

假设我们有m组观测数据 ( x 1 , y 1 ) , . . . , ( x m , y m ) (x_1,y_1),...,(x_m,y_m) (x1,y1),...,(xm,ym),我们猜测其关系符合:
y = k x + b y=kx+b y=kx+b
假设真实值与预测值之间的误差为:
ε i = y i − y = y i − f ( x i ) \varepsilon_i=y_i-y=y_i-f(x_i) εi=yiy=yif(xi)
根据高斯的误差分析理论,观测值的误差服从标准正态分布(见文末),即给定一个 x i x_i xi,模型输出真实值 y i y_i yi的概率为:
p ( y i ∣ x i ) = 1 2 π e − ε i 2 2 p(y_i|x_i)=\frac{1}{\sqrt{2\pi}}e^{-\frac{\varepsilon_i^2}{2}} p(yixi)=2π 1e2εi2

则根据最大似然估计(似然函数)有:
L ( ω ) = ∏ i = 1 m p ( y i ∣ x i ) = ∏ i = 1 m 1 2 π e − ε i 2 2 L(\omega)=\prod_{i=1}^mp(y_i|x_i)=\prod_{i=1}^m\frac{1}{\sqrt{2\pi}}e^{-\frac{\varepsilon_i^2}{2}} L(ω)=i=1mp(yixi)=i=1m2π 1e2εi2

两边取对数得:
J ( ω ) = l n ( L ( ω ) ) = ∑ i = 1 m l n ( 1 2 π e − ε i 2 2 ) = ∑ i = 1 m l n 1 2 π − 1 2 ∑ i = 1 m ε i 2 J(\omega)=ln(L(\omega)) = \sum_{i=1}^mln(\frac{1}{\sqrt{2\pi}}e^{-\frac{\varepsilon_i^2}{2}}) = \sum_{i=1}^mln\frac{1}{\sqrt{2\pi}}-\frac{1}{2}\sum_{i=1}^m\varepsilon_i^2 J(ω)=ln(L(ω))=i=1mln(2π 1e2εi2)=i=1mln2π 121i=1mεi2

去掉无关常数项得:
J ( ω ) = l n ( L ( ω ) ) = − 1 2 ∑ i = 1 m ε i 2 = − 1 2 ∑ i = 1 m ( y i − f ( x i ) ) 2 J(\omega)=ln(L(\omega))=-\frac{1}{2}\sum_{i=1}^m\varepsilon_i^2=-\frac{1}{2}\sum_{i=1}^m(y_i-f(x_i))^2 J(ω)=ln(L(ω))=21i=1mεi2=21i=1m(yif(xi))2

要使 L ( ω ) L(\omega) L(ω)(概率)最大,即 J ( ω ) J(\omega) J(ω)最大,则使下面多项式结果最小即可:
∑ i = 1 m ( y i − f ( x i ) ) 2 \sum_{i=1}^m(y_i-f(x_i))^2 i=1m(yif(xi))2

上述结果表明:最大似然估计(似然函数)等价于最小二乘法,这也表明了以误差平方和作为最佳拟合准则的合理性

因此我们可以说,最小二乘法其实就是误差满足正态(高斯)分布的极大似然估计,最小化误差平方本质上等同于在误差服从正态(高斯)分布的假设下的最大似然估计

4、正态分布(高斯分布)


正态分布(Normal Distribution),也称高斯分布(Gaussian Distribution),其曲线呈钟型,两头低,中间高,左右对称,因此也被称为钟形曲线

定义:若连续型随机变量x有如下形式的密度函数:

在这里插入图片描述
则称x服从参数为 ( μ , σ 2 ) (\mu,\sigma^2) (μ,σ2)的正态分布(Normal Distribution),记为 X − N ( μ , σ 2 ) X-N(\mu,\sigma^2) XN(μ,σ2)

在这里插入图片描述

性质

  • 关于 x = μ x=μ x=μ 对称,在 x = μ x=μ x=μ 处达到最大值 1 2 π σ \frac{1}{\sqrt{2\pi}\sigma} 2π σ1,越远离 μ μ μ,密度函数值越小
  • 数学期望(均值)为 μ μ μ,标准差为 σ \sigma σ,方差为 σ 2 \sigma^2 σ2

标准正态分布:又称 μ μ μ分布,是以0为均值(数学期望)、以1为标准差的正态分布,记为 X − N ( 0 , 1 ) X-N(0,1) XN(0,1),密度函数:

在这里插入图片描述



参考文章:
https://blog.csdn.net/MoreAction_/article/details/106443383
https://blog.csdn.net/MoreAction_/article/details/121591653
https://blog.csdn.net/qq_46092061/article/details/119136137

相关文章:

最小二乘法简介

最小二乘法简介 1、背景描述2、最小二乘法2.1、最小二乘准则2.2、最小二乘法 3、最小二乘法与线性回归3.1、最小二乘法与线性回归3.2、最小二乘法与最大似然估计 4、正态分布&#xff08;高斯分布&#xff09; 1、背景描述 在工程应用中&#xff0c;我们通常会用一组观测数据去…...

mathtype公式章节编号

1. word每章标题后插入章节符 如果插入后显示章节符&#xff0c;需要进行隐藏 开始->样式->MTEquationSection->修改样式->字体&#xff0c;勾选隐藏 2. 设置mathtype公式编号格式 插入编号->格式化->设置格式...

医学实验室检验科LIS信息系统源码

实验室信息管理是专为医院检验科设计的一套实验室信息管理系统&#xff0c;能将实验仪器与计算机组成网络&#xff0c;使病人样品登录、实验数据存取、报告审核、打印分发&#xff0c;实验数据统计分析等繁杂的操作过程实现了智能化、自动化和规范化管理。 实验室管理系统功能介…...

无需改动现有网络,企业高速远程访问内网Linux服务器

某企业为数据治理工具盒厂商&#xff0c;帮助客户摆脱数据问题困扰、轻松使用数据&#xff0c;使得客户可以把更多精力投入至数据应用及业务赋能&#xff0c;让数据充分发挥其作为生产要素的作用。 目前&#xff0c;该企业在北京、南京、西安、武汉等地均设有产研中心&#xff…...

Opencv入门五 (显示图片灰度值)

源码如下&#xff1a; #include <opencv2/opencv.hpp> int main(int argc, char** argv) { cv::Mat img_rgb, img_gry, img_cny; cv::namedWindow("Example Gray",cv::WINDOW_AUTOSIZE); cv::namedWindow("Example Canny", cv::WINDOW_…...

STM32F4 HAL流水灯Proteus仿真

源码下载&#xff1a;https://download.csdn.net/download/zlkk00/88654405...

【K8s】4# 使用kuboard部署开源项目实战

文章目录 1.开源项目2.实战2.1.创建spring-blade命名空间2.2.导入 spring-blade 到 K8S 名称空间2.3.设置存储卷参数2.4.调整节点端口2.5.确认导入2.6.查看集群2.7.导入配置到 nacos2.8.启动微服务工作负载 3.验证部署结果3.1.Nacos3.2. web 4.问题汇总Q1&#xff1a;Nacos启动…...

Mysql数据库(1)

目录 一.操作系统 二.数据库mysql 对象&#xff1a; 库 -> 表 -> 二维表格形式的结构化数据 常用的数据类型&#xff1a; MySQL的六大约束属性&#xff1a; SQL语句 &#xff1a;DDL DML DQL DCL 三.mysql的基础操作 查看当前服务器中的数据库 查看当前服务器中…...

网络安全-API接口安全

本文为作者学习文章&#xff0c;按作者习惯写成&#xff0c;如有错误或需要追加内容请留言&#xff08;不喜勿喷&#xff09; 本文为追加文章&#xff0c;后期慢慢追加 API接口概念 API接口&#xff08;Application Programming Interface&#xff0c;应用程序编程接口&…...

flutter学习-day16-自定义组件

&#x1f4da; 目录 介绍组合多个组件自绘组件 Custompaint绘制边界RepaintBoundaryCustomPainter与Canvas画笔Paint绘制组件例子 本文学习和引用自《Flutter实战第二版》&#xff1a;作者&#xff1a;杜文 1. 介绍 当Flutter提供的现有组件无法满足我们的需求&#xff0c;或…...

XML简介 (EXtensible Markup Language)

XML简介 (EXtensible Markup Language) 可扩展标记语言 特点 XML与操作系统、编程语言的开发平台无关实现不同系统之间的数据交换 作用 数据交互配置应用程序和网站Ajax基石 XML标签 XML文档内容由一系列标签元素组成 <元素名 属性名"属性值">元素内容&l…...

基于Spring自动注入快速实现策略模式+工厂模式优化过多的if..else

一、策略模式 1.1策略模式定义 在策略模式&#xff08;Strategy Pattern&#xff09;中一个类的行为或其算法可以在运行时更改。这种类型的设计模式属于行为型模式。 在策略模式定义了一系列算法或策略&#xff0c;并将每个算法封装在独立的类中&#xff0c;使得它们可以互相…...

安装vcpkg管理opencv的安装+MFC缺失的解决

第一步&#xff0c;出现#include没有办法找到opencv头文件的问题&#xff0c;无法解决 在VC的提示下&#xff0c;安装了vcpkg&#xff0c;然后用vcpkg命令来帮助安装opencv&#xff0c;过程十分顺利。 1. cmd 到命令行窗口&#xff1b; 2. 建立src文件夹&#xff0c;并进入…...

了解树和学习二叉树

1.树 1.1 概念 树是一种 非线性 的数据结构&#xff0c;它是由 n &#xff08; n>0 &#xff09;个有限结点组成一个具有层次关系的集合。 把它叫做树是因为它看 起来像一棵倒挂的树&#xff0c;也就是说它是根朝上&#xff0c;而叶朝下的 。 注意&#xff1a;树形结构中…...

Spring Boot学习随笔- 拦截器实现和配置(HandlerInterceptor、addInterceptors)、jar包部署和war包部署

学习视频&#xff1a;【编程不良人】2021年SpringBoot最新最全教程 第十三章、拦截器 拦截器 &#xff1a;Interceptor 拦截 中断 类似于javaweb中的Filter&#xff0c;不过没有Filter那么强大 作用 Spring MVC的拦截器是一种用于在请求处理过程中进行预处理和后处理的机制。拦…...

Pipelined-ADC设计二——结构指标及非理想因素(Part2)

接上文&#xff0c;本章将两个比较重要的非理想因素&#xff0c;因此各项指标制定。后续会对常见的非理想因素给出常见的解决方法&#xff0c;以及设计所采用的方法。 2.2.7. 比较器失调 在流水线 ADC 中&#xff0c;比较器的主要误差来源就是比较器失调&#xff0c;称为失调误…...

Ubuntu 常用命令之 clear 命令用法介绍

&#x1f4d1;Linux/Ubuntu 常用命令归类整理 clear命令在Ubuntu系统下用于清除终端屏幕的内容。这个命令没有任何参数&#xff0c;它的主要作用就是清理终端屏幕上的所有信息&#xff0c;使得屏幕看起来像是新打开的一样。 使用clear命令非常简单&#xff0c;只需要在终端中…...

【JAVA面试题】什么是对象锁?什么是类锁?

&#x1f34e; 个人博客 &#xff1a;个 人 主 页 &#x1f3c6;个人专栏&#xff1a;多线程JAVA ⛳️ 功 不 唐 捐 &#xff0c;玉 汝 于 成 目录 前言 回答 对象锁&#xff08;Object Lock&#xff09;&#xff1a; 类锁&#xff08;Class Lock&#xff09;&#xff1…...

飞天使-k8s知识点5-kubernetes基础名词扫盲

文章目录 deploymentspodNodeserviceskubectl 实现应用伸缩kubectl 实现滚动更新kubernetes架构 deployments 中文文档 http://docs.kubernetes.org.cn/251.htmldeployment是用来创建和更新应用的&#xff0c;master 会负责将创建好的应用实例调度到集群中的各个节点 应用实例…...

【视觉实践】使用Mediapipe进行目标检测:杯子检测和椅子检测实践

目录 1 Mediapipe 2 Solutions 3 安装mediapipe 4 实践 1 Mediapipe Mediapipe是google的一个开源项目,可以提供开源的、跨平台的常用机器学习(machine learning,ML)方案。MediaPipe是一个用于构建机器学习管道</...

基于算法竞赛的c++编程(28)结构体的进阶应用

结构体的嵌套与复杂数据组织 在C中&#xff0c;结构体可以嵌套使用&#xff0c;形成更复杂的数据结构。例如&#xff0c;可以通过嵌套结构体描述多层级数据关系&#xff1a; struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...

Admin.Net中的消息通信SignalR解释

定义集线器接口 IOnlineUserHub public interface IOnlineUserHub {/// 在线用户列表Task OnlineUserList(OnlineUserList context);/// 强制下线Task ForceOffline(object context);/// 发布站内消息Task PublicNotice(SysNotice context);/// 接收消息Task ReceiveMessage(…...

MFC内存泄露

1、泄露代码示例 void X::SetApplicationBtn() {CMFCRibbonApplicationButton* pBtn GetApplicationButton();// 获取 Ribbon Bar 指针// 创建自定义按钮CCustomRibbonAppButton* pCustomButton new CCustomRibbonAppButton();pCustomButton->SetImage(IDB_BITMAP_Jdp26)…...

【HarmonyOS 5.0】DevEco Testing:鸿蒙应用质量保障的终极武器

——全方位测试解决方案与代码实战 一、工具定位与核心能力 DevEco Testing是HarmonyOS官方推出的​​一体化测试平台​​&#xff0c;覆盖应用全生命周期测试需求&#xff0c;主要提供五大核心能力&#xff1a; ​​测试类型​​​​检测目标​​​​关键指标​​功能体验基…...

CentOS下的分布式内存计算Spark环境部署

一、Spark 核心架构与应用场景 1.1 分布式计算引擎的核心优势 Spark 是基于内存的分布式计算框架&#xff0c;相比 MapReduce 具有以下核心优势&#xff1a; 内存计算&#xff1a;数据可常驻内存&#xff0c;迭代计算性能提升 10-100 倍&#xff08;文档段落&#xff1a;3-79…...

vue3 定时器-定义全局方法 vue+ts

1.创建ts文件 路径&#xff1a;src/utils/timer.ts 完整代码&#xff1a; import { onUnmounted } from vuetype TimerCallback (...args: any[]) > voidexport function useGlobalTimer() {const timers: Map<number, NodeJS.Timeout> new Map()// 创建定时器con…...

什么是Ansible Jinja2

理解 Ansible Jinja2 模板 Ansible 是一款功能强大的开源自动化工具&#xff0c;可让您无缝地管理和配置系统。Ansible 的一大亮点是它使用 Jinja2 模板&#xff0c;允许您根据变量数据动态生成文件、配置设置和脚本。本文将向您介绍 Ansible 中的 Jinja2 模板&#xff0c;并通…...

Maven 概述、安装、配置、仓库、私服详解

目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...

OD 算法题 B卷【正整数到Excel编号之间的转换】

文章目录 正整数到Excel编号之间的转换 正整数到Excel编号之间的转换 excel的列编号是这样的&#xff1a;a b c … z aa ab ac… az ba bb bc…yz za zb zc …zz aaa aab aac…; 分别代表以下的编号1 2 3 … 26 27 28 29… 52 53 54 55… 676 677 678 679 … 702 703 704 705;…...

git: early EOF

macOS报错&#xff1a; Initialized empty Git repository in /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/.git/ remote: Enumerating objects: 2691797, done. remote: Counting objects: 100% (1760/1760), done. remote: Compressing objects: 100% (636/636…...