《DeepMAD: Mathematical Architecture Design forDeep Convolutional Neural Network》论文笔记

本文提出了一个针对CNN超参数(如宽度、深度)的自动优化算法,将问题转化为有约束的数学问题(constrainedMP),利用CPU的数学求解器实时解决。方法通过网络熵和有效性来设计MLP和CNN的数学结构,证明了在网络的表达力和训练效率之间的平衡。实验结果显示该方法在多个数据集上超越了SOTA,并且在相同规模数据上优于VIT。
摘要由CSDN通过智能技术生成

1、文章目的(CVPR2023)

设计一个网络模型需要耗费大量的时间去微调超参数,并且需要不平凡的网络模型的先验知识(经验),所以设计了一个自动求CNN超参数(宽度,深度等)的一个算法,建模成为一个有约束的数学问题(constrained MP)。这个数学问题的规模不多余几十,所以可以几乎实时的利用CPU进行求解,并且可以直接利用CPU中现成的MP求解器进行求解。
现有许多工作都结合了训练数据,对超参数进行优化,这样会耗费许多计算资源,并且不可解释。
最后的结果在多个数据集上超过了SOTA,并且在相同规模的数据上超过了VIT。

2、方法

2.1、MLP上的数学结构设计

先对MLP进行描述,后面延伸到CNN上。包括两个方面:expressiveness和effectiveness。

2.1.1、expressiveness

利用网络的熵(Entropy )进行描述,如下所示:
在这里插入图片描述
其中第i层的输出通道数为 w i w_i wi,输出通道数为 w i + 1 w_{i+1} wi+1。如果只有要求最大化熵的话,网络的深度会比宽度涨的更快,太深的网络不容易训练,所以需要利用另外一个维度effectiveness。
证明:
首先有四个定理:
在这里插入图片描述
介绍了微分熵的量级,高斯熵上界,期望方差的可加性和乘法关系,接下来开始证明MLP层的微分熵。
假设有一个L层的MLP,沿用上述的字符表述形式。假设输入x和权重M中的每一个元素都是服从标准正态分布的。
在这里插入图片描述
由此推出输出元素的期望和方差为:
在这里插入图片描述
在这里插入图片描述
根据以上的递推公式,代入定理可以得到如下结果:
在这里插入图片描述

2.1.2、effectiveness

超深度网络可以被认为是阻碍有效信息传播的混沌系统。但是网络深不深是一个相对的概念,如果深度为100,相对于宽度为10网络很深,但是相对于1000的宽度,他又很浅。首先假设MLP每一层具有相同的宽度w,深度为L,所以effectiveness定义为:
在这里插入图片描述
但是实际情况中每一层的宽度不一致,这里采用每一层的几何平均数来代替w,如下所示:
在这里插入图片描述
实验发现当 ρ ρ ρ在[0.1,2.0]之间的时候,在大多数视觉任务上可以有一个很好的结果。

证明:
假设有两个MLP,分别是A和B,A和B的深度均为L,A的每一层的宽度为 w i w_i wi,B的每一层都一样是 w ˉ \bar{w} wˉ。现在要使A和B的熵相同,反解出 w ˉ \bar{w} wˉ w i w_i wi之间的关系。论文具体内容如图:
在这里插入图片描述

2.2、CNN上的数学结构设计

从MLP泛化到CNN上。受工程实践的启发给出的三条指南

2.2.1、MLP to CNN

CNN是通过滑动窗口进行矩阵乘法。假设第i层卷积层中,输入通道数为 c i c_i ci,输出通道数为 c i + 1 c_{i+1} ci+1,卷积核大小为 k i k_i ki,组数为 g i g_i gi,那么一共有 c i ∗ c i + 1 / g i c_i*c_{i+1}/g_i cici+1/gi个卷积核,每个卷积核大小为 k i 2 k_i^2 ki2。所以与MLP中矩阵大小相类似,CNN层的矩阵大小为 W i ∈ R c i ∗ c i + 1 ∗ k i 2 / g i W_i∈R^{c_i*c_{i+1}*k_i^2/g_i} WiRcici+1ki2/gi。与2.1.1中MLP层用相同的表达形式的话,宽度为KaTeX parse error: Expected 'EOF', got '}' at position 16: c_{i}*k_i^2/g_i}̲。第i层的特征图大小为 r i ∗ r i r_i*r_i riri,类似的提出CNN层的熵:
在这里插入图片描述
这里用到了对数,原因是自然图像是高度可压缩的,因此图像或特征图的熵在其体积 O ( r i 2 × c i ) O(r^2_i×c_i) O(ri2×ci)中不会线性放大。受[]的启发,取对数可以更好地公式化自然图像的基本熵。

2.2.2、三条工程经验

1、加权的多尺度熵
CNN通常包含下采样层,将网络分为几个阶段。每个阶段都有一定的尺度。为了捕捉不同尺度上的熵,对每个阶段最后一层的集成熵使用加权求和,以获得网络的熵。
2、统一阶段深度
要求每个阶段的深度尽可能均匀地分布。使用深度的方差来测量深度分布的均匀性。
3、不下降的通道数
要求每个阶段的信道数量沿着网络深度不减少。这可以预先防止高级别具有较小的宽度。本指南也是许多手动设计的网络中的常见做法。

2.2.3、最终的DeepMAD公式

在这里插入图片描述
H i H_i Hi是第i个阶段的熵, w i = c i ∗ k i 2 / g i w_i=c_{i}*k_i^2/g_i wi=ciki2/gi α , β , ρ {\alpha,\beta,\rho} α,β,ρ是超参数,Q乘法了如果网络有不均匀的阶段深度的分布。条件中第一个式子控制了网络的深宽比,第二三个式子控制了计算量预算。

效果

  • 7
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值