cifar-10

Cifar-10数据集的可视化保存

做~自己de王妃 提交于 2019-12-03 12:23:36
学习Tensorflow或深度学习,难免用到各种数据集, 最近用到cifar10数据集,简单研究了下,然后把cifar-10数据集保存为jpg图片,分别利用python和c++做了实现。 CIFAR-10下载 关于cifar-10,网上介绍很多,这里主要用了python和binary版本: python版 每个batch包含一个字典,该字典有data和labels两个key。其中,data是1000*3072( 3 *32 *32)的图像数据。1000即图片数量,前1024个数据是red通道像素值,然后1024是个green通道像素值,最后啥blue通道。labels是1000个0~9表示数据类别的数据。 代码如下: import numpy as np from PIL import Image import pickle import os CHANNEL = 3 WIDTH = 32 HEIGHT = 32 data = [] labels=[] classification = ['airplane','automobile','bird','cat','deer','dog','frog','horse','ship','truck'] for i in range(5): with open("data/cifar-10-batches-py/data_batch_"+

如何使用tensorflow加载cifar-10数据集

六眼飞鱼酱① 提交于 2019-12-03 12:21:16
前言:最近写论文在celebA上训练之后,结果不错所以就在cifar-10数据继续训练数据集,但是在cifar-10官网上下载好数据之后,形式是: cifar-10原始数据形式 上网上查了一下如何加载cifar-10的数据集,大神们各种方法都有,但是不是很懂里面原理,想想自己刚接触人工智能还是脚踏实地的分析一下,慢慢分析cifar-10的数据集吧, 所以以写一个小程序来实现cifar-10数据的读取,并且将其转化图像的形式放到不同类别的文件夹下。 程序主要实现的功能如下: 第一:把data_batch中的数据转化成numpy用来读取数据 第二:把data_batch数据按照类别存到不同的文件夹下面,仅仅只做了一张数据,下一篇将所有的数据都转化成图像并且分类 程序主要分成两步: 第一:使用pickle加载数据集,并按照关键字找到所需要的数据集 第二:将numpy转化成图像的形式 开始秀代码: 代码写的有点乱 可以简单封装一下 方法定义一个函数, 然后根据需要设置返回值cifar_image cifar_label cifar_image_name 其他的不需要修改 import pickle import os import numpy as np import scipy.misc from tqdm import tqdm # 这段代码是cifar官网上给的

CIFAR10/CIFAR100数据集介绍---有Python版本的二进制数据格式说明

安稳与你 提交于 2019-12-03 12:18:28
CIFAR-10/CIFAR-100数据集解析 转载自:https://www.cnblogs.com/cloud-ken/p/8456878.html 觉得有用的话,欢迎一起讨论相互学习~ Follow Me 参考文献 CIFAR-10/CIFAR-100数据集 CIFAR-10和CIFAR-100被标记为 8000万个微小图像数据集 的子集。他们由Alex Krizhevsky,Vinod Nair和Geoffrey Hinton收集。 CIFAR-10数据集 CIFAR-10数据集由10个类的60000个32x32彩色图像组成,每个类有6000个图像。有50000个训练图像和10000个测试图像。 数据集分为五个训练批次和一个测试批次,每个批次有10000个图像。测试批次包含来自每个类别的恰好1000个随机选择的图像。训练批次以随机顺序包含剩余图像,但一些训练批次可能包含来自一个类别的图像比另一个更多。总体来说,五个训练集之和包含来自每个类的正好5000张图像。 以下是数据集中的类,以及来自每个类的10个随机图像: 这些类完全相互排斥。汽车和卡车之间没有重叠。“汽车”包括轿车,SUV,这类东西。“卡车”只包括大卡车。都不包括皮卡车。 airplane/automobile/bird/cat/deer/dog/frog/horse/ship/truck CIFAR-10下载

使用cifar-10数据集

匿名 (未验证) 提交于 2019-12-03 00:22:01
#-*-coding:utf-8-*- import numpy as np import matplotlib.pyplot as plt from data_utils import load_CIFAR10 cifar10_dir = 'datasets/cifar-10-batches-py' X_train, y_train, X_test, y_test = load_CIFAR10(cifar10_dir) print("训练数据:",X_train.shape) classes = ['plane', 'cat', 'bird', 'cat', 'deer', 'dog', 'frog', 'horse', 'ship', 'truck'] num_classes = len(classes) samples_per_class = 7 for y,cls in enumerate(classes): idxs = np.flatnonzero(y_train == y) idxs = np.random.choice(idxs,samples_per_class, replace=False) for i, idx in enumerate(idxs): plt_idx = i * num_classes + y + 1 plt.subplot(samples

CIFAR10/CIFAR100数据集介绍---有Python版本的二进制数据格式说明

匿名 (未验证) 提交于 2019-12-02 22:54:36
CIFAR-10/CIFAR-100数据集解析 转载自:https://www.cnblogs.com/cloud-ken/p/8456878.html 觉得有用的话,欢迎一起讨论相互学习~ Follow Me 参考文献 CIFAR-10/CIFAR-100数据集 CIFAR-10和CIFAR-100被标记为 8000万个微小图像数据集 的子集。他们由Alex Krizhevsky,Vinod Nair和Geoffrey Hinton收集。 CIFAR-10数据集 CIFAR-10数据集由10个类的60000个32x32彩色图像组成,每个类有6000个图像。有50000个训练图像和10000个测试图像。 数据集分为五个训练批次和一个测试批次,每个批次有10000个图像。测试批次包含来自每个类别的恰好1000个随机选择的图像。训练批次以随机顺序包含剩余图像,但一些训练批次可能包含来自一个类别的图像比另一个更多。总体来说,五个训练集之和包含来自每个类的正好5000张图像。 以下是数据集中的类,以及来自每个类的10个随机图像: 这些类完全相互排斥。汽车和卡车之间没有重叠。“汽车”包括轿车,SUV,这类东西。“卡车”只包括大卡车。都不包括皮卡车。 airplane/automobile/bird/cat/deer/dog/frog/horse/ship/truck CIFAR-10下载

Pytorch打怪路(一)pytorch进行CIFAR-10分类(5)测试

三世轮回 提交于 2019-12-02 01:13:54
pytorch进行CIFAR-10分类(5)测试 我的系列博文: Pytorch打怪路(一)pytorch进行CIFAR-10分类(1)CIFAR-10数据加载和处理 Pytorch打怪路(一)pytorch进行CIFAR-10分类(2)定义卷积神经网络 Pytorch打怪路(一)pytorch进行CIFAR-10分类(3)定义损失函数和优化器 Pytorch打怪路(一)pytorch进行CIFAR-10分类(4)训练 Pytorch打怪路(一)pytorch进行CIFAR-10分类(5)测试 ( 本文 ) 1.直接上代码 代码第一部分 dataiter = iter(testloader) # 创建一个python迭代器,读入的是我们第一步里面就已经加载好的testloader images, labels = dataiter.next() # 返回一个batch_size的图片,根据第一步的设置,应该是4张 # print images imshow(torchvision.utils.make_grid(images)) # 展示这四张图片 print('GroundTruth: ', ' '.join('%5s' % classes[labels[j]] for j in range(4))) # python字符串格式化 ' '.join表示用空格来连接后面的字符串

使用PyTorch对cifar-10图片分类

自古美人都是妖i 提交于 2019-12-02 01:11:12
使用PyTorch对cifar-10图片分类 前言 最近刚学习了PyTorch,主要是在 PyTorch主页 教程里面学习。不过这个教程是英文的,学习起来比较费劲。 因此我自己对PyTorch对cifar-10图片分类这一部分进行了总结,因为光对着代码看很容易乱,所以将整个过程的流程整理出来,方便理解。 程序流程 一、数据预处理 图片转化为Tensor 将数据归一化 为训练集、测试集分别创建可迭代的数据集,每次迭代可得到batch_size个输入图片数据。 import torchvision as tv import torchvision.transforms as transforms from torchvision.transforms import ToPILImage show = ToPILImage() # 可以把Tensor转成Image,方便可视化 # 第一次运行程序torchvision会自动下载CIFAR-10数据集, # 大约100M,需花费一定的时间, # 如果已经下载有CIFAR-10,可通过root参数指定 # 定义对数据的预处理 transform = transforms.Compose([ transforms.ToTensor(), # 转为Tensor transforms.Normalize(( 0.5 , 0.5 , 0.5 ), (

DCGAN 论文简单解读

末鹿安然 提交于 2019-11-28 20:23:57
DCGAN 的全称是Deep Convolution Generative Adversarial Networks(深度卷积生成对抗网络)。是2014年Ian J.Goodfellow 的那篇开创性的 GAN论文 之后一个新的提出将GAN和卷积网络结合起来,以解决GAN训练不稳定的问题的一篇paper. 关于基本的GAN的原理,可以参考原始 paper ,或者其他一些有用的文章和代码,比如: GAN mnist 数据生成 , 深度卷积GAN之图像生成 , GAN tutorial 等。这里不再赘述。 一. DCGAN 论文简单解读 ABSTRACT 1.1 摘要 。作者说,这篇文章的初衷是,CNN在supervised learning 领域取得了非常了不起的成就(比如大规模的图片分类,目标检测等等),但是在unsupervised learning领域却没有特别大的进展。所以作者想弥补CNN在supervised 和 unsupervised之间的gap。作者提出了将CNN和GAN相结合的DCGAN,并展示了它在unsupervised learning所取得的不俗的成绩。作者通过在大量不同的image datasets上的训练,充分展示了DCGAN的generator(生成器)和discriminator(鉴别器)不论是在物体的组成部分(parts of object

图像识别——CIFAR-10(CNN)

你说的曾经没有我的故事 提交于 2019-11-26 17:08:36
一、CIFAR-10简介 CIFAR-10官网 CIFAR-10 是由 Hinton的学生Alex Krizhevsky和 Ilya Sutskever 整理的一个用于识别普适物体的小型数据集。 它一共包含10个类别的RGB彩色图片,具体参考如下图: 数据集中一共有5000张训练图片和1000张测试图片,图片的尺寸大小为 32 * 32。 官方提供文件介绍: 文件 用途 cifar10.py 建立 CIFAR-10 预测模型 cifar10_input.py 在 TensorFlow 中读入 CIFAR-10 文件 cifar10_input_test.py cifar10_input.py 的测试用例文件 cifar10_train.py 使用单个GPU或CPU训练模型 cifar10_train_multi_gpu.py 使用多个GPU训练模型 cifar10_eval.py 在测试集上测试模型的性能 - cifar10.py 文件中的 inference(images) 函数是官方提供的模型。 二、CIFAR-10 和 MNIST数据集的区别 CIFAR-10 MNIST 图像通道数 3 通道的 RGB 图像 灰度图像 尺寸大小 32 × 32 28 × 28 图片内容 现实世界的真实物体 0 ~ 9 数字 图片特点 噪声很大,可能有背景图片或其他物体干扰; 物体的比例