如何从预训练的 ResNet 模型 Keras 的一层中提取特征
How to extract features from a layer of the pretrained ResNet model Keras
我用 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
现在我该怎么办?
如果您只想可视化特征,在纯 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
必须至少编译一次。
我用 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
现在我该怎么办?
如果您只想可视化特征,在纯 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
必须至少编译一次。