投影算子(Projection Operator)的定义、性质、分类以及应用

文章目录

  • 1. 投影算子的定义
  • 2. 投影算子的几何意义
  • 3. 一些简单的例子
    • 例 1:二维平面上的投影
    • 例 2:投影到一条任意方向的直线
    • 例 3:三维空间中投影到一个平面
  • 4. 投影算子的性质
  • 5. 投影算子的分类
    • 5.1、正交投影算子
    • 5.2、一般投影(非正交投影)
  • 6. 投影算子的矩阵表示
    • 6.1、一维子空间的投影
    • 6.2、低维空间中的投影
  • 7. 投影算子的应用

1. 投影算子的定义

投影算子 P P P 是作用在向量空间 V V V 上的一个线性算子,满足:
P 2 = P P^2 = P P2=P
也就是说,投影算子满足幂等性,即作用两次与作用一次的效果相同。

如果一个向量 v v v 经过投影 P P P 之后变成 P v Pv Pv,那么再应用一次投影 P ( P v ) P(Pv) P(Pv) 仍然是 P v Pv Pv,不会再改变。


2. 投影算子的几何意义

投影算子可以看作是将向量映射到某个子空间,并且对于已经在该子空间的向量,投影算子不会改变它们。

例:

  • U U U R 3 \mathbb{R}^3 R3 中的一个平面(例如 z = 0 z=0 z=0 的平面)。
  • P P P 是把任意向量 ( x , y , z ) (x, y, z) (x,y,z) 映射到 ( x , y , 0 ) (x, y, 0) (x,y,0) 的投影算子。
  • 你可以验证: P ( x , y , z ) = ( x , y , 0 ) P(x, y, z) = (x, y, 0) P(x,y,z)=(x,y,0) P 2 ( x , y , z ) = P ( x , y , 0 ) = ( x , y , 0 ) P^2(x, y, z) = P(x, y, 0) = (x, y, 0) P2(x,y,z)=P(x,y,0)=(x,y,0) 这说明 P 2 = P P^2 = P P2=P,所以 P P P 是一个投影算子。

3. 一些简单的例子

例 1:二维平面上的投影

设我们在二维平面上,想要把任意向量 v v v 投影到 x x x-轴上(即去掉 y y y 分量)。

  • 我们的向量空间是 R 2 \mathbb{R}^2 R2
  • 目标子空间是 x x x-轴(即 y = 0 y=0 y=0)。
  • 投影算子 P P P 应该保持 x x x 分量不变,并把 y y y 分量变为 0。

投影矩阵可以写成:
P = [ 1 0 0 0 ] P = \begin{bmatrix} 1 & 0 \\ 0 & 0 \end{bmatrix} P=[1000]
现在,我们选择一个向量:
v = [ 3 4 ] v = \begin{bmatrix} 3 \\ 4 \end{bmatrix} v=[34]
计算投影:
P v = [ 1 0 0 0 ] [ 3 4 ] = [ 3 0 ] P v = \begin{bmatrix} 1 & 0 \\ 0 & 0 \end{bmatrix} \begin{bmatrix} 3 \\ 4 \end{bmatrix} = \begin{bmatrix} 3 \\ 0 \end{bmatrix} Pv=[1000][34]=[30]

  • 原向量 v = ( 3 , 4 ) v = (3,4) v=(3,4) x x x-轴上的投影是 ( 3 , 0 ) (3,0) (3,0)
  • 投影算子的性质:
    • 幂等性:如果再对 ( 3 , 0 ) (3,0) (3,0) 施加一次投影: P ( P v ) = P [ 3 0 ] = [ 3 0 ] P (Pv) = P \begin{bmatrix} 3 \\ 0 \end{bmatrix} = \begin{bmatrix} 3 \\ 0 \end{bmatrix} P(Pv)=P[30]=[30] 结果不变,验证了 P 2 = P P^2 = P P2=P

在这里插入图片描述

例 2:投影到一条任意方向的直线

我们现在考虑把一个向量投影到一个方向向量 u u u 代表的直线上。

设单位方向向量:
u = 1 2 [ 1 1 ] u = \frac{1}{\sqrt{2}} \begin{bmatrix} 1 \\ 1 \end{bmatrix} u=2 1[11]
我们想把向量 v = [ 3 4 ] v = \begin{bmatrix} 3 \\ 4 \end{bmatrix} v=[34] 投影到 u u u 方向。

