TensorFlow手动加载数据集(以mnist为例)

在进行Mnist手写识别的项目中,出现了Mnist数据集下载出错的问题,报出以下错误:

Exception: URL fetch failure on https://s3.amazonaws.com/img-datasets/mnist.npz: None -- WinError 10060 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。

MNIST数据集包含四个gz文件。这些文件分别包含训练集图像、训练集标签、测试集图像和测试集标签。

你可以从官方网站下载这些文件。以下是MNIST数据集的官方网站链接:http://yann.lecun.com/exdb/mnist/

在该网站上,你可以找到以下四个文件:

  • train-images-idx3-ubyte.gz:训练集图像
  • train-labels-idx1-ubyte.gz:训练集标签
  • t10k-images-idx3-ubyte.gz:测试集图像
  • t10k-labels-idx1-ubyte.gz:测试集标签
    你可以下载这些文件,并将它们保存在本地路径中。然后,你可以使用适当的库(如gzip和numpy)来解压和加载这些文件,以获取MNIST数据集的特征和标签。

以下是一个示例代码,演示如何加载MNIST数据集的图像和标签:

python 复制代码
import gzip
import numpy as np

def load_mnist_images(path):
    with gzip.open(path, 'rb') as f:
        # 跳过文件头
        f.read(16)
        # 读取图像数据
        buf = f.read()
        # 将字节数据转换为numpy数组
        data = np.frombuffer(buf, dtype=np.uint8)
        # 重新整形为图像数组
        data = data.reshape(-1, 28, 28)
        return data

def load_mnist_labels(path):
    with gzip.open(path, 'rb') as f:
        # 跳过文件头
        f.read(8)
        # 读取标签数据
        buf = f.read()
        # 将字节数据转换为numpy数组
        labels = np.frombuffer(buf, dtype=np.uint8)
        return labels

# 指定文件路径
train_images_path = 'path_to_train-images-idx3-ubyte.gz'
train_labels_path = 'path_to_train-labels-idx1-ubyte.gz'
test_images_path = 'path_to_t10k-images-idx3-ubyte.gz'
test_labels_path = 'path_to_t10k-labels-idx1-ubyte.gz'

# 加载训练集图像和标签
train_images = load_mnist_images(train_images_path)
train_labels = load_mnist_labels(train_labels_path)

# 加载测试集图像和标签
test_images = load_mnist_images(test_images_path)
test_labels = load_mnist_labels(test_labels_path)

# 打印数据集信息
print("训练集样本数量:", train_images.shape[0])
print("测试集样本数量:", test_images.shape[0])
print("输入特征形状:", train_images[0].shape)
print("标签形状:", train_labels.shape)

# 进行模型训练和评估的代码可以继续编写...
相关推荐
一点一木3 分钟前
Hermes Desktop 重磅更新,Bot Mode 正式上线——把你的 AI 变成一支可协作的专属团队
人工智能·agent
xushichang123_30 分钟前
客服中心想要依托 AI 升级客户服务体验,可选择哪些云联络中心架构方案?:优先评估 Amazon Connect+客服 AI Agent
人工智能
jikemaoshiyanshi36 分钟前
企业如何借助一体化 AI 工作台赋能办公提效?Amazon Quick 可适配哪些企业业务场景?—— 从智能问答、数据解析到流程自动化的全域 AI 能力平台
人工智能
IT_陈寒43 分钟前
Redis的DEL命令竟然没删掉数据?我踩的这个坑你得知道
前端·人工智能·后端
AI导出鸭PC端1 小时前
Gemini流程图怎么导出?AI导出鸭一键解决格式兼容难题
人工智能·ai·word·流程图·豆包·ai导出鸭
阿里云大数据AI技术2 小时前
Daft 多模态视频抽帧性能优化实践:从抽帧到大模型打标,一条视频理解流水线是怎么跑起来的
大数据·人工智能·spark
wuyk5552 小时前
Python 第三章:列表 List
服务器·开发语言·python
weixin_446260852 小时前
Wyvern:生成可溯源多模态报告的智能体框架
人工智能
笨鸟先飞,勤能补拙2 小时前
从预测到决策:人工智能与机器学习的系统方法、工程闭环与现实边界
大数据·人工智能·windows·python·机器学习·密码学
tech讯息2 小时前
生成式 AI 从 POC 验证迈向正式生产,推理部署环节成为卡点的核心原因是什么?
大数据·人工智能