I am interested in obtaining features from the intermediate layers of my model, but without modifying the forward() method of the model, as it is already trained. And also I don’t want to split it, because I am interested in getting the prediction, and the features from other upper layers as well in the same forward pass.
I have read about the register_forward_hook, but I haven’t found any example on how to use it.
I have this:
def get_features_hook(self, input, output): print output.data.cpu().numpy().shape features = output.data.cpu().numpy() model.features.module.register_forward_hook(get_features_hook) model.forward(im_tensor)
Is there any way to extract that features value?