假设

我们要求解一个方程AX=0AX=0AX=0
其中,A是一个n∗mn*mn∗m的矩阵,X是一个m∗1m*1m∗1的向量
一般情况下,n>>m,这就是一个超定方程了,理论上无解,但是我们可以求得最小二乘意义下的解

求解过程

min∣∣AX∣∣22min||AX||^2_2min∣∣AX∣∣22​


∣∣AX∣∣22=(AX)T(AX)=XTATAX||AX||^2_2=(AX)^T(AX)=X^TA^TAX∣∣AX∣∣22​=(AX)T(AX)=XTATAX
此时令B=ATAB=A^TAB=ATA,并且设B的特征值以及特征向量为λi,bi⃗\lambda_i,\vec{b_i}λi​,bi​​,此时可以得到几个结论

  1. X肯定可以表示为X=∑0mαibi⃗X= \sum_{0}^m{\alpha_i\vec{b_i}}X=∑0m​αi​bi​​,假设对应的特征值从大到小排列
  2. bi⃗×bj⃗={1,i=j0,i̸=j\vec{b_i}\times \vec{b_j}=\begin{cases} 1,i=j \\ 0,i\not=j \end{cases}bi​​×bj​​={1,i=j0,i̸​=j​

所以
XTATAX=XTBX=(∑0mαibi⃗)TB(∑0mαibi⃗)=(∑0mαibi⃗T)(∑0mαiλibi⃗)=∑0mαi2λi≥am2λmX^TA^TAX=X^TBX\\=(\sum_{0}^m{\alpha_i\vec{b_i}})^TB(\sum_{0}^m{\alpha_i\vec{b_i}}) \\=(\sum_{0}^m{\alpha_i\vec{b_i}^T})(\sum_{0}^m{\alpha_i\lambda_i\vec{b_i}}) \\=\sum_{0}^m{\alpha_i^2\lambda_i}\geq a_m^2\lambda_mXTATAX=XTBX=(0∑m​αi​bi​​)TB(0∑m​αi​bi​​)=(0∑m​αi​bi​​T)(0∑m​αi​λi​bi​​)=0∑m​αi2​λi​≥am2​λm​
当且仅当X=∑0mαibi⃗=αmbm⃗X= \sum_{0}^m{\alpha_i\vec{b_i}}=\alpha_m\vec{b_m}X=∑0m​αi​bi​​=αm​bm​​时等号成立。

由于方程AX=0,乘上任意系数都成立,所以X=bm⃗X=\vec{b_m}X=bm​​即可。

最小二乘法求解超定方程的原理相关推荐

  1. 超定方程的求解、最小二乘解、Ax=0、Ax=b的解,求解齐次方程组,求解非齐次方程组(推导十分详细)

    本篇主要介绍的是超定方程组的求解,如果你不想看繁琐的推导过程,你可以直接看红字部分的结论! 1. 齐次线性方程组 Ax = 0 对于方程Ax=0\bm A \bm x = 0Ax=0,在我们实际的使用 ...

  2. 用matlab解方程组例子,Matlab求解超定方程组实例

    Matlab求解超定方程组实例 对于超定方程组,特别是非线性方程组,可以用Matlab基于最小二乘算法来进行求解,例如,求解下列方程组: 一个三个未知数,九个方程的非线性方程组: cos(x3)*si ...

  3. 超定方程的最小二乘解的三维几何解释

    原始方程 Ax=bAx = bAx=b,解为 x=A−1bx = A^{-1}bx=A−1b,matlab描述 x = A\b 超定方程乘以 ATA^TAT 变为方阵 ATAx=ATbA^TAx = ...

  4. 如何求解二元一次不定方程的整数解

    这里讨论的二元一次不定方程专指ax+by=c(a*b≠0,a,b,c∈Z)-----① 定理一: 方程①有整数解的充分必要条件是(a,b)|c((a,b)即Gcd(a,b),下同) 定理二(裴蜀定理) ...

  5. 最小二乘以及最小二乘求解超定方程组最优解的推导

    ~~~~ 这里写自定义目录标题 采用求导的方法 采用投影矩阵的方法 举例实现 采用求导的方法 偶尔看到斯坦福吴恩达教授的机器学习第二节课,才明白了最小二乘的的推理过程,下面的推理看不懂的话,推荐去看一 ...

  6. 求解线性超定方程组的最小二乘解[n个未知数,大于n个方程组](附代码)

    本文针对n个未知数,大于n个方程组.求解未知数的问题,matlab代码. 一.首先,请注意,本文说的是线性超定方程组,方程组是线性的,不含有未知数的出发以及乘方. 求线性超定方程组,有这么几种方法: ...

  7. 适定、超定和欠定方程及压缩传感技术

    原文"适定.超定和欠定方程",链接http://blog.sina.com.cn/s/blog_4b700c4c0102e5v3.html. 不定方程 http://wenku.b ...

  8. 适定、超定和欠定方程的概念

    矩阵的每一行代表一个方程,m行代表m个线性联立方程. n列代表n个变量.如果m是独立方程数,根据m<n.m=n.m>n确定方程是 '欠定'.'适定' 还是 '超定'. 超定方程组:方程个数 ...

  9. 超定和欠定方程的概念

    矩阵的每一行代表一个方程,m行代表m个线性联立方程. n列代表n个变量.如果m是独立方程数,根据m<n.m=n.m>n确定方程是 '欠定'.'适定' 还是 '超定'. 超定方程组 :方程个 ...

  10. C++ 二元一次不定方程巧妙求解——运用扩展欧几里得算法

    前言 在关于数论的学习中,求解二元一次不定方程是很重要的,在学习求解二元一次不定方程之前,要先了解欧几里得算法和扩展欧几里得算法. 关于数论的学习 欧几里得算法 欧几里得算法就是辗转相除法,欧几里得算 ...

最新文章

  1. 意识到自己的无知这就是进步
  2. C++常用函数的使用方法小结
  3. jquery怎么判断不同的字显示不同的颜色_这个双十一,摄影师的显示器该换了,优派VP2785-2K显示器评测_显示器...
  4. Get shell By Powershell
  5. webpack 错误提示 Error: Can't resolve 'css-loader'或Error: Can't resolve 'style-loader'
  6. shell 字符串
  7. python的实例类方法、修饰器类方法、修饰器保护方法、修饰器静态方法中私有属性的区别和自定义property的读写方法
  8. as 与 is 的区别
  9. Python下载(Windows)
  10. 电力系统通信与网络技术/智能变电站个人总结
  11. CO-PA: 获利能力分析数据的传送(月末业务)
  12. 深入理解Linux 条件变量3:条件变量为什么要配合着锁使用?
  13. 第一天:什么是Flink、WordCount入门、Flink安装、并行度
  14. CentOS7中启动Chrome报错ERROR:zygote_host_impl_linux.cc
  15. C/C++函数传递二维数组
  16. C# 实现生成一维码、二维码
  17. Windows10家庭版 SMB共享文件 方法
  18. 基于DHCP和NAT的家庭网络设备间通信解决方案
  19. linux中more命令的意思,linux中的more命令的详细解释
  20. MySQL数据库账号划分及权限

热门文章

  1. sql server数据库《音乐网站》项目歌曲管理模块
  2. 170926_Spring Cloud 微服务实战(翟永超著) 读书笔记(三)_Eureka详解
  3. tpadmin文档 框架更新
  4. 车牌识别项目(3)sobel算法边缘检测
  5. deepin linux隐藏磁盘,Deepin 20下开机不自动挂载(隐藏)NTFS分区(Windows分区)的方法...
  6. PCB设计流程图 思路清晰远比卖力苦干重要
  7. 使用神经网络(Keras)完成对土壤的湿度估计
  8. MS17010(永恒之蓝)漏洞复现
  9. MATLAB——tiff文件数据读取,modis
  10. python画图——雪花(科赫曲线)