Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 24 additions & 0 deletions docs/source/models/mobilenetv2_quant.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
Quantized MobileNet V2
======================

.. currentmodule:: torchvision.models.quantization

The Quantized MobileNet V2 model is based on the `MobileNetV2: Inverted Residuals and Linear
Bottlenecks <https://arxiv.org/abs/1801.04381>`__ paper.


Model builders
--------------

The following model builders can be used to instantiate a quantized MobileNetV2
model, with or without pre-trained weights. All the model builders internally
rely on the ``torchvision.models.quantization.mobilenetv2.QuantizableMobileNetV2``
base class. Please refer to the `source code
<https://github.com/pytorch/vision/blob/main/torchvision/models/quantization/mobilenetv2.py>`_
for more details about this class.

.. autosummary::
:toctree: generated/
:template: function.rst

mobilenet_v2
1 change: 1 addition & 0 deletions docs/source/models_new.rst
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,7 @@ pre-trained weights:
:maxdepth: 1

models/googlenet_quant
models/mobilenetv2_quant


Table of all available quantized classification weights
Expand Down
22 changes: 17 additions & 5 deletions torchvision/models/quantization/mobilenetv2.py
Original file line number Diff line number Diff line change
Expand Up @@ -101,18 +101,30 @@ def mobilenet_v2(
) -> QuantizableMobileNetV2:
"""
Constructs a MobileNetV2 architecture from
`"MobileNetV2: Inverted Residuals and Linear Bottlenecks"
`MobileNetV2: Inverted Residuals and Linear Bottlenecks
<https://arxiv.org/abs/1801.04381>`_.

Note that quantize = True returns a quantized model with 8 bit
weights. Quantized models only support inference and run on CPUs.
GPU inference is not yet supported

Args:
weights (GoogLeNet_QuantizedWeights or GoogLeNet_Weights, optional): The pretrained
weights for the model
progress (bool): If True, displays a progress bar of the download to stderr
quantize(bool): If True, returns a quantized model, else returns a float model
weights (:class:`~torchvision.models.quantization.MobileNet_V2_QuantizedWeights` or :class:`~torchvision.models.MobileNet_V2_Weights`, optional): The
pretrained weights for the model. See
:class:`~torchvision.models.quantization.MobileNet_V2_QuantizedWeights` below for
more details, and possible values. By default, no pre-trained
weights are used.
progress (bool, optional): If True, displays a progress bar of the download to stderr. Default is True.
quantize (bool, optional): If True, returns a quantized version of the model. Default is False.
**kwargs: parameters passed to the ``torchvision.models.quantization.QuantizableMobileNetV2``
base class. Please refer to the `source code
<https://github.com/pytorch/vision/blob/main/torchvision/models/quantization/mobilenetv2.py>`_
for more details about this class.
.. autoclass:: torchvision.models.quantization.MobileNet_V2_QuantizedWeights
:members:
.. autoclass:: torchvision.models.MobileNet_V2_Weights
:members:
:noindex:
"""
weights = (MobileNet_V2_QuantizedWeights if quantize else MobileNet_V2_Weights).verify(weights)

Expand Down