首页 > 解决方案 > 添加我自己的密集层后,vgg16 模型的可训练参数发生了变化

问题描述

vgg16_model = tf.keras.applications.vgg16.VGG16()

模型=顺序()

对于 vgg16_model.layers[:-1] 中的层:

model.add(layer)

model.summary() #最后一个dense layer被移除到现在

在此处输入图像描述

对于 model.layers 中的层:

layer.trainable=False         #for transfer learning i have freeze the layers

model.add(密集(2,激活='softmax'))

model.summary() #现在当我添加密集层时,模型的可训练参数会改变

在此处输入图像描述

标签: deep-learningneural-networkmodelconv-neural-networkvgg-net

解决方案


在第一步中,您生成一个具有 134,260,554 个参数的网络。

这些参数都设置为不可训练。然后在模型中添加一个包含两个神经元的层。这会为模型添加 2*4096 + 2 = 8194(权重 + 偏差)参数。这些参数是可训练的。这就是摘要显示的内容。


推荐阅读