|
|
--- |
|
|
title: Memory Data Layer |
|
|
--- |
|
|
|
|
|
# Memory Data Layer |
|
|
|
|
|
* Layer type: `MemoryData` |
|
|
* [Doxygen Documentation](http://caffe.berkeleyvision.org/doxygen/classcaffe_1_1MemoryDataLayer.html) |
|
|
* Header: [`./include/caffe/layers/memory_data_layer.hpp`](https://github.com/BVLC/caffe/blob/master/include/caffe/layers/memory_data_layer.hpp) |
|
|
* CPU implementation: [`./src/caffe/layers/memory_data_layer.cpp`](https://github.com/BVLC/caffe/blob/master/src/caffe/layers/memory_data_layer.cpp) |
|
|
|
|
|
The memory data layer reads data directly from memory, without copying it. In order to use it, one must call `MemoryDataLayer::Reset` (from C++) or `Net.set_input_arrays` (from Python) in order to specify a source of contiguous data (as 4D row major array), which is read one batch-sized chunk at a time. |
|
|
|
|
|
# Parameters |
|
|
|
|
|
* Parameters (`MemoryDataParameter memory_data_param`) |
|
|
* From [`./src/caffe/proto/caffe.proto`](https://github.com/BVLC/caffe/blob/master/src/caffe/proto/caffe.proto): |
|
|
|
|
|
{% highlight Protobuf %} |
|
|
{% include proto/MemoryDataParameter.txt %} |
|
|
{% endhighlight %} |
|
|
|
|
|
* Parameters |
|
|
- Required |
|
|
- `batch_size`, `channels`, `height`, `width`: specify the size of input chunks to read from memory |
|
|
|