我用Resnet3D训练了一个模型,我想提取一层的神经元。我计划将它们与SVM分类器一起使用。如何提取这些权重并将它们放到numpy数组中?
通过keras加载权重
model = Resnet3DBuilder.build_resnet_18((128, 96, 96, 3), nClass[0])
model.load_weights('drive/app/models/3d_resnet_modelq.hdf5')
提取图层
dns = model.layers[-1].output
现在我该怎么做呢?
发布于 2019-05-20 01:25:52
如果你只是想要可视化这些特性,在纯Keras中,你可以定义一个带有所需图层的Model
作为输出:
from keras.models import Model
model_cut = Model(inputs=model.inputs, output=model.layers[-1].output)
features = model_cut.predict(x) # Assuming you have your images in x
请注意,为了使其正常工作,model
必须至少编译过一次。
https://stackoverflow.com/questions/56206330
复制相似问题