数据资源-CIFAR10数据集解析及分享

AI研习图书馆,发现不一样的世界

CIFAR-10数据集解析

简介

CIFAR-10和CIFAR-100是来自于80 million张小型图片的数据集,图片收集者是Alex Krizhevsky, Vinod Nair, and Geoffrey Hinton。

CIFAR-10是一个更接近普适物体的彩色图像数据集。CIFAR-10 是由Hinton 的学生Alex Krizhevsky 和Ilya Sutskever 整理的一个用于识别普适物体的小型数据集。

一共包含10 个类别的RGB 彩色图片:飞机( airplane )、汽车( automobile )、鸟类( bird )、猫( cat )、鹿( deer )、狗( dog )、蛙类( frog )、马( horse )、船( ship )和卡车( truck )。每个图片的尺寸为32 × 32 ,每个类别有6000个图像,数据集中一共有50000 张训练图片和10000 张测试图片。

官网链接:CIFAR-10

为了给大家提供便利,数据集已保存至百度网盘,公众号后台回复“MiniImageNet”,即可获取CIFAR-10下载链接,同时可获得mnist、market1501和omniglot等多个数据资源网盘下载链接~

我是一个无情的数据集搬运工,欢迎收藏~

数据集解析

数据特点

与MNIST 数据集相比, CIFAR-10 具有以下不同点

(1)CIFAR-10 是3 通道的彩色RGB 图像,而MNIST 是灰度图像。

(2)CIFAR-10 的图片尺寸为32 × 32 , 而MNIST 的图片尺寸为28 × 28 ,比MNIST 稍大。

(3)相比于手写字符, CIFAR-10 含有的是现实世界中真实的物体,不仅噪声很大,而且物体的比例、特征都不尽相同,这为识别带来很大困难。直接的线性模型如Softmax 在CIFAR-10 上表现得很差。

顺便一提,Rodrigo Benenson对cifar-10、cifar-100等数据集的识别模型做了一个排名,click here to view

数据集架构

这里描述一下Python版本的数据集,Matlab版本是相同的。

数据处理代码

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,其中的内容是:
小结
(0)

相关推荐