Caffe源码解析8: Net
2017-01-03 19:48
369 查看
Net在Caffe中代表一个完整的CNN模型,它包含若干个Layer实例。前面看到的各类prototxt的经典网络结构如LeNet、AlexNet等都是Caffe代码实现的一个Net对象。
在main()中添加
可见Net中既包含了Layer对象,又包括了Blob对象。其中Blob对象用于存放每个Layer输入/输出的中间结果,Layer则根据Net描述对指定的输入Blob进行某些计算处理(卷积、下采样。。。),输出结果也被放到Blob中。
同名的blob表示同一个blob对象,同名的layer表示同一个layer对象,而blob和layer同名则不代表他们之间有任何关系。
[title3]
1、Net基本用法
#include <caffe\net.hpp>在main()中添加
std::string proto("deploy.prototxt"); Net<float> nn(proto, caffe::TEST); vector<string> bn = nn.blob_names(); //获取Net中所有blob对象名 vector<string> ln = nn.layer_names(); for (int i = 0; i < bn.size(); i++) { cout << "Blob #" << i << ":" << bn[i] << endl; } for (int j = 0; j < ln.size(); j++) { cout << "Layer #" << j << ":" << ln[j] << endl; }
F0103 13:36:44.474290 5904 cudnn_conv_layer.cpp:53] Check failed: status == CUDNN_STATUS_SUCCESS (6 vs. 0) I0103 13:54:55.282647 13792 net.cpp:283] Network initialization done.
Blob #0:data
Blob #1:conv1
Blob #2:pool1
Blob #3:norm1
Blob #4:conv2
Blob #5:pool2
Blob #6:norm2
Blob #7:conv3
Blob #8:conv4
Blob #9:conv5
Blob #10:pool5
Blob #11:fc6
Blob #12:fc7
Blob #13:fc8
Blob #14:prob
Layer #0:data
Layer #1:conv1
Layer #2:relu1
Layer #3:pool1
Layer #4:norm1
Layer #5:conv2
Layer #6:relu2
Layer #7:pool2
Layer #8:norm2
Layer #9:conv3
Layer #10:relu3
Layer #11:conv4
Layer #12:relu4
Layer #13:conv5
Layer #14:relu5
Layer #15:pool5
Layer #16:fc6
Layer #17:relu6
Layer #18:drop6
Layer #19:fc7
Layer #20:relu7
Layer #21:drop7
Layer #22:fc8
Layer #23:prob
可见Net中既包含了Layer对象,又包括了Blob对象。其中Blob对象用于存放每个Layer输入/输出的中间结果,Layer则根据Net描述对指定的输入Blob进行某些计算处理(卷积、下采样。。。),输出结果也被放到Blob中。
同名的blob表示同一个blob对象,同名的layer表示同一个layer对象,而blob和layer同名则不代表他们之间有任何关系。
[title3]
相关文章推荐
- caffe源码解析之net
- caffe源码解析 — train_net.cpp
- caffe源码解析 — net.cpp
- caffe之python接口实战 :net_surgery 官方教程源码解析
- caffe源码解析 — net.cpp
- caffe源码解析 — caffe.proto
- caffe源码解析之blob(1)
- caffe源码解析之Layer层(1)
- (十一)洞悉linux下的Netfilter&iptables:iptables命令行工具源码解析【上】
- caffe源码简单解析——Layer层
- caffe源码解析 — solver.cpp
- caffe源码解析 — blob.cpp
- caffe源码解析之cblas函数
- [VB.NET源码]Instant VB.NET实例解析应用编程(PDF)
- caffe源码解析之blob
- Caffe-源码解析--DataLayer
- caffe源码解析 — caffe.proto
- Asp.net生成二维码和解析二维码源码
- caffe源码解析 — SyncedMemory.cpp
- (十一)洞悉linux下的Netfilter&iptables:iptables命令行工具源码解析【上】