采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
老师好, 请问在第七章PCA的识别MNIST这一节中,需要将MNIST数据集打乱排序吗,教程中的代码好像并没有将数据集shuffle过。
我不是特别确定你的问题,可以先看一下这个问答是不是你的疑问:https://coding.imooc.com/learn/questiondetail/75480.html
我们处理MNIST数据不需要打乱顺序。其实我们处理任何数据都不需要打乱顺序。之前课程中介绍,我们要做训练,测试数据集的分离,是要随机抽取一部分数据做测试数据集。但是抽取出这部分数据以后,对于训练数据集,我们也不需要打乱顺序。我们的算法和数据的顺序是无关的。
对于MNIST数据集,在数据定义上,已经帮助你整理好了哪些是训练数据集,哪些是测试数据集,所以,按照课程中介绍的方式,以60000为界进行分割就好了:)
继续加油!:)
谢谢老师的回答^_^ 我还是有点不太理解。在之前第四章KNN的测试鸢尾花数据集中,老师将鸢尾花的数据排序进行了shuffle,因为鸢尾花数据初始的y是000...111...222的排序,所以需要打乱顺序。而MNIST的排序如果是0000...1111...2222......8888...9999的话,是不是也需要打乱排序呢? 谢谢老师!
在之前,我们之所以shuffle,是因为我们做训练测试数据集切分的时候,直接找一个索引,这个索引前面的数据,都是训练数据集,这个索引后面的数据,都是测试数据集。但如果所有的数据是有序的话,就会造成,测试数据集都是3,训练数据集没有3或者3的样本很少的情况。但我们希望不同类别的数据在训练数据集和测试数据集中是均匀分配的。但是mnist数据集已经帮我们划分好了,60000以前的数据和60000的数据,0-9不同类别已经是均匀分布的,我们根据这个数据的定义,从60000做切分就好了,可以再看一下我提供的问答链接:)
我想明白了,谢谢老师!
登录后可查看更多问答,登录/注册
Python3+sklearn,兼顾原理、算法底层实现和框架使用。
2.5k 19
3.5k 17
2.9k 15
1.6k 15
1.4k 14