想象你是一位城市规划师,手里有一张城市设计图纸,想要把这座“神经网络城市”变得更大、更强。过去人们总是单方面扩张——要么只加宽马路(增加通道数),要么只加盖楼层(加深网络)。但 EfficientNet 的工程师们发现:城市要想真正繁荣,必须让马路、楼层、公园绿地(图像分辨率)三者按比例同步扩建。这就是复合缩放——不是盲目地把城市放大一倍,而是找到一种“和谐生长”的比例,让每一分资源都花在刀刃上。本文将带你从城市规划的视角,拆解 EfficientNet 如何用一组简洁的数学公式,设计出当时碾压一众对手的高效网络。
理解复合缩放,你就掌握了“在算力预算下如何优雅地扩容神经网络”的设计哲学——这是每个做模型轻量化、移动端部署的 AI 工程师的必修课。
可视化演示
本节配有交互动效(进入视口后自动加载,约 3KB)。
复合缩放公式与约束方程 复合缩放公式约束方程推导约束方程:\u03B1 * \u03B2\u00B2 * \u03B3\u00B2 = 2\u03C6每增加1: FLOPS翻倍 \u2192 d*w\u00B2*r\u00B2 = 2^\u03C6复合缩放公式
缩放困境
城市规划师们最初扩建城市时,各有一套偏执的方案。第一派觉得“城市的高度代表实力”,于是疯狂加盖楼层——这对应神经网络里一味地加深网络深度(增加层数)。第二派认为“道路宽度决定通行效率”,于是拼命拓宽马路——这对应增加每层通道数(网络宽度)。第三派主张“绿地面积越多越宜居”,于是不断外扩公园——这对应提高输入图像分辨率。单独看,每种方案都让城市变大了一点,但很快问题出现了:只有高楼没有宽马路,交通会堵塞(梯度消失);只有宽马路没有高楼,土地被浪费(特征表达不足);公园扩建了,但周围的路网和建筑跟不上,市民根本到不了公园(低层特征感受野不足)。
在深度学习里,这种偏执被证明是低效的。Google 团队在 2019 年的 EfficientNet 论文中做了一个关键实验:用同样的算力预算,分别只缩放深度、只缩放宽度、只缩放分辨率,结果三个方向的收益都迅速饱和。比如只把 ResNet 从 18 层加到 200 层,精度提升越来越小,但计算量却线性暴涨。这就像城市只盖摩天楼却不通地铁——表面的规模上去了,实际效率反而恶化。
为什么单一缩放会失效?深度学习理论给了一个直觉解释:神经网络的不同维度之间存在耦合关系。更深的网络需要更宽的通道来传递梯度,更高的分辨率需要更深的网络来提取细粒度特征。如果只动一个维度,其他维度就成了瓶颈——城市里最高的楼旁边却是单车道,再高的楼也只是摆设。
需要说明的是,交叉偏导为正意味着当你同时增加深度和宽度时,精度提升比单独增加两个维度带来的提升之和还要大。这就像同时拓宽马路和增加公交线路,通勤效率的提升是“1+1>2“的。EfficientNet 的所有后续设计,都建立在这个”维度和谐”的观察之上。
- 精度函数精度 $\text{Accuracy}$ 是深度 $d$、宽度 $w$、分辨率 $r$ 三个变量的函数
- 交叉偏导为正$\frac{\partial^2 \text{Acc}}{\partial d \partial w} > 0$ 表示深度与宽度存在正交互作用
复合缩放公式
既然单一缩放是死胡同,城市规划师们开始思考:能不能找到一种“黄金比例”,让楼层高度、马路宽度、公园面积按照同一个节奏同步生长?EfficientNet 给出的答案是一个优雅的复合缩放公式。假设基准网络(baseline)的深度为 $d_0$、宽度为 $w_0$、分辨率为 $r_0$,复合缩放用三个指数系数 $\alpha, \beta, \gamma$ 控制三个维度的增长速率,并引入一个全局缩放系数 $\phi$ 作为“总预算旋钮”:
其中 $\alpha, \beta, \gamma$ 是常数(通过小规模网格搜索确定),且满足约束 $\alpha \cdot \beta^2 \cdot \gamma^2 \approx 2$。这个约束的含义是:当 $\phi = 1$ 时,网络的 FLOPS(浮点运算量)大约变为原来的 2 倍——因为 FLOPS 与深度成正比、与宽度的平方成正比、与分辨率的平方成正比。
为什么是这个约束?简单算一笔账:加一层楼(深度 $d$),成本线性增加;拓宽马路(宽度 $w$),面积成本是平方级;扩建公园(分辨率 $r$),整个城市 footprint 也是平方级。所以为了做到“预算翻倍,整体面积才翻倍”,必须给宽度和分辨率分配更小的系数。
在这个公式体系里,$\phi$ 就像一个“城市总规划师”——它不关心具体每个街区怎么建,只决定城市的整体规模等级。$\alpha, \beta, \gamma$ 则是三个“专业设计师”,负责在各自领域内按比例施工。这种“总控 + 分控”的架构,让 EfficientNet 可以用一套公式生成从 B0 到 B7 的一整个家族,而每个成员都严格遵循同一种“生长律”。
- 深度缩放深度 $d$ 是基准深度乘以系数 $\alpha$ 的 $\phi$ 次方
- 宽度缩放宽度 $w$ 是基准宽度乘以系数 $\beta$ 的 $\phi$ 次方
- 分辨率缩放分辨率 $r$ 是基准分辨率乘以系数 $\gamma$ 的 $\phi$ 次方
- FLOPS 约束FLOPS 与 $d \cdot w^2 \cdot r^2$ 成正比
系数求解
有了公式,下一个问题就是:$\alpha, \beta, \gamma$ 这三个系数具体取多少?EfficientNet 的工程师们采用了一个两步法。第一步,先固定 $\phi = 1$,把它当作一个小预算的“试点项目”。在这个固定预算下,用网格搜索(grid search)在 $\alpha, \beta, \gamma$ 的候选集合里逐一尝试,目标是找到在 ImageNet 上精度最高的一组系数。
网格搜索是暴力但有效的方法:假设 $\alpha$ 有 5 个候选值、$\beta$ 有 5 个、$\gamma$ 有 5 个,那就是 125 种组合,每种组合训练一个小模型评估精度。由于模型足够小(就是 baseline 结构,不做大缩放),125 次小训练是可接受的工程成本。搜索结果表明:最优系数大致落在 $\alpha = 1.2, \beta = 1.1, \gamma = 1.15$ 附近——深度稍微优先,宽度和分辨率紧随其后。
第二步,固定 $\alpha, \beta, \gamma$ 不变,只改变 $\phi$ 来生成不同规模的模型。$\phi$ 从 0 到 7 取整数值,就得到了 EfficientNet-B0 到 B7。这个过程就像城市已经定好了“街道标准”——主干道宽 8 车道、每隔 500 米一个公园,那么 $\phi$ 就是城市的总体量规划:$\phi = 1$ 是县城,$\phi = 5$ 是一线城市,$\phi = 7$ 是超级都市圈。标准不变,规模翻倍,工程上极其高效。
有了这套“试点 → 定标 → 放大”的流程,EfficientNet 的架构设计就从一门手艺变成了一条流水线。任何人都可以用这套方法,在自己的数据集上重新搜索系数,形成定制化的缩放策略——这种“方法论迁移”能力,才是复合缩放真正的遗产。
- 第一步优化目标在约束条件下最大化精度
- 约束条件系数乘积约等于 2,保证 FLOPS 可控
- 第二步固定系数系数不再变化,只调 $\phi$
Baseline搜索
复合缩放就像给城市定生长律,但你首先得有一座值得放大的城市。EfficientNet 的 baseline(即 EfficientNet-B0)并不是手调的,而是通过神经架构搜索(Neural Architecture Search, NAS)自动设计出来的。2019 年时,NAS 已经能在小规模数据集上找到不错的单元结构,但 EfficientNet 走得更远——它用 NAS 搜索整个网络的宏观结构,而不只是某个重复单元。
搜索空间设计得很有讲究:每个 stage 的层数、每层的卷积核大小、通道数、是否使用 SE(Squeeze-and-Excitation)注意力模块,都是可搜索的变量。优化目标是精度和 FLOPS 的加权组合——既要模型准,又要模型轻。最终搜索出的 B0 结构有 16 个 block,总参数量约 530 万,在 ImageNet 上达到 76.3% 的 top-1 精度,这个精度在同等 FLOPS 下已经超过了当时的经典网络。
为什么有好的 baseline 才能放大?想象你要建一个超级都市圈,如果基础城市的路网规划本来就是乱的——断头路多、功能区混杂——那么盲目放大只会让混乱加倍。反过来,一个精心规划的 baseline 城市,放大后依然井井有条。这就是“B0 是基座、缩放是杠杆”的含义:基座的质量决定了缩放效果的上限。
B0 的另一个贡献是引入了 SE 注意力模块到每个 block 中。SE 模块像城市的“交通调度中心”——它显式学习每个通道的重要性,给关键通道“优先通行权”。虽然 SE 增加了少量参数,但它让网络的表示能力大幅提升。这也解释了为什么后来缩放时,即使宽度和深度同步增长,模型也不会因参数膨胀而失控——注意力机制在“内部”优化了资源分配,与复合缩放“外部”的资源分配形成了互补。
- 搜索空间NAS 在每个 stage 搜索层数、卷积核大小、通道数等
- 优化目标精度与 FLOPS 的加权组合,$\lambda$ 控制效率权重
性能提升
当 $\phi$ 从 0 逐渐加大到 7,EfficientNet 家族的性能曲线让人惊叹。先看精度:EfficientNet-B0 在 ImageNet 上达到 76.3%(略高于 ResNet-50 的 76.0%),而 B7 达到了 84.4%——比当时最强的 GPipe 还高 0.3%,但参数少了 8.4 倍。再看效率:B0 的 FLOPS 只有 0.39B,B7 为 37B,在同等精度下,EfficientNet 比经典的 ResNet、DenseNet、Inception 系列在 FLOPS 上节省数倍。
最具冲击力的是“参数效率”的对比。ResNet-152 参数量约 60M,在 ImageNet 上有 77.8% 的精度;EfficientNet-B4 参数量约 19M,精度却达到 82.9%。相当于用 1/3 的钢筋水泥,盖出了更高的大厦——这就是复合缩放的魔力:每个维度的增长都踩在另一个维度的“肩膀”上,参数利用率大幅提高。这种效率提升对工业界意义巨大——同样的 GPU 预算,能训练更大规模的模型;同样的推理延迟要求,能部署更精确的模型。
为什么复合缩放能带来如此显著的提升?一个直观的解释是:当分辨率提高时,网络需要更深的层来捕捉细粒度特征;当宽度增加时,需要更高的分辨率来提供足够的信息量。三维联动让每一层、每个通道都在处理“有效信息”,而不是像单一缩放那样,大量参数在“空转”。就像城市同步扩建交通、住宅、商业区,不会出现“有商业区没住宅区”的错配。
在当年的 ImageNet 竞赛和多个迁移学习基准上,EfficientNet 系列都是“效率之王”。它的名字本身就带有宣言式的意味——"Efficient"直指核心:在资源有限的世界里,精度不是唯一目标,如何用最少的资源榨取最多的精度,才是工程智慧。
- 精度指标EfficientNet-B7 在 ImageNet 上的 top-1 精度
- 参数量对比B7 参数量为 66M,比同精度网络小一个量级
- 计算量对比B7 的 FLOPS 为 37B,在相同精度下远低于经典网络
设计启发
复合缩放的影响远不止一个 EfficientNet 系列。它首先确立了一种“模型族”的研发范式:不再一个一个手调模型,而是搜索出一个优秀的 baseline,再用缩放公式批量产出不同规模、适用于不同硬件条件的模型族。这个范式后来被 MobileNetV3、EfficientNetV2、ConvNeXt 等模型广泛采用。它改变了 AI 工程师的工作方式——从“设计单个网络”变为“设计一个可缩放的网络体系”。
更深远的影响在于“维度协调”的思想。后续研究发现,复合缩放不仅适用于 CNN,对 Transformer 类模型也有启发:模型深度(层数)、注意力头数、序列长度之间同样存在耦合关系。ViT 中的 patch size 与网络宽度、深度的联合调优,几乎就是复合缩放思想在注意力世界的翻版。这个“向所有维度要效率”的思维模式,成为了深度学习中“设计空间探索”的重要分支。
当然,复合缩放也有它的隐含假设——baseline 质量必须足够好,缩放公式中的系数受限于特定数据集与计算资源。EfficientNetV2 正是发现了 B0 在缩放时训练速度不够快、部分层放大后效率下降的问题,才提出“渐进式训练 + 更均衡的 stage 缩放”改进方案。这说明复合缩放是“开放的框架”,不是“封闭的答案”——后续工作不断在它的肩膀上继续攀登。
复合缩放告诉我们:在深度学习中,架构设计的“成长性”和架构本身的“质量”同样重要。一个只能固定大小、无法优雅扩展的模型,就像一座无法扩建的城市——它的上限从诞生那天就注定了。EfficientNet 用一套公式解决了“城市如何生长”的问题,这个思路至今仍在启发新一代的模型设计。
- 搜索基座先用 NAS 搜索出高效 baseline
- 复合缩放用统一公式按比例放大
- 预算验证在目标资源预算内验证效果
AI 应用场景
模型家族快速部署
阶段:模型设计与部署
解决的问题:移动端、Web端、云端三种场景对模型大小和速度要求差异巨大。传统做法是为每个场景单独设计一个模型,工作量极大且难以保证性能一致。利用 EfficientNet 的复合缩放公式,只需训练一个 B0 baseline,然后通过调整 $\phi$ 快速生成 B0-B3 系列模型,分别部署到不同平台。
具体案例:某安防公司需要在摄像头端(低算力)、边缘服务器(中等算力)和云端(高算力)同时部署人脸识别模型。工程师用 EfficientNet-B0 做 baseline,用复合缩放生成 B1(边缘)、B2(云端)三个模型,在保持识别精度曲线平滑的前提下,三端模型共享大部分训练代码和超参配置,上线时间从 3 周缩短到 5 天。
算力受限场景的模型选型
阶段:模型调优与资源规划
解决的问题:训练预算有限时,传统方法盲目增大模型导致 OOM(显存溢出)或训练时间过长。复合缩放公式提供了精确的 FLOPS 预算控制(约 $2^{\phi}$ 倍),工程师可以根据 GPU 显存和训练时间预算,反推出合适的 $\phi$ 值,避免试错成本。
具体案例:某高校实验室只有 4 张 3090 显卡,需要在一个月内完成图像分类模型的训练与论文实验。研究者选中 EfficientNet-B3($\phi = 3$,FLOPS 约 3.1B)而不是更大的 B5,因为 $2^3 = 8$ 倍基准 FLOPS 正好落在 4 张卡 30 天的预算内,最终顺利发表并被多个下游任务引用。
Python 演示
import math class CompoundScaling: """EfficientNet 复合缩放调度器:根据 phi 生成模型配置""" def __init__(self, alpha=1.2, beta=1.1, gamma=1.15): self.alpha = alpha self.beta = beta self.gamma = gamma self.base_depth = 16 # B0 的总 block 数 self.base_width = 24 # B0 首个 stage 的通道数 self.base_res = 224 # B0 的输入分辨率 def scale(self, phi): depth = int(self.base_depth * (self.alpha ** phi)) width = int(self.base_width * (self.beta ** phi)) res = int(self.base_res * (self.gamma ** phi)) flops_mult = 2 ** phi # FLOPS 增长约为 2^phi 倍 return { "depth": depth, "width": width, "resolution": res, "flops_mult": round(flops_mult, 2), } def verify_constraint(self, phi): lhs = self.alpha * (self.beta ** 2) * (self.gamma ** 2) return round(lhs, 3), round(2 ** (phi / 4), 3) if __name__ == "__main__": cs = CompoundScaling() for phi in range(0, 5): config = cs.scale(phi) actual, target = cs.verify_constraint(phi) print(f"phi={phi}: depth={config['depth']}, " f"width={config['width']}, res={config['resolution']}, " f"FLOPS_mult={config['flops_mult']}") print("alpha*beta^2*gamma^2 =", round(cs.alpha * cs.beta ** 2 * cs.gamma ** 2, 3))
class CompoundScaling:定义复合缩放器类,封装 $\alpha, \beta, \gamma$ 三个系数和基准网络的初始配置。self.base_depth = 16以 EfficientNet-B0 为基准:16 个 block、首 stage 24 通道、输入 224 分辨率。def scale(self, phi):缩放入口函数:传入 $\phi$,输出三个维度的放大结果。depth = int(self.base_depth * (self.alpha ** phi))深度按 $\alpha^{\phi}$ 指数增长,对应加楼层。flops_mult = 2 ** phiFLOPS 增长约等于 $2^{\phi}$ 倍,这是复合缩放约束的直接体现。def verify_constraint(self, phi):校验 $\alpha \cdot \beta^2 \cdot \gamma^2 \approx 2$ 约束是否满足。for phi in range(0, 5):生成 B0 到 B4 共 5 个模型配置,观察“规模翻倍、结构不变”的规律。
常见误区
误区我以为复合缩放就是把网络的每个维度都乘以同一个数——比如深度、宽度、分辨率全部乘以 2,就是缩放系数 $\phi = 2$。
正解复合缩放对每个维度用了不同的指数系数:深度乘以 $\alpha^{\phi}$,宽度乘以 $\beta^{\phi}$,分辨率乘以 $\gamma^{\phi}$。而且 $\alpha, \beta, \gamma$ 三者不相等(通常是 $\alpha = 1.2, \beta = 1.1, \gamma = 1.15$),深度、宽度、分辨率各自的默认值也不同。可以把它想成城市规划:楼层高度、道路宽度、公园面积按不同的比例系数“协调”增长,但都受同一个总体规划 $\phi$ 驱动。之所以不同,是因为三个维度对 FLOPS 的贡献不同——宽度和分辨率是平方级成本,所以要“压低”它们。
为何常见:公式 $d = \alpha^{\phi}$ 看起来很像等比缩放,容易让人忽略 $\alpha, \beta, \gamma$ 彼此不同,以及它们与 FLOPS 约束的微妙关系。
误区我学习了复合缩放公式后,打算直接把任何现有网络的深度、宽度、分辨率按 $\alpha^{\phi}$ 的规则放大,以为都能获得 EfficientNet 那样的效率提升。
正解复合缩放的高效性高度依赖 baseline 的质量。EfficientNet 的 B0 是经过 NAS 搜索得到的,它的基础设计(如 SE 注意力、MBConv 结构)本身就很高效。如果对一个结构不佳的网络盲目做复合缩放,比如一个没有残差连接的网络,加深会直接导致梯度消失,精度不升反降。就像把一个路网混乱的旧城按规定“放大 4 倍”,结果只是把混乱放大了 4 倍。正确的姿势是:先有一个经过验证的高效 baseline,再考虑缩放。
为何常见:看到一个漂亮的公式,很容易误以为它是“万能钥匙”,忽略了公式背后的前提假设——好基座才能放大。
误区我把 FLOPS 约等于 $2^{\phi}$ 理解成“算力翻倍,精度也会翻倍”,总想着把 $\phi$ 调大就能无限提升模型效果。
正解FLOPS 是成本指标,不是收益指标。复合缩放约束的是“成本可控”,不承诺精度的线性增长。精度随规模的增加是收益递减的:B0 到 B1 精度提升约 1.5%,B6 到 B7 提升不到 0.5%,而 FLOPS 从 0.39B 涨到 37B——90 倍的成本换来约 8 个百分点的精度。这就像城市规模从县城扩到省会,宜居度确实提升,但从省会扩到超级都市圈,提升就很有限了。工程上选择 $\phi$ 本质是在成本与精度之间找平衡点。
为何常见:$\approx 2^{\phi}$ 这个简洁的公式容易让人误以为“付出就有对等回报”,实际上任何模型扩展都会遇到收益递减,复合缩放也不例外。
面试题
Q1. EfficientNet 复合缩放中,三个缩放维度分别是什么?
- A.层数、通道数、批大小
- B.深度、宽度、分辨率← 正确答案
- C.学习率、正则化、数据增强
- D.卷积核大小、步长、填充
答案:B。复合缩放针对的是网络深度(层数)、宽度(通道数)和输入分辨率三个维度。批大小是训练超参数,学习率是优化参数,卷积核大小属于结构设计但不是缩放维度。这就像城市扩建的三个方向:加楼层(深度)、加车道(宽度)、扩公园(分辨率)。
Q2. 复合缩放公式中,$\phi$ 的作用是什么?
- A.控制单个维度的缩放比例
- B.全局缩放系数,统一驱动三个维度← 正确答案
- C.控制卷积核大小的变化
- D.控制训练轮数的变化
答案:B。$\phi$ 是全局预算旋钮,三个维度分别以 $\alpha^{\phi}$、$\beta^{\phi}$、$\gamma^{\phi}$ 的方式同时放大。$\alpha, \beta, \gamma$ 才是控制单个维度的系数。可以把 $\phi$ 理解为城市总规模等级——它不决定每个街区怎么建,只决定城市整体扩到多大。
Q3. 为什么复合缩放约束要求 $\alpha \cdot \beta^2 \cdot \gamma^2 \approx 2$?
- A.因为 FLOPS 与深度成正比,与宽度和分辨率的平方成正比← 正确答案
- B.因为 ImageNet 数据集恰好有 2 个主要类别
- C.因为 $\alpha, \beta, \gamma$ 必须相等才满足约束
- D.因为这是为了确保模型参数量恰好翻倍
答案:A。FLOPS 约等于 $d \cdot w^2 \cdot r^2$,代入缩放公式后得到 $(\alpha \cdot \beta^2 \cdot \gamma^2)^{\phi}$。约束为约 2 意味着 $\phi = 1$ 时总计算量恰好翻倍,让规模可控。这就像规定“预算翻倍时城市面积才翻倍”——如果系数积是 3,预算只涨 1.5 倍面积就翻倍了,成本会失控。
Q4. EfficientNet 的 baseline(B0)是如何获得的?
- A.手动堆叠 VGG 的卷积层
- B.使用神经架构搜索(NAS)自动搜索得到← 正确答案
- C.对 ResNet 做剪枝后得到
- D.直接复用 Inception 的 Inception 模块
答案:B。EfficientNet-B0 通过 NAS 在自定义的搜索空间中搜索得到,搜索目标同时考虑了精度和 FLOPS。它并非传统手工设计或简单剪枝可得。这就像先通过自动化选型确定一个“黄金城市原型”,而不是随手拿一个旧城市来放大。
Q5. 以下哪些是复合缩放相比单一缩放的优势?
- A.深度、宽度、分辨率协调增长,避免维度瓶颈← 正确答案
- B.在相同精度的前提下大幅减少 FLOPS 和参数量← 正确答案
- C.保证任何网络结构都能获得相同的精度提升
- D.可以通过调节 $\phi$ 生成不同规模的模型族← 正确答案
答案:ABD。A、B、D 都是复合缩放的直接优势。C 错误——缩放效果依赖 baseline 质量,对结构不佳的网络不会有效。复合缩放是“好基座上的生长律”,不是“所有网络的万能药”。
Q6. EfficientNet-B7 在 ImageNet 上的 top-1 精度约为多少?
- A.76.3%
- B.80.0%
- C.84.4%← 正确答案
- D.90.0%
答案:C。B0 约 76.3%,B7 达到 84.4%——从县城规模市长到超级都市圈,精度逐步提升。但注意 B6 到 B7 的提升已经非常小,说明复合缩放同样遵循收益递减规律。
Q7. 在复合缩放中,为什么宽度和分辨率对 FLOPS 的影响是平方级的?
- A.因为卷积运算中每个输出通道都要与所有输入通道连接← 正确答案
- B.因为 GPU 并行计算时宽度和分辨率会占用更多显存
- C.因为网络层数增加导致反向传播时间平方级增长
- D.因为数据增强使训练样本数量平方级增加
答案:A。卷积层 FLOPS 与输入通道数、输出通道数、特征图尺寸都相关。宽度增加 d 倍使输入输出通道同时增加,因此是平方;分辨率增加使特征图宽高同时增长,也是平方。深度增加则只是逐层累加,所以是线性。这正是约束中要给宽度和分辨率加平方指数的原因——它们的成本本来就更高。
Q8. 关于 EfficientNet 对后续模型设计的启发,下列说法正确的有?
- A.“先搜索高效 baseline,再复合缩放”成为模型族设计范式← 正确答案
- B.SE 注意力模块与复合缩放形成内外互补← 正确答案
- C.EfficientNetV2 完全抛弃了复合缩放思想
- D.复合缩放思想被推广到 Transformer 模型的深度与宽度联合调优← 正确答案
答案:ABD。A、B、D 都是复合缩放的后续影响。C 错误——EfficientNetV2 没有抛弃复合缩放,而是改进了训练策略并调整了 stage 级缩放方式,属于“在继承中演进”。这就像第二代城市规划仍遵循环保理念,但换用了更先进的建设方式。
Q9. 复合缩放的两步法流程是什么?
- A.先扩大数据规模,再增加模型深度
- B.先固定 $\phi = 1$ 网格搜索 $\alpha, \beta, \gamma$,再固定系数调整 $\phi$← 正确答案
- C.先训练大模型,再蒸馏小模型
- D.先随机初始化,再使用 NAS 搜索最终结构
答案:B。两步法是先在小预算下用网格搜索确定最优系数组合,再固定系数只调 $\phi$ 生成整个模型族。这就像先建一个微缩试点城市验证规划方案,再按方案建设大都市圈——试点决定比例,放大决定规模。
Q10. 单一缩放维度(如只加深度)为什么效率会下降?
- A.因为网络层数增加导致显存占用超出 GPU 上限
- B.因为其他维度成为瓶颈,边际收益递减← 正确答案
- C.因为训练数据不足以支撑更深的网络
- D.因为反向传播算法无法处理深层网络
答案:B。只加深度时,宽度和分辨率不变,梯度信息难以在过深的网络中顺畅传递,精度提升迅速饱和;只加宽度同理,特征表达和感受野不足会成为天花板。维度间的耦合关系决定了单一缩放必然失衡——这就像只有高楼没有宽马路,城市必然堵车。