转载——子空间投影的角度理解最小二乘

本文是Gilbert Strang的线性代数导论课程笔记。课程地址:http://v.163.com/special/opencourse/daishu.html

第十五课时:子空间投影

教授说要让这讲名垂青史,想必此讲是重中之重吧。讲投影。怎样投影,为什么要投影到其他子空间。

从一个简单例子看:

向量b到向量a的最短距离,b在a上的投影是p,a垂直于e,e就像误差e=b-p,p是a的某个倍数x,p=xa,它在a的一维子空间里,可得到一个方程,求解x,方程为:aT(b - xa) = 0。

  

假设b变成原来的两倍,那么投影p也变成原来的两倍,如果a变为原来的2倍,p则不变。

投影矩阵Projections:投影是由(投影)矩阵完成的,投影就是某个矩阵P(大写),作用在b上面,使我们得到了投影p。有p=Pb。那么投影矩阵为:

上图P等式右边aTa是一个常数,aaT是一个n×n的矩阵(如果a是n维)。

问题(性质)1:以上例子中投影矩阵P的列空间和秩是怎样的?

可以看到投影矩阵乘以任何向量b后仍旧在其列空间,因此投影矩阵的列空间C(P)是通过a的一条线,所以这个矩阵的秩是1,秩1矩阵(上讲中有结论ATA的秩等于A的秩),向量a就是列空间的基。

问题(性质)2:投影矩阵P是对称的PT=P

问题(性质)3:做两次投影会怎样?P平方的性质。投影两次,第二次的结果和第一次一样,P2=P

为什么要做投影?why project

因为Ax=b也许会无解,可能等式太多,造成无解,那么只能求解最接近的那个可能问题。Ax总在A的列空间里,那么如果将b微调,将b变为列空间中最接近它自己的那一个,将问题换做求解Ax‘=p (x‘不是原来那个不存在的x,而是那个最接近解的x‘,即最优解),p是b在列空间上的投影(列空间内最合适的右侧向量)。这就是要找最好的那个投影的原因

看一个三维平面的例子,要将向量b投影在平面上得到投影向量p。得到一个使b投影到平面上最近点的公式。已知两个线性无关的向量a1,a2可生成平面,那么可以把这个生成的平面空间看成是矩阵的列向量,那么矩阵A=[a1 a2],误差e向量e=b-p,e是垂直于平面的。

因为p在列空间内,可得到投影p=x1‘a1+x2‘a2=Ax‘ (x‘是x1‘与x2‘组成的向量)

现在要求解x‘,寻找合适的线性组合,好让误差向量垂直于这个平面,关键在e=b-Ax‘。由于误差e正交于列空间,所以可得到两个方程:

这两个方程表示成一个,可得到矩阵表示形式如下

它与直线上的投影方程很相似,对于直线来说,矩阵A只有一列,就是一个小写的a,本质都是 ATe = 0 。

问题1:误差向量e(也就是b-Ax‘)在哪个子空间里,既然有 ATe = 0 ,那么e位于A转置的零空间(左零空间),误差e与列空间正交,误差e垂直于A的列空间。

继续上述方程可转换成:

那么x‘是什么?投影p是什么?投影矩阵P是什么?(注意可以与一维情况下得到的公式相比较)

我们是否可以把投影矩阵P等式右边部分做一下化简,如下:

注意:因为A并不是方阵,所以如上化简是不允许的,A的逆不存在。只有A为可逆方阵时,才允许这样做。我们遇到的矩阵一般都是长方矩阵,行数远大于列数。如果A是一个n×n可逆方阵,它的列空间则是整个n维空间,左零空间只有零向量了,如果b投影到整个n维空间,不只投影到平面,比如投影到三维空间,b本身属于三维空间,此时投影矩阵就是单位阵P=I。但如果投影到子空间(比如上面的例子就是3维空间中的向量b投影到三维空间中的子空间——列空间里),则不允许这样做。

投影矩阵的性质保持不变:

1)PT=P

2)P2=P

对于第(2)点可以做如下验证:

运用:当遇到太多方程,要求它的最优解,常见例子通过最小二乘法拟合一条直线。如下,横坐标是时间t,纵坐标是位置b,已知3点,现在要找到一条最优的直线来拟合这些点,误差最小。我们要确定C和D的大小,来得到b=C+Dt方程。

由三个点可得到方程:

这个方程无解,因为这三个点不共线,但我们可以解出最优解,这个最优解不是原方程的解,是最接近的解。

但可通过如下变换后方程就有解了。

这是最小二乘法的核心方程,虽然Ax=b无解,但如果两倍同时乘以A转置,就得到一个有解的方程,就能求出最优解,最理想的投影以及投影矩阵。

时间: 2024-11-07 08:29:33

转载——子空间投影的角度理解最小二乘的相关文章

转:如何学习SQL(第二部分:从关系角度理解SQL)

转自:http://blog.163.com/[email protected]/blog/static/285720652010950825538/ 6. 从关系角度理解SQL 6.1. 关系和表 众所周知,我们目前所用的数据库,通常都是关系数据库.关系自然在其中处于关键位置.初学数据库原理的人可能会很困惑关系和表是什么联系,如果没有清楚的理解,很可能会认为关系这个概念没有实际意义,只会引起混淆.其实这两组概念只是由于理论界与技术界的着重点不同.前者需要用一个专业的.没有歧义的概念来进行理论探