投影公式:
P v = ( u ⋅ v ) u P v = (u \cdot v) u Pv=(uv)u
计算内积:
u ⋅ v = 1 2 ( 3 + 4 ) = 7 2 u \cdot v = \frac{1}{\sqrt{2}}(3 + 4) = \frac{7}{\sqrt{2}} uv=2 1(3+4)=2 7
投影:
P v = 7 2 ⋅ 1 2 [ 1 1 ] = 7 2 [ 1 1 ] = [ 3.5 3.5 ] P v = \frac{7}{\sqrt{2}} \cdot \frac{1}{\sqrt{2}} \begin{bmatrix} 1 \\ 1 \end{bmatrix} = \frac{7}{2} \begin{bmatrix} 1 \\ 1 \end{bmatrix} = \begin{bmatrix} 3.5 \\ 3.5 \end{bmatrix} Pv=2 72 1[11]=27[11]=[3.53.5]

  • 原向量 v = ( 3 , 4 ) v = (3,4) v=(3,4) 投影到方向 u u u 上得到 ( 3.5 , 3.5 ) (3.5,3.5) (3.5,3.5)
  • 你可以验证: P v Pv Pv u u u 方向的一个倍数,说明它被正确投影到了直线上。

在这里插入图片描述

上面用到的向量投影公式的推导

u u u 是一个单位向量(即 ∣ ∣ u ∣ ∣ = 1 ||u|| = 1 ∣∣u∣∣=1),我们想要找到 v v v u u u 方向上的投影。

向量 v v v u u u 方向的投影,是 v v v u u u 方向的标量分量乘以 u u u
Proj u ( v ) = ( v ⋅ u ∣ ∣ u ∣ ∣ 2 ) u \text{Proj}_u (v) = \left( \frac{v \cdot u}{||u||^2} \right) u Proju(v)=(∣∣u2vu)u
由于 u u u 是单位向量,满足 ∣ ∣ u ∣ ∣ 2 = 1 ||u||^2 = 1 ∣∣u2=1,所以公式简化为:
P v = ( v ⋅ u ) u P v = (v \cdot u) u Pv=(vu)u

  1. v ⋅ u v \cdot u vu:计算向量 v v v u u u 方向上的投影长度(标量)。
  2. 乘以 u u u:将该标量转换回一个向量,方向与 u u u 相同。

换句话说,我们把 v v v 的部分分解成沿 u u u 方向的分量,并去掉与 u u u 正交的分量。

如果 u u u 不是单位向量(即 ∣ ∣ u ∣ ∣ ≠ 1 ||u|| \neq 1 ∣∣u∣∣=1),投影公式需要调整为:
P v = ( v ⋅ u u ⋅ u ) u P v = \left( \frac{v \cdot u}{u \cdot u} \right) u Pv=(uuvu)u
因为在这种情况下,单位化 u u u 需要除以 ∣ ∣ u ∣ ∣ 2 ||u||^2 ∣∣u2

这个更一般的公式适用于任何向量 u u u,无论是否归一化。

例 3:三维空间中投影到一个平面

设我们在三维空间中,想要把向量 v = [ 1 2 3 ] v = \begin{bmatrix} 1 \\ 2 \\ 3 \end{bmatrix} v= 123 投影到 x y xy xy-平面上(即去掉 z z z 分量)。

投影矩阵:
P = [ 1 0 0 0 1 0 0 0 0 ] P = \begin{bmatrix} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 0 \end{bmatrix} P= 100010000
计算投影:
P v = [ 1 0 0 0 1 0 0 0 0 ] [ 1 2 3 ] = [ 1 2 0 ] Pv = \begin{bmatrix} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 0 \end{bmatrix} \begin{bmatrix} 1 \\ 2 \\ 3 \end{bmatrix} = \begin{bmatrix} 1 \\ 2 \\ 0 \end{bmatrix} Pv= 100010000 123 = 120

  • 原向量 ( 1 , 2 , 3 ) (1,2,3) (1,2,3) 被投影到 x y xy xy-平面上,变成 ( 1 , 2 , 0 ) (1,2,0) (1,2,0)
  • 该投影满足幂等性: P ( P v ) = P [ 1 2 0 ] = [ 1 2 0 ] P(Pv) = P \begin{bmatrix} 1 \\ 2 \\ 0 \end{bmatrix} = \begin{bmatrix} 1 \\ 2 \\ 0 \end{bmatrix} P(Pv)=P 120 = 120

4. 投影算子的性质

投影算子 P P P 具有以下重要性质:

4.1、幂等性(Idempotency): P 2 = P P^2 = P P2=P

4.2、特征值

投影算子的特征值只能是 0 或 1

