cifar-10数据集
下载方式:
官网:www.cs.toronto.edu/~kriz/cifar…
对网页进行解读:
CIFAR-10和CIFAR-100是8000万个微小图像的标记子集(people.csail.mit.edu/torralba/ti…) 数据集。它们由亚历克斯·克里兹耶夫斯基、维诺德·奈尔和杰弗里·辛顿收藏。
The CIFAR-10 dataset
CIFAR-10数据集包含60000个32x32彩色图像,分为10个类,每个类有6000个图像。有50000个训练图像和10000个测试图像。
数据集分为五个训练批和一个测试批,每个批有10000幅图像。测试批包含每个类中的1000个随机选择的图像。培训批次随机包含剩余图像,但有些培训批次可能包含来自一个类的图像多于另一个类。其中,培训批次中每节课的图片准确5000张。
这些类是完全互斥的。汽车和卡车之间没有重叠。”“汽车”包括轿车,SUV,诸如此类的东西卡车“只包括大卡车。两者都不包括皮卡车。
Download(这里我们下载的就是CIFAR-10 python version)
If you're going to use this dataset, please cite the tech report at the bottom of this page.
Version | Size | md5sum |
---|---|---|
CIFAR-10 python version | 163 MB | c58f30108f718f92721af3b95e74349a |
CIFAR-10 Matlab version | 175 MB | 70270af85842c9e89bb428ec9976c926 |
CIFAR-10 binary version (suitable for C programs) | 162 MB | c32a1d4ab5d03f1284b67883e8d87530 |
数据集布局
Python / Matlab versions
我将描述数据集的Python版本的布局。Matlab版本的布局是相同的。
存档包含文件 data_batch_1, data_batch_2, ..., data_batch_5以及test_batch。这些文件中的每一个都是用cPickle生成的Python“pickled”对象(www.python.org/doc/2.5/lib…). 它将打开这样一个文件并返回一个字典:
python2版本
def unpickle(file):
import cPickle
with open(file, 'rb') as fo:
dict = cPickle.load(fo)
return dict
python3版本
def unpickle(file):
import pickle
with open(file, 'rb') as fo:
dict = pickle.load(fo, encoding='bytes')
return dict
Loaded in this way, each of the batch files contains a dictionary with the following elements:
- data -- UINT8的10000x3072 numpy阵列。阵列的每一行存储一个32x32色图像。前1024个条目包含红色通道值,后1024个条目包含绿色通道值,最后1024个条目包含蓝色通道值。图像按行主顺序存储,因此数组的前32个条目是图像第一行的红色通道值。
- 说明:3072 是 32 * 32 = 1024 一个channel一共1024个像素,但是是彩色图片,包含3个通道, 1024 * 3 = 3072个像素,一共10000张图片,最终的阵列是10000 * 3072的样子。
- labels -- 在0-9范围内包含10000个数字的列表。索引 i 处的数字表示数组数据中第 i 个图像的标签。
数据集包含另一个名为batches.meta的文件。它也包含一个Python字典对象。它包含以下条目:
- label_names——一个由10个元素组成的列表,它为上述labels数组中的数字标签提供有意义的名称。例如,label_names[0]== “飞机”,label_names[1]==“汽车”,等等。
二进制版本
二进制版本包含文件 data_batch_1, data_batch_2, ..., data_batch_5以及test_batch。每个文件的格式如下:
<1 x标签><3072 x像素>
...
<1 x标签><3072 x像素>
换句话说,第一个字节是第一个图像的标签,它是一个0-9范围内的数字。接下来的3072字节是图像像素的值。前1024字节是红色通道值,后1024字节是绿色通道值,最后1024字节是蓝色通道值。值按行主顺序存储,因此前32个字节是图像第一行的红色通道值。
每个文件包含10000个这样的3073字节的图像“行”,尽管没有任何行的分隔。因此,每个文件的长度应该正好是30730000字节。
还有另一个文件,名为batches.meta.txt。这是一个ASCII文件,它将0-9范围内的数字标签映射到有意义的类名。它只是10个类名的列表,每行一个。第 i 行的类名对应于数字标签 i 。
The CIFAR-100 dataset
这个数据集与CIFAR-10类似,只是它有100个类,每个类包含600个图像。每个class有500张训练图片和100张测试图片。CIFAR-100中的100个类被分为20个超类。每个图像都有一个“精细”标签(它所属的类)和一个“粗糙”标签(它所属的超类)。
以下是CIFAR-100中的类列表:
Superclass | Classes |
---|---|
aquatic mammals | beaver, dolphin, otter, seal, whale |
fish | aquarium fish, flatfish, ray, shark, trout |
flowers | orchids, poppies, roses, sunflowers, tulips |
food containers | bottles, bowls, cans, cups, plates |
fruit and vegetables | apples, mushrooms, oranges, pears, sweet peppers |
household electrical devices | clock, computer keyboard, lamp, telephone, television |
household furniture | bed, chair, couch, table, wardrobe |
insects | bee, beetle, butterfly, caterpillar, cockroach |
large carnivores | bear, leopard, lion, tiger, wolf |
large man-made outdoor things | bridge, castle, house, road, skyscraper |
large natural outdoor scenes | cloud, forest, mountain, plain, sea |
large omnivores and herbivores | camel, cattle, chimpanzee, elephant, kangaroo |
medium-sized mammals | fox, porcupine, possum, raccoon, skunk |
non-insect invertebrates | crab, lobster, snail, spider, worm |
people | baby, boy, girl, man, woman |
reptiles | crocodile, dinosaur, lizard, snake, turtle |
small mammals | hamster, mouse, rabbit, shrew, squirrel |
trees | maple, oak, palm, pine, willow |
vehicles 1 | bicycle, bus, motorcycle, pickup truck, train |
vehicles 2 | lawn-mower, rocket, streetcar, tank, tractor |
是的,我知道蘑菇不是真正的水果或蔬菜,熊也不是真正的食肉动物。
Download
Version | Size | md5sum |
---|---|---|
CIFAR-100 python version | 161 MB | eb9058c3a382ffc7106e4002c42a8d85 |
CIFAR-100 Matlab version | 175 MB | 6a4bfa1dcd5c9453dda6bb54194911f4 |
CIFAR-100 binary version (suitable for C programs) | 161 MB | 03b5dce01913d631647c71ecec9e9cb8 |
Dataset layout
Python / Matlab versions
python和Matlab版本在布局上与CIFAR-10是相同的,所以我不会在这里浪费空间来描述它们。