解决Sklearn中使用数据集MNIST无法获取的问题(WinError 10060)
今天在学习PCA的时候,使用mnist数据集遇到一个问题,代码是这样的:
1 import numpy as np 2 from sklearn.datasets import fetch_mldata 3 4 mnist = fetch_mldata("MNIST original")
遇到了报错:[WinError 10060] 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。
原因:
以为是源地址被墙了,就搭梯子试试,结果还是不行
搜了一下原因,是因为源地址已经不能用了
解决办法:
使用本地数据集,可以从这下载: https://github.com/amplab/datascience-sp14/raw/master/lab7/mldata/mnist-original.mat
这个速度不快,可以使用我的百度云链接:
链接:https://pan.baidu.com/s/1NH1VSnX_Bkvr3k-Dku4gAw
提取码:herq
下载好后使用fetch_mldata的data_home参数指定文件所在目录
例如:
我的Jupyter文件在 F:\PyCharmWorkSpace\ML下,在其中新建一个datasets,并在代码中指定
mnist = fetch_mldata("MNIST original",data_home='./datasets')
此时再运行,还是会报错,先别急
打开datasets文件夹,发现
这样一个子目录,把下载好的文件放到这里面去,在运行,OK