特征值的求解来自特征方程:
P v = λ v P v = \lambda v Pv=λv
由于 P 2 = P P^2 = P P2=P,可推出:
P 2 v = P v = λ v P^2 v = P v = \lambda v P2v=Pv=λv
即:
λ 2 v = λ v \lambda^2 v = \lambda v λ2v=λv
因此,特征值 λ \lambda λ 只能取 0 或 1

  • 特征值 1 1 1 的特征向量:被正确投影的向量,即 投影目标子空间中的向量,投影后不变。
  • 特征值 0 0 0 的特征向量:被完全投影到零的向量,即 正交补空间的向量,它们的投影结果是零。

考虑投影矩阵:
P = [ 1 0 0 0 ] P = \begin{bmatrix} 1 & 0 \\ 0 & 0 \end{bmatrix} P=[1000]
求特征值,我们解:
det ( P − λ I ) = ∣ 1 − λ 0 0 − λ ∣ = ( 1 − λ ) ( − λ ) = 0 \text{det}(P - \lambda I) = \begin{vmatrix} 1 - \lambda & 0 \\ 0 & -\lambda \end{vmatrix} = (1 - \lambda)(-\lambda) = 0 det(PλI)= 1λ00λ =(1λ)(λ)=0
解得特征值:
λ = 0 或 λ = 1 \lambda = 0 \quad \text{或} \quad \lambda = 1 λ=0λ=1

  • 对应 λ = 1 \lambda = 1 λ=1 的特征向量是 [ x 0 ] \begin{bmatrix} x \\ 0 \end{bmatrix} [x0],表示 x x x-轴上的向量,它们的投影不变。
  • 对应 λ = 0 \lambda = 0 λ=0 的特征向量是 [ 0 y ] \begin{bmatrix} 0 \\ y \end{bmatrix} [0y],表示 y y y-轴上的向量,它们被投影到零。
  • 投影算子的特征值只能是 0 或 1
  • 这可以从特征方程 P 2 v = P v P^2 v = P v P2v=Pv 推导出,即 P v = λ v P v = \lambda v Pv=λv,解得 λ = 0 \lambda = 0 λ=0 λ = 1 \lambda = 1 λ=1
  • 对应于特征值 1 的特征向量是 投影子空间中的向量
  • 对应于特征值 0 的特征向量是 投影到零的向量,即正交补空间的向量

4.3、线性性

P P P 是线性算子,则对任意 α , β ∈ R \alpha, \beta \in \mathbb{R} α,βR C \mathbb{C} C,有: P ( α v + β w ) = α P ( v ) + β P ( w ) P(\alpha v + \beta w) = \alpha P(v) + \beta P(w) P(αv+βw)=αP(v)+βP(w)

考虑投影矩阵:
P = [ 1 0 0 0 ] P = \begin{bmatrix} 1 & 0 \\ 0 & 0 \end{bmatrix} P=[1000]
给定两个向量:
v = [ 2 3 ] , w = [ − 1 4 ] v = \begin{bmatrix} 2 \\ 3 \end{bmatrix}, \quad w = \begin{bmatrix} -1 \\ 4 \end{bmatrix} v=[23],w=[14]
以及两个标量 α = 2 , β = − 1 \alpha = 2, \beta = -1 α=2,β=1,验证:
P ( α v + β w ) = P ( 2 [ 2 3 ] + ( − 1 ) [ − 1 4 ] ) P (\alpha v + \beta w) = P \left( 2 \begin{bmatrix} 2 \\ 3 \end{bmatrix} + (-1) \begin{bmatrix} -1 \\ 4 \end{bmatrix} \right) P(αv+βw)=P(2[23]+(1)[14])
计算:
α v + β w = [ 4 6 ] + [ 1 − 4 ] = [ 5 2 ] \alpha v + \beta w = \begin{bmatrix} 4 \\ 6 \end{bmatrix} + \begin{bmatrix} 1 \\ -4 \end{bmatrix} = \begin{bmatrix} 5 \\ 2 \end{bmatrix} αv+βw=[46]+[14]=[52]
另一方面:
α P ( v ) + β P ( w ) = 2 P [ 2 3 ] + ( − 1 ) P [ − 1 4 ] \alpha P(v) + \beta P(w) = 2 P \begin{bmatrix} 2 \\ 3 \end{bmatrix} + (-1) P \begin{bmatrix} -1 \\ 4 \end{bmatrix} αP(v)+βP(w)=2P[23]+(1)P[14]
两边相等,验证了线性性。

4.4、零空间(Kernel)和像空间(Image)

投影算子将整个空间 V V V 分解为两个子空间:

  • 零空间(Ker§):被投影到 0 的所有向量。
  • 像空间(Im§):投影的目标子空间。

