主成分分析(Principal Component Analysis, PCA),是一种非监督机器学习算法,主要应用于数据的降维。另外,还可以应用于可视化、去噪等方面。
如下图所示,对于横纵轴的两个特征,关键是怎样找到到一个轴,使得样本空间的所有点映射到这个轴后,方差最大(各个点差别最大)。
![](https://img.haomeiwen.com/i20297934/53428d92c491aec7.png)
主成分分析的步骤为:
- 对所有的样本点进行demean处理(使得样本的均值为0)
- 我们项要求一个轴的方向 w = (w1, w2)
- 使得所有的样本映射到w以后,有:
最大。
由于之前进行了demean处理,那么 为0,上式相当于:
![](https://img.haomeiwen.com/i20297934/c5f803910a333b80.png)
假设我们的方向向量为w(w1, w2), 样本点为
,则映射到该方向上的(即求解的)为
。
![](https://img.haomeiwen.com/i20297934/8d075f0e9436d65b.png)
所以最上是要求:
![](https://img.haomeiwen.com/i20297934/752509291f1b0c04.png)
最大。
在N维向量中也就是:
![](https://img.haomeiwen.com/i20297934/5427e4407f55158e.png)
这其实就是一个目标函数的最优化问题,可以用梯度上升法求解。
以上是https://coding.imooc.com/learn/list/169.html [python3入门机器学习]课程做的笔记。
网友评论