下面讨论m×nm\times nm×n的秩为rrr的矩阵

对于不同情况,讨论逆矩阵

两侧逆矩阵 2-sided inverse

这也是一般所说的“逆矩阵”的含义
方阵A\boldsymbol{A}A满秩r=m=nr=m=nr=m=n,那么有A−1A=AA−1=I\boldsymbol{A}^{-1} \boldsymbol{A}^{=} \boldsymbol{A} \boldsymbol{A}^{-1}=\boldsymbol{I}A−1A=AA−1=I,其中A−1\boldsymbol{A}^{-1}A−1为两侧逆矩阵(简称逆矩阵)

更一般的,对于长方形的矩阵,可以推广逆矩阵的概念,得到单侧逆

单边逆 one-sided inverse

一般的n×mn\times mn×m长方形矩阵,不可能有两侧逆矩阵
原因:假如矩阵向量相乘得到零向量Ax=0\mathbf A\mathbf x=\mathbf 0Ax=0,对应于降维的线性变换没有逆矩阵能够还原这个过程;
因此我们说:零空间的存在(A\boldsymbol{A}A的零空间和AT\boldsymbol{A}^TAT的零空间中有非零向量)毁掉了逆矩阵,而长方形矩阵A\boldsymbol{A}A和AT\boldsymbol{A}^TAT总有一个的零空间维数不为0(n−r≠0或m−r≠0n-r\neq 0或m-r\neq 0n−r=0或m−r=0)

具体在下面的四个子空间讨论的部分还会讲到

左逆矩阵 Left inverse

矩阵A\boldsymbol{A}A列满秩r=n≤mr=n\leq mr=n≤m,存在左逆矩阵Aleft −1\boldsymbol{A}_{\text {left }}^{-1}Aleft −1​,满足Aleft −1n×mAm×n=In×n{\boldsymbol{A}_{\text {left }}^{-1}}_{n\times m} \boldsymbol{A}_{m\times n}=\boldsymbol{I}_{n\times n}Aleft −1​n×m​Am×n​=In×n​;
其中左逆矩阵Aleft −1=(ATA)−1AT\boldsymbol{A}_{\text {left }}^{-1}=\left(\boldsymbol{A}^{T} \boldsymbol{A}\right)^{-1} \boldsymbol{A}^{T}Aleft −1​=(ATA)−1AT(注意,实际上有很多左逆,这里写出的是其中一个)

前置知识:
对于长方形矩阵,ATA\boldsymbol{A}^{T} \boldsymbol{A}ATA是很好的观察对象;
ATA\boldsymbol{A}^{T} \boldsymbol{A}ATA至少为半正定矩阵;当A\boldsymbol{A}A列满秩r=nr=nr=n时,ATA\boldsymbol{A}^{T} \boldsymbol{A}ATA正定,进而行列式大于0、满秩、可逆
详见线性代数学习笔记8-4:正定矩阵

证明:
假如A\boldsymbol{A}A列满秩r=nr=nr=n,则(ATA)n×n(\boldsymbol{A}^{T} \boldsymbol{A})_{n\times n}(ATA)n×n​满秩r=nr=nr=n、可逆,则有(ATA)−1ATA=I\left(\boldsymbol{A}^{T} \boldsymbol{A}\right)^{-1} \boldsymbol{A}^{T} \boldsymbol{A}=\boldsymbol{I}(ATA)−1ATA=I
由上式可得,A\boldsymbol{A}A的左逆矩阵Aleft −1=(ATA)−1AT\boldsymbol{A}_{\text {left }}^{-1}=\left(\boldsymbol{A}^{T} \boldsymbol{A}\right)^{-1} \boldsymbol{A}^{T}Aleft −1​=(ATA)−1AT

