《Zero Stability Well Predicts Performance of Convolutional Neural Networks》
《Zero Stability Well Predicts Performance of Convolutional Neural Networks》
文章结构
-
摘要
-
引言
-
预备知识
-
来自现存 CNNs 的观察
-
零稳定性网络 ZeroSNet
-
实验
- 通过零稳定预测性能
- 和其它网络比较
- 验证鲁棒性
- 泛化 Gap 实验
- 计算效率
- 实验设置
-
相关工作
- neural ODEs 的鲁棒性
- CNNs 的稳定性
- 基于高阶离散化的结构
-
讨论
-
结论
-
附录
- 额外的实验
- ZeroSNet 的推导
- 理论证明
一、摘要
原文:
The question of what kind of convolutional neural network (CNN) structure performs well is fascinating. In this work, we move toward the answer with one more step by connecting zero stability and model performance. Specifically, we found that if a discrete solver of an ordinary differential equation is zero stable, the CNN corresponding to that solver performs well. We first give the interpretation of zero stability in the context of deep learning and then investigate the performance of existing first- and second-order CNNs under different zero-stable circumstances. Based on the preliminary observation, we provide a higher-order discretization to construct CNNs and then propose a zero-stable network (ZeroSNet). To guarantee zero stability of the ZeroSNet, we first deduce a structure that meets consistency conditions and then give a zero stable region of a training-free parameter. By analyzing the roots of a characteristic equation, we theoretically obtain the optimal coefficients of feature maps. Empirically, we present our results from three aspects: We provide extensive empirical evidence of different depth on different datasets to show that the moduli of the characteristic equation’s roots are the keys for the performance of CNNs that require historical features; Our experiments show that ZeroSNet outperforms existing CNNs which is based on high-order discretization; ZeroSNets show better robustness against noises on the input. The source code is available at https://github.com/LongJin-lab/ZeroSNet.
翻译:
哪种卷积神经网络(CNN)结构表现良好的问题令人着迷。本文通过将零稳定性和模型性能联系起来,向答案又迈进了一步。具体来说,我们发现,如果常微分方程的离散求解器是零稳定的,则该求解器对应的 CNN 表现良好。首先给出了深度学习背景下零稳定性的解释,然后研究了现有的一阶和二阶 cnn 在不同零稳定情况下的性能。基于初步观察,本文提供了一种高阶离散化来构建 cnn,然后提出了一种零稳定网络(ZeroSNet)。为保证 ZeroSNet 的零稳定性,首先推导出满足一致性条件的结构,然后给出免训练参数的零稳定区域。通过分析特征方程的根,理论上可以得到最优的特征映射系数。从三个方面展示了结果:在不同的数据集上提供了不同深度的广泛经验证据,表明特征方程根的模是需要历史特征的 cnn 性能的关键;实验表明,ZeroSNet 优于现有的基于高阶离散化的 cnn;ZeroSNets 对输入噪声表现出更好的鲁棒性。源代码可以在https://github.com/LongJin-lab/ZeroSNet上找到。
句型:
- The question of [something] is fascinating.
- In this work, [we] [do something].
- [We] move toward [something] by [doing something].
- [We] connect [something] and [something else].
- Specifically, [we] found that [statement].
- If [condition], [result].
- We first give [something].
- [We] interpret [something] in the context of [something].
- [We] investigate the performance of [something] under [conditions].
- Based on [something], [we] [do something].
- To guarantee [something], [we] [do something].
- By analyzing [something], [we] [do something].
- We theoretically obtain [something] by [doing something].
- Empirically, [we] present [our results] from [aspects].
- [We] provide extensive empirical evidence of [something] to show [something].
- Our experiments show [something].
- [Something] outperforms [something else].
- [Something] shows better [quality] against [something].
- The source code is available at [URL].
短语:
行文思路:
- 引入问题和背景:段落开头提出了一个有趣的问题,即何种 CNN 结构能够表现出良好性能。
- 关联零稳定性和模型性能:接下来,提到作者通过将零稳定性与模型性能相连接,向回答这个问题迈出了一步。
- 调查现有 CNN 的性能:研究了现有的一阶和二阶 CNN 在不同零稳定条件下的性能。
- 提出 ZeroSNet:提出了一种高阶离散化方法构建 CNN,命名为 ZeroSNet。
- 理论和实证结果:通过分析特征方程的根并从理论上得出了特征图的最优系数。接下来,通过广泛的实验从三个方面验证了 ZeroSNet 的性能优势:不同深度在不同数据集上的实证结果,ZeroSNet 相对于基于高阶离散化的现有 CNN 的性能优势,以及 ZeroSNet 对输入噪声的鲁棒性。
- 提供源代码:最后一句提供了源代码的链接,方便读者获取更多细节或进行复现实验。
论文摘要写作指导:
- 在论文摘要中,应该简明扼要地介绍研究的背景、问题、方法和结果,让读者能够了解研究的核心内容。
- 引言部分可以提出一个引人入胜的问题或现实应用场景,引起读者的兴趣。
- 在介绍研究方法时,要突出创新点和研究的重要性,说明为什么这个方法或理论对解决问题或推动领域发展具有重要意义。
- 在结果部分,重点突出实证结果的重要性和发现的新见解,可以使用定量数据或具体例子来支持。
- 最后,提供相关资源的链接或引用,如源代码、数据集或其他参考资料,以便读者进一步了解或复现研究。
二、引言
思路:
首先第一段从 CNN 引出 ODE,再引出零稳定性。
第二段介绍微分领域的几种稳定性:A-stability、BIBO-stability、Zero-stability
第三段将 CNN 的泛化性和鲁棒性与零稳定性联系起来
第四段引出本文所设计的网络 ZeroSNet,并给出本文贡献点
句型:
- 引入背景和问题陈述:
- "The question/problem of [topic] is [fascinating/important/interesting]."
- "There is no clear clue about [issue]."
- "A promising direction for [topic] is [approach/method]."
- 提出研究目标和方法:
- "In this work, we aim to [objective]."
- "To address this issue, we propose [method/approach]."
- "We seek the answer from the perspective of [concept/theory]."
- 引用相关研究:
- "Previous studies have shown that [findings/results]."
- "Several studies have explored [topic] and found [results]."
- "Inspired by [previous work], we [propose/develop] [method/model]."
- 引出论文结构和组织:
- "The rest of the paper is organized as follows."
- "In Section [number], we provide a detailed explanation of [concept/theory]."
- "Section [number] presents the experimental results and analysis."
- "Finally, in Section [number], we summarize the findings and discuss future directions."
短语:
论文摘要写作指导:
- 引入背景和问题陈述:在Introduction的开头部分,引入研究领域的背景和问题陈述,说明为什么这个问题是重要的或有趣的。
- 提出研究目标和方法:明确阐述研究的目标和方法,说明你打算如何解决或回答这个问题。
- 引用相关研究:引用前人的研究成果,说明你的研究是建立在前人工作的基础上,并指出前人工作的不足之处。
- 引出论文结构和组织:在Introduction的结尾部分,简要介绍论文的结构和组织,说明各个章节的内容和安排。
- 简明扼要:Introduction应该简明扼要地介绍研究的背景、问题、目标和方法,不要过多展开细节。
- 吸引读者兴趣:通过引入有趣的问题或引用相关研究的重要发现,吸引读者的兴趣,使其对你的研究感到好奇。
- 逻辑清晰:确保Introduction的逻辑清晰,按照一定的顺序引入背景、问题、目标和方法,使读者能够理解你的研究思路。
- 突出创新点:在Introduction中,突出你的研究的创新点和独特之处,说明你的研究对该领域的贡献。
- 避免废话和冗长:Introduction应该简洁明了,避免使用废话和冗长的句子,使读者能够迅速了解你的研究内容。
- 结尾引出后续章节:在Introduction的结尾部分,引出后续章节的内容,为读者提供一个整体的概览。
三、预备知识
给出本文用到的前置知识:
定义 1:常微分方程初值问题
定义 2:\(d\) 阶离散
假设 1:Lipschitz 连续
定义 3:零稳定性
定义 4:\(d\) 阶离散的一致性
条件 1:根条件
句型:
短语:
四、来自现存 CNNs 的观察
-
一个来自 PreResNet 的观察
\(\mathbb{y}_{n+1} = \alpha \mathbb{y}_n + h\mathbb{f}(t_n,\mathbb{y}_n).\)
-
一个来自 LM-Architecture 的观察
\(\mathbb{y}_{n+1} = (1-k) \mathbb{y}_n + k\mathbb{y}_{n-1} + (2k+1)h\mathbb{f}(t_n,\mathbb{y}_n).\)
-
CNN 的零稳定性
句型:
短语:
五、零稳定性网络 ZeroSNet
-
详细描述和介绍 ZeroSNet
\(\mathbb{y}_{n+1} = (\frac{3(1+\lambda)}{4\lambda}) \mathbb{y}_n - \frac{1}{\lambda}\mathbb{y}_{n-1} + \frac{1+\lambda}{4\lambda}\mathbb{y}_{n-2} + \frac{3\lambda-1}{2\lambda}h\mathbb{f}(t_n,\mathbb{y}_n).\)
-
ZeroSNet 的属性
2.1. ZeroSNet 是一致的
2.2. ZeroSNet 是零稳定的
2.3. ZeroSNet 的最优系数被给出
句型
短语
六、实验
- 通过零稳定预测性能
在CIFAR10和CIFAR100数据集上对于对于网络是否满足零稳定性进行了实验
-
和其它网络比较
-
验证鲁棒性
对网络的输入数据加入噪声,观察最终预测精度
- 泛化 Gap 实验
对不同的系数的实验观察泛化Gap
- 计算效率
评估网络的层数和参数量
- 实验设置
详细描述论文所做实验的参数设置
七、相关工作
- neural ODEs 的鲁棒性
Hanshu等人给出了一个损失项来最小化终端状态差的上界,发现具有连续表示的神经ode在鲁棒性上表现良好。Zhang等人从步长角度研究了鲁棒性,他们发现小步长对正向传播和反向传播都有好处。将高斯过程嵌入到神经ODE中可以提高鲁棒性,如(Anumasa和Srijith 2021)。通过训练多个噪声注入的残差网络来近似Feynman-Kac公式,在(Wang et al. 2019)中构建了一个鲁棒的模型。
- CNNs 的稳定性
在Haber and Ruthotto 2017年对cnn的稳定性进行了研究,特征应该是恰当的,这对于保持表示能力和避免爆炸很重要。虽然提到了泛化,但在(Haber and Ruthotto 2017)中,它和A-稳定性之间的联系并不清楚。由于A-稳定性不涉及扰动,它可能与泛化无关。(渭南2017;Lu等,2018;Chen 2019)从或常微分方程(ODE)的角度给出了深度神经网络的解释。在这些工作的基础上,(Ruthotto和Haber 2020)从偏微分方程(PDE)的角度进一步研究了系统的稳定性。(Ruthotto和Haber 2020)构建了抛物线和双曲线cnn,并证明了在某些假设下(例如,权重对称、特殊激活),抛物线和双曲线cnn是稳定的。
(Zhang and Schaeffer 2020)研究了几种类似resnet的网络的稳定性,并给出了输出特征图的上界和灵敏度上界。不同的是,我们在数值分析中使用零稳定性(Gautschi 1997),然后提供指导来构造高阶结构。
- 基于高阶离散化的结构
在将一些性能良好的cnn解释为ode之后,Lu等人给出了LM架构。将LM架构解释为二阶离散化,并将其作为初步观察零稳定性如何影响模型性能的工具。与LM架构不同,ZeroSNet具有一致性和零稳定性的理论保证。在我们的实验中,在相同的超参数设置下,ZeroSNet在性能上优于LM-ResNet (Lu et al. 2018)。
八、讨论
ZeroSNet的好的性能某种程度上只是一个副产品为研究cnn的本质。为了加快训练速度,我们对所有实验都使用普通设置,并在ImageNet上应用混合精度训练,我们的结果无法在排行榜上击败最先进的。此外,由于空间限制,我们只讨论一阶到三阶离散化,但我们认为性能和零稳定性之间的联系是明确的。指导结构设计的一般理论超出了本文的范围,需要进一步探讨。对深度神经网络的精确理解还需要更多的努力,我们的工作只是向这个大问题的答案迈出了一小步。
九、结论
本文首先观察到zero稳定性很好地预测了PreResNets和LM-ResNets的性能。基于这些初步观察,构建了一个高阶CNN ZeroSNet,以进一步验证零稳定性的预测能力。从理论上证明了ZeroSNet在一致性和零稳定性方面的优势,推导出一组针对历史特征和当前激活值的最优系数。本文进行了四组实验。首先,将ZeroSNets与非零稳定的ZeroSNets进行了比较,结果清楚地表明零稳定模型的泛化性能优于非零稳定模型。其次,在不同的数据集上评估了理论上最优的系数,结果表明它们在实际应用中也是最优的。然后,采用具有理论最优系数的零网络和具有可训练参数的零网络进行比较。结果表明,ZeroSNets在CIFAR-10、CIFAR-100和ImageNet上的表现优于之前的高级cnn。最后,通过对注入噪声的测试图像进行实验,验证了零稳定cnn在鲁棒性上的优越性。
十、附录
- 额外的实验
- ZeroSNet 的推导
- 理论证明

浙公网安备 33010602011771号