本文介绍了Caffe LENET 或 Imagenet 模型中的参数数量的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何计算模型中的参数数量,例如LENET 用于 mnist,或 ConvNet 用于 imagent 模型等.caffe 中是否有任何特定函数可以返回或保存模型中的参数数量.问候

How to calculate number of parameters in a model e.g. LENET for mnist, or ConvNet for imagent model etc.Is there any specific function in caffe that returns or saves number of parameters in a model.regards

推荐答案

这是一个用于计算 Caffe 模型中参数数量的 Python 代码片段:

Here is a python snippet to compute the number of parameters in a Caffe model:

import caffe
caffe.set_mode_cpu()
import numpy as np
from numpy import prod, sum
from pprint import pprint

def print_net_parameters (deploy_file):
    print "Net: " + deploy_file
    net = caffe.Net(deploy_file, caffe.TEST)
    print "Layer-wise parameters: "
    pprint([(k, v[0].data.shape) for k, v in net.params.items()])
    print "Total number of parameters: " + str(sum([prod(v[0].data.shape) for k, v in net.params.items()]))

deploy_file = "/home/ubuntu/deploy.prototxt"
print_net_parameters(deploy_file)

# Sample output:
# Net: /home/ubuntu/deploy.prototxt
# Layer-wise parameters:
#[('conv1', (96, 3, 11, 11)),
# ('conv2', (256, 48, 5, 5)),
# ('conv3', (384, 256, 3, 3)),
# ('conv4', (384, 192, 3, 3)),
# ('conv5', (256, 192, 3, 3)),
# ('fc6', (4096, 9216)),
# ('fc7', (4096, 4096)),
# ('fc8', (819, 4096))]
# Total number of parameters: 60213280

https://gist.github.com/kaushikpavani/a6a32bd87fdfe55287e>7fdfe55287f73e

https://gist.github.com/kaushikpavani/a6a32bd87fdfe5529f0e908ed743f779

这篇关于Caffe LENET 或 Imagenet 模型中的参数数量的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!