注意,上面介绍的左逆矩阵,也是最小二乘法能够奏效的核心所在
之前说过,根据最小二乘法,Ax=b\mathbf A \boldsymbol x=\boldsymbol bAx=b无解时,转而求解ATAx^=ATb\mathbf A^T\mathbf A \hat{\boldsymbol x}=\mathbf A^T\boldsymbol bATAx^=ATb,该方程的解x~\tilde{\boldsymbol x}x~会是“最优解”
实际上,其理论依据就在于,当A\mathbf AA列满秩r=nr=nr=n时,ATA\mathbf A^T \mathbf AATA为正定矩阵,进而可逆(后一个方程必有解)
详见线性代数学习笔记8-4:正定矩阵、最小二乘法与半正定矩阵A^T A
后面将会看到,当A\mathbf AA不是列满秩时,我们需要用伪逆矩阵来求最小范数解

右逆矩阵 Right inverse

矩阵A\boldsymbol{A}A行满秩r=m≤nr=m\leq nr=m≤n,存在右逆矩阵Aright −1\boldsymbol{A}_{\text {right }}^{-1}Aright −1​,满足Am×nAright−1n×m=Im×m\boldsymbol{A}_{m\times n}{\boldsymbol{A}_{\text {right}}^{-1}}_{n\times m} =\boldsymbol{I}_{m\times m}Am×n​Aright−1​n×m​=Im×m​;
其中右逆矩阵Aright−1=AT(AAT)−1\boldsymbol{A}_{\text {right}}^{-1}=\boldsymbol{A}^{T}\left( \boldsymbol{A\boldsymbol{A}^{T}}\right)^{-1}Aright−1​=AT(AAT)−1(注意,实际上有很多右逆,这里写出的是其中一个)

证明思路和过程类似上面,即基于AAT\boldsymbol{A\boldsymbol{A}^{T}}AAT的良好性质展开研究

右乘左逆矩阵/左乘右逆矩阵,会发生什么

首先给出结论:右乘左逆矩阵/左乘右逆矩阵,无法得到单位阵I\boldsymbol II

