热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

最小二乘法的本质原理

最小二乘法的本质原理转自:http:blog.sina.com.cnsblog_5e6614220101ks63.html本文主要以最简单的二元线性函数为基础

最小二乘法的本质原理

  转自:http://blog.sina.com.cn/s/blog_5e6614220101ks63.html

    本文主要以最简单的二元线性函数为基础,阐述最小二乘法的原理,事实上,最小二乘法可以更广泛地应用于非线性方程中,但本文以介绍为主,希望能以最简单的形式,使读者能够掌握最小二乘法的意义。

在物理实验数据统计时,我们会记录一些数据,记做数据x和数据y。但是,在记录数据后,我们依然不知道x和y 的具体关系。例如,测算男人手掌面积和身高的关系,我们会得到两组数据,如图,

最小二乘法原理及极值点判定

               图1数据点分布

这并不是一条严格意义上的直线,但这些数据对于实验研究员来说,可以作为某种依据,从而判断出两种数据之间的关系。根据两个量的许多组观测数据来确定它们的函数曲线,这就是实验数据处理中的曲线拟合问题。

事实上,我们更关注的是如何才能找到这么一条漂亮的曲线。那么,找到这条曲线的方法称作“最小二乘法”。

曲线拟合中最基本和最常用的是直线拟合。设x和y之间的函数关系由直线方程

  y=ax+b给出。

式中有两个待定参数,b代表截距,a代表斜率。下面的问题在于,如何找到“最合适”的a和b使得尽可能多的数据落在或者更加靠近这条拟合出来的直线上。即数据对这条直线的逼近程度最佳。当然,当我们将直线拟合出来之后,就可以反过来进行预测了。所以说最小二乘法是很有用的一种测算方法。

实际上,我们并不关心x和y到底是多少,因为x和y是给定的,当然x和y与其本质的内在关系之间肯定存在误差。我们关心的是方程中的a和b,也就是说,在这个待定的方程中,a和b才是所求的变量,它们可以描述出x和y的关系。 所以我们接下来的任务就是找到一组最好的a和b。

我们对a和b的要求就是,使得所有x和y相对拟合直线的误差总和最小。也就是说,我们要考虑的是,要使这些数据点距离拟合直线的和最小,距离最短,这样就可以使得尽可能多的数据成为有效点。

接下来我们的工作就是,最小化误差了。

最小二成法就此登场。

最小二乘法名字的缘由有两个,一是我们要将误差最小化,二是我们将误差最小化的方法是使误差的平方和最小化。误差最小化的原因前已述及,用误差平方和最小化来约束误差的原因是要规避负数对计算的影响。

接下来我们要做的就是使误差的平方和最小了。

对试验数据最小二乘法原理及极值点判定,使得最小二乘法原理及极值点判定最小,根据二元函数取极值,可知,须最小二乘法原理及极值点判定成立,

则  最小二乘法原理及极值点判定

 

联立得最小二乘法原理及极值点判定

      最小二乘法原理及极值点判定  

 

接下来求解a和b,就可以了。

问题又来了,以上求极值的方法只能保证所求的点是驻点(临界点),我们知道,多元函数的驻点可以分为三类,即极小点、极大点和鞍点。

 

最小二乘法原理及极值点判定

             图2鞍点

最小二乘法原理及极值点判定 

             图3极小点

我们至此还不能说明这就是我们要找的最优解,因为驻点有可能是极小点也有可能是鞍点或者是极大点。所以我们接下来要证明所求是满足要求的极小点。

 

极值点的判定

 

设函数最小二乘法原理及极值点判定,假设a不为零,则

最小二乘法原理及极值点判定

  最小二乘法原理及极值点判定

  最小二乘法原理及极值点判定

这样,我们就把原式改写成了平方和/差的形式了。但我们还不知道到底是平方和还是平方差,这取决于平方项的系数。

下面分三种情况讨论:

若4ac-b^2<0&#xff0c;则二次项系数一正一负&#xff0c;临界点是鞍点。

若4ac-b^2&#61;0&#xff0c;则只有一个平方项&#xff0c;这就意味着函数临界点只受到一个方向的约束&#xff0c;另一个方向发生了退化&#xff0c;不起作用了&#xff0c;如图&#xff0c;

最小二乘法原理及极值点判定

      图4 退化后的极值点

若4ac-b^2>0&#xff0c;这时会有两个平方项的系数都是正&#xff0c;此时w必能取到极值。当a>0时取极大值&#xff1b;当a<0时取取极小值。

由于通常情况下&#xff0c;我们求解释不可能有如此规范的方程形式&#xff0c;所以我们要引入二阶导数&#xff0c;再用以上方法判断临界点的类型。

(1) 二元函数的极值一定在临界点和不可导取得。对于不可导点&#xff0c;难以判断是否是极值点&#xff1b;对于驻点可用极值的充分条件判定。

(2)二元函数取得极值的必要条件&#xff1a; 设最小二乘法原理及极值点判定在点最小二乘法原理及极值点判定处可微分且在点最小二乘法原理及极值点判定处有极值&#xff0c;则最小二乘法原理及极值点判定&#xff0c;最小二乘法原理及极值点判定&#xff0c;即最小二乘法原理及极值点判定是驻点。

(3) 二元函数取得极值的充分条件&#xff1a;设最小二乘法原理及极值点判定最小二乘法原理及极值点判定的某个领域内有连续上二阶偏导数&#xff0c;且最小二乘法原理及极值点判定最小二乘法原理及极值点判定&#xff0c;令最小二乘法原理及极值点判定&#xff0c;最小二乘法原理及极值点判定&#xff0c;最小二乘法原理及极值点判定&#xff0c;则

