我有一个用Keras构建的InceptionV3模型。
cnn_model = InceptionV3(weights='imagenet', include_top=False)
#Adding custom layers to the model (output layer)
x = cnn_model.output
x = Flatten()(x)
x = Dense(units=1024, activation='relu')(x)
x = Dropout(0.25)(x)
x = Dense(2048, activation='relu')(x)
predictions = Dense(units=4, activation='softmax')(x)
#Creating the predictor model
predictor_model = Model(input=cnn_model.input, output=predictions)
return predictor_model
我需要保存最终池层的输出,并将这些输出(特征)转换为序列,以处理LSTM层中的序列。实际上我正在使用框架(当然是视频),但我仍然不知道如何做到这一点。
所以,要确认,我需要:
非常感谢您的支持!
答案 0 :(得分:1)
我找到了答案!
要从Keras InceptionV3模块中的最终合并层中提取输出,您只需:
output = cnn_model.get_layer('avg_pool').output
您可以使用此代码段检查图层名称和更多模块信息:
from keras.applications.inception_v3 import InceptionV3
model = InceptionV3()
model.summary()
如果您使用InceptionV3模块,您将获得:
avg_pool (GlobalAveragePooling2 (None, 2048) 0 mixed10[0][0]
最佳,
亚瑟。