我是新来的ML并试图下载MNIST数据。我使用的代码是:
from sklearn.datasets import fetch_mldata
mnist = fetch_mldata('MNIST original')
但是,它给出了一个错误说:
TimeoutError: [WinError 10060] A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond
任何人都可以请帮我需要做的事情来解决这个问题,怎么办?
这里的问题和解决方法的一些良好的人建议:
https://github.com/scikit-learn/scikit-learn/issues/8588
一个最简单的就是下载MNIST的.MAT文件,这个下载链接:
下载放入〜/ scikit_learn_data / mldata文件夹中的文件后,如果这个文件夹不存在创建它,并把Mnist.mat里面。当你有本地他们scikit学不会下载并使用该文件。
由于fetch_mldata已经过时,我们将不得不搬到fetch_openml。请务必更新以获得openml
工作的scikit学习到0.20.0版本或向上。
from sklearn.datasets import fetch_openml
# Load data from https://www.openml.org/d/554
X, y = fetch_openml('mnist_784', version=1, return_X_y=True)
load_digits
:from sklearn.datasets import load_digits
mnist = load_digits()
请注意,如果你是以下这本书动手机与学习Scikit,学习和TensorFlow,与MNIST-784数据集,您可能会注意到,代码
some_digit = X[36000]
some_digit_image = some_digit.reshape(28, 28)
plt.imshow(some_digit_image, cmap=matplotlib.cm.binary, interpolation="nearest")
plt.axis('off')
plt.show()
返回9:1的图象,而不是5.我想,它可能是一个在MNIST-784和MNIST原来是NIST数据的两个子集,或数据的顺序在两个数据集之间的不同。
PS:我曾经遇到过,当我试图加载数据,在我来说,我更新OpenSSL SSL一些错误和问题已经得到了解决。
虽然我不知道你得到了错误的原因,你可以试试下面可能的方式来纠正相同。
from sklearn.datasets.base import get_data_home
print (get_data_home())
现在,清理目录,重新下载和。
https://github.com/ageron/handson-ml/issues/143
https://github.com/scikit-learn/scikit-learn/issues/8588
https://github.com/ageron/handson-ml/issues/8
如果你面临的问题是,我想请您提供详细的追踪帮我找出问题所在。
谢谢!!