Android Volley完全解析(四),带你从源码的角度理解Volley

转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/17656437 经过前三篇文章的学习,Volley的用法我们已经掌握的差不多了,但是对于Volley的工作原理,恐怕有很多朋友还不是很清楚.因此,本篇文章中我们就来一起阅读一下Volley的源码,将它的工作流程整体地梳理一遍.同时,这也是Volley系列的最后一篇文章了. 其实,Volley的官方文档中本身就附有了一张Volley的工作流程图,如下图所示. 多数朋友突然看到一张这样

二 从 GPU 的角度理解并行计算

前言 本文从使用 GPU 编程技术的角度来了解计算中并行实现的方法思路. 并行计算中需要考虑的三个重要问题 1. 同步问题 在操作系统原理的相关课程中我们学习过进程间的死锁问题,以及由于资源共享带来的临界资源问题等,这里不做累述. 2. 并发度 有一些问题属于 “易并行” 问题:如矩阵乘法.在这类型问题中,各个运算单元输出的结果是相互独立的,这类问题能够得到很轻松的解决 (通常甚至调用几个类库就能搞定问题). 然而,若各个运算单元之间有依赖关系,那问题就复杂了.在 CUDA 中,块内的通信通过共

从别人的角度理解这个世界——Leo鉴书80

本书是比较系统介绍博弈论的书,写得通俗易懂,翻译也文从字顺.最为难得的是书里主要用有趣的事例说话,而且考虑到理解的难度先用"10个策略故事"在第一章为读者热身,之后才逐步展开."从别人的角度理解这个世界"是本书的主旨之一,从写法上两位作者写作时无疑首先做到了. 人生就是由一场接着一场不同的博弈组成的,小到明天出门准备穿什么衣服,大到企业甚至国家竞争策略的制定都是博弈的过程.当然,其中有些是单重零和博弈(就玩一次,只有一方最终胜出),有些是多重非零和博弈(玩很多次,最

从编程角度理解什么是蜜罐

一.蜜罐定义 百度百科:蜜罐技术本质上是一种对攻击方进行欺骗的技术,通过布置一些作为诱饵的主机.网络服务或者信息,诱使攻击方对它们实施攻击,从而可以对攻击行为进行捕获和分析,了解攻击方所使用的工具与方法,推测攻击意图和动机,能够让防御方清晰地了解他们所面对的安全威胁,并通过技术和管理手段来增强实际系统的安全防护能力. 维基百科:蜜罐通常伪装成看似有利用价值的网络.数据.计算机系统,并故意设置了bug,用来吸引黑客攻击.由于蜜罐事实上并未对网络提供任何有价值的服务,所以任何对蜜罐的尝试都是可疑的.

子空间投影

如何解一个无解的方程 $Ax=b$ 的解 基础的的解决方案是: $A^TA \hat{x} = A^T b$ rank ($A^TA$) = rank($A$), Null($A^TA$)= Null($A$) 换句话说,如果A是列满秩的,即零空间里只有0向量,那么$A^TA$可逆的. 此时,子空间投影可以被运用求解近似解. 在一维情况下,投影变量 $p$, 投影矩阵 $P$,被投影变量 $b$, 投影方向 $a$, 那么有: $p=Pb=\frac{aa^T}{a^Ta}b$ 在多维情况下,投

从相亲的角度理解 K8S 的 Node Affinity, Taints 与 Tolerations

这是昨天晚上阅读园子里的2篇 k8s 博文时产生的想法,在随笔中记录一下. 这2篇博文是 K8S调度之节点亲和性 与 K8S调度之Taints and Tolerations . 如果我们把 node 当作女方,pod 当作南方,scheduler 当作媒人,从相亲的角度理解这3个概念,不仅豁然开朗,而且很容易记住. node affinity 就是女方告诉媒人自己喜欢什么类型的男生,介绍这些类型的男生给她. taints 就是女方告诉媒人自己有哪些缺点,不能容忍这些缺点的男生请走开. tole

(转载)Java多线程入门理解

转载出处http://blog.csdn.net/evankaka 写在前面的话:此文只能说是java多线程的一个入门,其实Java里头线程完全可以写一本书了,但是如果最基本的你都学掌握好,又怎么能更上一个台阶呢?如果你觉得此文很简单,那推荐你看看Java并发包的的线程池(Java并发编程与技术内幕:线程池深入理解),或者看这个专栏:Java并发编程与技术内幕.你将会对Java里头的高并发场景下的线程有更加深刻的理解. 目录(?)[-] 一扩展javalangThread类 二实现javalan

地球坐标系与投影方式的理解(关于北京54,西安80,WGS84;高斯,兰勃特,墨卡托投影)

一.地球模型 地球是一个近似椭球体,测绘时用椭球模型逼近,这个模型叫做参考椭球,如下图: 赤道是一个半径为a的近似圆,任一圈经线是一个半径为b的近似圆.a称为椭球的长轴半径,b称为椭球的短轴半径. a≍6378.137千米,b≍6356.752千米.(实际上,a也不是恒定的,最长处和最短处相差72米,b的最长处和最短处相差42米,算很小了) 地球参考椭球基本参数: 长轴:a 短轴:b 扁率:α=(a-b) / a 第一偏心率:e=√(a2-b2) / a 第二偏心率:e'=√(a2-b2) /