【线性代数及其应用】05 - 正交性和最小二乘

正交性和最小二乘

1. 正交向量和子空间

1.1 向量正交性的两种证明方法

  第一种方法是定义式
x T ∗ y = 0 x^T*y=0 xTy=0
  第二种方法是算术方法
∣ ∣ x ∣ ∣ 2 + ∣ ∣ y ∣ ∣ 2 = ∣ ∣ x + y ∣ ∣ 2 ||x||^2+||y||^2 = ||x+y||^2 x2+y2=x+y2

1.2 子空间的正交性

1.2.1 行空间和零空间

  由线性方程组AX=0可知,X是A的零空间,而根据矩阵乘法,前后乘后列为0,矩阵A的行空间与X相乘得0,说明行空间和零空间正交

1.2.2 列空间和左零空间

  列空间和左零空间就是AT的行空间和零空间,因此列空间和左零空间也是正交的

1.3 基的正交性

  构成向量空间的基如果不但线性无关,而且互相之间相乘为0,那么这些基就是正交的

2. 投影

2.1 一维空间的投影

2.1.1 投影求解方法

在这里插入图片描述

  假设我们要把y投影到x上,y^是投影,我们知道:
y = y ^ + e y=\hat{y}+e y=y^+e

x T ∗ e = 0 x^T*e=0 xTe=0

y ^ = x ∗ a \hat{y}=x*a y^=xa
  可知
x T ∗ ( y − a x ) = 0 x^T*(y-ax)=0 xT(yax)=0
  即
a = x T ∗ y x t ∗ x a= \frac{x^T*y}{x^t*x} a=xtxxTy
  投影为
y ^ = a ∗ x = x ∗ x T x t ∗ x ∗ y = P ∗ y \hat{y}=a*x= \frac{x*x^T}{x^t*x}*y=P*y y^=ax=xtxxxTy=Py
  P叫做投影矩阵
P = x ∗ x T x t ∗ x P= \frac{x*x^T}{x^t*x} P=xtxxxT
  也可以写做
y ^ = a ∗ x = x T ∗ y x t ∗ x ∗ x \hat{y}= a*x=\frac{x^T*y}{x^t*x}*x y^=ax=xtxxTyx

2.1.2 投影矩阵的三大性质
  • 秩为一
  • PT=P
  • P2=P

2.2 n维空间的投影

2.2.1 求解方法

在这里插入图片描述

  假设y要投影到n维度空间W中,这里以投影到二维空间为例子进行讲解

  • 法一:理解为向量正交与子空间

  我们知道,e是垂直于平面W的,并且投影向量y^是W的基的线性组合,A是W的基向量,所以就有

A = { a 1 a 2 a 3 a 4 } A=\begin{matrix}\{a1&a2&a3&a4\}\end{matrix} A={a1a2a3a4}

y ^ = A ∗ a \hat{y}=A*a y^=Aa

e = y − y ^ e= y- \hat{y} e=yy^

A T ∗ e = 0 A^T*e=0 ATe=0
可得

A T ∗ ( y − A a ) = 0 A^T*(y-Aa)=0 AT(yAa)=0

a = A T ∗ y A T ∗ A ( 1 ) a=\frac{A^T*y}{A^T*A} \qquad(1) a=ATAATy(1)

y ^ = A ∗ A T A T ∗ A ∗ y ( 2 ) \hat{y}=\frac{A*A^T}{A^T*A}*y \qquad(2) y^=ATAAATy(2)

P = A ∗ A T A T ∗ A ( 3 ) P=\frac{A*A^T}{A^T*A}\qquad(3) P=ATAAAT(3)

  • 法二:理解为向量投影到子空间的各个基上

  除了从e与W空间正交角度角度考虑外,也可以考虑把y分解到W平面的所有基中,所有基中的分量的叠加,就是y的投影了,投影在基中,就是2.1中的投影到一维空间中,假设W中基向量为a1,a2,a3…

y ^ = y 1 ^ + y 2 ^ + . . . + y n ^ \hat{y} = \hat{y_1}+\hat{y_2}+...+\hat{y_n} y^=y1^+y2^+...+yn^

y ^ = c 1 ∗ a 1 + . . . + c n ∗ a n \hat{y} = c_1*a_1+...+c_n*a_n y^=c1a1+...+cnan

y ^ = a 1 T y a 1 T ∗ a 1 ∗ a 1 + . . . + a n T y a n T ∗ a n ∗ a n \hat{y} = \frac{a_1^Ty}{a_1^T*a_1}*a_1+...+\frac{a_n^Ty}{a_n^T*a_n}*a_n y^=a1Ta1a1Tya1+...+anTananTyan

2.3 投影矩阵

2.3.1 投影必须牢记的三个关系式

  系数为
x = ( A T ∗ A ) − 1 ∗ A T ∗ b x=(A^T*A)^{-1}*A^T*b x=(ATA)1ATb
  投影为
