MobileOne: 移動端僅需1ms的高性能骨干,你值得擁有!
來源丨AIWalker
一句話總結(jié)MobileOne(≈MobileNetV1+RepVGG+訓(xùn)練Trick)是由Apple公司提出的一種基于iPhone12優(yōu)化的超輕量型架構(gòu),在ImageNet數(shù)據(jù)集上以<1ms的速度取得了75.9%的Top1精度。
出發(fā)點(diǎn)高效率網(wǎng)絡(luò)具有更強(qiáng)的實(shí)用價值,但學(xué)術(shù)界的研究往往聚焦于FLOPs或者參數(shù)量的降低,而這兩者與推理效率之間并不存在嚴(yán)格的一致性。比如,F(xiàn)LOPs并未考慮訪存消耗與計算并行度,像無參操作(如跳過連接導(dǎo)致的Add、Concat等)會帶來顯著的訪存消耗,導(dǎo)致更長推理耗時。
為更好的分析高效率網(wǎng)絡(luò)的瓶頸所在,作者以iPhone12平臺為基準(zhǔn),從不同維度進(jìn)行了"瓶頸"分析,見上圖。從中可以看到:
具有高參數(shù)量的模型也可以擁有低延遲,比如ShuffleNetV2;
具有高FLOPs的模型也可以擁有低延遲,比如MobileNetV1和ShuffleNetV2;
上表從SRCC角度進(jìn)行了分析,可以看到:
在移動端,延遲與FLOPs和參數(shù)量的相關(guān)性較弱;
在PC-CPU端,該相關(guān)性進(jìn)一步弱化。
基于上述洞察,作者從先兩個主要效率"瓶頸"維度上進(jìn)行了對比,然后對性能"瓶頸"進(jìn)行了分析并提出相應(yīng)方案。
- Activation Functions:上表對比了不同激活函數(shù)對于延遲的影響,可以看到:盡管具有相同的架構(gòu),但不同激活函數(shù)導(dǎo)致的延遲差異極大。本文默認(rèn)選擇ReLU激活函數(shù)。
- Architectural Block:上表對影響延遲的兩個主要因素(訪存消耗與計算并行度)進(jìn)行了分析,見上表,可以看到:當(dāng)采用單分支結(jié)構(gòu)時,模型具有更快的速度。此外,為改善效率,作者在大模型配置方面有限的實(shí)用了SE模塊。
基于上述分析,MobileOne的核心模塊基于MobileNetV1而設(shè)計,同時吸收了重參數(shù)思想,得到上圖所示的結(jié)構(gòu)。注:這里的重參數(shù)機(jī)制還存在一個超參k用于控制重參數(shù)分支的數(shù)量(實(shí)驗(yàn)表明:對于小模型來說,該變種收益更大)。
在Model Scaling方面類似MobileNetV2,上表給出了MobileOne不同配置的參數(shù)信息。
在訓(xùn)練優(yōu)化方面,小模型需要更少的正則,因此作者提出了Annealing的正則調(diào)整機(jī)制(可帶來0.5%指標(biāo)提升);此外,作者還引入漸進(jìn)式學(xué)習(xí)機(jī)制(可帶來0.4%指標(biāo)提升);最后,作者還采用EMA機(jī)制,最終MobileOne-S2模型達(dá)到了77.4%的指標(biāo)。
實(shí)驗(yàn)結(jié)果上表給出了ImageNet數(shù)據(jù)集上不同輕量型方案的性能與效率對比,可以看到:
哪怕最輕量的Transformer也需要至少4ms,而MobileOne-S4僅需1.86ms即可達(dá)到79.4%的精度;
相比EfficientNet-B0,MobileOne-S3不僅具有指標(biāo)高1%,同時具有更快的推理速度;
相比其他方案,在PC-CPU端,MobileOne仍具有非常明顯的優(yōu)勢。
上表為MS-COCO檢測、VOC分割以及ADE20K分割任務(wù)上的性能對比,很明顯:
在MC-COCO任務(wù)上,MobileOne-S4比MNASNet指標(biāo)高27.8%,比MobileViT高6.1%;
在VOC分割任務(wù)上,所提方案比MobileViT高1.3%,比MobileNetV2高5.8%;
在ADE20K任務(wù)上,所提最佳方案比MobileNetV2高12%,而MobileOne-S1仍比MobileNetV2高2.9%。
在文章最后,作者俏皮的提了一句:"Although, our models are state-of-the art within the regime of efficient architectures, the accuracy lags large models ConvNeXt and Swin Transformer"。筆者想說的是:看上圖。
本文僅做學(xué)術(shù)分享,如有侵權(quán),請聯(lián)系刪文。
*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點(diǎn),如有侵權(quán)請聯(lián)系工作人員刪除。