EfficientNet
27 memberslucid.models.vision.efficientnetEfficientNet family — Tan & Le, 2019.
Tan, Mingxing, and Quoc V. Le. "EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks." Proceedings of the 36th International Conference on Machine Learning, PMLR 97, 2019, pp. 6105–6114.
EfficientNet is built on the empirical observation that the three axes used to scale a ConvNet — depth (number of layers), width (number of channels per layer), and input resolution — are not independent. Scaling any one of them in isolation gives rapidly diminishing returns, but scaling all three together along a carefully chosen ratio gives a much better accuracy/FLOPs frontier.
The paper formalises this as compound scaling: a single user-facing scalar controls all three axes through
subject to the FLOPs-balance constraint . The constants are found once by a small grid search on the baseline network (giving roughly ); from then on, a single indexes the whole family. Successive integer values produce the standard B0 → B7 variants, each requiring approximately more FLOPs than B0.
The baseline B0 itself is not manually designed. It is the
output of a multi-objective neural-architecture search that
optimises accuracy and FLOPs jointly. Each block is an
inverted-residual MBConv (MobileNet-v2 style) augmented with a
squeeze-and-excitation module, and the network uses the swish
activation throughout. Stochastic depth with linearly
increasing drop rate (the drop_connect_rate field) acts as
a strong regulariser as depth grows, which is what allows
B6/B7 to keep gaining accuracy where naively-deepened
baselines would overfit or fail to train.
Classes
Functions
efficientnet_b0→ EfficientNetEfficientNet-B0 feature-extracting backbone (compound coefficient ).
efficientnet_b0_cls→ EfficientNetForImageClassificationEfficientNet-B0 image classifier (backbone + GAP + linear head).
efficientnet_b1→ EfficientNetEfficientNet-B1 feature-extracting backbone (compound coefficient ).
efficientnet_b1_cls→ EfficientNetForImageClassificationEfficientNet-B1 image classifier (backbone + GAP + linear head).
efficientnet_b2→ EfficientNetEfficientNet-B2 feature-extracting backbone (compound coefficient ).
efficientnet_b2_cls→ EfficientNetForImageClassificationEfficientNet-B2 image classifier (backbone + GAP + linear head).
efficientnet_b3→ EfficientNetEfficientNet-B3 feature-extracting backbone (compound coefficient ).
efficientnet_b3_cls→ EfficientNetForImageClassificationEfficientNet-B3 image classifier (backbone + GAP + linear head).
efficientnet_b4→ EfficientNetEfficientNet-B4 feature-extracting backbone (compound coefficient ).
efficientnet_b4_cls→ EfficientNetForImageClassificationEfficientNet-B4 image classifier (backbone + GAP + linear head).
efficientnet_b5→ EfficientNetEfficientNet-B5 feature-extracting backbone (compound coefficient ).
efficientnet_b5_cls→ EfficientNetForImageClassificationEfficientNet-B5 image classifier (backbone + GAP + linear head).
efficientnet_b6→ EfficientNetEfficientNet-B6 feature-extracting backbone (compound coefficient ).
efficientnet_b6_cls→ EfficientNetForImageClassificationEfficientNet-B6 image classifier (backbone + GAP + linear head).
efficientnet_b7→ EfficientNetEfficientNet-B7 feature-extracting backbone (compound coefficient ).
efficientnet_b7_cls→ EfficientNetForImageClassificationEfficientNet-B7 image classifier (backbone + GAP + linear head).
Weights
EfficientNetB0WeightsPretrained weights for lucid.models.efficientnet_b0_cls.
EfficientNetB1WeightsPretrained weights for lucid.models.efficientnet_b1_cls.
EfficientNetB2WeightsPretrained weights for lucid.models.efficientnet_b2_cls.
EfficientNetB3WeightsPretrained weights for lucid.models.efficientnet_b3_cls.
EfficientNetB4WeightsPretrained weights for lucid.models.efficientnet_b4_cls.
EfficientNetB5WeightsPretrained weights for lucid.models.efficientnet_b5_cls.
EfficientNetB6WeightsPretrained weights for lucid.models.efficientnet_b6_cls.
EfficientNetB7WeightsPretrained weights for lucid.models.efficientnet_b7_cls.