p = A x = A ∗ ( A T ∗ A ) − 1 ∗ A T ∗ b p = Ax=A*(A^T*A)^{-1}*A^T*b p=Ax=A(ATA)1ATb
  投影矩阵为
P = A ∗ ( A T ∗ A ) − 1 ∗ A T P =A*(A^T*A)^{-1}*A^T P=A(ATA)1AT

2.3.2 AT*A矩阵的性质

  • 如果A线性无关,AT*A一定可逆
  • AT*A是个对称矩阵
  • AT*A是个正定或半正定矩阵,所有特征值大于等于0

  可以从其二次型恒不小于0证明
X T ∗ ( A T ∗ A ) ∗ X = ( X ∗ A ) T ∗ ( X ∗ A ) = ∣ ∣ X ∗ A ∣ ∣ 2 X^T*(A^T*A)*X=(X*A)^T*(X*A)=||X*A||^2 XT(ATA)X=(XA)T(XA)=XA2
  如果A各列线性无关,该式子必定大于0,能够证明其是一个正定矩阵。如果A各列线性相关,那么该式子大于等于0,是个半正定矩阵

3.最小二乘

3.1 最小二乘问题的引入–无解方程的近似解

  最小二乘问题出现的原因,是为了解决线性方程的过拟合问题。就比如方程数大于变量数的时候,不一定能够得到方程的解,这个时候只能求得一个最接近的解。就比如直线的拟合,假设有很多个坐标点,不一定存在一条过全部坐标点的直线,这个时候只能让各个点到直线的投影距离和最小,也就得到了一个最为接近的解,叫做最小二乘解

3.2 最小二乘的原理

  最小二乘原理就是假设有过拟合方程AX=b,b不一定存在与A的列空间中,但是我们可以将b投影到A的列空间中获得一个解。b到列空间的距离就是这个方程解的误差,因为b到列空间的投影是b到列空间的最短距离,所以这个解满足最小误差。

3.3 最小二乘求解方法

  对于过拟合方程AX=b,A是列空间中的基向量,x是线性组合的权值,b是组合的结果

b 在 A 中 的 投 影 v 1 为 A ∗ X ^ b在A中的投影v_1为 A*\hat{X} bAv1AX^

点 b 指 向 投 影 点 的 向 量 v 2 为 b − A ∗ X ^ 点b指向投影点的向量v_2为 b - A*\hat{X} bv2bAX^

v 2 正 交 与 列 空 间 A : A T ∗ ( b − A ∗ X ^ ) = 0 v_2正交与列空间A: A^T*(b - A*\hat{X})=0 v2AAT(bAX^)=0

A T ∗ A ∗ X ^ = A T ∗ b A^T*A*\hat{X} = A^T*b ATAX^=ATb

X ^ = ( A T ∗ A ) − 1 ∗ A T ∗ b \hat{X} = (A^T*A)^{-1}*A^T*b X^=(ATA)1ATb

3.4 最小二乘唯一性判据

  如果A中的各个向量是线性无关的,AT*A必定满秩,AT*A*X = AT*b有唯一解

3.5 最小二乘的缺陷

  最小二乘的缺陷就是需要求逆矩阵,逆矩阵中的小数约简问题会引发计算误差

3.6 通过QR分解校正最小二乘法

A X = b AX = b AX=b

A T ∗ A ∗ X = A T ∗ b A^T*A*X = A^T*b ATAX=ATb

X = ( A T ∗ A ) − 1 ∗ A T ∗ b X=(A^T*A)^{-1}*A^T*b X=(ATA)1ATb

X = ( R T ∗ Q T ∗ Q ∗ R ) − 1 ∗ R T ∗ Q T ∗ b X=(R^T*Q^T*Q*R)^{-1}*R^T*Q^T*b X=(RTQTQR)1RTQTb

X = R − 1 ∗ Q T ∗ b X = R^{-1}*Q^T*b X=R1QTb

可得

R X = Q T ∗ b RX = Q^T*b RX=QTb

4. 正交矩阵和格拉姆-施密特正交化

4.1 标准正交矩阵

  标准正交矩阵就是每个向量都是单位向量,并且这些单位向量两两相乘都是0

4.2 标准正交矩阵的优势

  标准正交矩阵的优势是
Q T ∗ Q = I Q^T*Q = I QTQ=I
  标准正交矩阵的逆等于标准正交矩阵的转置,能够提高计算速度和计算精度

4.3 格拉姆-施密特正交化

  格拉姆-施密特正交化用于将矩阵A中线性无关的基变成标准正交基。其原理就是,一开始选定第一个向量作为初始向量,然后选择第二个向量消去在第一个向量上的分类,然后获得正交向量,依次类推,获得一组正交基

  假设A= {v1,v2,v3},A中的三个向量线性无关,下面使用格拉姆-施密特正交化构建标准正交基,假设生成的正交向量为u,单位正交向量为w

  • 选定初始正交向量

  令u1 = v1

  • 正交化其他向量

  从v2中减去在v1中投影的分量就可以得到正交向量
