最小二乘法及参数辨识

文章目录

  • 一、最小二乘法
    • 1.1 定义
    • 1.2 SISO系统运用最小二乘估计进行辨识
    • 1.3 几何解释
    • 1.4 最小二乘法性质
  • 二、加权最小二乘法
  • 三、递推最小二乘法
  • 四、增广最小二乘法

一、最小二乘法

1.1 定义

1974年高斯提出的最小二乘法的基本原理是未知量的最可能值是使各项实际观测值和计算值之间差的平方乘以其精确度的数值以后的和为最小。
z ( k ) = y ( k ) + v ( k ) z(k)=y(k)+v(k) z(k)=y(k)+v(k)
z ( k ) z(k) z(k)为观测值, y ( k ) y(k) y(k)为计算值, v ( k ) v(k) v(k)误差。
最小二乘法为 m i n ∑ k = 1 m w ( k ) ∣ z ( k ) − y ( k ) ∣ 2 min \ \sum_{k=1}^mw(k)|z(k)-y(k)|^2 min k=1mw(k)z(k)y(k)2
w(k)为精确度。

通过一个例子来理解最小二乘法。
通过试验确定热敏电阻阻值和温度间的关系如下表所示:

t(℃) t 1 t_1 t1 t 2 t_2 t2 ⋯ \cdots t N − 1 t_{N-1} tN1 t N t_N tN
R( Ω \Omega Ω) R 1 R_1 R1 R 2 R_2 R2 ⋯ \cdots R N − 1 R_{N-1} RN1 R N R_N RN

在这里插入图片描述
用直线 y = a + b t y=a+bt y=a+bt拟合该曲线,a和b为待估计参数。
每次测量总是存在随机误差。
y i = R i + v i y_i=R_i+v_i yi=Ri+vi

当采用每次测量的随机误差的平方和最小时,即
J m i n = ∑ i = 1 N v i 2 = ∑ i = 1 N [ R i − ( a + b t i ) ] 2 J_{min}=\sum_{i=1}^Nv_i^2=\sum_{i=1}^N[R_i-(a+bt_i)]^2 Jmin=i=1Nvi2=i=1N[Ri(a+bti)]2
,平方运算又称二乘,而且又是按照J最小来估计a和b的,称这种方法为最小二乘估计算法,简称最下二乘法。

为什么用平方呢?因为平方可以求导。


利用最小二乘法求取模型参数
若使得J最小,利用求极值的方法得

整理得

解方程组得


1.2 SISO系统运用最小二乘估计进行辨识

对于SISO系统,被辨识模型传递函数为:

对其离散化,对应的差分方程为

若考虑噪声影响

式中, z ( k ) z(k) z(k)为系统输出量的第 k k k次观测值; y ( k ) y(k) y(k)为系统输出量的第 k k k次真值; u ( k ) u(k) u(k)为系统的第 k k k个输入值; v ( k ) v(k) v(k)是均值为0的随机噪声。

定义

z ( k ) z(k) z(k)可写为
z ( k ) = h ( k ) θ + v ( k ) z(k)=h(k)\theta+v(k) z(k)=h(k)θ+v(k)
式中, θ \theta θ为待估计参数。

k = 1 , 2 , ⋯ , m k=1,2,\cdots,m k=1,2,,m,则有

最小二乘的思想就是寻找一个 θ \theta θ的估计值 θ ^ \hat\theta θ^,使得各次测量的 Z i ( i = 1 , ⋯ , m ) Z_i(i=1,\cdots,m) Zi(i=1,,m)与由估计 θ ^ \hat\theta θ^确定的量测估计 Z i ^ = H i θ ^ \hat{Z_i}=H_i\hat\theta Zi^=Hiθ^之差的平方和最小,即

根据极值定理:

如果 H m H_m Hm的行数大于等于行数,即 m ⩾ 2 n m\geqslant2n m2n H m T H m H_m^TH_m HmTHm满秩,即 r a n k ( H m T H m ) = 2 n rank(H_m^TH_m)=2n rank(HmTHm)=2n,则 ( H m T H m ) − 1 (H_m^TH_m)^{-1} (HmTHm)1存在。则 θ \theta θ的最小二乘估计为
θ ^ = ( H m T H m ) − 1 H m T Z m \hat\theta=(H_m^TH_m)^{-1}H_m^TZ_m θ^=(HmTHm)1HmTZm

1.3 几何解释

在这里插入图片描述
H m θ ^ H_m\hat\theta Hmθ^应该等于 Z m Z_m Zm h ( 1 ) , h ( 2 ) , ⋯ , h ( m ) {h(1),h(2),\cdots,h(m)} h(1),h(2),,h(m)的张成空间的投影。

