机器学习数学基础——线性代数篇

线性代数篇

向量空间

向量空间是定义了加法和数乘这两种运算的集合。
机器学习数学基础——线性代数篇

向量及其运算

向量空间中的元素就是向量,每个向量可以用一个n维实数列表表示,[v1v2vn]\begin{bmatrix} v_1\\ v_2\\ \vdots\\ v_n \end{bmatrix}是列向量v1v2vn\begin{matrix}v_1 &v_2&\dots&v_n\end{matrix}是行向量

运算:(1)[v1v2vn]+[w1w2wn]=[v1+w1v2+w2vn+wn]\begin{bmatrix}v_1\\v_2\\ \vdots \\v_n\end{bmatrix}+\begin{bmatrix}w_1\\w_2\\ \vdots \\w_n\end{bmatrix}=\begin{bmatrix}v_1+w_1\\v_2+w_2\\ \vdots \\v_n+w_n\end{bmatrix}

​ (2)λ[v1v2vn]=[λv1λv2λvn]\lambda\begin{bmatrix}v_1\\v_2\\ \vdots \\v_n\end{bmatrix}=\begin{bmatrix}\lambda v_1\\\lambda v_2\\ \vdots \\\lambda v_n\end{bmatrix},表示向量在空间里的伸缩

向量组的线性组合

若干个同维数的列向量(行向量)组成的集合叫向量组

机器学习数学基础——线性代数篇
机器学习数学基础——线性代数篇

向量组的线性相关性

机器学习数学基础——线性代数篇

内积和范数

内积的定义

内积就是点乘数量积,对两个向量执行点乘运算,就是对这两个向量对应位置元素一一相乘之后求和。

机器学习数学基础——线性代数篇

性质:(x,y,zx,y,z为n为向量,λ\lambda为实数)

​ (1)xy=yxx \cdot y = y \cdot x

​ (2)(λx)y=x(λy)(\lambda x)\cdot y=x\cdot (\lambda y)

​ (3)(x+y)z=xz+yz(x+y)\cdot z=x\cdot z+y\cdot z

​ (4)x20x^2\geq 0当且仅当x=0x=0时等号成立

在这里我提一下外积,两个向量的外积,又叫叉乘、叉积向量积,其运算结果是一个向量。向量ab的外积a×b是一个向量,其长度等于|a×b| = |a||b|sin∠(a,b),其方向正交于ab。并且,(a,b,a×b)构成右手系。
特别地,0×a = a×0** = 0.此外,对任意向量aa×a=0

范数的定义

范数的话了解一下就可以了

机器学习数学基础——线性代数篇
机器学习数学基础——线性代数篇

内积的几何解释

机器学习数学基础——线性代数篇

矩阵和线性变换

机器学习数学基础——线性代数篇

线性变换

线性空间中的运动称为线性变换,必须满足两个条件:1>空间中的坐标原点在变换后保持不变 2>变换后向量不能被弯曲

矩阵的相关运算

范德蒙行列式机器学习数学基础——线性代数篇范德蒙行列式有什么用呢?可以用来进行插值的分析。比如我们平面上有5个点X1,X2,X3,X4,X5X_1,X_2,X_3,X_4,X_5,这时候我们可以认定平面上肯定有一条线可以同时经过这5个点,为什么?这个时候我们就可以假设这个线的方程为L(θ)=θ4X4+θ3X3+θ2X2+θ1X1+θ0X0L(\theta)=\theta_4X^4+\theta_3X^3+\theta_2X^2+\theta_1X^1+\theta_0X^0用矩阵表示就是(X54X53X52X51X44X43X42X41X14X13X12151)(θ4θ3θ2θ1θ0)=(y5y4y3y2y1)\left(\begin{matrix}X_5^4&X_5^3&X_5^2&X_5&1\\X_4^4&X_4^3&X_4^2&X_4&1\\\vdots&\vdots&\vdots&\vdots&\vdots\\X_1^4&X_1^3&X_1^2&1_5&1\end{matrix}\right)\left(\begin{matrix}\theta_4\\\theta_3\\\theta_2\\\theta_1\\\theta_0\end{matrix}\right)=\left(\begin{matrix}y_5\\y_4\\y_3\\y_2\\y_1\end{matrix}\right)那么只要我们的范德蒙行列式不为零我们就可以求得一组θ\theta来找到一条线经过我们的点

