线性代数内容都很连贯,总体就是 [ 行列式-->矩阵-->n维向量-->线性方程组-->类似对角型-->二次型 ]。行列式就是一个值,行列式为0则对应线性方程组有多解,且对应矩阵不可逆,若为0则解惟一。n维向量可由矩阵表示。线性方程组又可表示成n维向量的形式,有齐次和非齐次两种。
经过特征分解能够将方阵类似对角化,让矩阵的特征更直观的体现。一种有趣的思想是,矩阵能够看做一个变换,他做用在特定的正交基上,对每一个维度进行拉伸和收缩。特征分解正是获得了这个正交基(特征向量)以及相应的收放系数(特征值)。其中,实对称矩阵必定能够正交类似对角化。
二次型与解方程组息息相关。咱们一般关注的是如何将二次型转化为标准型,这里也会引伸出正定负定的概念。转化为标准型后,每个变量仅与本身相互做用,这和PCA降维很像啊。
学习线性代数我认为有两个做用。一是读论文能看懂每一步在干吗,二是理解数据的并行处理。下面补充一下比较重要的知识点。算法
一切都要从行列式提及。行列式$D$能够经过行列展开式计算,即$D=a_{i1}A_{i1}+a_{i2}A_{i2}+a_{i3}A_{i3}+...+a_{in}A_{in}$,其中$A=(-1)^{i+j}M_{ij}$称为代数余子式,$M$为余子式。行列式的性质包括:函数
最重要的一点,只有方阵才能够讨论其行列式及可逆性。这一部分的知识点连起来很好记,注:初等变换不改变行列式是否为0
$$\begin{array}{lcl} 矩阵满秩 \\\ \Leftrightarrow行列式不为0 \\\ \Leftrightarrow矩阵非奇异 \\\ \Leftrightarrow矩阵可表示为一系列初等矩阵的乘积 \\\ \Leftrightarrow矩阵与E等价 \\\ \Leftrightarrow矩阵可逆 \\\ \Leftrightarrow方程组有惟一解 \end{array}$$
其余的知识点,以下:学习
m个n维向量(m个方程,n个未知变量)组成的方程组,当其系数矩阵A(m*n)的秩r(A)<n时,则其基础解系基向量有n-r个,当m小于n时,能够看做约束条件少,秩r(A)<=m<n则必定能够有基础解系,当秩r(A)=n时,只有0解。线性方程组恰好能够和数据集联系起来。每一条样本看成一个方程,当只用线性模型拟合数据集时,样本越多,表明约束越多。当样本数太多,线性模型参数解将会惟一,而当特征增多时,表明信息越多,数据集越容易线性可分,当特征数超过样本数时,其秩必定小于行数,则必定存在基础解系。其余的本身想吧。
$$\Bigg( \begin{array}{lcl} 1 \\\ 2 \\\ ... \\\ m \end{array} \Bigg)x_1+\Bigg( \begin{array}{lcl} 1 \\\ 2 \\\ ... \\\ m \end{array} \Bigg)x_2+...+\Bigg( \begin{array}{lcl} 1 \\\ 2 \\\ ... \\\ m \end{array} \Bigg)x_n=0$$
初等变换等价标准型:
$$\bold I_{m\times n}=\Bigg( \begin{array}{lcl} 1\quad\quad\space b_{1,1}\space...\space b_{1,n-r}\\\ \quad...\quad b_{2,1}\space...\space b_{2,n-r} \\\ \quad\quad 1 \space b_{r,1}\space...\space b_{r,n-r} \\\ 0 \quad...\quad 0 \quad ... \quad 0 \\\ 0 \quad...\quad 0 \quad ... \quad 0 \end{array} \Bigg)$$
对于非齐次方程$AX=b$,只有当$r(A)=r(\bar{A})$时,方程组有惟一解,后者为增广矩阵。类比于线性模型的数据集,只有当特征数>样本数时,若特征无关(PCA降维前驱),则必定线性可分,label必定能够线性表示。当特征数少于样本数时,则特征只能线性表示样本中的一类点,而不能表示所有。spa
判断矩阵正定有多种方式,经常使用的就是:orm
范数(norm)常常做为参数约束使用,像多任务学习中的约束项、目标函数中的权重衰减、RNN中的梯度裁剪等都会用到范数。it
对角阵与X的矩阵乘积至关于将X的每一个元素放大了Vi倍,这个性质应该颇有用,虽然我也想不起来哪里有用
$$diag(V)\cdot X=V\bigodot X$$基础
仍是单独点一下,实际前面类似对角化提到过了,正交阵是单位正交,矩阵的逆和矩阵的转置相同
$$A^TA=AA^T=I$$变量
$$A^{-1}=A^T$$lambda
针对方阵咱们有特征分解可使用(前提是矩阵可逆),矩阵分解能够看做矩阵A做用于n个特征向量所组成的正交基,至关于在每一个方向$V_i$上延展了特征值$\lambda_i$倍,对正交空间拉伸或收缩。特征分解常常用于各类降维算法里面,像PCA和LDA(线性判别分析,不是潜在迪利克雷分布模型)。有一些有趣的性质须要记一下:并行
对于方阵有特征分解,那对于通常矩阵就可使用奇异值分解。
$$A_{m\times n}=U_{m\times m}D_{m\times n}V^T_{n\times n}\begin{cases}U:AA^T的特征向量,左奇异向量 \\\ D:A^TA的特征值的平方根,奇异值 \\\ V^T:A^TA的特征向量,右奇异向量\end{cases}$$
奇异值分解做为一种矩阵分解方法,也常常用到降维场景,像PCA,相较于特征分解的优势是:在使用右奇异向量对特征进行降维时,避免了与数据量线性相关,速度更快。
奇异值有个良好的特性,就是奇异值减少的特别快,前10%甚至前1%就占所有奇异值99%以上,所以可使用前r个奇异值描述矩阵。
行列式|D|描述矩阵乘以后空间体积大小。特征值/奇异值表明在特征向量方向上缩放对应的λ倍,舍弃小的λ或δ,至关于舍弃了变换小的某一正交基向量,由于在此维度上,数据变化很是小,体现不出特征,丢弃变化小的维度至关于去噪。好比,三维空间上,X方向上的数据几乎不多变化,Z=f(X,Y)更与y相关,那么直接将X舍弃,Z=g(Y)精度也不会损失太多。
具体到PCA,$A=B^TB$,方差方向小的λ,数据不怎么变化,去掉也不要紧,当特征是相关的,协方差会很小,对应的λ小,删掉λ对应方向等于去相关,同时方差变化小,也意味着噪声方向,至关于去噪。
奇异矩阵不可逆,那有没有办法求逆呢?答案是有的,对于$AX=y$,矩阵A的伪逆运算$A^+=\lim\limits_{\alpha\rightarrow 0}(A^T+\alpha I)^{-1}A^T$,实际中常常会用奇异值分解进行伪逆求解$A^+=VD^+U^T$。伪逆运算能够这么理解,加入正则化后,使得欠定问题可定。
能够看出,这就是正则化的做用。
迹运算就是对角线元素的乘积。最有用的一条性质是:$||A||_F=\sqrt{Tr(AA^T)}$
行列式D=特征值的乘积。$|A-\lambda E|=(\lambda-a_1)...(\lambda-a_n),令\lambda=0,则|A|=a_1a_2...a_n$
行列式的绝对值衡量了矩阵参与乘积后体积扩大或者缩小了多少。当|D|=0,说明空间沿着某一维彻底收缩了;当|D|=1,说明空间体积保持不变。