MobileNetV2 is a convolutional neural network architecture designed for efficient and lightweight deep learning applications, especially on mobile and embedded devices. It's an evolution of the original MobileNet architecture, aiming to provide better accuracy while maintaining a small model size and computational efficiency. Google researchers introduced MobileNetV2 in the paper titled "MobileNetV2: Inverted Residuals and Linear Bottlenecks," published in 2018.
Key features of MobileNetV2 include:
Inverted Residuals: MobileNetV2 introduces a novel concept called "inverted residuals," where the traditional bottleneck structure in convolutional layers is reversed. This means that the low-dimensional space (bottleneck) is expanded before applying the convolutional filters, followed by a projection back to the original dimension. This approach helps capture more complex features while keeping the model lightweight.
Linear Bottlenecks: The original MobileNet used depthwise separable convolutions throughout the entire network, but MobileNetV2 includes a combination of depthwise separable convolutions and pointwise convolutions with 1x1 kernels (referred to as "linear bottlenecks"). This combination allows for richer feature extraction while minimizing computational costs.
Width Multiplier and Resolution Multiplier: Similar to the original MobileNet, MobileNetV2 allows you to control the model's size by adjusting the width multiplier and resolution multiplier. The width multiplier scales the number of channels in each layer, while the resolution multiplier scales down the input image dimensions.
Skip Connections: MobileNetV2 incorporates skip connections between the bottleneck layers. These skip connections help propagate gradient information more effectively during training, improving convergence and enabling training of deeper networks.
Efficiency and Performance: MobileNetV2 achieves a good balance between model size and performance. It's suitable for various tasks such as image classification, object detection, semantic segmentation, and more. It's especially popular in scenarios where computational resources are limited, such as mobile devices and edge computing.
MobileNetV2 has been widely adopted in the research community and industry due to its efficiency and effectiveness in a range of applications.