Replace some functions in the forward method of Inception3 with Module object calls #2287
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I tried to use
torchvision.models._utils.IntermediateLayerGetter
to extract features from the output ofMixed_7c
block of Inception3 model, and realized that naively using this useful class for the model skips some operations such asF.max_pool2d
,F.adaptive_avg_pool2d
, andF.dropout
which are applied in the forward method of the model class.So, I think it's good to add those operations as
nn.Module
objects in the constructor, e.g.,nn.MaxPool2d
object for max pooling operation, etc., to enableIntermediateLayerGetter
to perform desired forward computation with Inception3 model.By this PR, how to extract feature maps from intermediate layer outputs of Inception3 will be changed as followings.
Before:
After:
I would appreciate it if this PR could be acceptable.