application_mobilenet_v3 {keras} | R Documentation |
Instantiates the MobileNetV3Large architecture
Description
Instantiates the MobileNetV3Large architecture
Usage
application_mobilenet_v3_large(
input_shape = NULL,
alpha = 1,
minimalistic = FALSE,
include_top = TRUE,
weights = "imagenet",
input_tensor = NULL,
classes = 1000L,
pooling = NULL,
dropout_rate = 0.2,
classifier_activation = "softmax",
include_preprocessing = TRUE
)
application_mobilenet_v3_small(
input_shape = NULL,
alpha = 1,
minimalistic = FALSE,
include_top = TRUE,
weights = "imagenet",
input_tensor = NULL,
classes = 1000L,
pooling = NULL,
dropout_rate = 0.2,
classifier_activation = "softmax",
include_preprocessing = TRUE
)
Arguments
input_shape |
Optional shape vector, to be specified if you would
like to use a model with an input image resolution that is not
|
alpha |
controls the width of the network. This is known as the depth multiplier in the MobileNetV3 paper, but the name is kept for consistency with MobileNetV1 in Keras.
|
minimalistic |
In addition to large and small models this module also contains so-called minimalistic models, these models have the same per-layer dimensions characteristic as MobilenetV3 however, they don't utilize any of the advanced blocks (squeeze-and-excite units, hard-swish, and 5x5 convolutions). While these models are less efficient on CPU, they are much more performant on GPU/DSP. |
include_top |
Boolean, whether to include the fully-connected
layer at the top of the network. Defaults to |
weights |
String, one of |
input_tensor |
Optional Keras tensor (i.e. output of
|
classes |
Integer, optional number of classes to classify images
into, only to be specified if |
pooling |
String, optional pooling mode for feature extraction
when
|
dropout_rate |
fraction of the input units to drop on the last layer. |
classifier_activation |
A string or callable. The activation function to use
on the "top" layer. Ignored unless |
include_preprocessing |
Boolean, whether to include the preprocessing
layer ( |
Details
Reference:
-
Searching for MobileNetV3 (ICCV 2019)
The following table describes the performance of MobileNets v3:
MACs stands for Multiply Adds
Classification Checkpoint | MACs(M) | Parameters(M) | Top1 Accuracy | Pixel1 CPU(ms) |
mobilenet_v3_large_1.0_224 | 217 | 5.4 | 75.6 | 51.2 |
mobilenet_v3_large_0.75_224 | 155 | 4.0 | 73.3 | 39.8 |
mobilenet_v3_large_minimalistic_1.0_224 | 209 | 3.9 | 72.3 | 44.1 |
mobilenet_v3_small_1.0_224 | 66 | 2.9 | 68.1 | 15.8 |
mobilenet_v3_small_0.75_224 | 44 | 2.4 | 65.4 | 12.8 |
mobilenet_v3_small_minimalistic_1.0_224 | 65 | 2.0 | 61.9 | 12.2 |
For image classification use cases, see this page for detailed examples.
For transfer learning use cases, make sure to read the guide to transfer learning & fine-tuning.
Value
A keras Model
instance
Note
Each Keras application typically expects a specific kind of input preprocessing.
For ModelNetV3, by default input preprocessing is included as a part of the
model (as a Rescaling
layer), and thus
a preprocessing function is not necessary. In this use case, ModelNetV3 models expect their inputs
to be float tensors of pixels with values in the [0-255]
range.
At the same time, preprocessing as a part of the model (i.e. Rescaling
layer) can be disabled by setting include_preprocessing
argument to FALSE.
With preprocessing disabled ModelNetV3 models expect their inputs to be float
tensors of pixels with values in the [-1, 1]
range.
See Also
-
https://www.tensorflow.org/api_docs/python/tf/keras/applications/MobileNetV3Large
-
https://www.tensorflow.org/api_docs/python/tf/keras/applications/MobileNetV3Small