基本思路:
(1)对所有的样本进行demean处理。
(2)梯度上升法求系数。注意:和线性回归不同点。
每次求一个单位向量;初始化w不能为0向量;不能使用sklearn进行标准化了。
(3)批量和随机梯度同样适用梯度上升法。
(4) 第一主成分和后续主成分。先将数据进行改变,将数据在第一主分上的分量去掉。
在新的数据上求第二主成分。这是循环往复过程。
一、PCA算法简介
主成分分析(Principal Components Analysis),简称为:PCA,是一种常见的数据降维技术,用于数据预处理的非常好的工具。一般我们获取的原始数据维度都很高,比如图像文件,几百上千个特征维度值已经很正常。但实际上,这些高维度数据不但含有很多的噪声,还存在很多维度数据存在冗余,也就是相关性太高,真正能用到的特征数据也就是几十个上百个,这样在实际进行机器学习算法过程中,通过PCA,可以大大减少运算量,节约计算时间,并且还能够达到同样的处理效果。
主要原因如下:
数据更易使用
降低很多算法的计算开销
去除噪声
使得结果更容易解读
二、PCA算法实现