Skip to content

Latest commit

 

History

History
78 lines (42 loc) · 4.03 KB

File metadata and controls

78 lines (42 loc) · 4.03 KB
graph LR
    EfficientNet["EfficientNet"]
    MBConvBlock["MBConvBlock"]
    FilterScaler["FilterScaler"]
    DepthScaler["DepthScaler"]
    ActivationProvider["ActivationProvider"]
    RegularizationProvider["RegularizationProvider"]
    EfficientNet -- "calls" --> FilterScaler
    EfficientNet -- "calls" --> DepthScaler
    EfficientNet -- "calls" --> MBConvBlock
    MBConvBlock -- "calls" --> ActivationProvider
    MBConvBlock -- "calls" --> RegularizationProvider
Loading

CodeBoardingDemoContact

Details

The EfficientNet Core Architecture subsystem is primarily defined by the efficientnet/model.py file, encompassing the core EfficientNet model definition and its foundational building blocks and utility functions.

EfficientNet

The primary entry point for users to instantiate and configure various EfficientNet model variants (e.g., B0-B7). It orchestrates the entire model construction process, applying compound scaling principles to adjust network width, depth, and resolution, and handles the loading of pre-trained weights. This is the central model definition component.

Related Classes/Methods:

MBConvBlock

Implements the Mobile Inverted Bottleneck Convolution (MBConv) block, which is the fundamental and highly reusable building block of the EfficientNet architecture. It incorporates depthwise separable convolutions, squeeze-and-excitation (SE) modules, and skip connections. This is a key reusable building block.

Related Classes/Methods:

FilterScaler

A utility function responsible for dynamically scaling the number of filters for convolutional layers based on the compound scaling width_coefficient. This ensures that the model's width is adjusted consistently across different EfficientNet variants. This is a core utility for model configuration.

Related Classes/Methods:

DepthScaler

A utility function that dynamically scales the number of repetitions for each MBConv block based on the compound scaling depth_coefficient. This contributes to the depth scaling of the model. This is a core utility for model configuration.

Related Classes/Methods:

ActivationProvider

A utility function that provides the Swish activation function, a non-linear activation commonly used in EfficientNet for improved performance. This is a foundational utility for neural network operations.

Related Classes/Methods:

RegularizationProvider

A utility function that provides a dropout layer for regularization within the MBConv blocks, helping to prevent overfitting. This is a foundational utility for neural network operations.

Related Classes/Methods: