「稀疏编码」从理论走向实用!马毅教授NeurIPS 2022新作:稀疏卷积性能和稳健性超越ResNet

简介: 「稀疏编码」从理论走向实用!马毅教授NeurIPS 2022新作:稀疏卷积性能和稳健性超越ResNet
【新智元导读】稀疏编码初露应用潜力,未来已来!


尽管深度神经网络在图像分类方面具有很强的经验性能(empirical performance),但这类模型往往被视为「黑盒」,最为人诟病的就是「难以解释」

 

相比之下,稀疏卷积模型(sparse convolutional models)也是分析自然图像的强大工具,其假设一个信号可以由卷积字典(convolutional dictionary)中的几个元素的线性组合来表达,具有良好的理论可解释性生物合理性

 

但在实际应用中,稀疏卷积模型虽然原理上行得通,但与经验设计的深层网络相比并没有展现出应有的性能优势。

 

最近,马毅教授研究组在NeurIPS 2022上发表了一篇新论文,回顾了稀疏卷积模型在图像分类中的应用,并成功解决了稀疏卷积模型的经验性能和可解释性之间的不匹配问题。

 

论文链接:https://arxiv.org/pdf/2210.12945.pdf

代码链接:https://github.com/Delay-Xili/SDNet

 

文中提出的可微优化层使用卷积稀疏编码(CSC)对标准卷积层进行替换。

 

结果表明,与传统的神经网络相比,这些模型在 CIFAR-10、 CIFAR-100和 ImageNet 数据集上具有同样强的经验性能。

 

通过利用稀疏建模的稳定恢复特性,研究人员进一步表明,只需要在稀疏正则化和数据重构项之间进行简单的适当权衡,这些模型就可以对输入损坏以及测试中的对抗性扰动具有更强的鲁棒性

 

 

马毅教授于1995年获得清华大学自动化与应用数学双学士学位,后求学于美国伯克利加州大学,并于1997年获EECS硕士学位,2000年获数学硕士学位与EECS博士学位。


毕业后在美国伊利诺伊大学香槟分校任教,并成为该校电气与计算机工程系历史上最年轻的副教授。


2009年任微软亚洲研究院视觉计算组高级研究员。2014年全职加入上海科技大学信息科学与技术学院。


2018年加入伯克利加州大学和清华-伯克利深圳学院,目前是加利福尼亚大学伯克利分校电子工程与计算机科学系教授,同时也是IEEE Fellow, ACM Fellow, SIAM Fellow

 

 

马毅教授的研究兴趣包括 3D 计算机视觉、高维数据的低维模型、可扩展性优化和机器学习,近来的研究主题包括大规模 3D 几何重构和交互以及低维模型与深度网络的关系。

 

稀疏卷积

 

虽然深度卷积网络(ConvNets)已经是图像分类的主流方法,并且性能上也超越其他模型,但其内部的组件如卷积、非线性函数和归一化等的具体数据意义还没有得到解释。

 

而稀疏数据建模在学习可解释表征的能力和强大的理论保证的支持下(例如处理损坏的数据),已被广泛用于许多信号和图像处理应用,但其在ImageNet等数据集上的分类性能仍然不如经验性的深度模型。

 

即便性能较强的稀疏模型也仍然存在缺陷:

 

1)需要专门设计网络结构,限制了模型的适用性;

2)训练的计算速度要慢几个数量级;

3)在可解释性和稳健性上没有表现出明显优势。

 

研究人员在这篇论文中提出了视觉识别框架,通过一个简单的设计证明稀疏建模可以与深度学习相结合,假设层输入可以由所有数据点所共享的字典中的几个原子(atoms)来表示,从而获得了与标准ConvNets相同的性能,同时具有更好的层级可解释性和稳定性。

 

该方法将稀疏建模封装在一个隐层(implicit layer)中,并将其作为标准ConvNets中卷积层的替代。

 

相对于经典的全连接或卷积层中所使用的显式函数(explicit function),隐层使用隐函数。这篇论文中的隐层基于该层输入和权重参数的优化问题进行定义,隐层的输出就是优化问题的解。

 

给定一个多维输入信号,可以将层的函数定义为执行反向映射到一个更好的稀疏输出,输出通道数可与输入不同,从而可以找到上述Lasso类型优化问题的一个最优的稀疏解。

 

 

该隐层实现了卷积稀疏编码(CSC)模型,其中输入信号被卷积字典中的原子稀疏线性组合所逼近。这种卷积词典可以看作是CSC层的参数,通过反向传播进行训练。

 

 

CSC模型的目标是通过A(z)算子重构输入信号,其中特征图z指定了A中卷积过滤器的位置和值。为了对建模差异具有容错度,重建并不要求精确。

 

基于确定的CSC层的输入-输出映射,就可以通过解决相关的优化来进行前向传播,并通过得出最优系数解相对于输入x和参数A的梯度来进行反向传播。

 

然后,带有CSC层的整个网络可以通过最小化交叉熵损失,以端到端的方式从标记的数据中进行训练。

 

 

实验结果

 

分类性能对比


