在 Pycaffe 中按索引访问 blob

Access blob by index in Pycaffe

我可以使用名称访问网络中的 blob。 例如:

net.blobs['data'].data.shape  

returns上面图层的形状
有没有办法通过它的索引访问图层?我尝试了以下方法:

net.blobs[1].data.shape  

但是我得到了一个无意义的 python 异常

KeyError: 1

我需要以上述方式访问它,因为在 运行 时,我没有要访问的层的名称。
有谁知道这样做的方法吗?

net.blobs 是一个 Ordered Dictionary 对象,因此您不能通过数字索引访问它的项目,您需要使用字符串键。

您可以通过 net.blobs.keys() 获取可用键的列表,并且您可以使用以下方法访问 blob:

net.blobs[net.blobs.keys()[1]].data.shape

但是你应该小心这样做:caffe 可能会在你的模型中引入辅助斑点(具体来说,当一个 "top" 作为 "bottom" 馈送到多个层时,split 层)。