还是使用投影矩阵:
P = [ 1 0 0 0 ] P = \begin{bmatrix} 1 & 0 \\ 0 & 0 \end{bmatrix} P=[1000]

  • 零空间 ker ⁡ ( P ) \ker(P) ker(P): 由 P v = 0 P v = 0 Pv=0 得:
    [ 1 0 0 0 ] [ x y ] = [ 0 0 ] \begin{bmatrix} 1 & 0 \\ 0 & 0 \end{bmatrix} \begin{bmatrix} x \\ y \end{bmatrix} = \begin{bmatrix} 0 \\ 0 \end{bmatrix} [1000][xy]=[00]
    这要求 x = 0 x = 0 x=0,即:
    ker ⁡ ( P ) = { [ 0 y ] } \ker(P) = \left\{ \begin{bmatrix} 0 \\ y \end{bmatrix} \right\} ker(P)={[0y]}
    这对应 y y y-轴,说明所有位于 y y y-轴的向量都被投影到零。

  • 像空间 Im ( P ) \text{Im}(P) Im(P): 任何投影的结果都形如:
    P v = [ x 0 ] P v = \begin{bmatrix} x \\ 0 \end{bmatrix} Pv=[x0]
    说明像空间是 x x x-轴:
    Im ( P ) = { [ x 0 ] } \text{Im}(P) = \left\{ \begin{bmatrix} x \\ 0 \end{bmatrix} \right\} Im(P)={[x0]}
    即所有投影的结果都落在 x x x-轴上。

性质解释例子
幂等性 P 2 = P P^2 = P P2=P,多次投影不改变结果投影到 x x x-轴后,继续投影仍然是同一个点
特征值只能是 0 或 1 x x x-轴上的向量是特征值 1,对应子空间; y y y-轴上的向量是特征值 0,对应被投影方向
线性性 P ( α v + β w ) = α P v + β P w P(\alpha v + \beta w) = \alpha P v + \beta P w P(αv+βw)=αPv+βPw计算验证,满足线性性
零空间和像空间 ker ⁡ ( P ) \ker(P) ker(P) 是被投影方向, Im ( P ) \text{Im}(P) Im(P) 是目标子空间投影到 x x x-轴, y y y-轴上的向量被投影到 0

5. 投影算子的分类

5.1、正交投影算子

如果投影算子 P P P自伴随(Hermitian) 的,即满足:
P = P † P = P^\dagger P=P
(在实数域上,等价于 P = P T P = P^T P=PT),那么它是正交投影算子
这意味着投影后的子空间和正交补空间是正交的

  • 正交投影表示投影的方向与子空间的正交补空间是垂直的
  • 例如,在三维空间中,如果我们将一个向量投影到 x y xy xy-平面上,那么投影是沿着 z z z-轴方向正交进行的。

例:投影到一条直线上

设单位向量:
u = 1 5 [ 2 1 ] u = \frac{1}{\sqrt{5}} \begin{bmatrix} 2 \\ 1 \end{bmatrix} u=5 1[21]
我们要构造投影矩阵,将任意向量投影到 u u u 方向上。投影矩阵的公式为:
P = u u T P = u u^T P=uuT
计算:
u u T = ( 1 5 [ 2 1 ] ) ( 1 5 [ 2 1 ] ) = 1 5 [ 2 1 ] [ 2 1 ] = 1 5 [ 4 2 2 1 ] = [ 0.8 0.4 0.4 0.2 ] uu^T = \left( \frac{1}{\sqrt{5}} \begin{bmatrix} 2 \\ 1 \end{bmatrix} \right) \left( \frac{1}{\sqrt{5}} \begin{bmatrix} 2 & 1 \end{bmatrix} \right) = \frac{1}{5} \begin{bmatrix} 2 \\ 1 \end{bmatrix} \begin{bmatrix} 2 & 1 \end{bmatrix} = \frac{1}{5} \begin{bmatrix} 4 & 2 \\ 2 & 1 \end{bmatrix} = \begin{bmatrix} 0.8 & 0.4 \\ 0.4 & 0.2 \end{bmatrix} uuT=(5 1[21])(5 1[21])=51[21][21]=51[4221]=[0.80.40.40.2]
这这个矩阵就是投影算子,它将向量投影到方向 u u u 上,并且满足:
P T = P , P 2 = P P^T = P, \quad P^2 = P PT=P,P2=P
因此,它是 正交投影算子

5.2、一般投影(非正交投影)

如果投影算子 P P P 不是 Hermitian,即 P ≠ P † P \neq P^\dagger P=P,则它不是正交投影。
这种投影的方向不一定与正交补空间垂直,可能是斜投影。

  • 一般投影可能是倾斜的,即投影到的子空间和投影方向可能不是垂直的。
  • 例如,在三维空间中,若我们投影到一个斜平面而不是 x y xy xy-平面,投影方向可能不会是 z z z-轴,而是某个倾斜方向。

