深度学习:CIFAR-10数据集
熟悉cifar-10数据集简介CIFAR-10和CIFAR-100是来自于80 million张小型图片的数据集,图片收集者是Alex Krizhevsky, Vinod Nair, and Geoffrey Hinton。官网 http://www.cs.toronto.edu/~kriz/cifar.htmlCIFAR-10数据集总数图片尺寸色彩类别数训练集测试...
深度学习:CIFAR-10数据集
简介
CIFAR-10和CIFAR-100是来自于80 million张小型图片的数据集,图片收集者是Alex Krizhevsky, Vinod Nair, and Geoffrey Hinton。
CIFAR-10数据集
总数 | 图片尺寸 | 色彩 | 类别数 | 训练集 | 测试集 |
---|---|---|---|---|---|
60000(张) | 32×32 | RGB | 10类 | 50000(张) | 10000(张) |
整个数据集被分为5个training batches和1个test batch(每个batch有10000张图片)
test batch:随机从每类选择1000张图片组成
training batches:从剩下的图片中随机选择,但每类的图片不是平均分给batch的(即一些training batches中某类图片可能比较多),总数为每类5000张图片。
这些类别是完全互斥的,在automobile和trucks中,automobiles包括轿车、越野车等。trucks只包括大型卡车。两者都不包括皮卡。
下载方式
登陆官网http://www.cs.toronto.edu/~kriz/cifar.html下载数据集
顺便一提,Rodrigo Benenson对cifar-10、cifar-100等数据集的识别模型做了一个排名,click here to view
数据集
这里描述一下Python版本的数据集,Matlab版本是相同的。
解压后的目录结构
- cifar-10-python
- cifar-10-batches-py
- batches.meta
- data_batch_1
- data_batch_2
- data_batch_3
- data_batch_4
- data_batch_5
- readme.html
- test_batch
- cifar-10-batches-py
文件名 | 内容 |
---|---|
batches.meta | 每个batch大小, label名称, 图片大小 |
data_batch_1 | 训练集的第一个batch,含有10000张图片 |
data_batch_2 | 训练集的第二个batch,含有10000张图片 |
data_batch_3 | 训练集的第三个batch,含有10000张图片 |
data_batch_4 | 训练集的第四个batch,含有10000张图片 |
data_batch_5 | 训练集的第五个batch,含有10000张图片 |
readme.html | |
test_batch | 测试集的batch,含有10000张图片 |
batch文件都是Python的pickled对象。
下面是python3来打开文件,并转换成dictonary的方法。
def unpickle(file):
import pickle
with open(file, 'rb') as fo:
dict_ = pickle.load(fo, encoding='bytes')
return dict_
data = unpickle('test_batch')
data.keys() # dict_keys([b'batch_label', b'labels', b'data', b'filenames'])
data[b'data'][0] # array([158, 159, 165, ..., 124, 129, 110], dtype=uint8)
每个batch文件转换为dictonary,其中的内容是
名称 | 值 |
---|---|
data | a 10000×3072 array(uint85),array的每行是一张32×32的彩色图片,前1024是red channel的值,后面1024是green channel的值,最后1024是blue channel的值。图片是以行主顺序存储,所以,前数组中前32个数表示的是一张图片第一行的red channel values。 |
labels | a list of 10000 numbers in the range 0-9,labels中的序号i对应的是data数组中第i个图片的label。 |
batch_label | batch的名称 |
filenames | 数据集中data对应的图片名称数组 |
batches.meta文件包含了[b’num_cases_per_batch’, b’label_names’, b’num_vis’]
- label_names – 十个类别对应的英文名
总结
cifar-10是我所接触过的第二个图像数据集,和之前了解的mnist数据集相比,划分为5个training batches。图像也是彩色,所以要给图像的三个通道进行管理。
更多推荐
所有评论(0)