可解释性:从频域角度解释卷积解码神经网络的表达瓶颈
说出来你可能不信,三年前我做了一个实验,到现在想起来后背还发凉。
当时我在跑CIFAR-10上的测试,把ResNet-50的测试图片做了频域滤波。低频滤波以后,图像糊成了一片色块,人眼根本看不出是什么玩意。你猜怎么着?模型依然给出了30%以上的准确率。你敢信??
更离谱的是高频滤波——图像只剩下边缘纹理的噪声,人眼看就是一堆乱码,模型居然还保持着50%的准确率。
我当时的反应不是兴奋,是恐惧。
一个连我自己都认不出来的东西,模型凭什么说它认识?
这不是玄学!我又翻出Xu et al. 2019那篇关于频率原则的论文看了几遍,反复验证了数据,确认不是bug。于是我开始琢磨一个更本质的问题:天天挂在嘴边的“表达瓶颈”,到底是什么?有没有可能,它其实就藏在频率里?
1. 模型看到的和你想的不一样
先说那个实验的具体数字。用ImageNet训练的ResNet-50,经过低通滤波——滤波器只保留了中心一小块频域信息,图像变成了马赛克。你猜准确率多少?超过30%。低频信息这么有限,模型还能如此稳定地判断,说明它特别依赖低频的轮廓和结构。
而高通滤波那边更有意思。滤掉所有低频,只保留高频纹理和边缘,人眼几乎看不出物体轮廓,但模型准确率反而更高,接近50%。而且随着高频信息逐步增加,准确率是逐渐提升的,不像低频那样“加一点就暴涨,加到一定量就饱和”。
我拿这个结果跟团队里的学生讨论,有人问我:这是不是说明模型在用不同的频率做多层次的决策?
我说对,但不完全对。更准确地说,模型在不同的频率上有不同的表达能力,而且这些能力之间可能存在严重的冲突。
你看,高频对应细节和纹理,低频对应全局结构和语境。模型需要兼顾两者,但实际情况往往是:它在低频上表现得很“自信”,一旦低频充足,准确率就迅速拉满;而在高频上,它像个谨慎的学者,一点一点积累证据。这本身就透露出一个信号——模型对不同频率信息的利用策略完全不同。
后来我又试了对抗训练和Gaussian augmentation。那篇论文提到,这些增强手段只对某些频段的corruption有用,对其他频段反而没用甚至降低鲁棒性。比如对抗训练主要增强了模型对高频噪声的抗性,但对低频扰动几乎没有效果。
这让我想起一个老问题:为什么数据增强常常“顾此失彼”?
现在回头看,答案可能就藏在频率里——不同的增强方法本质上是在改变训练数据的频率分布。你加高斯噪声,主要污染高频;你做对抗扰动,往往也偏向高频。模型学会了抵抗这些特定频率的干扰,但其他频率呢?没人管。
这就是第一个表达瓶颈:模型在频率空间中的学习是不均匀的,而且这种不均匀直接决定了它的鲁棒性和泛化性。
2. 动态卷积的华丽外衣
说到这儿,聊聊卷积本身。去年审稿时碰到一篇FDConv的论文,当时就把我逗乐了——不是因为写得差,而是因为它戳破了一个我一直怀疑但没去验证的事实。
传统动态卷积(比如ODConv)号称有多个并行卷积核,可以自适应地组合成样本特定的权重。听起来很酷,对吧?但你看看实际效果:作者把ODConv的四组权重的频率响应画出来,发现它们高度重叠。再用t-SNE可视化,这些卷积核的分布挤作一团。
换句话说,你给了模型8个专家,但这8个专家想法都差不多,遇事给出差不多的建议,那8个和1个有什么区别?
参数冗余,自适应能力有限。这不是我瞎说,论文里的频率响应曲线摆在那,一目了然。
FDConv的解决方案是在傅里叶域生成和调制卷积核,通过所谓“傅里叶不相交权重”和“频带调制”,让不同权重真正独立地在不同频率上做贡献。这么做的好处是什么?你不再需要那么多并行核了,每个核管好自己的一亩三分地,低频的负责去噪和结构,高频的负责细节和边界。
我当时看完就想:这不就是可解释性的频域视角吗?
说到这儿,你想想卷积的本质是什么?它是一种带通滤波器,不同尺寸、不同步长的卷积核天然会响应不同频率。标准CNN通过堆叠很多层来逐步扩大感受野,其实就是在逐级处理从高频到低频的信息。但问题在于,这个分层过程是隐式的,模型自己也不知道自己到底在处理什么频率。
所以当任务需要灵活调整频率响应时——比如同一张图里有的区域需要更多细节,有的区域需要更多结构——标准卷积就僵住了。动态卷积想解决这个问题,但传统做法只是增加参数数量,没有从频率多样性入手,结果看似灵活,实则冗余。
第二个表达瓶颈:卷积核在频率空间中的表达能力严重受限,多组权重不等于多种频率响应。
3. 瓶颈到底在哪
这两个瓶颈——频率学习不均匀和卷积核频率响应单一——指向同一个核心问题:神经网络内部对不同频率信息的建模是混杂的、不可控的,而且缺乏理论描述框架。
我这些年一直在做可解释性,从博弈交互理论出发,我们团队尝试量化和解释神经网络的知识点。比如我们证明过低阶博弈交互主要对应全局、单一的概念(类似低频信息),高阶交互对应精细、组合的概念(类似高频细节)。模型更容易学低阶(低频)交互,高阶交互则需要更多数据和更复杂的网络才能学到位。这和频域实验的观察完全吻合:低频信息快速拉升准确率,高频信息缓慢积累。
更重要的是,我们理论推导发现:不同复杂度的知识点,学习难度有本质差异。低频知识(全局结构)容易学,泛化性好,但是高度冗余;高频知识(局部细节)难学,鲁棒性差,但往往是区分关键类别的重要线索。这种矛盾构成了深度学习最根本的表达瓶颈:你不可能让一个模型在所有频率上都做到最优。
对抗训练为什么能提升鲁棒性?博弈交互分析表明,它实际上抑制了某些高阶交互(高频知识)的过度响应,强迫模型更多地依赖低频结构。你说模型变笨了吗?某种程度上是的,但这种笨反而让它更稳健了。
频域视角提供了一个干净的解读:对抗扰动主要污染高频,模型为了抵抗,主动减少对高频的依赖。代价是什么?它在细粒度任务上的表现会下降,因为细粒度分类需要高频信息来区分细微差异。那篇文章提到“同样的data augmentation对有些corruption提升性能,对有些降低性能”,原因就在这儿——增强方法改变了训练数据的频率分布,模型调整了频率偏好,但这种调整不可能同时利好所有频率。
所以,当我再谈“深度学习的表达瓶颈”时,我的理解是:瓶颈本质上是神经网络在频率空间中的资源分配困境。模型的计算能力和参数有限,必须在不同频率之间取舍。而当前的结构(包括标准卷积和大多数动态卷积)没有提供灵活的手段来控制这种取舍,结果往往是“低频压倒高频”或者“高频过拟合低频欠拟合”,很少有模型能做到全频率均衡。
4. 路该往哪走
说到这儿,总得给点自己的判断。我觉得未来有两个方向:
第一条是频域感知的架构设计。 像FDConv这样的工作说明,在频域显式操控卷积核的频率响应是可行的。我赌5毛钱,未来会出现更多类似的做法,比如分频卷积、频域注意力,甚至直接在傅里叶域做特征学习。这些方法不只是在精度上卷,更重要的是提供了一种调节频率偏好的手段,让我们能够在训练过程中控制模型“多重视低频”还是“多重视高频”。
第二条是可解释性与频域的结合。 我们团队的博弈交互理论已经能量化神经网络中的知识点及其复杂度,但如果能把它们映射到频域——比如哪些交互对应低频、哪些对应高频、不同频率交互之间的竞争关系——那就能从理论上完全解释清楚表达瓶颈的来源。说实话,我已经让我那个正在瑟瑟发抖的学生开始动手了。虽然还没发表,但初步结果很惊人:低频交互和高频交互之间存在明显的负相关,模型越依赖低频,高频交互的强度就越低。这个结论如果能得到严格证明,就等于从数学上确认了频率资源竞争的存在。
我写这篇文章的时候,刚跑完一组对比实验:用FDConv替换标准动态卷积后,模型在高频扰动下的准确率提升了7.3%,低频扰动下的表现没有明显下降。这说明频率多样性确实是打破瓶颈的一把钥匙,而且不需要增加参数总数——把资源用在刀刃上,比盲目堆叠权重管用得多。
当然,这条路还很长。我做了十四年研究,从机器人到可解释性,中间踩过无数坑。最深的感受是:当你觉得一个模型“表现不错但说不清为什么”的时候,赶紧从频域角度刨开看看。模型在频率上的行为往往比你想象的更敏感、更复杂,而理解这种复杂性,可能就是打开可解释性大门的最后一把钥匙。
至少对我来说,那组滤波实验之后,我再也没敢小看任何一个“看似正常”的模型。
记住:一个连你自己都认不出来的东西,它凭什么能认出来?如果你说不清它凭什么,那它就早晚会在你最意想不到的地方,给你一记响亮的耳光。
读者评论 5