AICurious Logo

What is: Fire Module?

SourceSqueezeNet: AlexNet-level accuracy with 50x fewer parameters and <0.5MB model size
Year2000
Data SourceCC BY-SA - https://paperswithcode.com

A Fire Module is a building block for convolutional neural networks, notably used as part of SqueezeNet. A Fire module is comprised of: a squeeze convolution layer (which has only 1x1 filters), feeding into an expand layer that has a mix of 1x1 and 3x3 convolution filters. We expose three tunable dimensions (hyperparameters) in a Fire module: s_1x1s\_{1x1}, e_1x1e\_{1x1}, and e_3x3e\_{3x3}. In a Fire module, s_1x1s\_{1x1} is the number of filters in the squeeze layer (all 1x1), e_1x1e\_{1x1} is the number of 1x1 filters in the expand layer, and e_3x3e\_{3x3} is the number of 3x3 filters in the expand layer. When we use Fire modules we set s_1x1s\_{1x1} to be less than (e_1x1e\_{1x1} + e_3x3e\_{3x3}), so the squeeze layer helps to limit the number of input channels to the 3x3 filters.