例:斜投影

假设我们要将向量 v v v 投影到一个子空间 W W W,该子空间的基向量为:
w 1 = [ 1 1 ] , w 2 = [ 1 − 1 ] w_1 = \begin{bmatrix} 1 \\ 1 \end{bmatrix}, \quad w_2 = \begin{bmatrix} 1 \\ -1 \end{bmatrix} w1=[11],w2=[11]
若投影算子为:
P = [ 1 2 0 1 ] P = \begin{bmatrix} 1 & 2 \\ 0 & 1 \end{bmatrix} P=[1021]
计算:
P T = [ 1 0 2 1 ] P^T = \begin{bmatrix} 1 & 0 \\ 2 & 1 \end{bmatrix} PT=[1201]
显然 P ≠ P T P \neq P^T P=PT,说明该投影算子是非正交投影


6. 投影算子的矩阵表示

6.1、一维子空间的投影

如果要将向量投影到一个单位向量 u u u 方向上,投影矩阵的公式为:
P = u u T P = uu^T P=uuT
其中:

  • u u u 是单位向量(即 ∣ ∣ u ∣ ∣ = 1 ||u|| = 1 ∣∣u∣∣=1)。
  • P P P 是投影矩阵,它将任何向量投影到 u u u 方向上。

例:投影到 x x x-轴

设单位向量:
u = [ 1 0 ] u = \begin{bmatrix} 1 \\ 0 \end{bmatrix} u=[10]
计算投影矩阵:
P = u u T = [ 1 0 ] [ 1 0 ] P = u u^T = \begin{bmatrix} 1 \\ 0 \end{bmatrix} \begin{bmatrix} 1 & 0 \end{bmatrix} P=uuT=[10][10]
这个矩阵的作用是:
P [ x y ] = [ 1 0 0 0 ] [ x y ] = [ x 0 ] P \begin{bmatrix} x \\ y \end{bmatrix} = \begin{bmatrix} 1 & 0 \\ 0 & 0 \end{bmatrix} \begin{bmatrix} x \\ y \end{bmatrix} = \begin{bmatrix} x \\ 0 \end{bmatrix} P[xy]=[1000][xy]=[x0]
即将 ( x , y ) (x, y) (x,y) 投影到 x x x-轴上,去掉 y y y 分量。

更一般的情况

如果 u u u 是任意单位向量,例如:
u = 1 5 [ 2 1 ] u = \frac{1}{\sqrt{5}} \begin{bmatrix} 2 \\ 1 \end{bmatrix} u=5 1[21]
那么投影矩阵为:
P = u u T = ( 1 5 [ 2 1 ] ) ( 1 5 [ 2 1 ] ) = 1 5 [ 2 1 ] [ 2 1 ] = 1 5 [ 4 2 2 1 ] = [ 0.8 0.4 0.4 0.2 ] P = uu^T = \left( \frac{1}{\sqrt{5}} \begin{bmatrix} 2 \\ 1 \end{bmatrix} \right) \left( \frac{1}{\sqrt{5}} \begin{bmatrix} 2 & 1 \end{bmatrix} \right) = \frac{1}{5} \begin{bmatrix} 2 \\ 1 \end{bmatrix} \begin{bmatrix} 2 & 1 \end{bmatrix} = \frac{1}{5} \begin{bmatrix} 4 & 2 \\ 2 & 1 \end{bmatrix} = \begin{bmatrix} 0.8 & 0.4 \\ 0.4 & 0.2 \end{bmatrix} P=uuT=(5 1[21])(5 1[21])=51[21][21]=51[4221]=[0.80.40.40.2]
这个矩阵会将向量投影到 u u u 方向上,而不一定是 x x x-轴。


6.2、低维空间中的投影

如果我们想要将向量投影到一个 由多个向量张成的子空间,我们需要使用一个矩阵 U U U 来计算投影矩阵。投影矩阵的公式为:
P = U ( U T U ) − 1 U T P = U (U^T U)^{-1} U^T P=U(UTU)1UT
其中:

  • U U U 是子空间的基矩阵。
  • P P P 是投影到该子空间的投影矩阵。

例:投影到二维平面

假设我们在三维空间中,投影到 由两个向量张成的平面,设:
U = [ 1 1 0 1 0 0 ] U = \begin{bmatrix} 1 & 1 \\ 0 & 1 \\ 0 & 0 \end{bmatrix} U= 100110
这是一个 3 × 2 3 \times 2 3×2 的矩阵,表示一个由 两个基向量
u 1 = [ 1 0 0 ] , u 2 = [ 1 1 0 ] u_1 = \begin{bmatrix} 1 \\ 0 \\ 0 \end{bmatrix}, \quad u_2 = \begin{bmatrix} 1 \\ 1 \\ 0 \end{bmatrix} u1= 100 ,u2= 110
张成的平面。