实验用到的数据集为CIFAR-10和CIFAR-100,每个数据集包含50,000张训练图像和10,000张测试图像,每张图像的尺寸为32×32,RGB通道。

 

除了将该方法与标准网络架构ResNet-18和ResNet-34进行比较外,研究人员还与具有隐层架构的MDEQ模型和具有稀疏建模架构的SCN进行比较。

 

 

实验结果可以看到,在相似的模型规模下,SDNet-18/34的Top-1准确率与ResNet-18/34相近或更高,同时具有相似的推理速度。结果表明该网络有潜力作为现有数据驱动模型的强大替代品,因为SDNet模型在处理受损图像上有额外的优势。

 

将SDNet-18模型与模型规模相似的MDEQ模型进行了比较后,可以发现SDNet-18不仅比MDEQ更准确,而且速度也快得多(>7倍)。需要注意的是,MDEQ不能像SDNet那样处理受损的数据。

 

同样使用稀疏建模的SCN网络获得了Top-1的准确度,但SCN的一个重要缺点是它的训练速度非常慢,原因可能是SCN对图像使用了基于patch的稀疏编码模型,与卷积稀疏编码模型相比,它需要在每个前向传播中解决更多稀疏编码问题,无法从并行计算中受益。

 

稳健推理处理输入扰动


为了测试该方法对输入扰动的鲁棒性,研究人员使用了CIFAR-10-C数据集,其中的数据被不同类型的合成噪声和不同严重程度所破坏。

 

由于模型中CSC层对输入信号和重建信号之间的entry-wise差异进行惩罚,所以SDNet理论上应该更适合于处理additive噪声。

 

 

所以实验部分主要关注于CIFAR-10-C中四种类型的additive噪声,即高斯噪声、shot噪声、speckle噪声和impulse噪声,然后评估SDNet-18的准确性,并将其性能与ResNet-18进行比较。

 

 

可以看到,对于各种类型的噪声和不同的严重程度(除了0、1和2级的impulse噪声),适当选择一个不同于训练时使用的λ值有助于提高测试性能。

 

 

特别地,作为λ的函数的准确度曲线表现出一个单模态的形状,性能首先增加,然后减少。此外,在每种数据破坏类型中,达到性能峰值的λ值随着破坏严重程度上升而单调地增加,观察结果与预期一致。

 

处理对抗性扰动


研究人员在CIFAR-10测试数据集上使用PGD攻击对SDNet(λ=0.1)生成对抗性扰动,扰动的L∞范式为8/255,扰动的L2范式为0.5。

 

 

与ResNet-18进行对比可以看到,在λ=0.1的情况下,SDNet的表现并不比ResNet好多少,但可以通过调整参数λ来大幅提高鲁棒性精度。

参考资料:https://arxiv.org/abs/2210.12945

相关文章
|
机器学习/深度学习 自然语言处理
微软提出MiniViT | 把DeiT压缩9倍,性能依旧超越ResNet等卷积网络(二)
微软提出MiniViT | 把DeiT压缩9倍,性能依旧超越ResNet等卷积网络(二)
271 0
|
机器学习/深度学习 存储 自然语言处理
微软提出MiniViT | 把DeiT压缩9倍,性能依旧超越ResNet等卷积网络(一)
微软提出MiniViT | 把DeiT压缩9倍,性能依旧超越ResNet等卷积网络(一)
275 0
|
7月前
|
机器学习/深度学习 PyTorch 测试技术
|
2月前
|
机器学习/深度学习 编解码 自然语言处理
ResNet(残差网络)
【10月更文挑战第1天】
|
机器学习/深度学习 算法 计算机视觉
经典神经网络论文超详细解读(五)——ResNet(残差网络)学习笔记(翻译+精读+代码复现)
经典神经网络论文超详细解读(五)——ResNet(残差网络)学习笔记(翻译+精读+代码复现)
3865 1
经典神经网络论文超详细解读(五)——ResNet(残差网络)学习笔记(翻译+精读+代码复现)
|
7月前
|
机器学习/深度学习 计算机视觉
深度学习第6天:ResNet深度残差网络
深度学习第6天:ResNet深度残差网络
|
7月前
|
机器学习/深度学习 数据采集 PyTorch
PyTorch搭建卷积神经网络(ResNet-50网络)进行图像分类实战(附源码和数据集)
PyTorch搭建卷积神经网络(ResNet-50网络)进行图像分类实战(附源码和数据集)
370 1
|
7月前
|
机器学习/深度学习 并行计算 算法
【计算机视觉+CNN】keras+ResNet残差网络实现图像识别分类实战(附源码和数据集 超详细)
【计算机视觉+CNN】keras+ResNet残差网络实现图像识别分类实战(附源码和数据集 超详细)
219 0
|
机器学习/深度学习 人工智能 PyTorch
ResNet详解:网络结构解读与PyTorch实现教程
ResNet详解:网络结构解读与PyTorch实现教程
2071 0
|
机器学习/深度学习 数据采集 算法
基于ResNet-101深度学习网络的图像目标识别算法matlab仿真
基于ResNet-101深度学习网络的图像目标识别算法matlab仿真

热门文章

最新文章