最小二乘法原理及极值点判定且 A<0时&#xff0c;f最小二乘法原理及极值点判定为极大值&#xff1b;

最小二乘法原理及极值点判定且A>0&#xff0c;f最小二乘法原理及极值点判定为极小值&#xff1b;

最小二乘法原理及极值点判定时&#xff0c;最小二乘法原理及极值点判定是鞍点&#xff1b;

当B2&#xff0d;AC &#61; 0时&#xff0c;函数z &#61; f (x, y)在点最小二乘法原理及极值点判定可能有极值&#xff0c;也可能没有极值&#xff0c;这里不做讨论了。

最后&#xff0c;我们将原始方法和二阶导方法做一个联系&#xff0c;事实上&#xff0c;二阶导的方法是原始方法的进化版本。

最小二乘法原理及极值点判定求导&#xff0c;得

 

最小二乘法原理及极值点判定

最小二乘法原理及极值点判定

最小二乘法原理及极值点判定
最小二乘法原理及极值点判定

最小二乘法原理及极值点判定
    将求二阶导方法中的A、B、C与原始方法中的a、b、c建立联系&#xff0c;得

A&#61;2a

B&#61;b

C&#61;2c

从而得到AC&#61;4ac-b^2&#xff0c;可见两种方法等效。


转载于:https://www.cnblogs.com/Baron-Lu/p/9878693.html


推荐阅读
  • 本题探讨了在一个有向图中,如何根据特定规则将城市划分为若干个区域,使得每个区域内的城市之间能够相互到达,并且划分的区域数量最少。题目提供了时间限制和内存限制,要求在给定的城市和道路信息下,计算出最少需要划分的区域数量。 ... [详细]
  • 本文详细探讨了HTML表单中GET和POST请求的区别,包括它们的工作原理、数据传输方式、安全性及适用场景。同时,通过实例展示了如何在Servlet中处理这两种请求。 ... [详细]
  • 在现代Web应用中,当用户滚动到页面底部时,自动加载更多内容的功能变得越来越普遍。这种无刷新加载技术不仅提升了用户体验,还优化了页面性能。本文将探讨如何实现这一功能,并介绍一些实际应用案例。 ... [详细]
  • 解决SVN图标显示异常问题的综合指南
    本文详细探讨了SVN图标无法正常显示的问题,并提供了多种有效的解决方案,涵盖不同环境下的具体操作步骤。通过本文,您将了解如何排查和修复这些常见的SVN图标显示故障。 ... [详细]
  • 磁盘健康检查与维护
    在计算机系统运行过程中,硬件或电源故障可能会导致文件系统出现异常。为确保数据完整性和系统稳定性,定期进行磁盘健康检查至关重要。本文将详细介绍如何使用fsck和badblocks工具来检测和修复文件系统及硬盘扇区的潜在问题。 ... [详细]
  • 在跨浏览器开发中,一个常见的问题是关于如何在鼠标悬停时显示图片提示信息。本文深入探讨了 IE 浏览器对 IMG 元素 alt 属性的特殊处理,并提供了最佳实践建议。 ... [详细]
  • JavaScript 基础语法指南
    本文详细介绍了 JavaScript 的基础语法,包括变量、数据类型、运算符、语句和函数等内容,旨在为初学者提供全面的入门指导。 ... [详细]
  • 自 Node.js 6.3 版本起,调试功能已内置在核心模块中,无需额外安装 node-inspector 等工具。通过简单的命令即可启动调试模式,并利用 Chrome 浏览器进行高效的代码调试。 ... [详细]
  • 本文探讨了在使用Selenium进行自动化测试时,由于webdriver对象实例化位置不同而导致浏览器闪退的问题,并提供了详细的代码示例和解决方案。 ... [详细]
  • 给定行数 numRows,生成帕斯卡三角形的前 numRows 行。例如,当 numRows 为 5 时,返回的结果应为:[[1], [1, 1], [1, 2, 1], [1, 3, 3, 1], [1, 4, 6, 4, 1]]。 ... [详细]
  • 本文介绍如何将自定义项目设置为Tomcat的默认访问项目,使得通过IP地址访问时直接展示该自定义项目。提供了三种配置方法:修改项目路径、调整配置文件以及使用WAR包部署。 ... [详细]
  • 本文介绍了一家大型电信公司在SOA/BPM基础设施项目中采用的版本控制和分支管理策略。自项目启动以来,团队通过定义详细的命名约定、测试流程和分支规则,确保了项目的顺利进行并成功投入生产。 ... [详细]
  • 本文探讨了从传统SSM(Spring + Spring MVC + MyBatis)架构到现代化Spring Boot框架的转变过程,详细分析了两者之间的差异和改进。文章结合图表展示了技术演进的关键节点,帮助读者更好地理解这一重要变革。 ... [详细]
  • 比较源文件与备份目录的差异
    本文介绍了如何有效对比源文件和备份目录之间的差异,确保数据完整性和一致性。文章提供了详细的步骤和工具推荐,帮助用户快速识别并解决潜在问题。 ... [详细]
  • 解决Anaconda安装TensorFlow时遇到的TensorBoard版本问题
    本文介绍了在使用Anaconda安装TensorFlow时遇到的“Could not find a version that satisfies the requirement tensorboard”错误,并提供详细的解决方案,包括创建虚拟环境和配置PyCharm项目。 ... [详细]
author-avatar
sunsijia
业精于勤荒于嬉
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有