每天五分钟机器学习:使用主成分分析法PCA算法的注意事项

本文重点

PCA算法能够降维数据,这会给我们带来一些好处,本节课程我们将学习一下,在应用PCA算法时的一些建议。

PCA算法可以提高算法的运行

如果数据集维度特别大(10000维),算法运行的会比较慢,我们使用PCA算法能够有效的降低数据的维度,这样就会提高算法的运行速度,这就是PCA算法可以提高机器学习算法的原理。

训练集、验证集、测试集

假如我们使用机器学习算法完成图片分类任务,图片的大小为100*100,那么总共有10000 个特征,这个特征太多了,所以我们可以进行降维操作。具体来说:

不管数据集的标签Y,这样我们就相当于得到了一组无标签的训练集,然后我们使用PCA算法,将数据压缩至 1000 个特征,那么就可以使用这个新的训练集来训练模型。

此时,当我们预测一个新的样本的时候,我们不可以直接带入样本X,而是采用之前学习而来的Ureduce 将输入的特征 x 转换成特征向量 z,然后再进行预测。

注:如果我们有交叉验证集和测试集,也采用对训练集学习而来的Ureduce,也就是说从x到z的对应关系只可以通过训练集上运行的PCA定义出来,然后应用到交叉验证集和测试集的x到z的映射。

PCA算法有三种应用:

1. 压缩数据

2. 可视化(降维到三维,或者二维)

3. 提升算法运行的速度

PCA算法的应用误区:

过拟合的原因之一是特征数很多,所以降低特征数可以有效的解决过拟合的问题,但是如果模型出现过拟合的问题,是否可以使用PCA算法来

你可能感兴趣的:(每天五分钟玩转机器学习算法,算法,人工智能,降维,PCA)