摘要
尽管卷积神经网络已成为许多计算机视觉领域的选择方法,但它们仍然缺乏可解释性,并且通常是在繁琐的试错过程中手动设计的。 本文旨在通过提出一种深度神经网络来克服这些限制,该系统以系统的方式设计并且可以解释,其方法是将多分辨率分析集成到深度神经网络设计的核心。 通过使用提升方案,可以生成小波表示并设计能够以端到端形式学习小波系数的网络。 与最新架构相比,该模型所需的超参数调整更少,并在图像分类任务中获得了竞争优势。 可以在https上找到为此研究实施的代码:https://github.com/mxbastidasr/DAWN WACV2020
前言
卷积神经网络(CNN)已成为图像识别的主要机器学习方法。自从AlexNet [17]在2012年ImageNet Challenge [8]上大大胜过其他模型以来,已经开发了许多深度学习架构。基于反向传播,CNN可以通过直接调整给定任务的网络可训练参数来利用数据集中的相关性和结构。
CNN的趋势是增加层数以能够对更复杂的数学函数进行建模,以至于最近的体系结构超过了100层[14、15]。但是,不能保证增加层数总是有利的。 Zagoruyko等。 [31]的确表明,减少层的数量和增加每层的宽度比通常使用的薄而深的对应层具有更好的性能,同时减少了训练时间。他们的结果也支持了我们的普遍观察,即当前的CNN不一定是系统设计的,而通常是通过基于试错法的手动过程进行的[10]。
这种网络的局限性在于缺乏可解释性,通常将其称为CNN的致命弱点。卷积神经网络通常被视为黑盒函数逼近器,将给定输入映射到分类输出[9]。随着深度学习在透明性和可靠性成为重中之重的领域(例如医疗保健,自动驾驶和财务)变得越来越普遍,对可解释性的需求变得迫在眉睫[4]。可解释性使用户能够了解模型的优缺点,并传达了对如何诊断和纠正潜在问题的理解[9]。可解释的模型也被认为不太容易受到对抗性攻击[24]。
传统信号处理方法的理论性质,例如使用小波的多分辨率分析,已经得到了很好的研究,这使得这种方法比CNN更可理解。实际上,已有几项先前的工作将小波表示合并到了CNN中。 Oyallon等。 [23]提出了一种混合网络,用小波散射网络代替ResNet的第一层。修改后的ResNet产生了与原始ResNet相当的性能,但可训练参数的数量较少。威廉姆斯等。 [28]将输入图像的小波子带作为新的输入,并用CNN对其进行处理。在另一项工作中[29],他们展示了一种小波池化算法,该算法使用第二级小波分解对特征进行子采样。 Lu等。 [20]通过在CNN顶部使用双树小波变换解决了器官组织分割问题。 Cotter和Kingsbury [6]也使用双树小波变换通过将激活层带入小波空间来学习滤波器。
最近,藤枝等。 [11]提出了小波CNN(WCNN),它基于多分辨率分析与CNN中的卷积滤波和池化操作之间的相似之处。他们提出了类似于DenseNet的CNN,但是Haar小波(常用于多分辨率分析中)被用作卷积和合并层。这些小波层与随后的卷积块生成的特征图连接在一起。该模型比CNN更具解释性,因为小波层会生成输入的小波变换。但是,使用固定小波(Haar)可能会欠佳,因为它限制了适应性,无法利用数据驱动的学习。
受WCNN的启发,我们建议通过使用提升方案[26]在网络体系结构内执行多分辨率分析,以执行数据驱动的小波变换。与第一代小波相比,提升方案具有许多优势,例如适应性,数据驱动性,非线性,更快,更容易实现,完全就地计算以及可逆的整数到整数变换[32]。
与先前将CNN和小波相结合的工作不同,我们的模型从端到端框架中的数据中学习所有过滤器。由于与多分辨率分析的联系,我们网络中的层数可以通过数学方式确定。通过提升方案将端到端训练与多分辨率分析相结合,使我们能够从输入中有效捕获基本信息,以进行图像分类,例如纹理和对象识别。多分辨率分析的使用在每个分解级别生成相关的视觉表示,这有助于网络的可解释性。
对网络的评估是针对纹理和对象分类任务的三个竞争基准进行的,即KTH-TIPS-b,CIFAR-10和CIFAR-100。所提出的模型获得了与最新技术有关的纹理分类所提供的结果可比的结果,这些技术是从头开始进行端到端训练的,而训练参数的数量却很少。此外,与专为纹理识别量身定制的网络相比,该模型显示出更好的泛化能力,因为它为对象分类任务提供了良好的性能。这项工作是在CNN的背景下首次提出可训练的小波滤波器的工作。总之,我们提出了一种用于图像分类的深度神经网络,该网络具有以下特性:
该网络是可解释的,因为通过使用每个分解级别的提升方案的多分辨率分析生成了具有相关视觉表示的近似系数和细节系数。
该网络使用多分辨率分析方法提取特征,并捕获用于分类任务的基本信息,从而减少了纹理分类中可训练参数的数量。用于训练网络的损失函数可确保捕获的信息与分类任务相关。
该体系结构在纹理和对象分类任务中提供了具有竞争力的准确性。
背景
本节简要介绍了多分辨率分析和提升方案,这些是我们模型的基础。
CNN作为多分辨率分析
LeCun于1989年提出的卷积神经网络[18]包含滤波和下采样步骤。 为了更好地理解CNN,我们建议将CNN中的卷积和池化操作解释为多分辨率分析中的操作[21]。 在下文中,为简单起见仅考虑一维输入信号,但是分析可以容易地扩展到高维信号。
给定输入向量x =(x [0],x [1],...,x [N-1])∈RN,并用加权函数ω称为内核,卷积层输出(或特征图) )y =(y [0],y [1],...,y [N-1])∈RN可定义为
池化层的作用是输出输入的摘要统计信息[13]。 通常用于降低复杂性并简化信息。 最常见的池化层包括信号处理中的卷积和下采样。 使用标准的下采样符号↓,可以将合并层的输出向量o表示为
现在,我们可以将卷积和池化层解释为多分辨率分析中的操作。 在此分析中,信号的分辨率(信号中细节量的度量)通过滤波操作更改,信号的比例通过下采样操作更改[22]。 例如,小波变换通过使用低通kl和高通kh滤波器将信号重复分解为频谱子带,并将下采样应用因子2。
然后,为了进行多分辨率分析,通过将低通滤波后的子带cl作为输入来获得新的信号分解。 这些分解中的每一个都称为电平,并且每次都会将信号生成分层分解为cl,t和dh,t。 令kl,t和kh,t分别表示步骤t处的低通和高通滤波器。 因此,这种转换表示为一系列卷积和池化操作,
其中cl,t 1和dh,t 1分别表示在步骤t生成的近似系数和细节系数,cl,0 = x和dh,0 = x。 基于这种基于层次分解的构造,可以将CNN结构与多分辨率分析进行比较,如方程式。 2和3非常相似,不同之处在于在CNN中,滤波器是随机选择的,其输出没有有意义的解释。
Lifting Scheme
第一代小波是一种数学函数,通过利用空间和频率相关性[22],仅使用少量系数即可有效表示数据。小波变换背后的主要思想是通过自然信号上存在的相关结构来建立自然信号的稀疏近似。这种相关性通常在空间和频率上是局部的,这意味着信号上相邻样本之间的相关性更强。传统上,通过使用傅立叶变换来执行母小波的构造,但是,也可以在空间域中构造它[7]。
提升方案,也称为第二代小波[26],是一种定义与第一代小波[7]具有相同属性的小波的简单而有效的方法。提升方案将信号x作为输入,并生成小波变换的近似值c和细节d子带作为输出。设计这种提升方案包括以下三个阶段[5]。
分离信号。 此步骤包括将输入信号分为两个不重叠的分区。 选择了最简单的分区; 即,输入信号x被分为分别表示为xe和xo的偶数和奇数分量,并且被定义为xe [n] = x [2n]和xo [n] = x [2n 1]。
更新器。 该阶段将考虑频域中的分离,以使近似值具有与输入信号相同的运行平均值[7]。 为了实现这一点,近似值c应该是信号偶数部分xe加上更新运算符U的函数。
令x LU o [n] = xo [n − LU],xo [n − LU 1],...。 。 。 ,xo [n LU -1],xo [n LU]表示xe [n]的2LU 1个相邻奇数多相样本的序列。 偶数多相样本使用x Lu o [n]更新,结果形成近似值c,如等式1中所述。 4,其中U(·)是更新运算符
预测器。 信号的分割分区通常紧密相关。 因此,给定其中一个,可以通过跟踪它们之间的差异(或细节)d来为另一组建立良好的预测器P [7]。 由于信号x [n]的偶数部分对应于近似值c [n](等式4),因此有可能将P定义为c [n]的函数。
令c LP [n] = c [n-LP],c [n-LP 1],...。 。 。 ,c [n LP -1],c [n LP]表示2LP 1近似系数的序列。 在预测步骤中,从c LP [n]预测奇数多相样本。 所得的预测残差或较高的子带系数d由公式Eqn计算。 5,其中P(·)是预测算子。
Lifting Scheme Via Neural Networks
Yi等。 [30]提出用神经网络表示的非线性函数代替更新器和预测器,以适应输入信号。 为了训练它们,作者建议使用以下损失函数:
其中Loss(P)和Loss(U)分别是预测变量和更新变量的损失函数。 预测器网络的损耗促进了细节系数幅度的最小化(等式5)。 Yi等。 [30]认为c从定义上接近xe,这仅使更新器网络的损失函数有必要最小化c和xo之间的距离。 注意在Yi等。 [30],预测器和更新器被顺序训练。
深度自适应小波网络(DAWN)
我们提出了一种新的网络架构,即深度自适应小波网络(DAWN),该架构使用提升方案从输入数据中捕获基本信息以进行图像分类。 Yi等人提出的自适应提升方案。 [30]表明,通过反向传播训练的神经网络可用于实现一维(1D)信号的提升方案。 DAWN体系结构将这一思想扩展到解决分类任务,并将多分辨率分析集成到神经网络中。 所提出的模型通过以端对端的方式训练二维(2D)提升方案的参数,在分类网络的核心执行多分辨率分析。 在学习小波参数的同时,以前的基于小波的CNN方法都没有执行这种端到端训练。
![](https://i-blog.csdnimg.cn/blog_migrate/cc2180c7e760ea7a2af6a72d0440e8cd.png)
2D Adaptive Lifting Scheme
我们首先解释提出的2D自适应提升方案,然后介绍将2D提升方案集成到提出的分类体系中。
2D自适应提升方案包括一个水平提升步骤,然后是两个独立的垂直提升步骤,这些步骤会生成小波变换的四个子带。这些子带被表示为LL,LH,HL和HH,其中L和H分别表示低频信息和高频信息,并且第一位置和第二位置分别表示水平方向和垂直方向。注意,图1(a)所示的2D提升方案执行空间池化,因为输出的空间大小相对于输入减小了一半。
自适应水平提升方案通过将2D信号分成两个不重叠的分区来执行水平分析。我们选择将2D信号划分为偶数(xe [n] = x [2n])和奇数(xo [n] = x [2n 1])水平分量。然后,以与第2.2节中所述相同的方式应用水平更新器(Uh)和水平预测器(Ph)运算符。垂直提升步骤具有与水平提升步骤相似的结构,但是在这种情况下,在2D信号的垂直分量中执行拆分,然后由垂直更新器Uv和垂直预测值Pv运算符执行处理。
预测器和更新器。更新器和预测器的内部结构在垂直和水平方向上都是相同的。图1(b)显示了水平预测器(或水平更新器)的结构。首先,应用反射填充而不是零填充,以防止由卷积操作引起的有害边界效应。然后,应用2D卷积层,其内核大小取决于分析的方向(水平时为(1,3),垂直时为(3,1))。第一卷积层的输出深度设置为输入通道数的两倍。然后,应用具有大小为(1,1)的内核的第二个卷积层。该层的输出深度设置为与预报器\更新器的初始输入深度相同。所有卷积的步幅都设置为(1,1)。第一卷积层后面是relu激活函数,我们可以从其稀疏性和减小的消失梯度特性中受益。最后一个卷积层后面是tanh激活函数,因为我们不想在此阶段丢弃负值。
设计选择。我们在垂直分析之前任意选择执行水平分析。但是,通过首先计算垂直分析不会有性能差异。在predictor \ updater中使用的卷积层数和内核大小。将在超参数研究期间进行讨论(第4.3节)。选择深度时,主要关注的是维持近似和细节子带的相关视觉表示,而不会显着增加网络参数的数量。
DAWN Architecture
DAWN体系结构基于堆叠多个2D自适应提升方案来执行多分辨率分析(请参见图2)。该体系结构从两个卷积层开始,然后是M级的多分辨率分析。每个级别包含一个2D自适应提升方案,该方案会生成四个小波变换子带LL,LH,HL和HH作为输出,而输入则对应于上一个级别的低级子带(LL)。来自每个级别(LH,HL,HH)的细节子带被连接起来,然后是全局平均池化层[19],用于减少过度拟合并执行降维。在最后一个级别中,将每个级别的输出的全局平均池连接到最终的完全连接层和log-softmax之前,以执行分类任务。
![](https://i-blog.csdnimg.cn/blog_migrate/fed94003b0c500f8003285501819c012.png)
级别数。对于该体系结构,网络末端的特征图的最小大小设置为4×4,因为它是仍保持2D信号结构的最小可能大小。假设输入图像是正方形,则级数M由M = blog2(is)-log2(4)c给出,其中是输入图像尺寸。例如,对于大小为224×224的输入图像,= = 224,M =5。请注意,由于我们的网络基于多分辨率分析,因此会自动给出此层数。在超参数研究期间(第4.3节),分析了选择与M给定的水平不同的水平的效果。
初始卷积层。像在每个分类任务中一样,所提出的方法需要在分类发生之前对数据进行区分表示。为了在信号第一次下采样之前获得有区别的特征集,该体系结构首先提取带有两个Conv-BN-ReLU序列的描述符,其中Conv和BN分别代表卷积和批归一化,内核大小为3×3,相同的深度。这些初始卷积层的深度是DAWN的少数超参数之一。通过固定深度并确定分解级别的数量,对于给定的输入图像大小,可以自动获取最后2D提升方案的特征图的深度。
损失函数和约束。使用交叉熵损失函数结合一些正则项来执行端到端训练,以在训练过程中实施小波分解结构。损失函数采用等式的形式。参见图7,其中P表示类别的数量,yi和pi分别是二进制基本信息和属于类别i的预测概率。正则化参数λ1和λ2调整正则项的强度。而且,m11和mcl分别表示在级别l的提升方案的输入信号的平均值和在级别l的近似子带的平均值。并且,D1是级别l处的矢量化细节子带的串联。
为了推广低幅细节系数[12],等式中的第一个正则化项。 图7使所有分解水平上的D1的Huber范数之和最小。 与`1相比,选择Huber范数的原因是训练的稳定性。 第二个正规化项将所有分解级别上的mII和mCl之间的差的'2范数的总和最小化,以便保留输入信号的均值以形成适当的小波分解[12]。