计算投影矩阵:
P = U ( U T U ) − 1 U T P = U (U^T U)^{-1} U^T P=U(UTU)1UT
首先,计算:
U T U = [ 1 0 0 1 1 0 ] [ 1 1 0 1 0 0 ] = [ 1 1 1 2 ] U^T U = \begin{bmatrix} 1 & 0 & 0 \\ 1 & 1 & 0 \end{bmatrix} \begin{bmatrix} 1 & 1 \\ 0 & 1 \\ 0 & 0 \end{bmatrix}=\begin{bmatrix} 1 & 1 \\ 1 & 2\end{bmatrix} UTU=[110100] 100110 =[1112]
计算逆矩阵:
( U T U ) − 1 = [ 1 1 1 2 ] − 1 = [ 2 − 1 − 1 1 ] (U^T U)^{-1} = \begin{bmatrix} 1 & 1 \\ 1 & 2 \end{bmatrix}^{-1} = \begin{bmatrix} 2 & -1 \\ -1 & 1 \end{bmatrix} (UTU)1=[1112]1=[2111]
然后计算:
P = U [ 2 − 1 − 1 1 ] U T P = U \begin{bmatrix} 2 & -1 \\ -1 & 1 \end{bmatrix} U^T P=U[2111]UT
经过矩阵乘法运算(可手算或用 Python/Numpy 计算),最终得到:
P = [ 1 0 0 0 1 0 0 0 0 ] P = \begin{bmatrix} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 0 \end{bmatrix} P= 100010000
这个矩阵的作用是:

  • 保持 x x x y y y 方向上的分量不变。
  • z z z 方向上的分量投影到零。

这个投影矩阵将三维空间中的向量投影到 x y xy xy-平面上,即:
P [ x y z ] = [ x y 0 ] P \begin{bmatrix} x \\ y \\ z \end{bmatrix} = \begin{bmatrix} x \\ y \\ 0 \end{bmatrix} P xyz = xy0


7. 投影算子的应用

最小二乘法(Least Squares Method)用于求解过约束方程组(即方程个数大于未知数个数的情况),其核心思想是:找到一个向量,使得它在给定数据的子空间中的投影与观测数据最接近。

我们使用 投影算子 来求解最小二乘问题。

设我们有一个过约束方程组:
A x = b Ax = b Ax=b
其中:

  • A A A 是一个 m × n m \times n m×n 的矩阵,且 m > n m > n m>n(即方程个数大于未知数个数)。
  • x x x 是我们需要求解的向量( n × 1 n \times 1 n×1)。
  • b b b 是观测数据向量( m × 1 m \times 1 m×1)。

由于 A x = b Ax = b Ax=b 可能 没有精确解(因为 b b b 可能不在 A A A 列空间内),我们希望找到一个 最优近似解,即:
b ^ = P A b \hat{b} = P_A b b^=PAb
其中:

  • b ^ \hat{b} b^ b b b A A A 列空间上的正交投影
  • P A P_A PA 是投影矩阵,表示将 b b b 投影到 A A A 列空间。

投影矩阵的通用公式:
P A = A ( A T A ) − 1 A T P_A = A (A^T A)^{-1} A^T PA=A(ATA)1AT
其中:

  • A T A A^T A ATA 是一个 n × n n \times n n×n 矩阵(可逆)。
  • ( A T A ) − 1 A T (A^T A)^{-1} A^T (ATA)1AT 计算的是最小二乘解的系数。

