鱼C论坛

 找回密码
 立即注册
查看: 1282|回复: 0

[技术交流] 一个简单的卷积神经网络实现------读取cifar10数据

[复制链接]
发表于 2018-11-28 05:55:59 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 alltolove 于 2018-11-28 06:12 编辑

        太复杂的神经网络现在做不了,是因为我的电脑不是太好,程序运行起来恐怕要很长时间。首先选择一个网上最流行的cifar10图片数据集,它是一共有6万张32*32的彩色图片,图片比较小很适合学习用。从网上很多地方都可以下载到,官网网址是http://www.cs.toronto.edu/~kriz/cifar.html,(记得要下载python版本的)下载解压后一共是8个文件就对了。cifar10是一个10分类的图片,就是生活中常见的汽车飞机轮船什么的。这些文件是python序列化后的文件,用pickle读出来是个字典,以下为代码:
  1. import tensorflow as tf
  2. import os
  3. import numpy as np
  4. import pickle
  5. DATA_DIR=r'.\cifar-10-batches-py'
  6. def load_data(filename):
  7.     with open(os.path.join(DATA_DIR,filename),'rb') as f:
  8.         data=pickle.load(f,encoding='latin1')
  9.     return data['data'],data['labels']
复制代码

        先写一个函数用来方便读取文件,这个DATA_DIR变量就是解压后文件所在的目录,然后我们要把所有的文件都读取到内存中,代码如下:
  1. train_filenames=['data_batch_%d'%i for i in range(1,6)]
  2. test_filename='test_batch'
  3. all_data=[]
  4. all_labels=[]
  5. for filename in train_filenames:
  6.     data,labels=load_data(filename)
  7.     all_data.append(data)
  8.     all_labels.append(labels)
  9. data=np.vstack(all_data)
  10. labels=np.hstack(all_labels)
复制代码

       

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-26 22:10

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表