• 第2章 线性代数


    1. 标量、向量、矩阵和张量

    • 标量(scalar):数

    • 向量(vector):一列数
      x = [ x 1 x 2 . . . x n ] x=

      [x1x2...xn]" role="presentation" style="position: relative;">[x1x2...xn]
      x= x1x2...xn

    • 矩阵(matrix)二维数组

    • 张量(tensor):超过二维的数组

    • 转置(transpose)

    • 主对角线(main diagonal)

    • 广播(broadcasting):矩阵和向量相加过程中,复制向量的方式
      C = A + b C = A + b C=A+b

      [ 1 2 3 4 5 6 7 8 9 ] + [ 1 2 3 ] = [ 1 2 3 4 5 6 7 8 9 ] + [ 1 2 3 1 2 3 1 2 3 ] = [ 2 4 6 5 7 9 8 10 12 ]

      [123456789]" role="presentation" style="position: relative;">[123456789]
      +
      [123]" role="presentation" style="position: relative;">[123]
      =
      [123456789]" role="presentation" style="position: relative;">[123456789]
      +
      [123123123]" role="presentation" style="position: relative;">[123123123]
      =
      [24657981012]" role="presentation" style="position: relative;">[24657981012]
      123456789 +[123]= 123456789 + 123123123 = 24657981012

    2. 矩阵和向量相乘

    • 重要公式

      1. A ( B + C ) = A B + A C A(B+C) = AB + AC A(B+C)=AB+AC

      2. A ( B C ) = ( A B ) C A(BC) = (AB)C A(BC)=(AB)C

      3. A B ≠ B A AB \ne BA AB=BA

      4. ( A B ) T = B T A T (AB)^T = B^TA^T (AB)T=BTAT

      5. x T y = ( x T y ) T = y T x x^Ty = (x^Ty)^T = y^Tx xTy=(xTy)T=yTx

    • 线性方程组
      A x = b Ax = b Ax=b
      其中 A ∈ R m ∗ n A \in ℝ^{m*n} ARmn是一个已知矩阵, b ∈ R m b \in ℝ^{m} bRm是一个已知向量, x ∈ R n x \in ℝ^{n} xRn是一个我们要求解的未知向量

    3. 单位矩阵和逆矩阵

    • 矩阵逆(matrix inversion)

    • 单位矩阵(identity matrix)
      A − 1 A = A A − 1 = I n A^{-1}A = AA^{-1} = I_n A1A=AA1=In

    4. 线性相关和生成子空间

    • 如果逆矩阵 A − 1 A^{-1} A1存在,那么 A x = b Ax = b Ax=b肯定对于每一个向量 b b b恰好存在一个解

    • 但是,对于方程组而言,对于向量 b b b的某些值,有可能不存在解,或者存在无限多个解

    • 存在多于一个解但是少于无限多个解的情况是不可能发生的

      • 因为如果 x x x y y y都是某方程组的解,则 z = α x + ( 1 − α ) y z = \alpha x + (1 - \alpha)y z=αx+(1α)y也是方程的解
    • 线性组合(linear combination)
      A x = [ A 1 , 1 x 1 + A 1 , 2 x 2 + . . . A 1 , n x n A 2 , 1 x 1 + A 2 , 2 x 2 + . . . A 2 , n x n . . . A m , 1 x 1 + A m , 2 x 2 + . . . A m , n x n ] = x 1 [ A 1 , 1 A 2 , 1 . . . A m , 1 ] + x 2 [ A 1 , 2 A 2 , 2 . . . A m , 2 ] + . . . x n [ A 1 , n A 2 , n . . . A m , n ] = ∑ i = 1 n x i A : , i Ax =

      [A1,1x1+A1,2x2+...A1,nxnA2,1x1+A2,2x2+...A2,nxn...Am,1x1+Am,2x2+...Am,nxn]" role="presentation" style="position: relative;">[A1,1x1+A1,2x2+...A1,nxnA2,1x1+A2,2x2+...A2,nxn...Am,1x1+Am,2x2+...Am,nxn]
      = x_1
      [A1,1A2,1...Am,1]" role="presentation" style="position: relative;">[A1,1A2,1...Am,1]
      + x_2
      [A1,2A2,2...Am,2]" role="presentation" style="position: relative;">[A1,2A2,2...Am,2]
      + ... x_n
      [A1,nA2,n...Am,n]" role="presentation" style="position: relative;">[A1,nA2,n...Am,n]
      = \sum_{i=1}^{n} x_iA_{:, i} Ax= A1,1x1+A1,2x2+...A1,nxnA2,1x1+A2,2x2+...A2,nxn...Am,1x1+Am,2x2+...Am,nxn =x1 A1,1A2,1...Am,1 +x2 A1,2A2,2...Am,2 +...xn A1,nA2,n...Am,n =i=1nxiA:,i

    • 一组向量的生成子空间(span):原始向量线性组合后所能抵达的点的集合

      • x x x
    • 确定 A x = b Ax=b Ax=b是否有解,相当于确定向量 b b b是否在 A A A列向量的生成子空间中

      • 这个特殊的生成子空间被称为 A A A列空间(column space)或者 A A A值域(range)
      • x x x组成的集合
    • 线性相关(linear dependence):一组向量中的任意一个向量都表示成其他向量的线性组合

    • 线性无关(linearly indepent):一组向量中的任意一个向量都不能表示成其他向量的线性组合

    • 为使矩阵可逆,需要保证 A x = b Ax=b Ax=b对于每一个 b b b至多有一个解

      • 即矩阵必须是一个方阵(square)
    • 奇异(singular)矩阵:一个列向量线性相关的方阵

    5. 范数

    • 范数(norm):将向量映射到非负值的函数

    • 范数 L p L^p Lp
      ∣ ∣ x ∣ ∣ p = ( ∑ i ∣ x i ∣ p ) 1 p ||x||_p = (\sum_{i} |x_i|^p)^{\frac{1}{p}} ∣∣xp=(ixip)p1
      其中, p ∈ R p \in ℝ pR p ≥ 1 p \geq 1 p1

    • 向量 x x x的范数:从原点到点 x x x的距离

    • 满足以下性质

      • f ( x ) = 0 ⇒ x = 0 f(x) = 0 \Rightarrow x = \mathbf{0} f(x)=0x=0

      • f ( x + y ) ≤ f ( x ) + f ( y ) f(x+y) \leq f(x) + f(y) f(x+y)f(x)+f(y)

        • 三角不等式(triangle inequality)
      • ∀ α ∈ R , f ( α x ) = ∣ α ∣ f ( x ) \forall \alpha \in ℝ, \hspace{.1cm} f(\alpha x) = |\alpha|f(x) αR,f(αx)=αf(x)

    • L 0 L^0 L0范数:向量中非0的元素的个数

      • L0范数很难优化求解
    • L 1 L^1 L1范数:向量中各个元素绝对值之和

    • L 2 L^2 L2范数:向量各元素的平方和然后求平方根

      • 欧几里得范数(Euclidean norm)
      • 简化为 ∣ ∣ x ∣ ∣ ||x|| ∣∣x∣∣
    • L ∞ L^{\infty} L范数:向量中具有最大幅值的元素的绝对值

      • 最大范数(Max norm)
      • ∣ ∣ x ∣ ∣ ∞ = max ⁡ i ∣ x i ∣ ||x||_{\infty} = \displaystyle \max_{i}|x_i| ∣∣x=imaxxi
    • L F L^F LF范数:矩阵范数

      • Frobenius范数(Frobenius norm)
      • $||A||F = \sqrt{\displaystyle \sum{i,j} A_{i,j}^2} $
    • 两个向量的点积可以用范数来表示
      x T y = ∣ ∣ x ∣ ∣ 2 ∣ ∣ y ∣ ∣ 2 c o s θ x^Ty = ||x||_2||y||_2cos\theta xTy=∣∣x2∣∣y2cosθ
      其中, θ \theta θ x x x y y y之间的夹角

    6. 特殊类型的矩阵和向量

    • 单位向量(unit vector):具有**单位范数(unit norm)**的向量

    • 如果 x T y = 0 x^Ty=0 xTy=0,那么向量 x x x和向量 y y y互相正交(orthogonal)

    • 标准正交(orthonormal):向量正交,且范数均为1

    • 对角矩阵(diagonal matrix):只在主对角线上含有非零元素,其他位置都是零

      • 字母表示为 d i a g ( v ) diag(v) diag(v)
    • 对称矩阵(symmetric matrix):转置和自己相等的矩阵

    • 正交矩阵(orthogonal matrix):行向量和列向量分别标准正交的方阵
      A T A = A A T = I A − 1 = A T A^TA = AA^T = I \\ A^{-1} = A^T ATA=AAT=IA1=AT

    7. 特征分解

    • 方阵 A A A特征向量(eigenvector):与 A A A相乘后相当于对该向量进行缩放的非零向量 v v v
      A v = λ v Av = \lambda v Av=λv
      其中,标量 λ λ λ称为这个特征向量对应的特征值(eigenvalue)

      • 左特征向量(left eigenvector)
        v T A = λ v T v^TA = \lambda v^T vTA=λvT

      • 右特征向量(right eigenvector)
        A v = λ v Av = \lambda v Av=λv

    • 特征分解(eigendecomposition):将矩阵分解成一组特征向量和特征值

      • 矩阵 A A A具有 n n n个线性无关的特征向量 V = [ v ( 1 ) , . . . , v ( n ) ] V = [v^{(1)}, ... , v^{(n)}] V=[v(1),...,v(n)],对应着 n n n个特征值 λ = [ λ 1 , . . . , λ n ] \lambda = [\lambda_1, ... , \lambda_n] λ=[λ1,...,λn]

      • 矩阵 A A A的特征分解
        A = V d i a g ( λ ) V − 1 A = Vdiag(\lambda)V^{-1} A=Vdiag(λ)V1

      • A A A是实对称矩阵的情况下, V V V是正交矩阵

        • A A A看作是沿方向 v ( i ) v^{(i)} v(i)延展 λ i \lambda_i λi倍的空间
    • 正定(positive definite):所有特征值都是正数的矩阵
      x T A x = 0 ⇒ x = 0 x^TAx = 0 \Rightarrow x = 0 xTAx=0x=0

    • 半正定(positive semidefinite):所有特征值都是非负数的矩阵
      ∀ x , x T A x ≥ 0 \forall x, \hspace{0.1cm} x^TAx \geq 0 x,xTAx0

    • 负定(negative definite):所有特征值都是负数的矩阵称

    • 半负定(negative semidefinite):所有特征值都是非正数的矩阵

    8. 奇异值分解

    • 奇异值分解(Singular Value Decomposition,SVD):将矩阵分解为奇异向量(singular vector)奇异值(singular value)

    • 每个实数矩阵都有一个奇异值分解,但不一定都有特征分解

      • 非方阵的矩阵没有特征分解,这时我们只能使用奇异值分解。
    • 矩阵 A A A的奇异值分解
      A = U D V T A = UDV^T A=UDVT
      其中, A A A是一个 m ∗ n m*n mn的矩阵, U U U是一个 m ∗ m m*m mm的矩阵, D D D是一个 m ∗ n m*n mn的矩阵, V V V是一个 n ∗ n n*n nn矩阵

      • U U U V V V都是正交矩阵, D D D是对角矩阵

      • D D D对角线上的元素称为矩阵 A A A奇异值(singular value)

      • U U U的列向量称为左奇异向量(left singular vector)

        • A A T AA^T AAT的特征向量
      • V V V的列向量称右奇异向量(right singular vector)

        • A T A A^TA ATA的特征向量
      • A A A的非零奇异值: A A T AA^T AAT A T A A^TA ATA特征值的平方根

    9. Moore-Penrose伪逆

    • Moore-Penrose伪逆(Moore-Penrose pseudoinverse)

    • 矩阵 A ( m ∗ n ) A(m*n) A(mn)的伪逆的定义
      A + = lim ⁡ α → 0 ( A T A + α I ) − 1 A T A^+ = \lim\limits_{\alpha \rightarrow 0} (A^TA + \alpha I)^{-1}A^T A+=α0lim(ATA+αI)1AT

    • 计算伪逆的实际算法没有基于这个定义,而是使用下面的公式
      A + = V D + U T A^+ = VD^+U^T A+=VD+UT

      • 其中,矩阵 U U U D D D V V V是矩阵 A A A奇异值分解后得到的矩阵
      • D + D^+ D+:非零元素取倒数之后再转置得到
    • m ⩽ n m \leqslant n mn时,使用伪逆求解线性方程是众多可能解法中的一种

      • x = A + y x=A^+y x=A+y是方程所有可行解中 ∣ ∣ x ∣ ∣ 2 ||x||_2 ∣∣x2最小的一个
    • m > n m > n m>n时,可能没有解

      • 通过伪逆得到的 x x x使得 A x Ax Ax y y y ∣ ∣ A x − y ∣ ∣ 2 ||Ax - y||_2 ∣∣Axy2最小

    10. 迹运算

    • 迹运算:矩阵对角元素的和
      T r ( A ) = ∑ i A i , i Tr(A) = \sum_{i}A_{i,i} Tr(A)=iAi,i

    • 另一种描述矩阵Frobenius范数的方式
      ∣ ∣ A ∣ ∣ F = T r ( A A T ) ||A||_F = \sqrt{Tr(AA^T)} ∣∣AF=Tr(AAT)

    • 迹运算在转置运算下是不变的
      T r ( A ) = T r ( A T ) Tr(A) = Tr(A^T) Tr(A)=Tr(AT)

    • 多个矩阵相乘得到的方阵的迹,和将这些矩阵中的最后一个挪到最前面之后相乘的迹是相同的
      T r ( A B C ) = T r ( C A B ) = T r ( B C A ) Tr(ABC) = Tr(CAB) = Tr(BCA) Tr(ABC)=Tr(CAB)=Tr(BCA)

    11. 行列式

    • 行列式:将方阵 A A A映射到实数的函数
      • 记作 d e t ( A ) det(A) det(A)
      • 等于矩阵特征值的乘积
    • 行列式的绝对值可以用来衡量矩阵参与矩阵乘法后空间扩大或者缩小了多少
    • 如果行列式是 0 0 0,那么空间至少沿着某一维完全收缩了,使其失去了所有的体积
    • 如果行列式是 1 1 1,那么这个转换保持空间体积不变
  • 相关阅读:
    HttpServletQequest与HttpServletQespons的常用方法!
    用JSX来写Vue3,瞬间找到React 的感觉
    注解【元数据,自定义注解等概念详解】(超简单的好吧)
    Python&C++相互混合调用编程全面实战-20python+QT+ffmpeg综合项目实战的需求和需要用到的库
    FPGA八股文(2)——笔试的FPGA问题汇总(持续更新)
    【OpenCV实现图像阈值处理】
    4.Python建造者模式
    暴力破解及验证码安全
    无法解析 Failure to transfer *** from *** was cached in the local repository
    时间序列-ARIMA
  • 原文地址:https://blog.csdn.net/BlackOrnate/article/details/136405772