1.4 最小二乘法性质

  1. 最小二乘估计是无偏估计
    如果参数估计的数学期望等于参数的真值,则称估计是无偏的。
    E ( θ ^ ) = 0 或 E ( θ ~ ) = 0 E(\hat\theta)=0或E(\tilde\theta)=0 E(θ^)=0E(θ~)=0
  2. 最小二乘估计是有效估计
    有效估计就是具有最小方差的估计。
    E ( θ ~ θ ~ T ) = ( H m T H m ) − 1 H m T R H m ( H m T H m ) − 1 最小 E(\tilde\theta\tilde\theta^T)=(H_m^TH_m)^{-1}H_m^TRH_m(H_m^TH_m)^{-1}最小 E(θ~θ~T)=(HmTHm)1HmTRHm(HmTHm)1最小
  3. 最小二乘估计是一致估计
    如果随着测量次数 m m m的增加, θ ^ m \hat\theta_m θ^m依概率收敛于真值 θ \theta θ,则称 θ ^ m \hat\theta_m θ^m θ \theta θ的一致估计。
    l i m m → ∞ p ( ∣ θ ^ m − θ ∣ > ε ) = 0 lim_{m\to \infty}p(|\hat\theta_m-\theta|>\varepsilon)=0 limmp(θ^mθ>ε)=0

二、加权最小二乘法

一般最小二乘估计精度不高的原因之一是对测量数据同等对待;由于各次测量数据很难在相同的条件下获得的,因此存在有的测量值置信度高,有的测量值置信度低的问题。对不同置信度的测量值采用加权的办法分别对待,置信度高的,权重取得大些;置信度低的,权重取的小些。

式中, W m W_m Wm为加权矩阵,它是一个对称正定矩阵,通常取为对角矩阵,即 W m = d i a g [ w ( 1 ) w ( 2 ) ⋯ w ( m ) ] W_m=diag[w(1)\ w(2)\cdots \ w(m)] Wm=diag[w(1) w(2) w(m)]

θ ^ = ( H m T W m H m ) − 1 H m T W m Z m \hat\theta=(H_m^TW_mH_m)^{-1}H_m^TW_mZ_m θ^=(HmTWmHm)1HmTWmZm
如果 W m = R − 1 W_m=R^{-1} Wm=R1
θ ^ = ( H m T R − 1 H m ) − 1 H m T R − 1 Z m \hat\theta=(H_m^TR^{-1}H_m)^{-1}H_m^TR^{-1}Z_m θ^=(HmTR1Hm)1HmTR1Zm
又称马尔可夫估计。
马尔可夫估计的均方误差为
E ( θ ~ θ ~ T ) = ( H m T R − 1 H m ) − 1 E(\tilde\theta\tilde\theta^T)=(H_m^TR^{-1}H_m)^{-1} E(θ~θ~T)=(HmTR1Hm)1
马尔可夫估计的均方误差比任何其他加权最小二乘估计的均方误差都要小,所以是加权最小二乘估计中的最优者。

加权最小二乘估计也满足无偏性、有效性、一致性。

三、递推最小二乘法

当前估计值 θ ^ ( k ) \hat\theta(k) θ^(k)=上次估计值 θ ^ ( k − 1 ) \hat\theta(k-1) θ^(k1)+修正项

根据加权最小二乘法,利用 m 次测量数据所得到的估值
θ ^ = ( H m T W m H m ) − 1 H m T W m Z m \hat\theta=(H_m^TW_mH_m)^{-1}H_m^TW_mZ_m θ^=(HmTWmHm)1HmTWmZm
当新获得一对输入、输出数据时
z ( m + 1 ) = h ( m + 1 ) θ + v ( m + 1 ) z(m+1)=h(m+1)\theta+v(m+1) z(m+1)=h(m+1)θ+v(m+1)
利用m+1次输入、输出数据,得到的方程为 Z m + 1 = H m + 1 θ + V m + 1 Z_{m+1}=H_{m+1}\theta+V_{m+1} Zm+1=Hm+1θ+Vm+1
θ ^ m + 1 = ( H m + 1 T W m + 1 H m + 1 ) − 1 H m + 1 T W m + 1 Z m + 1 \hat\theta_{m+1}=(H_{m+1}^TW_{m+1}H_{m+1})^{-1}H_{m+1}^TW_{m+1}Z_{m+1} θ^m+1=(Hm+1TWm+1Hm+1)1Hm+1TWm+1Zm+1
W m + 1 = [ W m 0 0 w ( m + 1 ) ] W_{m+1}=\begin{bmatrix} W_m & 0 \\ 0 & w(m+1) \end{bmatrix} Wm+1=[Wm00w(m+1)]
如果设 P m = [ H m T W m H m ] − 1 P_m=[H_m^TW_mH_m]^{-1} Pm=[HmTWmHm]1
P m + 1 = [ H m + 1 T W m + 1 H m + 1 ] − 1 P_{m+1}=[H_{m+1}^TW_{m+1}H_{m+1}]^{-1} Pm+1=[Hm+1TWm+1Hm+1]1
则有 θ ^ m = P m H m T W m Z m \hat\theta_m=P_mH_m^TW_mZ_m θ^m=PmHmTWmZm
θ ^ m + 1 = P m + 1 H m + 1 T W m + 1 Z m + 1 \hat\theta_{m+1}=P_{m+1}H_{m+1}^TW_{m+1}Z_{m+1} θ^m+1=Pm+1Hm+1TWm+1Zm+1


