QR分解_矩阵谱分解例题

QR分解_矩阵谱分解例题病态矩阵测量是人类对居住的这个世界获取空间认识的一种手段,也是认识世界的一种活动。因此,在参与测量活动中,自然会遇到认识活动中的三种情况:a.很容易就发现了不同之处而将甲乙两事物区分开来;b.很容易

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

病态矩阵

测量是人类对居住的这个世界获取空间认识的一种手段,也是认识世界的一种活动。因此,在参与测量活动中,自然会遇到认识活动中的三种情况:a.很容易就发现了不同之处而将甲乙两事物区分开来;b.很容易就发现了相同之处而将甲乙两事物归于一类;c.难于将甲乙两事物区分开来,从而造成认识上的混淆,产生错误的结果。前两者比较易于处理,后者处理起来比较困难。例如,在实地上测量一个点的位置时,至少需要两个要素:或者两个角度,或者两条边长,或者一个角度和一条边长。把已知点视为观察点,将待定点视为目标点,从一个观察点出发,对于目标点形成一个视野。当仅从一个视野或者从两个很接近的视野观察目标时,所获得的关于目标的知识是极其不可靠的,且极为有限的。要获得可靠的知识,必须从至少两个明显不同的视野进行观察。同时,目标点与观察点之间则构成了一个认识系统。这个系统用数学语言表示出来,反应为矩阵。

但是,有时候在现实中的作业条件不允许我们有足够多的观察点供选择,使我们处于不利的位置,或者只能从很短的基线来观测很远的目标。此时,得到的认识系统则不够坚强,亦即该矩阵不能够将观测数据映射为可靠的结果。我们称此类矩阵为病态的。从几何意义上来说,相当于用于交会定点的直线之间的夹角太小。从向量线性关系的角度来看,相当于用于交会定点的向量之间接近于线性相关。这就是矩阵病态的本质。

另一方面,大家知道,任何观测数据都包含有误差,那是因为观测设备的分辨率与制造误差、观测者、观测环境等因素造成的。因此,这些误差也要通过矩阵来影响我们希望获得的结果。由于浮点数所引入的微小的量化误差,也会导致求逆结果的非常大误差。

当系统反应为病态矩阵时,微小的误差对结果将产生较大的影响。另一方面,当系统反应为良态矩阵时,同样大小的误差对结果产生的影响却比病态矩阵小很多。这表明,认识系统的特性是决定认识结果的可靠性的根本因素。

因此,要解决矩阵病态的问题,必须从改善认识系统的结构方面入手。从这个思路出发,可以先将认识系统中的相互间夹角较小的向量找出来,然后以其中一个向量为对称轴,旋转其余向量到某个合适的位置,得到一个良态的认识系统,再行求解。这样做的优点在于不涉及求点的具体位置。

例如,最小二乘法所产生的病态矩阵问题主要是由于矩阵求逆所造成的,我们使用QR分解方法来解决。

QR分解

矩阵分解是指将一个矩阵表示为结构简单或具有特殊性质的若干矩阵之积或之和,大体可以分为满秩分解、QR分解和奇异值分解。矩阵分解在矩阵分析中占有很重要的地位,常用来解决各种复杂的问题。而QR分解是工程应用中最为广泛的一类矩阵分解。

QR分解也称为正交三角分解,矩阵QR分解是一种特殊的三角分解,在解决矩阵特征值的计算、最小二乘法等问题中起到重要作用。

QR分解定理:任意一个满秩矩阵A,都可以唯一的分解为A=QR,其中Q为正交矩阵,R为正对角元上的三角矩阵。

QR分解_矩阵谱分解例题

标准正交基:

向量QR分解_矩阵谱分解例题是标准正交的,如果它们满足如下条件

QR分解_矩阵谱分解例题

如果一个矩阵的列是标准正交的,我们称之为Q,很容易可以得到QR分解_矩阵谱分解例题

QR分解_矩阵谱分解例题

 当Q是方阵的时候,我们可以得到QR分解_矩阵谱分解例题,也即转置等于逆

投影矩阵:以二维空间为例

QR分解_矩阵谱分解例题

向量p是b在a上的投影,也称为b在a上的分量,可以用b乘以a方向的单位向量来计算,现在,我们打算尝试用更贴近线性代数的方式表达。

因为p在a上,所以p实际上是a的一个子空间,可以将它看做a缩放x倍,因此向量p可以用p=xa来表示,只要找出x即可,因为,所以二者的点积为0:

QR分解_矩阵谱分解例题

 QR分解_矩阵谱分解例题QR分解_矩阵谱分解例题都是点积运算,最后将得到一个标量数字:

QR分解_矩阵谱分解例题

b在a上的投影p,表明当b缩放时,p也缩放相同的倍数,当a缩放时,p保持不变。

 由于向量点积QR分解_矩阵谱分解例题是一个数字,p可以进一步写成:

QR分解_矩阵谱分解例题

在二维空间中,分子是一个2×2矩阵,这说明向量b在a上的投影p是一个矩阵作用在b上得到的,这个矩阵就称为投影矩阵,用大写的P表达:

QR分解_矩阵谱分解例题

扩展到n维空间,a是n维向量,投影矩阵就是n×n的方阵,观察投影矩阵发现,它是由一个列向量乘以一个行向量得到的:

QR分解_矩阵谱分解例题

 可以看出QR分解_矩阵谱分解例题的列向量是线性相关的,所以它的列空间和行空间的维度都是1,表明它的秩为1,QR分解_矩阵谱分解例题是一个秩为1的矩阵,并且是一个对称矩阵,由于QR分解_矩阵谱分解例题是一个标量,所以QR分解_矩阵谱分解例题决定了投影矩阵的性质:

QR分解_矩阵谱分解例题

 投影矩阵还有另外一个性质:

QR分解_矩阵谱分解例题

它的几何意义是,对一个向量投影两次和投影一次相同,b在a上的投影是p,再投影一次仍是p。

投影的意义:

从方程Ax=b说起,对于ax=b来说,并不是任何时候都有解,实际上大多数这种类型的方程都无解。A的列空间的含义是方程组有解时b的取值空间,当b不在A的列空间时,方程无解。

虽然方程无解,但我们还是希望能够运算下去,这就需要换个思路,不追求可解,转而寻找最接近可解问题的解。对于无解方程Ax=b,Ax总是在列空间里(因为列空间是由Ax确定的,和b无关),而b就不一定了,所以需要微调b,将b变成列空间中最接近它的一个,Ax=b变成了:。

P就是A的列空间的投影,b-p产生最小的误差向量:

QR分解_矩阵谱分解例题

求解不等式方程Ax=b,需要将b微调成它在A的列空间上的投影(列空间上的向量很多,b在列空间上的投影是唯一的),这就是投影的意义。

推广到多维投影矩阵使用如下公式表示:

QR分解_矩阵谱分解例题

Gram-Schmidt正交化和A的QR分解:

假设有三个不相关的向量a,b,c,如果能够构造出正交的三个向量A,B,C,那么再除以它们的长度就得到了标准正交向量。

首先,选取A=a,那么B必须垂直于A。我们用b减去其在A的投影,就得到了垂直于A的部分,这也就是要找的B。

QR分解_矩阵谱分解例题

接着再用c减去其在A和B的投影,就得到要找的C

QR分解_矩阵谱分解例题

如果有更多的向量,就用新的向量减去它在已经设定好的所有向量上的投影即可,最后,再除以它们各自的长度就得到了标准正交向量。

QR分解_矩阵谱分解例题

 标准正交向量QR分解_矩阵谱分解例题

QR分解_矩阵谱分解例题

 A垂直于B证明:

QR分解_矩阵谱分解例题

 此处的||A||表示向量的模

A=QR,R是上三角阵,Q是单位正交阵

已知

QR分解_矩阵谱分解例题

QR分解_矩阵谱分解例题

 由上述可知QR分解_矩阵谱分解例题,所以QR分解_矩阵谱分解例题,即左下角元素为零

QR分解_矩阵谱分解例题

 最小二乘法的正规方程由QR分解的结果来重新生成参数计算公式:

QR分解_矩阵谱分解例题

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/166842.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 解决smplayer中文字幕乱码

    解决smplayer中文字幕乱码首先,打开选项->首选项:选择字幕选项卡。找到“默认字符编码”选项,在下拉框中选择“简体中文(cp936)”再打开“字体和颜色”页卡(上边),选择“系统字体”在下拉选框中选择一种简体中文字体转载于:https://www.cnblogs.com/hbxtght/archive/2011/05/18/2049938.html…

    2022年7月11日
    17
  • maven私库nexus2.14.1迁移到nexus3.1

    maven私库nexus2.14.1迁移到nexus3.1maven私库nexus2.14.1迁移到nexus3.1(含安装教程),亲测可用

    2022年7月18日
    14
  • javah详解[通俗易懂]

    javah详解[通俗易懂]java开发中如果使用到JNI,则难免需要使用javah来生成C++或C的头文件信息,下面就讲解javah的命令:第一种:直接cd到当前程序的target/class目录下(一定不能是子目录)(maven项目,如果是普通项目则到bin目录下)。然后使用:javahcom.yongcheng.liuyang.utils.TestJni,其中javah后面的是需要生成头文件类的全路径(包名+类名),当然生成的.h文件位于当前class的目录下。第二种:直接在运行中cmd到dos窗口,使用如下命令:j

    2022年9月25日
    0
  • SpringApplication_一个阶段结束

    SpringApplication_一个阶段结束1、SpringApplication正常结束SpringBoot2.0为SpringApplication正常结束新引入了SpringApplicationRunListener的生命周期,即running(ConfigurableApplicationContext),该方法在Spring应用上下文中已准备,并且CommandLineRunner和ApplicationRunnerBean均已执行完毕。EventPublishingRunListener作为SpringApplicationRu

    2022年9月8日
    0
  • ■ 直接调用阿里云视频点播API实现视频播放

    ■ 直接调用阿里云视频点播API实现视频播放

    2021年3月12日
    134
  • 12 – 利用LinuxPTP进行时间同步(软/硬件时间戳) – 研一

    12 – 利用LinuxPTP进行时间同步(软/硬件时间戳) – 研一1、LinuxPTP源码下载sudogitclonegit://git.code.sf.net/p/linuxptp/codelinuxptpcdlinuxptpsudomakesudomakeinstall查看Usageptp4l-h延迟机制选项-A Auto,从E2E开…

    2022年7月21日
    26

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号