什么是线性变换

什么是线性变换

什么是线性变换?

线性变换(Linear Transformation)是一种数学变换,用于将一个向量空间中的向量映射到另一个向量空间,同时保持加法和标量乘法的性质。这是线性代数中的核心概念之一,在机器学习、深度学习和计算机图形学等领域具有重要应用。

简单来说,线性变换可以通过矩阵乘法来表示,它的作用通常是对向量进行缩放、旋转或投影等操作。

线性变换的定义

给定两个向量空间

V

V

V 和

W

W

W,一个映射

T

T

T 是线性变换,当且仅当满足以下两个条件:

加法封闭性: 对于

u

,

v

V

\mathbf{u}, \mathbf{v} \in V

u,v∈V,有:

T

(

u

+

v

)

=

T

(

u

)

+

T

(

v

)

T(\mathbf{u} + \mathbf{v}) = T(\mathbf{u}) + T(\mathbf{v})

T(u+v)=T(u)+T(v)

标量乘法封闭性: 对于

u

V

\mathbf{u} \in V

u∈V 和任意标量

c

R

c \in \mathbb{R}

c∈R,有:

T

(

c

u

)

=

c

T

(

u

)

T(c \mathbf{u}) = c T(\mathbf{u})

T(cu)=cT(u)

如果映射

T

T

T 满足上述两个条件,则

T

T

T 是一个线性变换。

线性变换的矩阵表示

在实际应用中,线性变换通常表示为矩阵

A

A

A 作用于向量

x

\mathbf{x}

x:

T

(

x

)

=

A

x

T(\mathbf{x}) = A \mathbf{x}

T(x)=Ax 其中:

x

R

n

\mathbf{x} \in \mathbb{R}^n

x∈Rn 是输入向量。

T

(

x

)

R

m

T(\mathbf{x}) \in \mathbb{R}^m

T(x)∈Rm 是输出向量。

A

R

m

×

n

A \in \mathbb{R}^{m \times n}

A∈Rm×n 是线性变换矩阵。

矩阵

A

A

A 决定了线性变换的具体性质,例如是否是缩放、旋转或投影。

常见的线性变换

缩放(Scaling)

将向量的长度按比例放大或缩小,但保持方向不变。矩阵形式:

A

=

[

s

x

0

0

s

y

]

A = \begin{bmatrix} s_x & 0 \\ 0 & s_y \end{bmatrix}

A=[sx​0​0sy​​]示例:

T

(

x

)

=

[

2

0

0

3

]

[

x

1

x

2

]

=

[

2

x

1

3

x

2

]

T(\mathbf{x}) = \begin{bmatrix} 2 & 0 \\ 0 & 3 \end{bmatrix} \begin{bmatrix} x_1 \\ x_2 \end{bmatrix} = \begin{bmatrix} 2x_1 \\ 3x_2 \end{bmatrix}

T(x)=[20​03​][x1​x2​​]=[2x1​3x2​​] 旋转(Rotation)

将向量绕原点旋转一定角度。矩阵形式(以 2D 为例):

A

=

[

cos

θ

sin

θ

sin

θ

cos

θ

]

A = \begin{bmatrix} \cos\theta & -\sin\theta \\ \sin\theta & \cos\theta \end{bmatrix}

A=[cosθsinθ​−sinθcosθ​]示例: 将向量

x

=

[

1

,

0

]

\mathbf{x} = [1, 0]^\top

x=[1,0]⊤ 逆时针旋转 90°:

A

=

[

0

1

1

0

]

A = \begin{bmatrix} 0 & -1 \\ 1 & 0 \end{bmatrix}

A=[01​−10​] 投影(Projection)

将向量投影到某个子空间上,例如一条直线或一个平面。矩阵形式(投影到单位向量

n

\mathbf{n}

n 上):

A

=

n

n

A = \mathbf{n} \mathbf{n}^\top

A=nn⊤ 反射(Reflection)

将向量关于某条直线或平面对称反射。矩阵形式:

A

=

I

2

n

n

A = I - 2\mathbf{n}\mathbf{n}^\top

A=I−2nn⊤ 其中

n

\mathbf{n}

n 是反射平面的单位法向量。 剪切(Shear)

将向量沿某个方向倾斜。矩阵形式(以 2D 为例):

A

=

[

1

k

0

1

]

A = \begin{bmatrix} 1 & k \\ 0 & 1 \end{bmatrix}

A=[10​k1​]

线性变换的性质

保持原点: 线性变换始终将原点

0

\mathbf{0}

0 映射到原点:

T

(

0

)

=

A

0

=

0

T(\mathbf{0}) = A \mathbf{0} = \mathbf{0}

T(0)=A0=0

保持直线性: 线性变换会将直线映射为直线。

组合性: 多个线性变换的组合仍然是一个线性变换。假设有两个变换

T

1

(

x

)

=

A

1

x

T_1(\mathbf{x}) = A_1 \mathbf{x}

T1​(x)=A1​x 和

T

2

(

x

)

=

A

2

x

T_2(\mathbf{x}) = A_2 \mathbf{x}

T2​(x)=A2​x,则组合变换

T

2

(

T

1

(

x

)

)

T_2(T_1(\mathbf{x}))

T2​(T1​(x)) 可以用矩阵乘法表示:

T

2

(

T

1

(

x

)

)

=

A

2

(

A

1

x

)

=

(

A

2

A

1

)

x

T_2(T_1(\mathbf{x})) = A_2 (A_1 \mathbf{x}) = (A_2 A_1) \mathbf{x}

T2​(T1​(x))=A2​(A1​x)=(A2​A1​)x

可逆性: 如果矩阵

A

A

A 是非奇异的(即

det

(

A

)

0

\det(A) \neq 0

det(A)=0),则线性变换是可逆的,且逆变换为:

T

1

(

y

)

=

A

1

y

T^{-1}(\mathbf{y}) = A^{-1} \mathbf{y}

T−1(y)=A−1y

线性变换与深度学习

在线性代数中,线性变换被用来描述矢量之间的映射。在深度学习中,线性变换扮演着重要角色:

全连接层: 全连接层本质上是一个线性变换,其形式为:

y

=

W

x

+

b

\mathbf{y} = \mathbf{W} \mathbf{x} + \mathbf{b}

y=Wx+b 其中:

W

\mathbf{W}

W 是权重矩阵。

b

\mathbf{b}

b 是偏置向量。 卷积操作: 卷积操作可以看作是线性变换在局部区域的应用。

特征提取: 在线性变换中,通过矩阵

A

A

A 的特性,可以提取输入数据的特定特征,例如主成分分析(PCA)中使用的线性映射。

总结

线性变换是将输入向量通过矩阵映射到另一个向量空间的数学操作。它具有以下特点:

矩阵乘法是其核心实现形式。能够完成缩放、旋转、投影等操作。在深度学习中,线性变换是全连接层、卷积层的数学基础。

相关推荐