session://14:29:33
~/ / posts / 2018-02-imagenet-mobile.md

把模型塞进手机:MobileNet 们掀起的“轻量化”运动

2018-02-08· 1 min read · [技术教程]
// TL;DR
  • 深度可分离卷积把标准卷积拆成两步,计算量降到 1/8~1/9。
  • 宽度乘子等旋钮让一个架构覆盖从云端到手表的算力谱。
  • “准确率/算力”比单纯准确率更适合做产品决策指标。

风向变了

过去几年刷 ImageNet 的逻辑是“更深更大更准”,ResNet 一口气堆到 152 层。但当大家真要把模型放进手机 App、监控摄像头、智能音箱时,发现一个朴素的事实:再准的模型,跑不动也是零分。于是 MobileNet、ShuffleNet 这一波轻量化架构密集出现,主题只有一个——在算力预算内把准确率榨到最高。

核心招式:深度可分离卷积

标准卷积一步干两件事:在空间上滤波 + 在通道间混合。深度可分离卷积把它拆开——先每个通道单独做空间卷积(depthwise),再用 1×1 卷积做通道混合(pointwise)。同样的感受野,计算量降到原来的八九分之一,精度只掉一点点。

# 标准卷积:  Dk·Dk·M·N·Df·Df 次乘加
# 深度可分离: Dk·Dk·M·Df·Df  +  M·N·Df·Df
# 比值 ≈ 1/N + 1/(Dk^2),N 大时约等于 1/9(3x3)

产品视角

轻量化运动给我最大的启发是评价指标的转变:学术界比 top-1 准确率,工业界要比的是“准确率 / 延迟 / 功耗 / 内存”这张综合账单。一个 75% 准确率但能在千元机上实时跑的模型,产品价值常常高于 80% 准确率但只能上云的模型——因为前者能做到隐私不出端、零网络延迟、零推理成本。做 AI 产品的人,得学会算这笔账。

深度学习工程实践计算机视觉
cat newsletter.txt

每周一封,<5 分钟读完

把这一周我读过、想过、动手做过的东西,压缩成一封信。订阅者目前 5210+ 人,0 干扰。