矩阵相乘(abcd)(efgh)=(ae+bgaf+bhce+dgcf+dh)\left(\begin{matrix}a&b\\c&d\end{matrix}\right)\cdot\left(\begin{matrix}e&f\\g&h\end{matrix}\right)=\left(\begin{matrix}ae+bg&af+bh\\ce+dg&cf+dh\end{matrix}\right)

矩阵和向量相乘:A为m×nm\times n的矩阵,x为n×1n\times 1的列向量,则Ax为m×1m\times 1的列向量,记y=Axy=Ax,这个过程实现了从n维空间的点到m维空间点的线性变换,如果m=n则完成了n维空间内的线性变换

矩阵的k阶子式:在m×nm\times n矩阵A中,任取k行k列,不改变这k2k^2个元素在A中的次序,得到k阶方阵,成为矩阵A的k阶子式,显然有CmkCnkC_m^kC_n^k

矩阵的秩:设在矩阵A中有一个不等于0的r阶子式D,且所有r+1阶子式(若存在)全等于0,则D称为A的最高阶非零子式,r称为A的秩,记作R(A)=rR(A)=r

  • 我们的可逆矩阵秩为n又称为满秩矩阵
  • 矩阵的秩等于它行(列)向量组的秩
  • 对于n元线性方程组Ax=b,
    • 无解的充要条件R(A)<R(A,b)
    • 有唯一解的充要条件R(A)=R(A,b)=n
    • 有无穷多解的充要条件R(A)=R(A,b)<n

矩阵转置:把矩阵的行换成有同序数的列得到一个新矩阵叫做A的转置矩阵,记作**ATA^T**

​ 相关公式: (1)(AT)T=A(A^T)^T=A

​ (2)(A+B)T=AT+BT(A+B)^T=A^T+B^T

​ (3)(λA)T=λAT(\lambda A)^T=\lambda A^T

​ (4)(AB)T=BTAT(AB)^T=B^TA^T

逆矩阵:给定一个n阶方阵A,若存在一n阶方阵B,使得AB=BA=InAB = BA = I_n,其中InI_n为n阶单位矩阵,则称矩阵A是可逆的,且B是A的逆矩阵,记作A1A^{-1}

​ 注意:只有方阵才有逆矩阵,当方阵A可逆则称A为非奇异方阵

特征值和特征向量

机器学习数学基础——线性代数篇
特征值的性质: 设n阶矩阵A=(aij)A=(a_{ij})的特征值为λ1,λ2,...,λn\lambda_1,\lambda_2,...,\lambda_n

​ (1)λ1+...+λn=a11+...+ann\lambda_1+...+\lambda_n=a_{11}+...+a_{nn}

​ (2)λ1λ2...λn=A\lambda_1\lambda_2...\lambda_n=|A|

对称矩阵、正交阵、正定矩阵和对角矩阵

对称矩阵机器学习数学基础——线性代数篇
实对称阵不同特征值的特征向量正交

正交阵

若n阶矩阵A满足ATA=IA^TA=I称A为正交矩阵,A为正交阵的充要条件:A的列(行)向量都是单位向量且两两正交。若A为正交阵x为向量则Ax称作正交变换,正交变换不改变向量长度

正定矩阵
机器学习数学基础——线性代数篇
对角矩阵

只有主对角线上的元素不为零其余元素都为零的矩阵为对角矩阵

相似矩阵和对角化

机器学习数学基础——线性代数篇

二次型

机器学习数学基础——线性代数篇
总结到一句话就是:最高次为2

任何二次函数都可以用一个矩阵和一个向量相乘的方式来表示
机器学习数学基础——线性代数篇

总结

直接看可能还是会有些懵,建议对照着算法中不懂的点一起看,或者作为一个简单的复习来看,希望对你可以有帮助