什么是线性变换

什么是线性变换?

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

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


线性变换的定义

给定两个向量空间 V V V W W W,一个映射 T T T 是线性变换,当且仅当满足以下两个条件:

  1. 加法封闭性
    对于 u , v ∈ V \mathbf{u}, \mathbf{v} \in V u,vV,有:
    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)

  2. 标量乘法封闭性
    对于 u ∈ V \mathbf{u} \in V uV 和任意标量 c ∈ R c \in \mathbb{R} cR,有:
    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 xRn 是输入向量。
  • 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} ARm×n 是线性变换矩阵。

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


常见的线性变换

  1. 缩放(Scaling)

    • 将向量的长度按比例放大或缩小,但保持方向不变。
    • 矩阵形式:
      A = [ s x 0 0 s y ] A = \begin{bmatrix} s_x & 0 \\ 0 & s_y \end{bmatrix} A=[sx00sy]
    • 示例:
      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)=[2003][x1x2]=[2x13x2]
  2. 旋转(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=[0110]
  3. 投影(Projection)

    • 将向量投影到某个子空间上,例如一条直线或一个平面。
    • 矩阵形式(投影到单位向量 n \mathbf{n} n 上):
      A = n n ⊤ A = \mathbf{n} \mathbf{n}^\top A=nn
  4. 反射(Reflection)

    • 将向量关于某条直线或平面对称反射。
    • 矩阵形式:
      A = I − 2 n n ⊤ A = I - 2\mathbf{n}\mathbf{n}^\top A=I2nn
      其中 n \mathbf{n} n 是反射平面的单位法向量。
  5. 剪切(Shear)

    • 将向量沿某个方向倾斜。
    • 矩阵形式(以 2D 为例):
      A = [ 1 k 0 1 ] A = \begin{bmatrix} 1 & k \\ 0 & 1 \end{bmatrix} A=[10k1]

线性变换的性质

  1. 保持原点
    线性变换始终将原点 0 \mathbf{0} 0 映射到原点:
    T ( 0 ) = A 0 = 0 T(\mathbf{0}) = A \mathbf{0} = \mathbf{0} T(0)=A0=0

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

  3. 组合性
    多个线性变换的组合仍然是一个线性变换。假设有两个变换 T 1 ( x ) = A 1 x T_1(\mathbf{x}) = A_1 \mathbf{x} T1(x)=A1x T 2 ( x ) = A 2 x T_2(\mathbf{x}) = A_2 \mathbf{x} T2(x)=A2x,则组合变换 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(A1x)=(A2A1)x

  4. 可逆性
    如果矩阵 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} T1(y)=A1y


线性变换与深度学习

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

  1. 全连接层
    全连接层本质上是一个线性变换,其形式为:
    y = W x + b \mathbf{y} = \mathbf{W} \mathbf{x} + \mathbf{b} y=Wx+b
    其中:

    • W \mathbf{W} W 是权重矩阵。
    • b \mathbf{b} b 是偏置向量。
  2. 卷积操作
    卷积操作可以看作是线性变换在局部区域的应用。

  3. 特征提取
    在线性变换中,通过矩阵 A A A 的特性,可以提取输入数据的特定特征,例如主成分分析(PCA)中使用的线性映射。


总结

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

彬彬侠

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值