PCA运用在监督学习算法下,可以对数据x降维,从而加速学习算法的速度。
如下所示,我们的训练集x是10000维向量,我们可以通过PCA将其降维成z是1000维的向量,此时训练集从(x,y)变成(z,y)。每次输入x都通过pca的映射变成z,然后再带入到假设函数中计算。
除了加速学习算法的速度,PCA还可以减少内存的需求。
当然,有时也会发生一些不好的运用pca的例子。
比如我们不应该利用pca来避免过拟合,虽然这样做可能有时候会有点改进,但是我们还是会保留99%的方差。所以我们应该用更加实用的正则化来避免过拟合。
还有就是我们在设计一个机器学习系统时,我们有时列举的项目计划一开始就包括了运用pca来降维,但是这是不可取的做法,我们应该首先考虑的是,不使用pca的情况下,整个系统会得到什么结果,而不是一开始就花费大量时间去运用pca降训练集降维。