P ( m ) − P ( m + 1 ) ⩾ 0 P(m)-P(m+1)\geqslant0 P(m)P(m+1)0,随着递推次数的增加, P ( m ) P(m) P(m) K ( m ) K(m) K(m)逐渐减小,直至趋于0。数据饱和后,由于递推计算的舍入误差,不仅新的观测值对参数估计不起修正作用,反而使 P ( m ) P(m) P(m)失去正定性,导致估计误差增加。
当系统参数随时间变化时,因新数据被旧数据淹没,递推算法无法直接使用。为适应时变参数的情况,修改算法时旧数据的权重(降低),增加新数据的作用。
主要方法有数据窗法和Kalman滤波法。

四、增广最小二乘法

对比:

方法优点缺点
一般最小二乘法白噪声可得无偏渐进无偏估计;算法简单可靠;计算量小;一次即可完成算法,适合离线辨识当矩阵维度增加时,矩阵求逆运算会急剧增加,给计算机的运算速度和存储量带来负担
递推最小二乘法可以减小数据存储量,避免矩阵求逆,减少计算量会出现数据饱和现象
增广最小二乘法将噪声模型的辨识同时考虑进去当数据长度较大时,辨识精度低于极大似然法

参考:
[1]刘金琨,沈晓蓉,赵龙.系统辨识理论及MATLAB仿真[M].电子工业出版社,2013.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/143029.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[数据结构]—带头双向循环链表——超详解

💓作者简介🎉:在校大二迷茫大学生 💖个人主页🎉:小李很执着 💗系列专栏🎉:数据结构 每日分享✨:旅行是为了迷路,迷路是为了遇上美好❣️❣️❣️ …

XoT:一种新的大语言模型的提示技术

这是微软在11月最新发布的一篇论文,题为“Everything of Thoughts: Defying the Law of Penrose Triangle for Thought Generation”,介绍了一种名为XOT的提示技术,它增强了像GPT-3和GPT-4这样的大型语言模型(llm)解决复杂问题的潜力。 当前提…

如何让组织的KPI成为敏捷转型的推手而不是杀手 | IDCF

作者:IDCF学员 伍雪锋 某知名通讯公司首席敏捷教练,DevOps布道者。2020年到2021年小100人团队从0-1初步完成敏捷转型,专注传统制造业的IT转型,研发效能提升。 一、前言 在公司我们常常听见这么一个流传的故事,只要…

HCIA-经典综合实验(二)

经典综合实验(二) 实验拓扑配置步骤配置Eth-Trunk聚合链路第一步 配置二层VLAN第二步 配置MSTP生成树第三步 配置相关IP地址第四步 配置DHCP及DHCP中继第五步 配置三层的网关冗余协议 VRRP及OSPF第六步 配置静态路由,NAT地址转换及其他配置完善 配置验证…

Linux Ubuntu系统中添加磁盘

在学习与训练linux系统的磁盘概念、文件系统等,需要增加磁盘、扩展现有磁盘容量等,对于如何添加新的磁盘,我们在“Linux centos系统中添加磁盘”中对centos7/8版本中如何添加、查看、删除等,作了介绍,而对Ubuntu版本中…

解决k8s通过traefik暴露域名失败并报错:Connection Refused的问题

我敢说本篇文章是网上为数不多的解决traefik暴露域名失败问题的正确文章。 我看了网上太多讲述traefik夸夸其谈的文章了,包含一大堆复制粘贴的水文和还有什么所谓“阿里技术专家”的文章,讲的全都是错的!基本没有一个能说到点子上去&#xf…

解决:element ui表格表头自定义输入框单元格el-input不能输入问题

表格表头如图所示&#xff0c;有 40-45&#xff0c;45-50 数据&#xff0c;且以输入框形式呈现&#xff0c;现想修改其数据或点击右侧加号增加新数据编辑。结果不能输入&#xff0c;部分代码如下 <template v-if"columnData.length > 0"><el-table-colu…

八股文-面向对象的理解

近年来&#xff0c;IT行业的环境相较以往显得有些严峻&#xff0c;因此一直以来&#xff0c;我都怀有一个愿望&#xff0c;希望能够创建一个分享面试经验的网站。由于个人有些懒惰&#xff0c;也较为喜欢玩乐&#xff0c;导致计划迟迟未能实现。然而&#xff0c;随着年底的临近…

