Understanding Neural Networks Through Deep Visualization 论文笔记

本文探讨了理解和可视化深度神经网络,特别是卷积神经网络在处理图像时的工作原理。通过实时卷积激活可视化,可以看到网络层对输入的响应。同时,通过正则化优化的可视化技术,可以更清晰地展示DNN学到的特征。这些工具是开源的,旨在帮助研究人员和开发者更好地理解DNN的内部工作和改进模型。

0 摘要

近年来,在训练大型深度神经网络方面取得了巨大进展,其中包括训练卷积神经网络识别自然图像。 然而,我们对这些模型如何工作的理解,特别是他们在中间层执行的计算,已经落后了。通过开发更好的可视化和解释神经网络的工具,这一领域的进展将进一步加速。 我们在这里介绍两种工具。 第一种是在处理图像或视频时,将训练过的每个图层上产生的激活可视化的工具。我们发现,随着用户输入的改变,通过查看实时的激活值有助于理解卷积网络的工作原理。 第二种工具通过图像空间中的正则化,可视化DNN每一层的特征。在这里我们介绍几种新的正则化方法,这些方法结合起来可以产生更清晰,更可理解的可视化图像。 这两种工具都是开源的。

简单说:
可视化工作分为两大类,一类是非参数化方法:这种方法不分析卷积核具体的参数,而是先选取图片库,然后将图片在已有模型中进行一次前向传播,对某个卷积核,我们使用对其响应最大的图片块来对之可视化;而另一类方法着重分析卷积核中的参数,使用参数重构出图像。

1 介绍

过去几年在训练强大的深度神经网络模型方面取得了巨大的进步,这些模型在各种具有挑战性的机器学习任务中正在接近甚至超越人类能力。 一个标志性的例子是训练深度卷积神经网络AlexNet,分类自然图像。 该领域大放异彩受益于GPU强大的计算能力,更好的训练技巧(dropout),更好的激活单元(ReLU), 和较大的标记数据集(ImageNet)。

虽然我们对如何创建高性能架构和学习算法的知识有了相当大的改进,但我们对这些大型神经模型如何运作的理解却落后了。 神经网络一直被称为“黑盒子”,因为很难准确理解一个具有大量神经元相互作用、非线性变换的神经网络,训练之后会有什么功能。大型现代神经网络由于其规模更难研究。例如,了解广泛使用的AlexNet DNN需要理解6000万训练过的网络参数。

理解神经网络学习到了什么本身就很有趣,并且这也是进一步改善模型的关键途径:理解当前模型学习到的知识,才可以提出使它们变得更好的方法。 例如,使用反卷积技术,可视化DNN隐藏单元学习到的特征,提出了使用较小的卷积核的结构。这一改进(ZFNet),取得了2013年ImageNet的最佳水平。

本文提供了两种可视化的工具,这两种工具都是开源的,以便科学家和从业人员可以将它们与自己的DNN集成从而更好地理解DNN。第一种工具是交互式的软件,它根据用户提供的图像或视频,让它们通过DNN后,绘制出每一层上产生的激活。第二个工具可以更好地显示由DNN每层的单个神经元计算出的学习特征。观察已经学习到的特征对于理解当前的DNN如何工作以及如何改进它们很重要。

过去的研究大致分为两个不同的阵营:以数据集为中心和以网络为中心。前者需要一个训练好的DNN并在该网络上进行前向运算;后者只需要一个训练好的DNN。以数据集为中心的方法从训练或测试集挑选图像,让这些图像通过DNN网络,DNN网络的每个单元都会产生高或低的激活值。

以网络为中心的方法直接调查网络,而不需要数据集中的任何数据。典型代表是ZFNet的反卷积方法。例如2009年Visualizing higher-layer features of a deep network一文中,通过使特定单元产生高的激活值来合成图像。从初始输入x=x0x=x0开始,计算在某个单元ii处由该输入引起的激活 a i ( x ) 。然后沿着梯度ai(x)/x∂ai(x)/∂x的方向在输入空间中步进迭代,使得单元ii产生的激活值越来越高,最终的 x 被认为是该单元ii正在寻找的答案(最希望看到的特征)。在输入空间是图像的情况下,可以直接显示 x

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值