1. 线性代数
是的没错,逃不过的。本章内容是简单介绍需要掌握的基本数学/模型基础
1.1 标量(Scalar)
只有大小没有方向的物理量,如时间,温度、质量等, ; 如果该标量是实数,记做
1.2 向量(Vector)
又称矢量,既包含大小又包含方向的物理量,如速度、位移等, 一 般用粗体变量表示; 如果是n维实数矢量,记做
1.3 矩阵(Matrix)
矩阵是一个二维数组,其中的每一个元素一般由两个索引来确定, 一般用大写变量表示。m行n列的实数矩阵,记做
表示矩阵A第i行第j列的元素
1.4 张量(Tensor)
矢量概念的推广,可用来表示在一些矢量、标量和其他张量之间的线性关系的多线性函数
标量是0阶张量,矢量是一阶张量, 矩阵是二阶张量;三维及以上数组一般称为张量
1.5 矩阵加法
两个矩阵满足行数和列数相等时,两个矩阵可以相加
1.6 矩阵乘法
两个矩阵满足第一个矩阵的列数与第二个矩阵的行数相等时,两个矩阵可以相乘
矩阵乘法满足分配律:A(B+C) = AB+AC
矩阵乘法满足结合律:A(BC) = (AB)C
但矩阵乘法不满足交换律 AB≠BA
1.7 矩阵的转置(Transpose)
将矩阵的行列互换得到的新矩阵称为转置矩阵
1.8 矩阵的秩(Rank)
矩阵列向量中的极大线性无关组的数目,记作矩阵的列秩,同样可以定义行秩。行秩=列秩=矩阵的秩,通常记作rank(A)
线性相关组:如果存在不全为零的数 使得
其中o是m维的全零向量,那么向量组 称为线性相关
1.9 矩阵的逆
若矩阵A为方阵,当,称A为奇异矩阵或不可逆矩阵
若矩阵A为方阵,当,称A为非奇异矩阵或可逆矩阵
其逆矩阵满足以下条件,则称为矩阵A的逆矩阵
矩阵的广义逆矩阵:
如果矩阵不为方阵或者是奇异矩阵,不存在逆矩阵,但是可以计算其广义逆矩阵或者伪逆矩阵
对于矩阵A,如果存在矩阵B使得ABA=A,则称B为A的广义逆矩阵
通过对矩阵A进行奇异值分解,来计算其广义逆矩阵
相关计算都存在库函数:MATALB: inv() 和pinv()函数; PyTorch: inverse()和pinverse()函数
1.10 矩阵分解
特征分解和奇异值分解是机器学习中常见的矩阵分解
矩阵的特征值和特征向量:
若矩阵A为方阵,则存在非零向量x和常数λ满足Ax = λx,则称λ为矩阵A的一个特征值,x为矩阵A关于λ的特征向量;
An×n的矩阵具有n个特征值,λ1 ≤ λ2 ≤ ⋯ ≤ λn,其对应的n个特征向量为u1,u2,⋯,un
矩阵的迹(trace)和行列式(determinant)的值
矩阵特征分解(Eigendecomposition):
若矩阵An×n存在n个不同的特征值,那么矩阵A可以分解为:
其中是标准化的特征向量
奇异值分解(Singular value decomposition):
对于任意矩阵Amxn,存在正交矩阵Umxm,Vnxn,使得其满足
则称上式为矩阵A的特征分解,其中Σ为mxn的矩阵