RegNetX

RegNetX

RegNetX is a convolutional network design space with simple, regular models with parameters: depth $d$, initial width $w_{0} > 0$, and slope $w_{a} > 0$, and generates a different block width $u_{j}$ for each block $j < d$. The key restriction for the RegNet types of model is that there is a linear parameterisation of block widths (the design space only contains models with this linear structure):

�_�=�_0+�_�⋅�u_j=w_0+w_a⋅j

For RegNetX we have additional restrictions: we set $b = 1$ (the bottleneck ratio), $12 \leq d \leq 28$, and $w_{m} \geq 2$ (the width multiplier).

How do I use this model on an image?

To load a pretrained model:

Copied

>>> import timm
>>> model = timm.create_model('regnetx_002', pretrained=True)
>>> model.eval()

To load and preprocess the image:

Copied

>>> import urllib
>>> from PIL import Image
>>> from timm.data import resolve_data_config
>>> from timm.data.transforms_factory import create_transform

>>> config = resolve_data_config({}, model=model)
>>> transform = create_transform(**config)

>>> url, filename = ("https://github.com/pytorch/hub/raw/master/images/dog.jpg", "dog.jpg")
>>> urllib.request.urlretrieve(url, filename)
>>> img = Image.open(filename).convert('RGB')
>>> tensor = transform(img).unsqueeze(0) # transform and add batch dimension

To get the model predictions:

Copied

To get the top-5 predictions class names:

Copied

Replace the model name with the variant you want to use, e.g. regnetx_002. You can find the IDs in the model summaries at the top of this page.

To extract image features with this model, follow the timm feature extraction examplesarrow-up-right, just change the name of the model you want to use.

How do I finetune this model?

You can finetune any of the pre-trained models just by changing the classifier (the last layer).

Copied

To finetune on your own dataset, you have to write a training loop or adapt timm’s training scriptarrow-up-right to use your dataset.

How do I train this model?

You can follow the timm recipe scriptsarrow-up-right for training a new model afresh.

Citation

Copied

Last updated