智慧城市项目建设介绍

1. 项目建设背景 随着城市化进程的加速&#xff0c;城市发展面临着诸多挑战&#xff0c;如环境污染、城镇综合管理、经济发展布局等。为了应对这些挑战&#xff0c;智慧城市应运而生&#xff0c;成为城市发展的重要方向。智慧城市通过运用信息技术和智能化技术&#xff0c;实…

mmdetection安装与训练

一、什么是mmdetection 商汤科技&#xff08;2018 COCO 目标检测挑战赛冠军&#xff09;和香港中文大学最近开源了一个基于Pytorch实现的深度学习目标检测工具箱mmdetection&#xff0c;支持Faster-RCNN&#xff0c;Mask-RCNN&#xff0c;Fast-RCNN等主流的目标检测框架&#…

Linux 图形界面配置RAID

目录 RAID 1 配置 RAID 5配置 , RAID 配置起来要比 LVM 方便&#xff0c;因为它不像 LVM 那样分了物理卷、卷组和逻辑卷三层&#xff0c;而且每层都需要配置。我们在图形安装界面中配置 RAID 1和 RAID 5&#xff0c;先来看看 RAID 1 的配置方法。 RAID 1 配置 配置 RAID 1…

OpenGL的学习之路-3

前面1、2介绍的都是glut编程 下面就进行opengl正是部分啦。 1.绘制点 #include <iostream> #include <GL/gl.h> #include <GL/glu.h> #include <GL/glut.h>void myMainWinDraw();int main(int argc,char** argv) {glutInit(&argc,argv);glutIni…

基于谐波参数空间的卷积神经网络自动三维牙齿分割

论文连接&#xff1a;https://www.sciencedirect.com/science/article/abs/pii/S1524070320300151 机构&#xff1a; a英国卡迪夫大学计算机科学与信息学院 b中国科学院大学北京 c中国科学院计算技术研究所北京 d深圳大数据研究院&#xff0c;深圳518172 代码链接&#x…

Window MongoDB安装

三种NOSQL的一种,Redis MongoDB ES 应用场景: 1.社交场景:使用Mongodb存储用户信息,以及用户发表的朋友圈信息,通过地理位置索引实现附近的人,地点等功能 2.游戏场景:使用Mongodb存储游戏用户信息,用户的装备,积分等直接以内嵌文档的形式存储,方便查询,高效率存储和访问…

保姆级vue-pdf的使用过程

第一步 引入vue-pdf npm install --save vue-pdf 第二步 按照需求我们慢慢进行 01.给你一个pdf文件的url&#xff0c;需要在页面渲染 代码 <template><div><pdfref"pdf":src"url"></pdf></div> </template> <…

灰度图处理方法

做深度学习项目图像处理的时候常常涉及到灰度图处理&#xff0c;这里对自己处理灰度图的方式做一个记录&#xff0c;后续有更新的话会在此更新 一&#xff0c;多维数组可视化 将多维数组可视化为灰度图 img_gray Image.fromarray(img, modeL) # 实现array到image的转换,m…

深度学习 机器视觉 车位识别车道线检测 - python opencv 计算机竞赛

0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; 深度学习 机器视觉 车位识别车道线检测 该项目较为新颖&#xff0c;适合作为竞赛课题方向&#xff0c;学长非常推荐&#xff01; &#x1f947;学长这里给一个题目综合评分(每项满分5分) …

使用 Electron 来替代本地调试线上代理的场景

Cookie Samesite 问题 https://developers.google.com/search/blog/2020/01/get-ready-for-new-samesitenone-secure?hlzh-cnhttps://www.chromium.org/updates/same-site/https://github.com/GoogleChromeLabs/samesite-exampleshttps://releases.electronjs.org/releases/s…

PieCloudDB Database 自研内存管理器 ASanAlloc:为产品质量保驾护航

内存管理是计算机科学中至关重要的一部分&#xff0c;它涉及到操作系统、硬件和软件应用之间的动态交互。有效的内存管理可以确保系统的稳定性和安全性&#xff0c;提高系统运行效率&#xff0c;帮助我们最大限度地利用有效的内存资源&#xff0c;合理分配和回收内存&#xff0…

【SQLite】的使用及指令| 编程操作(增删改查)

一、SQLite 使用和指令集 SQLite 的基本使用SQL 命令 二、常见的 SQL 数据类型 三、SQLite的命令用法 四、SQLite的编程操作 五、sqlite3_open函数 六、sqlite3_close函数 七、sqlite3_errcode函数 八、SQLite C Interface 九、sqlite3_exec函数 十、callback回调函数 十一、…