Skip to content

Commit

Permalink
add resnet50_11ad3fa6 to models (#1288)
Browse files Browse the repository at this point in the history
Co-authored-by: Jenkins <[email protected]>
  • Loading branch information
KartikP and Jenkins authored Sep 30, 2024
1 parent d8ca3c7 commit 35c1dbe
Show file tree
Hide file tree
Showing 4 changed files with 54 additions and 0 deletions.
9 changes: 9 additions & 0 deletions brainscore_vision/models/resnet50_11ad3fa6/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
from brainscore_vision import model_registry
from brainscore_vision.model_helpers.brain_transformation import ModelCommitment
from .model import get_model, get_layers

model_registry['resnet50_11ad3fa6'] = lambda: ModelCommitment(
identifier='resnet50_11ad3fa6',
activations_model=get_model('resnet50_11ad3fa6'),
layers=get_layers('resnet50_11ad3fa6')
)
35 changes: 35 additions & 0 deletions brainscore_vision/models/resnet50_11ad3fa6/model.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
from brainscore_vision.model_helpers.check_submission import check_models
import functools
import torchvision.models
from brainscore_vision.model_helpers.activations.pytorch import PytorchWrapper
from brainscore_vision.model_helpers.activations.pytorch import load_preprocess_images

# This is an example implementation for submitting resnet-50 as a pytorch model

# Attention: It is important, that the wrapper identifier is unique per model!
# The results will otherwise be the same due to brain-scores internal result caching mechanism.
# Please load your pytorch model for usage in CPU. There won't be GPUs available for scoring your model.
# If the model requires a GPU, contact the brain-score team directly.


def get_model(name):
assert name == 'resnet50_11ad3fa6'
model = torchvision.models.resnet50(pretrained=True)
preprocessing = functools.partial(load_preprocess_images, image_size=224)
wrapper = PytorchWrapper(
identifier='resnet50_11ad3fa6', model=model, preprocessing=preprocessing)
wrapper.image_size = 224
return wrapper


def get_layers(name):
assert name == 'resnet50_11ad3fa6'
return ['conv1', 'layer1', 'layer2', 'layer3', 'layer4', 'fc']


def get_bibtex(model_identifier):
return """"""


if __name__ == '__main__':
check_models.check_base_models(__name__)
2 changes: 2 additions & 0 deletions brainscore_vision/models/resnet50_11ad3fa6/requirements.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
torchvision
torch
8 changes: 8 additions & 0 deletions brainscore_vision/models/resnet50_11ad3fa6/test.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
import pytest
import brainscore_vision


@pytest.mark.travis_slow
def test_has_identifier():
model = brainscore_vision.load_model('resnet50_tutorial')
assert model.identifier == 'resnet50_tutorial'

0 comments on commit 35c1dbe

Please sign in to comment.