我正在使用Keras进行建模工作,我想知道是否可以通过索引或名称删除某些图层?目前我只知道model.pop()
可以完成这项工作,但它只是删除了最近添加的图层。此外,layers
是[{1}}的类型,我不知道如何删除可以在tensorvariable
或numpy array
中执行的某些元素。顺便说一下,我正在使用Theano后端。
答案 0 :(得分:2)
model.pop()只删除最后添加的图层是正确的,没有其他记录的方法可以删除中间图层。
您始终可以获得任何中间层的输出:
base_model = VGG19(weights='imagenet')
model = Model(inputs=base_model.input, outputs=base_model.get_layer('block4_pool').output)
从这里取得的例子:https://keras.io/applications/
然后在上面添加新图层。