参考知乎 令人拍案叫绝的EfficientNet和EfficientDet
EfficientNet
(e)compound scaling 也就是 EfficientNet ,它是通过调节width,depth,resolution三个维度来缩放模型,具体缩放多少,是通过作者提出的***复合模型扩张方法结合神经结构搜索技术*** 获得的。
从直观上看,复合缩放方法是有意义的,因为如果输入的图像更大,那么网络就需要更多的层来增加接受域和更多的通道来在更大的图像上捕捉更细粒度的模式。
论文:EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks
复合模型扩展
-
将整个卷积网络定义为N,则有$ Y_{i}=F_{i}( X_{i}) $ ,其中 Y i Y_{i} Yi 是输入张量, F i F_{i} Fi 是运算函数(卷积啥的), X i X_{i} Xi 为输入张量。张量的shape用$ < H_{i}, W_{i} ,C_{i} > $ 表示。整个卷积网络由 k 个卷积层组成,可以表示为: N = F k ⊙ … ⊙ F 2 ⊙ F 1 ( X 1 ) = ⊙ j = 1 … k F j ( X 1 ) \mathcal{N}=\mathcal{F}_{k} \odot \ldots \odot \mathcal{F}_{2} \odot \mathcal{F}_{1}\left(X_{1}\right)=\odot_{j=1 \ldots k} \mathcal{F}_{j}\left(X_{1}\right) N=Fk⊙…⊙F2⊙F1(X1)=⊙j=1…kFj(X1)
-
在实践中,卷积神经网络层通常被划分为多个阶段,每个阶段的所有层都有相同的架构:例如,ResNet 有五个阶段,每个阶段的所有层除了第一层进行down-sampling外都有相同的卷积类型。因此,我们可以将卷积网络定义为 N = ⊙ i = 1 … s F i L i ( X ⟨ H i , W i , C i ⟩ ) \mathcal{N}=\odot_{i=1 \ldots s} \mathcal{F}_{i}^{L_{i}}\left(X_{\left\langle H_{i}, W_{i}, C_{i}\right\rangle}\right) N=⊙i=1…sFiLi(X