You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用keras.datasets.mnist.load_data()下载MNIST数据集持续报错如何解决

报错原因
  • 核心原因是tf.keras.datasets.mnist.load_data()默认的数据源地址是谷歌云存储域名,国内网络环境下无法稳定访问该资源,导致下载连接超时、进度卡住。
  • 次要可能原因:之前触发过下载但中途中断,本地缓存目录中存在损坏的不完整MNIST数据集文件,导致后续下载流程异常。
解决方案

方案1:手动放置本地数据集(最稳定)

  • 自行下载完整的mnist.npz文件,文件大小约11MB,校验哈希为731c5ac602752760c8e48fbffcf8c3b850d9dc2a2aedcf2cc48468fc17b673d1。
  • 找到TensorFlow Keras的默认缓存目录:
    • Windows系统:C:\Users\你的用户名\.keras\datasets
    • Mac/Linux系统:~/.keras/datasets
  • 将下载好的mnist.npz直接放入上述目录,再运行原有代码即可直接读取本地文件,无需再次下载。
  • 注意:操作前先删除目录中已存在的不完整mnist.npz或带.part后缀的临时下载文件,避免读取异常。

方案2:替换为国内镜像源下载

在代码中指定国内可访问的数据集镜像地址,修改后的代码示例如下:

import tensorflow as tf

# 提前从国内镜像下载数据集到本地缓存,origin参数替换为可用的国内MNIST npz文件地址
tf.keras.utils.get_file(
    fname="mnist.npz",
    origin="国内可用的MNIST npz镜像地址",
    cache_subdir="datasets",
    file_hash="731c5ac602752760c8e48fbffcf8c3b850d9dc2a2aedcf2cc48468fc17b673d1"
)

# 调用原有接口加载数据
(x_train, y_train), (x_test, y_test)= tf.keras.datasets.mnist.load_data()
print(x_train[0])

方案3:配置网络代理

如果有可用的代理服务,在运行代码前给当前终端配置全局代理,再执行代码即可正常从官方地址下载数据集。


内容的提问来源于stack exchange,提问作者Xvx

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 14:15:08