请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

PCA trainingData testData

老师,请问 PCA 训练数据集 transform 而 测试数据集 也需要 transform 这里比较难以理解,

降维去噪过程中,test数据集 是如何处理的

正在回答

1回答

关键是,我们的PCA过程,是把原始的数据,从原始的特征空间转换到了另外一个更低维度的特征空间。我们所训练的算法,是针对这个更低维度的特征空间的数据进行的训练。所以,在具体预测的时候,我们也要把新的数据放到这个新的特征空间中。方法就是,新的数据,也使用同样的PCA过程处理一遍:)


这个课程的第七章第7小节,有一个具体的这个过程的演示。可以看一下,当我们的PCA的实例对象pca,fit完训练数据集以后,同样要去对测试数据集进行transform。这样,悬链数据集和测试数据集才在同样的特征空间中。否则,测试数据集不做这个transform,训练数据集和测试数据集连数据维度都不同!我们在训练数据集上得到的算法模型,根本无法应用到测试数据集上!(而不仅仅是预测结果是否准确的问题。)


如果有必要,可以尝试看一下transform前后,训练数据集合测试数据集的shape,可能更容易理解:)


第七章第7小节notebook传送门:https://github.com/liuyubobobo/Play-with-Machine-Learning-Algorithms/blob/master/07-PCA-and-Gradient-Ascent/07-MNIST/07-MNIST.ipynb


加油!:)

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号