【问题标题】:Training Methodology of CNN in theano with large scale dataCNN在theano中的大规模数据训练方法
【发布时间】:2016-02-02 10:48:12
【问题描述】:
我正在使用 theano 训练具有 100 万张图像的 CNN。现在我很困惑如何准备训练数据。
我的问题是:
当图片大小调整为64*64*3时,整个数据的大小约为100G。我应该将数据保存到单个 npy 文件还是一些较小的文件中?哪个效率高?
如何决定CNN的参数个数? 1M/10 = 100K 怎么样?
我是否应该将训练块的内存成本和 CNN 参数限制在 GPU 内存以下?
我的电脑有 16G 内存和 GPU Titian。
非常感谢。
【问题讨论】:
标签:
theano
conv-neural-network
training-data
large-data
【解决方案1】:
如果您使用的是 NN 框架,如 pylearn2、lasagne、Keras 等,请查看文档以查看是否有从 hdf5 存储或类似存储中迭代磁盘批次的指南。
如果什么都没有并且您不想自己动手,fuel package 提供了许多有用的数据迭代方案,可以适应 theano 中的模型(可能还有大多数框架;在燃料库)。
至于参数,您必须交叉验证才能找出最适合您的数据的参数。
是的,批次的模型大小 + 小批量大小 + 丢弃掩码必须低于可用的 vram。