Matlab 使用神经网络工具箱计算训练参数的数量

Matlab 使用神经网络工具箱计算训练参数的数量,matlab,neural-network,deep-learning,Matlab,Neural Network,Deep Learning,我用Matlab神经网络工具箱建立了一个CNN。如何计算网络中使用的参数总数 例如,我可以使用support插件中的analyzeNetwork(),这可以显示每层可学习参数的数量。把这些加起来是否正确 layers = [ imageInputLayer([128 300 1]) convolution2dLayer([7 7], 32, 'Stride', [2 2], 'Padding', 1) batchNormalizationLayer reluLayer convolution

我用Matlab神经网络工具箱建立了一个CNN。如何计算网络中使用的参数总数

例如,我可以使用support插件中的analyzeNetwork(),这可以显示每层可学习参数的数量。把这些加起来是否正确

layers = [
imageInputLayer([128 300 1])

convolution2dLayer([7 7], 32, 'Stride', [2 2], 'Padding', 1)
batchNormalizationLayer
reluLayer

convolution2dLayer([5 5], 32, 'Stride', [2 2], 'Padding', 1)
batchNormalizationLayer
reluLayer

convolution2dLayer([3 3], 64, 'Stride', [2 2],'Padding', 1)
batchNormalizationLayer
reluLayer
dropoutLayer(0.2)

convolution2dLayer([3 3], 64, 'Stride', [2 2],'Padding', 1)
batchNormalizationLayer
reluLayer
dropoutLayer(0.2)

convolution2dLayer([8 1], 1024, 'Stride', [1 1],'Padding', 0)
batchNormalizationLayer
reluLayer
dropoutLayer(0.2)

averagePooling2dLayer([1 12],'Stride', [1 1]);
dropoutLayer(0.2)

fullyConnectedLayer(4096)
batchNormalizationLayer
reluLayer

dropoutLayer(0.2)

fullyConnectedLayer(1251)
softmaxLayer
classificationLayer];

我使用了support插件中的
analyzeNetwork()
,将所有可学习的参数相加,等于1.4M


然后,我在matconvnet库中创建了相同的网络,并使用
vl\u simplenn\u display
分析网络。它还显示了140万个参数。

什么是
imageSize
numclass
?请将此添加到您的问题中。imageSize为128x300x1,NumClass为1251网络分析器显示ReLU层具有0个可学习的参数。这意味着它不能被信任。。。