2017-04-18 44 views
1

当我尝试实现转移学习来训练我的ConvNet模型时,我在这个Keras博客(goo.gl/N60H13)中没有理解代码片段。总的来说,VGG16有21层,但为了冻结除最终FC之外的所有其他层,我需要冻结的层数为20.有没有人明白为什么博客使它成为24([ 25])?VGG16转移学习

代码:

for layer in model.layers[:25]: 
    layer.trainable = False 

回答

0

也许有事情做与蝼的框架。

从这gist,我们知道VGG16 model for Keras has been obtained by directly converting the Caffe model.所以,它最初也计数为zero-padding layers。双重检查revision history,它确实包含那些zero-padding layers

对于从解冰的当前版本的VGG16,也许应该是

for layer in model.layers[:15]: 
    layer.trainable = False