假设我们有两个数据点,拟合模型:
y = m x + c y = mx + c y=mx+c
给定数据:
( 1 , 2 ) , ( 2 , 3 ) , ( 3 , 5 ) (1, 2), (2, 3), (3, 5) (1,2),(2,3),(3,5)
转换成线性方程:
[ 1 1 2 1 3 1 ] [ m c ] = [ 2 3 5 ] \begin{bmatrix} 1 & 1 \\ 2 & 1 \\ 3 & 1 \end{bmatrix} \begin{bmatrix} m \\ c \end{bmatrix} = \begin{bmatrix} 2 \\ 3 \\ 5 \end{bmatrix} 123111 [mc]= 235
这里:
A = [ 1 1 2 1 3 1 ] , b = [ 2 3 5 ] A = \begin{bmatrix} 1 & 1 \\ 2 & 1 \\ 3 & 1 \end{bmatrix}, \quad b = \begin{bmatrix} 2 \\ 3 \\ 5 \end{bmatrix} A= 123111 ,b= 235
计算投影矩阵
计算:
A T A = [ 1 2 3 1 1 1 ] [ 1 1 2 1 3 1 ] = [ 1 + 4 + 9 1 + 2 + 3 1 + 2 + 3 1 + 1 + 1 ] = [ 14 6 6 3 ] A^T A = \begin{bmatrix} 1 & 2 & 3 \\ 1 & 1 & 1 \end{bmatrix} \begin{bmatrix} 1 & 1 \\ 2 & 1 \\ 3 & 1 \end{bmatrix} = \begin{bmatrix} 1+4+9 & 1+2+3 \\ 1+2+3 & 1+1+1 \end{bmatrix} = \begin{bmatrix} 14 & 6 \\ 6 & 3 \end{bmatrix} ATA=[112131] 123111 =[1+4+91+2+31+2+31+1+1]=[14663]
求逆:
( A T A ) − 1 = [ 14 6 6 3 ] − 1 (A^T A)^{-1} = \begin{bmatrix} 14 & 6 \\ 6 & 3 \end{bmatrix}^{-1} (ATA)1=[14663]1
然后计算投影矩阵:
P A = A ( A T A ) − 1 A T P_A = A (A^T A)^{-1} A^T PA=A(ATA)1AT


计算最优解

最优解由:
x = ( A T A ) − 1 A T b x = (A^T A)^{-1} A^T b x=(ATA)1ATb
计算后得到:
m = 1.5 , c = 0.5 m = 1.5, \quad c = 0.5 m=1.5,c=0.5
最终拟合直线为:
y = 1.5 x + 0.5 y = 1.5x + 0.5 y=1.5x+0.5
这就是最小二乘法求解的最佳拟合直线。

  • P A P_A PA b b b 投影到 A A A 的列空间上,得到最优逼近解。
  • 这个过程确保误差最小,即: ∣ ∣ A x − b ∣ ∣ 2 最小 ||Ax - b||^2 \text{ 最小} ∣∣Axb2 最小
  • 最小二乘法的核心思想就是 用投影算子 P A P_A PA 找到 b b b A A A 列空间上的投影,并用该投影来求解最优拟合。

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

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

相关文章

VLAN综合实验报告

一、实验拓扑 网络拓扑结构包括三台交换机(LSW1、LSW2、LSW3)、一台路由器(AR1)以及六台PC(PC1-PC6)。交换机之间通过Trunk链路相连,交换机与PC、路由器通过Access或Hybrid链路连接。 二、实验…

coding ability 展开第五幕(二分查找算法)超详细!!!!

. . 文章目录 前言二分查找搜索插入的位置思路 x的平方根思路 山脉数组的峰顶索引思路 寻找旋转排序数组中的最小值思路 总结 前言 本专栏上篇博客已经把滑动指针收尾啦 现在还是想到核心——一段连续的区间,有时候加上哈希表用起来很爽 今天我们来学习新的算法知识…

文献阅读篇#2:YOLO改进类的文章如何高效进行文献阅读(对于初学者)

对于初学者来说,文献阅读是非常非常重要的一个学习方式,好的文献阅读方法会让学习的效率翻倍。我希望能够总结出一套比较有效的文献阅读方法,并通过记录的方法来找到不足和可改进之处 一、文献检索 对于初学者来说,应当先从中文…

数智读书笔记系列021《大数据医疗》:探索医疗行业的智能变革

一、书籍介绍 《大数据医疗》由徐曼、沈江、余海燕合著,由机械工业出版社出版 。徐曼是南开大学商学院副教授,在大数据驱动的智能决策研究领域颇有建树,尤其在大数据驱动的医疗与健康决策方面有着深入研究,曾获天津优秀博士论文、…

MarsCode AI实战:利用DeepSeek 快速搭建你的口语学习搭子

资料来源:火山引擎-开发者社区 成品抢先看! 自从MarsCode AI Chat模型全新升级,接入 Deepseek-R1、Deepseek-V3和豆包大模型1.5 三大模型,越来越多朋友注意到了AI编程能给我们带来的无限可能,也开始跃跃欲试想要尝试从…

Linux环境变量:深入解析与实用指南

目录 一、环境变量概述 二、环境变量的作用 三、环境变量的类型 3.1系统环境变量 3.2用户环境变量 四、环境变量的操作 4.1查看环境变量 4.2设置环境变量 4.3删除环境变量 五、环境变量的配置文件 六、环境变量的最佳实践 七、总结 环境变量是Linux系统中至关重要的…

C++20 线程协调类:从入门到精通

文章目录 1. 初识线程协调2. std::barrier:多线程同步的屏障2.1 核心函数2.2 示例代码2.3 高级用法2.4 适用场景 3. std::latch:一次性同步原语3.1 核心函数3.2 示例代码3.3 高级用法3.4 适用场景 4. std::counting_semaphore:可重用的同步原…

