【caffe学习笔记】Data Layers 数据层

数据能过数据层进入 caffe 网络:数据层处于网络的最底层。
数据可以从 高效率的数据库中读取(如LevelDB或LMDB), 可以直接从 内存中读取, 若对读写效率要求不高也可以从 硬盘上的HDFT文件或者 普通的图片文件读取。

常见的数据预处理操作(减均值,尺度变换,随机裁剪或者镜像)可以能过设定参数 TransformationParameter 来实现。


数据库 Database
  • 层类型: Data

参数
Required(必须的参数)
  • source: 数据库文件的路径
  • batch_size:网络单次输入数据的数量

Optional(可选的)
  • rand_skip: 跳过开头的 rand_skip * rand(0,1)个数据,通常在异步随机梯度下降法里使用;
  • backend [default LEVELDB]: 选择使用 LEVELDB 还是 LMDB。


内存数据 In-Memory
memory data 层直接从内存中读取数据而不用拷贝。
使用这个层时需要调用MemoryDataLayer::Reset (C++)或者Net.set_input_arrays(Python)来指定数据来源(四维按行存储的数组), 每次读取一个大小为batch-sized的数据块。
  • 层类型: MemoryData

参数
Required(必须的参数)
  • batch_size, channels, height, width: 指定从内存中读取的输入数据块的尺寸


HDF5 Input
  • 层类型: HDF5Data
参数
Required(必须的参数)
  • source: 文件路径;
  • batch_size


HDF5 Output
HDF5 output 层执行了一个与数据读取相反的操作, 它将数据写进硬盘。
  • 层类型:  HDF5Output

参数
Required(必须的参数)
  • file_name: 写入文件的路径


图像数据 Images
  • 层类型: ImageData

参数
Required(必须的参数)
  • source: text 文件的路径名,该 text 文件的每一行存储一张图片的路径名和对应的标签;
  • batch_size: 打包成 batch 的图片数量。

Optional(可选的)
  • rand_skip
  • shuffle [default false]
  • new_height, new_width: 根据设置的值,输入的图片将会被调整成给定的尺寸。


窗口 Windows
WindowData


Dummy
DummyData 主要用来开发和调试, 详细介绍见 DummyDataParameter。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值