- Blob数据结构介绍
Blob提供了统一的存储器接口,TensorFlow中的Tensor也有对应的Blob数据结构。
Caffe的基本存储单元是Blob,使用Blob格式的4维数组用于存储和交换数据,维度从低到高为(width_,height_,channels_,num_),用于存储数据或权值(data)和权值增量(diff),其中width_和height_分别表示图像的宽和高,channels_表示颜色通道RGB,num_表示第几个颜色通道。在进行网络计算时,每层的输出/输入都需要通过Blob对象缓冲。
//使用的是一个Blob的容器是因为某些Layer包含多组学习参数
vector<shared_ptr<Blob<Dtype>>> blobs_;
- Blob数据结构描述
src/caffe/proto/caffe.proto文件中,Blob描述如下:
// packed表示这些值在内存中紧密排布,没有空洞
message BlobShape{
//只包括若干int64类型值,分别表示Blob每个维度的大小
repeated int64 dim = 1 [packed =