【Linux网络】手动部署并测试内网穿透

📢博客主页:https://blog.csdn.net/2301_779549673 📢博客仓库:https://gitee.com/JohnKingW/linux_test/tree/master/lesson 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正! &…

MySQL中的锁机制:从全局锁到行级锁

目录 1. 锁的基本概念 2. 全局锁 2.1 全局锁的定义 2.2 全局锁的类型 2.3 全局锁的使用场景 2.4 全局锁的实现方式 2.5 全局锁的优缺点 2.6 全局锁的优化 3. 表级锁 3.1 表级锁的类型 3.2 表级锁的使用场景 3.3 表级锁的优缺点 4. 意向锁(Intention Lo…

2025年渗透测试面试题总结- 某亭-安全研究员(题目+回答)

网络安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。 目录 一、SQL注入过滤单引号绕过方法 二、MySQL报错注入常用函数 三、报错注入绕WAF 四、MySQL写文件函数…

MacOS安装 nextcloud 的 Virtual File System

需求 在Mac上安装next cloud实现类似 OneDrive 那样,文件直接保存在服务器,需要再下载到本地。 方法 在 官网下载Download for desktop,注意要下对版本,千万别下 Mac OS默认的那个。 安装了登录在配置过程中千万不要设置任何同…

1.8 函数的连续性和间断点

1.连续的定义 2.间断点的定义 3.间断点的分类

Unity 云渲染本地部署方案

Unity Render Streaming 云渲染环境搭建 0.安装 Unity Render Streaming 实现原理: 服务器与客户端实现功能包括: 详细内容见官方文档: 官方文档: https://docs.unity3d.com/Packages/com.unity.renderstreaming3.1/manual/tutorial.html Unity 流送云渲染介绍: …

每日一题力扣3248.矩阵中的蛇c++

3248. 矩阵中的蛇 - 力扣&#xff08;LeetCode&#xff09; class Solution { public:int finalPositionOfSnake(int n, vector<string>& commands) {int i 0;int j 0;for (int k0;k<commands.size();k) {if (commands[k] "RIGHT")j;else if (comma…

本地基于Ollama部署的DeepSeek详细接口文档说明

前文&#xff0c;我们已经在本地基于Ollama部署好了DeepSeek大模型&#xff0c;并且已经告知过如何查看本地的API。为了避免网络安全问题&#xff0c;我们希望已经在本地调优的模型&#xff0c;能够嵌入到在本地的其他应用程序中&#xff0c;发挥本地DeepSeek的作用。因此需要知…

FPGA 以太网通信(三)

一、UDP协议 UDP&#xff08;User Datagram Protocol Protocol&#xff09;&#xff0c;即用户数据报协议&#xff0c;是一种面向无连接的传输层协议。UDP和TCP协议都属于传输层协议&#xff0c;在网络传输中同一 IP 服务器需要提供各种不同的服务&#xff0c;为了区别不同的服…

期刊分区表2025年名单下载(经济学、管理学)

2025年期刊分区表包括SCIE、SSCI、A&HCI、ESCI和OAJ&#xff0c;共设置了包括自然科学、社会科学和人文科学在内的21个大类 本次分享的是期刊分区表2025年名单经济学类、管理学类&#xff0c;一共7631025条 一、数据介绍 数据名称&#xff1a;期刊分区表2025年名单 数据…

如何在MCU工程中启用HardFault硬错误中断

文章目录 一、HardFault出现场景二、启动HardFault三、C代码示例 一、HardFault出现场景 HardFault&#xff08;硬故障&#xff09; 错误中断是 ARM Cortex-M 系列微控制器中一个较为严重的错误中断&#xff0c;一旦触发&#xff0c;表明系统遇到了无法由其他异常处理机制解决…

智能体开发革命:灵燕平台如何重塑企业AI应用生态

在AI技术深度渗透产业的今天&#xff0c;**灵燕智能体平台**以“全生命周期管理”为核心&#xff0c;为企业提供从智能体开发、协作到落地的闭环解决方案&#xff0c;开创了AI应用工业化生产的新模式。 三位一体的智能体开发体系 1. Agent Builder&#xff1a;零门槛构建专属…

机器学习之支持向量机(SVM)算法详解

文章目录 引言一、 什么是支持向量机&#xff08;SVM&#xff09;二、 SVM的基本原理三、数学推导1.线性可分情况2. 非线性可分情况3. 核函数 四、SVM的优缺点优点&#xff1a;缺点&#xff1a; 五、 应用场景六、 Python实现示例七、 总结 引言 支持向量机&#xff08;Suppor…