u 2 = v 2 − u 1 T ∗ v 2 u 1 T ∗ u 1 ∗ u 1 u2 = v2 - \frac{u1^T*v2}{u1^T*u1}*u1 u2=v2u1Tu1u1Tv2u1
  从v3中减去在v1和v2中投影的分量就可以得到正交于v1和v2的向量

u 3 = v 3 − u 1 T ∗ v 3 u 1 T ∗ u 1 ∗ u 1 − u 2 T ∗ v 3 u 2 T ∗ u 2 ∗ u 2 u3 = v3 - \frac{u1^T*v3}{u1^T*u1}*u1- \frac{u2^T*v3}{u2^T*u2}*u2 u3=v3u1Tu1u1Tv3u1u2Tu2u2Tv3u2

  • 单位化正交向量

w 1 = u 1 ∣ ∣ u 1 ∣ ∣ w1 = \frac{u1}{||u1||} w1=u1u1

w 2 = u 2 ∣ ∣ u 2 ∣ ∣ w2 = \frac{u2}{||u2||} w2=u2u2

w 3 = u 3 ∣ ∣ u 3 ∣ ∣ w3 = \frac{u3}{||u3||} w3=u3u3

4.4 QR分解

  这部分与02-矩阵代数部分是一样的

4.4.1 含义

  QR分解是在施密特正交化,产生正交矩阵Q的过程中产生的,A=QR实际上就是A中的列向量作为向量空间的基,通过施密特正交化得到了标准正交基Q,R记录了这个变化的过程,R是一个上三角矩阵。

  因为A中的基xi,都是由Q中的前i个单位正交基组合得到的,所以R必定是个上三角矩阵,比如

r 1 = x 1 ; r1 = x1; r1=x1;

r 2 = x 2 − r 1 T ∗ x 2 r 1 T ∗ r 1 ∗ r 1 r2 = x2 - \frac{r_1^T*x2}{r_1^T*r_1}*r_1 r2=x2r1Tr1r1Tx2r1

即 x 2 = c 1 ∗ r 1 + c 2 ∗ r 2 即 x2 = c1*r1+c2*r2 x2=c1r1+c2r2
  其余的可以类推,所以矩阵R一定是个上三角矩阵

4.4.2 分解条件

  因为只有A的各个向量能够构成向量空间的一组基向量才能进行施密特正交化,所以,能够做QR分解的条件是,A的列向量必须是线性无关的

4.4.3 分解方法

  首先,Q是施密特正交化得到的标准正交基,这里就不写求解过程了,只写R的求法
A = Q ∗ R A = Q*R A=QR

R = Q − 1 ∗ A R = Q^{-1}*A R=Q1A

因为Q是标准正交矩阵,所以有逆等于转置,可得

R = Q T ∗ A R = Q^T*A R=QTA

4.4.4 QR分解的用途
4.4.4.1 拆分标准正交基
4.4.4.2 提高最小二乘解的精度

A X = b AX = b AX=b

A T ∗ A ∗ X = A T ∗ b A^T*A*X = A^T*b ATAX=ATb

X = ( A T ∗ A ) − 1 ∗ A T ∗ b X=(A^T*A)^{-1}*A^T*b X=(ATA)1ATb

X = ( R T ∗ Q T ∗ Q ∗ R ) − 1 ∗ R T ∗ Q T ∗ b X=(R^T*Q^T*Q*R)^{-1}*R^T*Q^T*b X=(RTQTQR)1RTQTb

X = R − 1 ∗ Q T ∗ b X = R^{-1}*Q^T*b X=R1QTb

可得
R X = Q T ∗ b RX = Q^T*b RX=QTb
  因为R是一个上三角矩阵,乘以X可以得到一个方便求解的线性方程,而右边没有了求逆矩阵的过程,求逆矩阵的过程中,如果有小数发生约简,会引入误差,而不计算矩阵的逆,既能够提高运算速度,也能够提高运算精度。

5.正交矩阵的用处

5.1 解方程v=Q*x

x = Q T ∗ v x = Q^T*v x=QTv

5.2 傅里叶级数

5.2.1 傅里叶级数定义

f ( x ) = a 0 + a 1 c o s x + b 1 s i n x + a 2 c o s 2 x + b 2 s i n 2 x + . . . . . f(x)=a0+a1cosx+b1sinx + a2cos2x+b2sin2x+..... f(x)=a0+a1cosx+b1sinx+a2cos2x+b2sin2x+.....

5.2.2 矩阵内积与函数内积的区别

V T ∗ W = v 1 ∗ w 1 + . . . . . v n ∗ w n V^T*W=v1*w1+.....vn*wn VTW=v1w1+.....vnwn

f T ∗ g = ∫ 0 2 π f ( x ) g ( x ) d x f^T*g=\int_0^{2\pi}f(x)g(x)dx fTg=02πf(x)g(x)dx

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值