PCA与线性代数的关系
这篇博客记录一下今天花了几个小时复习线性代数以理解PCA原理的过程,内容比较粗浅,但是大致知道原理了,公式在这里就不多提了,最多扯一下矩阵和各个概念的涵义。
PCA
用处
吴恩达说这玩意儿可以用来做可视化(高维降维成2维)和特征压缩,这个没什么异议。
可视化没啥可说的,主要从降维来说说原理吧。
原理
其数学原理,主要就是从m*n
的矩阵(m
个样本,每个样本有n
个特征)中选区分度最高的k
个特征出来。
这里特别提一下https://www.bilibili.com/video/BV1ys411472E?t=915&p=14,讲线性代数的含义讲的是真的好,把我考研时死记硬背的一小部分东西解释的很清晰了。主要收获是这些地方:
-
矩阵:可以看作是线性变换,例如:把原本的二维笛卡尔坐标系(就是中学数学常说的直角坐标系,在这里可以视为单位矩阵
I
)左乘一个变换矩阵A
,把x、y轴的基变成了别的向量 -
行列式的值:如果不为0,代表这个方阵把原来的基变成了统一维度下的另一组基;如果行列式的值为0,那么就要看他的秩(
rank
),秩的大小决定了他把原来的基压缩到了多少维,如果增广矩阵和矩阵的秩相等,此时有无穷解,否则无解 -
特征值与特征向量:特征向量代表了作为线性变化的矩阵(就是前面第一点说的左乘的矩阵A),在原始的基变换到新的基的过程中,方向没有发生改变的那些向量,
比如从原始的基左乘了矩阵