CIFAR图片分类数据集

2024-01-08 09:10:52

1.?CIFAR介绍

? ? ? ? 官网链接:CIFAR-10 and CIFAR-100 datasets

????????CIFAR-10是一个更接近普适物体的彩色图像数据集。CIFAR-10 是由Hinton 的学生Alex Krizhevsky 和Ilya Sutskever 整理的一个用于识别普适物体的小型数据集。一共包含10 个类别的RGB 彩色图片:飞机( airplane )、汽车( automobile )、鸟类( bird )、猫( cat )、鹿( deer )、狗( dog )、蛙类( frog )、马( horse )、船( ship )和卡车( truck )。
? ? ? ? ?每个图片的尺寸为32 × 32 ,每个类别有60000个图像,数据集中一共有50000 张训练图片和10000 张测试图片。

1、与MNIST 数据集中目比, CIFAR-10 以下不同点
(1)、CIFAR-10 是3 通道的彩色RGB 图像,而MNIST 是灰度图像。
(2)、CIFAR-10 的图片尺寸为32 × 32 , 而MNIST 的图片尺寸为28 × 28 ,比MNIST 稍大。
(3)、相比于手写字符, CIFAR-10 含有的是现实世界中真实的物体,不仅噪声很大,而且物体的比例、特征都不尽相同,这为识别带来很大困难。直接的线性模型如Softmax 在CIFAR-10 上表现得很差。

? ? ? ? 此外还有个CIFAR-100。该数据集与 CIFAR-10 类似,不同之处在于它有 100 个类,每个类包含 600 张图像。每类有 500 个训练图像和 100 个测试图像。 CIFAR-100 中的 100 个类分为 20 个超类。每个图像都带有一个“精细”标签(它所属的类)和一个“粗略”标签(它所属的超类)。这个不怎么常用。

2.在Pytorch中使用CIFAR

? ? ? ? ?pytorch自带了CIFAR-10和CIFAR-100数据集,我们可以直接调用它的函数进行下载读取

import torchvision.datasets as datasets
import torchvision.transforms as transforms
from torch.utils.data import DataLoader
# 数据预处理
transform = transforms.Compose([
    transforms.ToTensor(),
    transforms.Normalize((0.485, 0.456, 0.406), (0.229, 0.224, 0.225)),
])

# 加载CIFAR-10数据集
train_dataset = datasets.CIFAR10(root='./dataset', train=True, download=True, transform=transform)
test_dataset = datasets.CIFAR10(root='./dataset', train=False, download=True, transform=transform)
## 加载CIFAR-100数据集
#train_dataset = datasets.CIFAR100(root='./dataset', train=True, download=True, #transform=transform)
#test_dataset = datasets.CIFAR100(root='./dataset', train=False, download=True, #transform=transform)

# 数据加载器
train_dataloader = DataLoader(train_dataset, batch_size=64, shuffle=True)
test_dataloader = DataLoader(test_dataset, batch_size=64, shuffle=False)

? ? ? ? 当然我们也可以在官网中直接下载。然后放到root位置中,然后同样的使用上面的代码

? ? ? ? 下载过慢也可以使用迅雷。复制链接后打开迅雷。?

文章来源:https://blog.csdn.net/weixin_64924692/article/details/135383610
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。