美文网首页
线性代数基础

线性代数基础

作者: 0xFFFFFG | 来源:发表于2019-07-27 16:21 被阅读0次

    标量、向量、矩阵和张量

    标量(scalar):斜体\mathit{s}表示标量,即一个单独的数,\mathit{s}\in \mathbb{R}表示\mathit{s}是实数集上的一个标量,\mathit{n}\in \mathbb{N}表示\mathit{n}为自然数集上的一个标量.
    向量(vector):粗体\boldsymbol{x}表示向量,\boldsymbol{x} \in \mathbb{R}^n表示\boldsymbol{x}为实数集上的一个n维向量,\boldsymbol{x}_n表示向量的第n个元素,不特别说明时向量都表示列向量.
    我们约定向量下标从0开始,到n-1结束.并且\sum_{i=0}^{n}x_n表示x_0+x_1+...+x_{n-1}
    矩阵(matrix):粗体大写字母\mathbf{A}表示矩阵,\mathbf{A} \in \mathbb{R}^{m\times n}表示\mathbf{A}是一个在实数集上m行n列的矩阵,A_{i,j}表示A中第i行第j列的元素,A_{m,n}表示矩阵右下角的元素,A_{i,:}表示矩阵第i行(可以认为是一个向量).
    张量(tensor):字体\mathsf{A}表示张量,A_{i,j,k}表示张量\mathsf{A}中坐标为(i,j,k)的元素.
    矩阵转置:用\mathbf{A}^T表示\mathbf{A}的转置
    矩阵加法:shape相同的两个矩阵可以相加,\mathbf{C} = \mathbf{A} + \mathbf{B},其中C_{i,j} = A_{i,j} + B_{i,j},即对应位置元素相加
    标量点乘矩阵和矩阵加上标量:\mathbf{C} = \mathit{a} \cdot \mathbf{B}+\mathit{c},其中C_{i,j}=a \cdot B_{i,j} + c
    广播:在深度学习中我们允许矩阵和向量相加(前提是矩阵的列数和向量的长度一致),产生一个新的矩阵,操作是让矩阵的每一行与这个向量相加.\mathbf{C}=\mathbf{A}+\boldsymbol{b},其中C_{i,j}=A_{i,j}+b_j,这种运算称为广播.

    矩阵和向量的乘法运算

    矩阵乘积(点乘):若\mathbf{A} \in \mathbb{R}^{m \times n},\mathbf{B} \in \mathbb{R}^{n \times p},则\mathbf{C} = \mathbf{AB},其中\mathbf{C} \in \mathbb{R}^{m \times p}C_{i,j} = \sum_{e=0}^{n}A_{i,e}B_{e,j}(即A的第i行和B的第j列做向量点乘的结果)
    矩阵元素对应乘积(Hadamard):若\mathbf{A}.shape = \mathbf{B}.shape,则有\mathbf{C} = \mathbf{A} \odot \mathbf{B},其中C_{i,j}=A_{i,j}B_{i,j}
    向量点乘:若列向量\boldsymbol{x} \in \mathbb{R}^{n},\boldsymbol{y} \in \mathbb{R}^{n},则有\mathit{z} = \boldsymbol{x} ^{T} \boldsymbol{y},其中\mathit{z} = \sum_{i=0}^{n}x_i y_i,出于简化目的我们定义点乘运算\boldsymbol{x} \cdot \boldsymbol{y} = \boldsymbol{x} ^{T} \boldsymbol{y}
    矩阵乘积满足分配率和结合律:
    \mathbf{A}(\mathbf{B}+\mathbf{C}) = \mathbf{AB} + \mathbf{AC} \\ \mathbf{A}(\mathbf{BC})=\mathbf{A}(\mathbf{BC})
    注意矩阵乘法不一定满足交换律
    向量乘积满足交换律:
    \boldsymbol{x} \cdot \boldsymbol{y} =\boldsymbol{y} \cdot \boldsymbol{x}
    向量乘积的转置:
    (\mathbf{AB})^T = \mathbf{B}^T\mathbf{A}^T
    线性代数表示线性方程组:
    \mathbf{A}\boldsymbol{x}=\boldsymbol{b}
    其中\mathbf{A} \in \mathbb{R}^{m \times n}是参数矩阵,\boldsymbol{x} \in \mathbb{R}^n表示未知向量,其中每个元素都是未知的 ,\boldsymbol{b} \in \mathbb{R}^{m}是已知向量,用这种形式可以方便地表示线程方程组.

    单位矩阵和逆矩阵

    单位矩阵:主对角线上的元素都为1,其余元素都为0的方阵称为n维单位矩阵,记为\mathbf{I}_n,\mathbf{I}_n \in \mathbb{R}^{n \times n}.单位矩阵乘以任意向量都不会改变向量的值.
    \forall \boldsymbol{x} \in \mathbb{R}^n, \mathbf{I}_n \boldsymbol{x} = \boldsymbol{x}
    矩阵的逆(默认表示左逆):如果某个矩阵乘以\mathbf{A}的结果为一个单位矩阵,则称这个矩阵为\mathbf{A}的逆,记为\mathbf{A}^{-1}.即
    \mathbf{A}^{-1}\mathbf{A}=\mathbf{I}_n
    方阵和奇异矩阵: 如果矩阵\mathbf{A} \in \mathbb{R}^{m \times m},则称\mathbf{A}为方阵.如果方阵的某两个列向量线性相关(即\exists \alpha \in \mathbb{R}\ s.t.\ \alpha \boldsymbol{y}_1 = \boldsymbol{y}_2,其中\boldsymbol{y}_1,\boldsymbol{y}_2是矩阵\mathbf{A}的任意2个列向量),则称这个方阵为奇异矩阵.奇异矩阵无法使用矩阵逆来求解方程\mathbf{A}\boldsymbol{x}=\boldsymbol{b}
    矩阵的右逆:若\mathbf{A}\mathbf{A}^{-1}=\mathbf{I}_n,则称\mathbf{A}^{-1}为矩阵的右逆.对于方阵而言它的左逆和右逆是相等的.

    范数(norm)

    范数是满足如下性质的任意函数f:

    • f(x) = 0 \Rightarrow \boldsymbol{x} = \boldsymbol{0}
    • f(x+y) \leq f(x)+f(y)
    • \forall \alpha \in \mathbb{R} ,f(\alpha x) = |\alpha| f(x)
      Lp范数:若\boldsymbol{x} \in \mathbb{R}^n,则\boldsymbol{x}的p范数
      \|\boldsymbol{x}\|_p=\left( \sum_{i=0}^{n}|x_i|^p \right) ^{\frac{1}{p}}
      L2范数:又称欧几里得范数,它表示从原点到向量\boldsymbol{x}终点的欧几里得距离.我们可以简化地将\|\boldsymbol{x}\|_2表示为\|\boldsymbol{x}\|.
      \|\boldsymbol{x}\|=\left( \sum_{i=0}^{n}|x_i|^2 \right) ^{\frac{1}{2}}
      L1范数:L1范数对0和非0元素的差异非常敏感,
      \|\boldsymbol{x}\|_1= \sum_{i=0}^{n}|x_i|
      最大范数:即L\infty范数
      \|\boldsymbol{x}\| _\infty= max(|x_i|)
      Frobenius范数:可以用于衡量矩阵的大小(\mathbf{A} \in \mathbb{R}^{m \times n}):
      \|\mathbf{A}\| _F= \left(\sum_{i=0}^{m}\sum_{j=0}^{n}|A_{i,j}|^2 \right) ^{\frac{1}{2}}
      向量点乘也可以使用L2范数来计算
      \boldsymbol{x} \cdot \boldsymbol{y} = \|\boldsymbol{x}\| \cdot \|\boldsymbol{y}\| \cdot \cos \theta
      其中\theta\boldsymbol{x}\boldsymbol{y}的夹角.

    特殊矩阵和向量

    对角矩阵: 若\mathbf{D} \in \mathbb{R}^{m \times m},且\forall \ i,j \geq 0; i,j \lt m ; i \neq j \quad s.t. \quad D_{i,j}=0,则称\mathbf{D}为对角矩阵.即只有主对角线上存在非0元素的矩阵称为对角矩阵.单位矩阵是一个特殊的对角矩阵.
    diag(\boldsymbol{v})表示对角线上的元素为向量\boldsymbol{v}的对角方阵.对角方阵具有如下性质:

    • diag(\boldsymbol{v})\boldsymbol{x}=\boldsymbol{v}\odot \boldsymbol{x}
    • diag(\boldsymbol{v})^{-1} = diag([v_0^{-1},v_1^{-1},...,v_{n-1}^{-1}]^T)

    对称矩阵: 若\mathbf{A} = \mathbf{A}^T则称\mathbf{A}为对称矩阵.
    单位向量:若\| \boldsymbol{x}\| = 1,则\boldsymbol{x}称为单位向量.
    正交向量:若\boldsymbol{x} \cdot \boldsymbol{y}=0则称\boldsymbol{x}\boldsymbol{y}为正交向量.如果这两个向量都有非0范数,则这两个向量的夹角为90°.若这两个向量都是单位向量,则称它们标准正交.
    正交矩阵:若方阵行向量和列向量分别标准正交,即\mathbf{A}^T\mathbf{A}=\mathbf{A}\mathbf{A}^T=\mathbf{I}则称这个方阵为正交矩阵.正交矩阵具有\mathbf{A}^T = \mathbf{A} ^ {-1}的性质.

    特征分解

    定义:将矩阵分解成一组特征向量和特征值.方阵\mathbf{A}的特征向量指与\mathbf{A}相乘后相当于对改向量进行缩放的非零向量\boldsymbol{v}.即
    \mathbf{A}\boldsymbol{v}=\lambda\boldsymbol{v}
    .其中标量\lambda称作这个特征向量对应的特征值.
    由于如果\boldsymbol{v}\mathbf{A}的特征向量,那么\mathit{s}\boldsymbol{v}也是\mathbf{A}的特征向量(\mathit{s} \in \mathbb{R},\mathit{s} \neq 0),所以通常我们只关注矩阵的单位特征向量.
    假设矩阵\mathbf{A}有n个线性无关的特征向量{\boldsymbol{v}_0,\boldsymbol{v}_1,...,\boldsymbol{v}_{n-1}},对应特征值{\mathit{\lambda}_0,\mathit{\lambda}_1,...,\mathit{\lambda}_{n-1}}.令矩阵\mathbf{V} = [\boldsymbol{v}_0,\boldsymbol{v}_1,...,\boldsymbol{v}_{n-1}],向量\boldsymbol{\lambda}=[\mathit{\lambda}_0,\mathit{\lambda}_1,...,\mathit{\lambda}_{n-1}]^T,则\mathbf{A}的特征分解可以记作
    \mathbf{A}=\mathbf{V}diag(\boldsymbol{\lambda})\mathbf{V}^{-1}.

    `

    相关文章

      网友评论

          本文标题:线性代数基础

          本文链接:https://www.haomeiwen.com/subject/njcrkctx.html