在caffe文档中:http://caffe.berkeleyvision.org/tutorial/net_layer_blob.html
Blob存储和通信#Blob是Caffe处理和传递的实际数据的包装器,并且还提供CPU和GPU之间的同步功能.数学上,blob是以C连续方式存储的N维数组.
它说blob以C连续的方式存储.是什么C-连续的方式呢?
在GoogleNet等相关模型中 https://github.com/BVLC/caffe/tree/master/models/bvlc_googlenet
我们可以看到两个描述网络的.prototxt文件,它们之间有什么区别?
我的关键问题是,在python界面中,为什么我只能使用前者?也就是说:
model_def = caffe_root + 'models/bvlc_googlenet/deploy.prototxt'
model_weights = caffe_root + 'models/bvlc_googlenet/bvlc_googlenet.caffemodel'
net = caffe.Net(model_def,model_weights,caffe.TEST)
Run Code Online (Sandbox Code Playgroud)
此代码运行正确,同时:
model_def = caffe_root + 'models/bvlc_googlenet/train_val.prototxt'
model_weights = caffe_root + 'models/bvlc_googlenet/bvlc_googlenet.caffemodel'
net = caffe.Net(model_def,model_weights,caffe.TEST)
Run Code Online (Sandbox Code Playgroud)
这不.它给出了错误信息:
layer {
name: "inception_4e/relu_5x5_reduce"
type: "ReLU"
bottom: "inception_4e/5x5_reduce"
top: "inception_4e/5x5_reduce"
}
layer {
I0805 10:15:13.698256 30930 layer_factory.hpp:77] Creating layer data
I0805 10:15:13.698444 30930 net.cpp:100] Creating Layer data
I0805 10:15:13.698465 30930 net.cpp:408] data -> data
I0805 10:15:13.698514 30930 net.cpp:408] data -> label
F0805 10:15:13.699956 …Run Code Online (Sandbox Code Playgroud)