右乘左逆矩阵的结果为:AAleft −1=A(ATA)−1AT\boldsymbol{A}\boldsymbol{A}_{\text {left }}^{-1}=\boldsymbol{A}\left(\boldsymbol{A}^{T} \boldsymbol{A}\right)^{-1} \boldsymbol{A}^{T}AAleft −1​=A(ATA)−1AT
这正是将Rm\boldsymbol{R}^mRm空间中的向量投影到A\boldsymbol{A}A的列空间(维度rrr)的投影矩阵Pm×m=A(ATA)−1AT\boldsymbol{P}_{m\times m}=\boldsymbol{A}\left(\boldsymbol{A}^{T} \boldsymbol{A}\right)^{-1} \boldsymbol{A}^{T}Pm×m​=A(ATA)−1AT

  • 若希望AAleft −1=I\boldsymbol{A}\boldsymbol{A}_{\text {left }}^{-1}=\boldsymbol IAAleft −1​=I,那么等价于要求上述投影矩阵为单位阵(无需投影),对应于A\boldsymbol{A}A的列空间本身就是整个Rm\boldsymbol{R}^mRm空间的情况,即r=mr=mr=m的情况(行列都满秩的方阵,与假设不符
  • 可见,左逆矩阵不可能同时满足“右逆”,即右乘左逆矩阵无法得到单位阵I\boldsymbol II,因此n×mn\times mn×m长方形矩阵不可能有两侧逆矩阵

同理,左乘右逆矩阵得到Aright −1A=AT(AAT)−1A=Pn×n\boldsymbol{A}_{\text {right }}^{-1}\boldsymbol{A}= \boldsymbol{A}^{T}\left(\boldsymbol{A}\boldsymbol{A}^{T}\right)^{-1}\boldsymbol{A}=\boldsymbol{P}_{n\times n}Aright −1​A=AT(AAT)−1A=Pn×n​,这就是将Rn\boldsymbol{R}^nRn空间中的向量投影到A\boldsymbol{A}A的行空间(维度rrr)的投影矩阵
可见,右逆矩阵矩阵不可能同时满足“左逆”,即左乘右逆逆矩阵无法得到单位阵I\boldsymbol II

小结:逆矩阵存在性与四个子空间的关系

首先,回顾四个子空间的图像如下

其中,行空间和零空间互为正交补;列空间和左零空间互为正交补

  1. 方阵A\boldsymbol{A}A满秩r=m=nr=m=nr=m=n,有两侧逆

    矩阵A\boldsymbol{A}A的零空间维度n−r=0n-r=0n−r=0、左零空间维度m−r=0m-r=0m−r=0(只有零向量);

  2. 矩阵A\boldsymbol{A}A列满秩r=n≤mr=n\leq mr=n≤m,有左逆矩阵

    矩阵A\boldsymbol{A}A的零空间维度n−r=0n-r=0n−r=0

  3. 矩阵A\boldsymbol{A}A行满秩r=m≤nr=m\leq nr=m≤n,有右逆矩阵

    矩阵A\boldsymbol{A}A的左零空间N(AT)N(\boldsymbol{A}^T)N(AT)维度m−r=0m-r=0m−r=0(只有零向量);

  4. 矩阵A\boldsymbol{A}A行列都不满秩,即r<mr<mr<m且r<nr<nr<n

    矩阵A\boldsymbol{A}A的零空间维度n−r>0n-r>0n−r>0、左零空间维度m−r>0m-r>0m−r>0

    零空间和左零空间都存在,导致了逆矩阵、左逆、右逆都不存在,由此引入伪逆,记为A+\boldsymbol{A}^+A+,下面详细介绍

伪逆矩阵Pseudo-inverse / M-P广义逆

规律:零空间的存在,导致了逆矩阵不存在

实际上,A\boldsymbol{A}A是将行空间中向量一一映射到列空间的变换,而“逆矩阵”就是将列空间中向量一一反向映射到行空间的变换

对于Rn\mathbf R^nRn中的所有向量x\mathbf xx,可以划分为两部分

  1. 位于A\mathbf AA的零空间中的x\mathbf xx满足Ax=0\mathbf A\mathbf x=\mathbf 0Ax=0;x\mathbf xx映射为零向量,这个映射不可逆(零向量与任意矩阵相乘得到零向量)
  2. 位于A\mathbf AA的行空间中的x\mathbf xx满足Ax=u(u≠0)\mathbf {A}\boldsymbol x=\mathbf u(\mathbf u\neq0)Ax=u(u=0),行空间中的x\mathbf xx映射为A\mathbf AA的列空间中的一个非零向量u=Ax\mathbf u=\mathbf A\mathbf xu=Ax,且这个映射为一一映射,是可逆的(视为对A\mathbf AA的列向量的线性组合);

可以归纳规律:零空间的存在(A\boldsymbol{A}A的零空间和AT\boldsymbol{A}^TAT的零空间中有非零向量)导致逆矩阵不存在
原因

  • 从四个子空间角度:
    A. 若零空间不存在,以在行空间和列空间之间建立一一映射,矩阵可逆
    B. 零空间存在时,零空间中的x\mathbf xx满足Ax=0\mathbf A\mathbf x=\mathbf 0Ax=0,对应于降维的线性变换没有逆矩阵能够还原这个过程,此时只能找到伪逆/M-P广义逆A+\boldsymbol{A}^+A+,广义逆使得行空间中的向量x\boldsymbol{x}x可以被还原A+Ax=x\boldsymbol{A}^+\boldsymbol{A}\boldsymbol{x}=\boldsymbol{x}A+Ax=x,而零空间中的向量x\boldsymbol{x}x被A\boldsymbol{A}A映射为零向量后,只能被A+\boldsymbol{A}^+A+再次映射为零向量:A+Ax=0\boldsymbol{A}^+\boldsymbol{A}\boldsymbol{x}=\boldsymbol{0}A+Ax=0

  • 从SVD角度(若矩阵的SVD为A=UΣVT\boldsymbol{A}=\boldsymbol{U} \boldsymbol{\Sigma} \boldsymbol{V}^{T}A=UΣVT):

    四个子空间和SVD的关系:

    矩阵的SVD为Am×n=Um×mΣm×nVn×nT\boldsymbol{A}_{m\times n} =\boldsymbol{U}_{m\times m} \boldsymbol{\Sigma}_{m\times n} \boldsymbol{V}^{T}_{n\times n}Am×n​=Um×m​Σm×n​Vn×nT​

    图中红色部分对应的是A\mathbf {A}A的行空间中的第一部分标准正交基vi(i=1,2,...,r)\mathbf{v}_{i}(i=1,2,...,r)vi​(i=1,2,...,r),线性变换A\mathbf {A}A将其映射生成到列空间到中的一组标准正交基,满足Avi=σiui\mathbf {A}\mathbf v_i=\sigma_i \mathbf u_iAvi​=σi​ui​,σi\sigma_iσi​组成了红色部分的对角矩阵Σ^r×r\hat{\mathbf \Sigma}_{r\times r}Σ^r×r​
    图中蓝色部分对应零空间中的第二部分标准正交基vi(i=r+1,r+2,...,n)\mathbf v_i(i=r+1,r+2,...,n)vi​(i=r+1,r+2,...,n),满足Avi=0\mathbf {A}\mathbf v_i=0Avi​=0,对应Σ\boldsymbol{\Sigma}Σ中的右下角零元素(这部分对应了将零空间的向量映射到零向量Avi=0\mathbf {A}\mathbf v_i=0Avi​=0)

    总之,行/列不满秩,导致了Σ\boldsymbol{\Sigma}Σ出现右下角的0元素部分,进而矩阵和其他矩阵相乘就不可得到单位阵(从而不存在逆矩阵),这再次对应了前面说的“零空间的存在使得逆矩阵不存在

M-P广义逆

由上,矩阵A\boldsymbol{A}A行列都不满秩(r<mr<mr<m且r<nr<nr<n)时,既没有左逆也没有右逆,此时我们能找到的“最好的逆”就是伪逆矩阵

满秩方阵才有逆矩阵;
当矩阵不满秩/矩阵不是方阵,则只有"伪逆/广义逆",这是逆矩阵的推广

若矩阵A\boldsymbol{A}A的SVD为A=UΣVT\boldsymbol{A}=\boldsymbol{U} \boldsymbol{\Sigma} \boldsymbol{V}^{T}A=UΣVT,那么伪逆矩阵A+=VΣ+UT\boldsymbol{A}^{+}=\boldsymbol{V} \boldsymbol{\Sigma}^{+} \boldsymbol{U}^{T}A+=VΣ+UT
伪逆满足:

  • AA+A=A\boldsymbol{A} \boldsymbol{A}^{+} \boldsymbol{A}=\boldsymbol{A}AA+A=A
  • A+AA+=A+\boldsymbol{A}^{+} \boldsymbol{A} \boldsymbol{A}^{+}=\boldsymbol{A}^{+}A+AA+=A+
  • AA+=(AA+)T\boldsymbol{A} \boldsymbol{A}^{+}=\left(\boldsymbol{A} \boldsymbol{A}^{+}\right)^{T}AA+=(AA+)T
  • A+A=(A+A)T\boldsymbol{A}^{+} \boldsymbol{A}=\left(\boldsymbol{A}^{+} \boldsymbol{A}\right)^{T}A+A=(A+A)T

伪逆矩阵的原理:从SVD角度理解

我们从SVD的视角来拆解问题:现在希望求一个伪逆,其与原矩阵的乘积尽可能接近单位阵;
但要注意,当行列都不满秩(r<mr<mr<m且r<nr<nr<n)时,矩阵与其他矩阵相乘,不可能得到单位阵,只能尽可能接近;

做SVD后A=UΣVT\boldsymbol{A}=\boldsymbol{U} \boldsymbol{\Sigma} \boldsymbol{V}^{T}A=UΣVT:

  • A. 若A\boldsymbol{A}A满秩,A=U[σ1⋱σr]n×nVT\boldsymbol{A}=\boldsymbol{U}\left[\begin{array}{lll} \sigma_{1} & &\\ & \ddots &\\ & & \sigma_{r} \end{array}\right]_{n\times n}\boldsymbol{V}^{T}A=U​σ1​​⋱​σr​​​n×n​VT,则矩阵可逆:逆矩阵为A−1=VΣ−1UT\boldsymbol{A}^{-1}=\boldsymbol{V}\boldsymbol{\Sigma}^{-1}\boldsymbol{U}^{T}A−1=VΣ−1UT

  • B. 若A\boldsymbol{A}A行/列不满秩,A=U[σ10σ2⋱00]m×nVT\boldsymbol{A}=\boldsymbol{U}\begin{bmatrix} \sigma _1 & & & 0\\ & \sigma _2 & & \\ & & \ddots & \\ 0 & & &0 \end{bmatrix}_{m\times n}\boldsymbol{V}^{T}A=U​σ1​0​σ2​​⋱​00​​m×n​VT(由于上述的零空间的存在,Σ\boldsymbol{\Sigma}Σ的右下角出现0元素),这从根本上决定了A\boldsymbol{A}A与其他矩阵相乘,不可能得到单位阵,寻找M-P广义逆,应保证它与原矩阵的乘积尽可能接近单位阵,故M-P广义逆A+=VΣ+UT\boldsymbol{A}^{+}=\boldsymbol{V}\boldsymbol{\Sigma}^{+}\boldsymbol{U}^{T}A+=VΣ+UT,其中Σ+=[1σ101σ2⋱00]n×m\boldsymbol {\varSigma ^ + } =\begin{bmatrix} \frac{1}{\sigma _1} & & & 0\\ & \frac{1}{\sigma _2} & & \\ & & \ddots & \\ 0 & & &0 \end{bmatrix}_{n\times m}Σ+=​σ1​1​0​σ2​1​​⋱​00​​n×m​,满足Σ+Σ=[101⋱00]n×n{\boldsymbol \varSigma ^ + }\boldsymbol \varSigma = \begin{bmatrix} 1 & & & 0\\ & 1 & & \\ & & \ddots & \\ 0 & & &0 \end{bmatrix}_{n\times n}Σ+Σ=​10​1​⋱​00​​n×n​和ΣΣ+=[101⋱00]m×m\boldsymbol \varSigma{\boldsymbol \varSigma ^ + } = \begin{bmatrix} 1 & & & 0\\ & 1 & & \\ & & \ddots & \\ 0 & & &0 \end{bmatrix}_{m\times m}ΣΣ+=​10​1​⋱​00​​m×m​

i.e. 构造伪逆矩阵的思路是,尽量使 ΣΣ+\boldsymbol{\Sigma}\boldsymbol{\Sigma}^{+}ΣΣ+和Σ+Σ\boldsymbol{\Sigma}^{+}\boldsymbol{\Sigma}Σ+Σ中的左上角的r阶对角阵为单位阵(虽然不能得到整个单位阵,但尽量接近单位阵;而ΣΣ+=Σ+Σ=I\boldsymbol{\Sigma}\boldsymbol{\Sigma}^{+}=\boldsymbol{\Sigma}^{+}\boldsymbol{\Sigma}=\boldsymbol IΣΣ+=Σ+Σ=I就是矩阵可逆的情况)

实际上,有很多的伪逆矩阵Σ+\boldsymbol{\Sigma}^{+}Σ+都能满足上述要求(因为Σ\boldsymbol{\Sigma}Σ有右下角的0元素部分,不管Σ+\boldsymbol{\Sigma}^{+}Σ+如何,这部分的乘积结果都是0),我们这里选择的是其中最简洁、不参杂多余非零元素的一个伪逆矩阵

右乘左逆矩阵/左乘右逆矩阵,会发生什么

对于A=UΣVT\boldsymbol{A}=\boldsymbol{U} \boldsymbol{\Sigma} \boldsymbol{V}^{T}A=UΣVT

A\boldsymbol{A}A左乘伪逆矩阵,得到AA+=UΣVTVΣ+UT=UΣΣ+UT\boldsymbol{A}\boldsymbol{A}^{+}=\boldsymbol{U} \boldsymbol{\Sigma} \boldsymbol{V}^{T}\boldsymbol{V} \boldsymbol{\Sigma}^{+} \boldsymbol{U}^{T}=\boldsymbol{U} \boldsymbol{\Sigma}\boldsymbol{\Sigma}^{+} \boldsymbol{U}^{T}AA+=UΣVTVΣ+UT=UΣΣ+UT,其中ΣΣ+\boldsymbol{\Sigma}\boldsymbol{\Sigma}^{+}ΣΣ+左上角包含一个单位阵,如上;

A\boldsymbol{A}A右乘伪逆矩阵,得到A+A=VΣ+UTUΣVT=VΣ+ΣVT\boldsymbol{A}^{+}\boldsymbol{A}=\boldsymbol{V} \boldsymbol{\Sigma}^{+} \boldsymbol{U}^{T}\boldsymbol{U} \boldsymbol{\Sigma} \boldsymbol{V}^{T}=\boldsymbol{V} \boldsymbol{\Sigma}^{+}\boldsymbol{\Sigma} \boldsymbol{V}^{T}A+A=VΣ+UTUΣVT=VΣ+ΣVT,其中Σ+Σ\boldsymbol{\Sigma}^{+}\boldsymbol{\Sigma}Σ+Σ左上角包含一个单位阵,如上;

矩阵 左乘/右乘 伪逆矩阵,都不能得到单位阵,但是能得到投影矩阵(类似上面的右乘左逆矩阵)

  • 右乘伪逆,得到投影矩阵AA+\boldsymbol{A}\boldsymbol{A}^{+}AA+(将向量投影到A\boldsymbol{A}A的列空间);

例如,对于AA+x=UΣΣ+UTx\boldsymbol{A}\boldsymbol{A}^{+}\mathbf x=\boldsymbol{U} \boldsymbol{\Sigma}\boldsymbol{\Sigma}^{+} \boldsymbol{U}^{T}\mathbf xAA+x=UΣΣ+UTx
UTx\boldsymbol{U}^{T}\mathbf xUTx得到向量x\mathbf xx在U\boldsymbol{U}U这个单位正交基上的坐标;
再乘以ΣΣ+\boldsymbol{\Sigma}\boldsymbol{\Sigma}^{+}ΣΣ+(左上角为r阶单位阵)相当于只保留向量x\mathbf xx在U\boldsymbol{U}U这个单位正交基上中属于A\boldsymbol{A}A列空间(r维)的那部分;
最后再乘以单位正交基U\boldsymbol{U}U,就是x\mathbf xx在A\boldsymbol{A}A列空间的投影了

  • 左乘伪逆,得到投影矩阵A+A\boldsymbol{A}^{+}\boldsymbol{A}A+A(将向量投影到A\boldsymbol{A}A的行空间);
  • 投影矩阵ΣΣ+\boldsymbol{\Sigma}\boldsymbol{\Sigma}^{+}ΣΣ+和Σ+Σ\boldsymbol{\Sigma}^{+}\boldsymbol{\Sigma}Σ+Σ的SVD中,左上角都包含一个单位阵,这接近于真正可逆的情况

对比上面的左逆矩阵:矩阵左乘左逆矩阵得到单位阵;右乘左逆矩阵得到将Rm\mathbf R^mRm中的向量投影到列空间的投影矩阵;
这里无论左乘/右乘伪逆,都只能得到一个投影矩阵,但这已经伪逆能做到的最好结果

  • 投影矩阵ΣΣ+\boldsymbol{\Sigma}\boldsymbol{\Sigma}^{+}ΣΣ+和Σ+Σ\boldsymbol{\Sigma}^{+}\boldsymbol{\Sigma}Σ+Σ能将问题带入很好的空间中(即带入行空间和列空间,而排除了零空间/左零空间)

线性代数学习笔记10-4:左右逆、伪逆/M-P广义逆(从四个子空间和SVD角度理解)相关推荐

  1. 线性代数学习笔记(二十九)——方程组解的结构(一)

    停更2年多了,做事得有始有终,继续更新... 本篇笔记回顾了线性方程组解的三种情况,并讨论了齐次线性方程组解的结构,并介绍了齐次线性方程组解的相关性质.其中重点讨论了基础解系定义,以及基础解系的求法和 ...

  2. 线性代数学习笔记(二十二)——向量间的线性关系(二)

    本篇笔记首先介绍了线性相关和线性无关的概念,关键是找到一组不全为零相关系数使得等成立:然后重点介绍了一些重要的结论,以及向量组线性相关和线性无关的几个充要条件. 1 线性相关与线性无关 线性相关:设 ...

  3. Tsai笔记:GPOPS学习笔记(1)—— 高斯伪谱法的最基本优化方程求解思路(例子介绍)

    Tsai笔记:GPOPS学习笔记(1)-- 高斯伪谱法的最基本优化方程求解思路(例子介绍) Tsai三步.(第一步,基本说明.第二步,结果图显示.第三步,代码展示.) 第一步,基本说明. A.问题说明 ...

  4. thinkphp学习笔记10—看不懂的路由规则

    原文:thinkphp学习笔记10-看不懂的路由规则 路由这部分貌似在实际工作中没有怎么设计过,只是在用默认的设置,在手册里面看到部分,艰涩难懂. 1.路由定义 要使用路由功能需要支持PATH_INF ...

  5. SpringMVC:学习笔记(10)——整合Ckeditor且实现图片上传

    SpringMVC:学习笔记(10)--整合Ckeditor且实现图片上传 配置CKEDITOR 精简文件 解压之后可以看到ckeditor/lang下面有很多语言的js,如果不需要那么多种语言的,可 ...

  6. springmvc学习笔记(10)-springmvc注解开发之商品改动功能

    springmvc学习笔记(10)-springmvc注解开发之商品改动功能 springmvc学习笔记(10)-springmvc注解开发之商品改动功能 标签: springmvc springmv ...

  7. Hadoop学习笔记—10.Shuffle过程那点事儿

    Hadoop学习笔记-10.Shuffle过程那点事儿 一.回顾Reduce阶段三大步骤 在第四篇博文<初识MapReduce>中,我们认识了MapReduce的八大步骤,其中在Reduc ...

  8. Linux学习笔记10

    Linux学习笔记10 Linux学习笔记10 正则表达式 源码包约定目录 Shell脚本约定目录 Shell脚本的创建与执行 date命令 同步时间 Shell脚本预设变量 与用户交互 数学计算 S ...

  9. HALCON 20.11:深度学习笔记(10)---分类

    HALCON 20.11:深度学习笔记(10)---分类 HALCON 20.11.0.0中,实现了深度学习方法. 本章解释了如何在训练和推理阶段使用基于深度学习的分类. 基于深度学习的分类是一种对一 ...

最新文章

  1. 5 zabbix 添加host_运维监控实战篇,zabbix自动发现和自动注册图文详解
  2. ubuntu 14.04 16.04 18.04使用阿里源
  3. BERT+CRF的损失函数的研究
  4. 各种排序算法的js实现
  5. vsftpd Problem with 425 Security: Bad IP connecting 解决
  6. BOOST_VMD_ASSERT_IS_EMPTY宏相关的测试程序
  7. 自考计算机及应用心得体会,自考中文专业的心得体会
  8. php composer内存不足,composer 安装插件提示内存不足等问题
  9. Java基础学习路线送给零基础的朋友
  10. python-flask-1
  11. Linux 小知识翻译 - 「Linux的吉祥物企鹅叫什么名字?」
  12. php : 收集整理的非常有用的函数
  13. Windows 自带硬盘修复命令 CHKDSK
  14. 关于jqui datepicker 使用enter选择日期后 点击input 没有打开日期控件问题
  15. pdf格式如何压缩文件大小?
  16. html空桃心的特殊符号,王者荣耀名字特殊符号空白代码 名字特殊符号爱心尾巴大全可复制...
  17. SQL积累 计算相除之比+% ,转型,拼接, 多个左联,求和,统计,截取等
  18. 配置Atari Gym环境
  19. 光追(光线追踪)和 DLSS是什么?
  20. AVL树(LL,RR,LR,RL)

热门文章

  1. 公共管理老师赴英国G5名校-伦敦大学学院CSC公派访学
  2. liunx密码破解 与装机
  3. pdf格式怎么转换excel表格?分享3个免费PDF转Excel方法
  4. java对象内存布局中的基本类型字段排列顺序
  5. 【严肃脸】使用caffe实现色情图片的识别
  6. Mac | 好用的软件推荐
  7. PWA 应用和原生应用的一些区别
  8. 把极坐标化为直角坐标c语言,极坐标方程化为直角坐标方程
  9. 七夕送男朋友什么礼物最好?七夕送男朋友礼物排行榜
  10. 微信电脑版备份聊天记录踩坑记