[深度学习]cifar10数据集使用方法
发布日期:2021-05-28 16:50:19 浏览次数:22 分类:精选文章

本文共 979 字,大约阅读时间需要 3 分钟。

解析CIFAR-10训练数据集

CIFAR-10是一个常用的机器学习数据集,包含5000多张_rgb图像,分布于10个类别。数据集被分成不同的批次,每个批次包含500张图像,与对应的标签信息。

获取CIFAR-10训练数据集可以通过以下步骤完成:

1.前往指定的文件下载地址,获取对应的提取码。2.使用文件提取工具解压文件,并将数据导入到你的项目目录中。3.确保存储路径正确,避免文件损坏或丢失。

数据解析示例以下是数据集文件格式的简要说明:

  • 每个数据批次使用pickle文件格式存储。
  • 数据结构包含多个键值对,包括_data(图像数据)、labels(标签)、batch_label(批次标识)、filenames(文件名)。
  • 图像数据以numpy数组形式存储,形状为32x32x3(宽x高x通道)。

例:获取第一个批次数据

import osimport numpy as npimport pickle

CIFAR_DIR = "./cifar-10-batches-py"

查看目录内容

print(os.listdir(CIFAR_DIR))

打开数据文件并读取

with open(os.path.join(CIFAR_DIR, "data_batch_1"), 'rb') as f:data = pickle.load(f, encoding='bytes')print(type(data))print(data.keys())print(data[b'data'].shape)print(data[b'data'][0:2])print(data[b'labels'][0:2])print(data[b'batch_label'])

图片显示结果以下是第100个索引的图片内容:

import matplotlib.pyplot as pltfrom matplotlib.pyplot import imshow

image_arr = data[b'data'][100]image_arr = image_arr.reshape((3, 32, 32)) # 调整维度image_arr = image_arr.transpose((1, 2, 0)) # 调整为 camaraderie等顺序imshow(image_arr)

上一篇:[PythonCookBook][迭代器和生成器]迭代器元素的手动访问
下一篇:[5GC]SMF会话管理功能

发表评论

最新留言

能坚持,总会有不一样的收获!
[***.219.124.196]2025年05月06日 02时17分54秒