IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 单个神经元在深度网络中的作用 -> 正文阅读

[人工智能]单个神经元在深度网络中的作用

背景描述

大量的实验证明,深度神经网络擅于找到大型数据集上的分层表示(hierarchical representations),但人类难以理解这些分层表达,于是研究人员针对图像问题,通过可视化方式对网络进行了探究。

最初的最经典的ZFNet发现层数越靠后,其学习到的内容越抽象,然后逐渐引出了两个常见的可视化手段:可视化特征图,可视化滤波器;

本篇内容来自论文 “Understanding the Role of Individual Units in a Deep Neural Network”,论文提出了一种分析卷积神经网络中单元(Unit,即filter)的方法,并在分类任务和对抗生成任务中验证了其效果。

任务一:场景分类任务的分析

数据集与模型

数据集为Place365,这是一个场景分类的数据集,将图像分类为365个场景类别:
fig1
模型使用VGG-16,模型结构如下:
fig2
VGG-16包括13个卷积层,5个pooling层,3个全连接层,由于只有卷积层和全连接层有可学习参数,故得名VGG-16(13+3=16);

网络分析方法

首先,为卷积层中的每个单元 u u u定义操作 a u ( x , p ) a_{u}(x,p) au?(x,p),这是一个激活函数,它不同于平时深度学习所见的激活函数,该函数反应了卷积层中某个单元 u u u对图像 x x x的位置 p p p输出的一个信号值。再次说明,单元即卷积网络中的filter,每个卷积层由多个filter构成,每个filter用于检测一种特征;


一个卷积层包含多个filter,每个filter的kernel数量等于输入张量的通道数,输出张量的通道数量就是filter的个数,一个filter中的各个kernel是不同的;
可以理解为不同的filter提取不同的局部特征,filter内的kernel不同是为了获取输入张量上不同通道的局部信息,最后加和得到该filter对应的局部特征相似度;


下一步,我们取对于所有图像 a u ( x , p ) a_{u}(x,p) au?(x,p)值的前1%,具体如下:定义 P x , p [ ? ] P_{x,p}[\cdot] Px,p?[?]表示一个事件遍历所有图像中的所有位置后,其为真的可能性,所以可以得到阈值 t u t_{u} tu? t u = m a x t P x , p [ a u ( x , p ) > t ] ≥ 0.01 t_{u}=max_{t}P_{x,p}[a_{u}(x,p)>t]\geq 0.01 tu?=maxt?Px,p?[au?(x,p)>t]0.01注意遍历对象是所有图片的所有位置,根据阈值,我们对所有图像做操作,让大于该阈值的区域高亮,(注意上面的操作只是针对某个卷积中的单元Unit而做的),对于下图,显示了在某一个图像里,对于不同Unit做了高亮操作,可看出各个对象被激活的情况:
fig3
然后,论文借助了一个额外的工具,这是一个来自旷视科技的语义分割模型 “Unified Perceptual Parsing for Scene Understanding”,旷视科技提出一种称之为统一感知解析(Unified Perceptual Parsing/UPP)的新任务,要求机器视觉系统从一张图像中识别出尽可能多的视觉概念。同时,多任务框架 UPerNet 被提出,训练策略被开发以学习混杂标注(heterogeneous annotations)。旷视科技在 UPP 上对 UPerNet 做了基准测试,结果表明其可有效分割大量的图像概念。这一已训练网络进一步用于发现自然场景中的视觉知识。


人类视觉系统一眼即可从一张图像中提取大量语义信息。人类不仅可以立即解析其中的物体,还能识别细节属性,比如其部分、纹理和材质。如下图所示,这是一间起居室,有着很多不同物体,比如一张咖啡桌,一幅画,以及墙面。同时,我们还看到,这是一张四腿咖啡桌,桌面之上有一块桌垫,以及桌子是木质的,沙发表层是针织的。可见,从材质、纹理的视觉感知到物体及其部分的语义感知,我们对这一视觉场景的描述是多层次的;
fig4
该语义分割模型可以获得目标对象,以及部件,材料,颜色,纹理等视觉概念信息。

语义分割模型记作 s c ( x , p ) → { 0 , 1 } s_{c}(x,p)\rightarrow\left\{0,1\right\} sc?(x,p){0,1},对视觉概念 c c c,模型为图像 x x x中的每个位置 p p p输出0或1,表示该像素是否属于该视觉概念。


论文使用 “Unified Perceptual Parsing for Scene Understanding” 中的语义分割模型获取到图像中的视觉概念,这些视觉概念可概括为:对象类别(objec),部件类别(part),材料(material),颜色(color)

然后用IoU量化视觉概念 c c c与单元 u u u之间的一致性: I o U u , c = P x , p ( s c ( x , p ) ∩ ( a u ( x , p ) > t u ) ) P x , p ( s c ( x , p ) ∪ ( a u ( x , p ) > t u ) ) IoU_{u,c}=\frac{P_{x,p}(s_{c}(x,p)\cap(a_{u}(x,p)>t_{u}))}{P_{x,p}(s_{c}(x,p)\cup(a_{u}(x,p)>t_{u}))} IoUu,c?=Px,p?(sc?(x,p)(au?(x,p)>tu?))Px,p?(sc?(x,p)(au?(x,p)>tu?))?这个IoU是在验证集上计算的,每个单元都要与1825个视觉概念进行评分,根据IoU的结果,用得分最高的视觉概念 c c c标记单元 u u u

实验结果

实验结果分析

实验结果如下:
fig5
A图:展示了VGG16的架构;

B图:在输入的某张图像上可视化了conv5_3的单元10的激活(高亮部分为超过其前1%分位数的区域),可以看出该区域对应的人的头部;

C图:显示了几个具有视觉概念检测功能的单元(conv5_3的单元150,208,141),以及它们对应的激活可视化图像,它们分别用于检测飞机,人头,毛发;

D图:显示了conv5_3中的512个filter(单元)匹配到的视觉概念统计情况,一共匹配到51个object,22个part,12个material,8个color,有的视觉概念匹配到多个单元,比如plant匹配到接近8个单元,这说明有些滤波器的工作是重复的,或许可以作为网络化简的依据

E图:比较了VGG-16中13个卷积层匹配到视觉概念的统计情况,在不同层中,最后一个层检测到的object数量明显更多;

F图:将conv5_3的单元150作为飞机的检测器,用ImageNet中的图像进行实验,F图显示了飞机和非飞机对象的样本通过单元150输出的激活统计,在jitter图上,横轴代表通过单元150后输出的得分(激活程度),jitter图上面的是概率密度图,体现了样本的概率分布;可以看出单元150确实能很清晰地将飞机样本与非飞机样本划分开(单元150对于飞机样本输出地平均激活值为88.1,对于非飞机样本输出地平均激活值为0.8


jitter图

一维散点图对于小数据集是足够描述的。 然而,当某个对象发生不止一次时,相应的数据点就会在对应位置相互重叠,这使得它们无法区分开来。一种解决办法是将每个点从原始位置向其他维度移动一个小的随机数,这种技术称为抖动,并且所得到的图是抖动图(jitter图)


实验结果验证

通过移除一些单元,从而验证这些单元在场景分类中的作用,我们强制让指定的单元输出0(神经元失活),确保网络其余部分完好,并且没有再训练。得到以下结果:
fig6
A图:当移除了类别 ski resort 最重要的conv5_3的4个单元:snow,mountain,house,tree top后, ski resort 的分类准确率显著下降;

B图:分别移除对 ski resort 分类的4个最重要的,20个最重要的,492个不重要的unit,查看分类准确率的变化情况;

C图:统计移除不同数量的重要的单元和不重要单元后,对应的准确率分布,发现一个有趣的现象,移除掉一些不重要单元后反而可以提高准确率;

D图:对365个场景类的每一类都分别做重复实验,不移除任何一个单元,去除20个最重要的,去除492个不重要的单元,对分类的影响,横坐标代表单个类别的分类准确率;

E图:表明最可解释的uint是对许多场景类别判断都很重要的单元;

任务二:场景生成任务的分析

在生成网络中,上采样操作包括反卷积,反卷积包括卷积运算,所以用同样的分析方法研究反卷积中的单元,结果如下:
fig7
图 A:PGGAN 的模型结构图;

图 B:unit 381 激活区域的可视化;

图 C:对网络中每一层进行了网络解剖;同分类网络不同,生成网络的概念单元都集中在网络的中间,第 5 层出现匹配最多的概念单元;

图D:将 layer5 匹配的概念单元跳出,匹配到 14 个 object、33 个 part、1 个 material、6 个 color,同分类网络不同,匹配的 part 多于 object;

图 E:可以看到高亮区域是针对特定概念的不同外观,如不同风格的烤箱、不同颜色和形状的凳子;

图F:将 314 unit 作为区分生成图像是否有大窗子的图像分类器,从图像可以看出,有大窗子的图像和没有大窗子的图像阈值有很大的差距;

图G:当 314 unit 不激活时,也有大窗子出现,这表明,其他单元也有生成大窗子的作用;

fig8
将生成对抗网络中的某些隐藏单元激活或停用,观察生成样式的变化:

图 A 和 B:移除跟生成tree相关的unit,移除 Tree 的 unit 越多,树的数量越少;

图 C:强制让 20 个最相关的 door unit 激活后的效果,会根据位置产生不同的门,或根本没有门;

图 D:测试 10, 000 张图片,在每个 feature map 位置都测试,door 被添加的区域情况,门可以添加到合理的位置,如窗户,但不能添加到异常位置,如树上或天空;
fig9
上面是一个应用实例:理解对抗性攻击 (understanding adversarial attacks)

图 A:正确分类的 ski resort (滑雪胜地) 被分类为 bedroom (卧室);

图 B:显示了与 ski resort 和 bedroom 最相关的 4 个重要单元的激活值变化,发现同 ski resort 相关的单元 activation 值下降,同 bedroom 相关的单元 activation 值上升;

图 C:当被攻击时,超过 1000 幅图像被错位分类为不正确的 target 类别,其中,activation 值变化最多的是 source 和 target 最相关的 4 个单元;
fig10
另一个应用是语义图像编辑 (semantic image editing),对一些对象概念进行编辑,每个概念与 20 个 unit 相关联,当用户想添加或去除一个概念时,与概念对应的 20个 unit 被激活或被置 0

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2021-10-16 19:38:58  更:2021-10-16 19:39:06 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/27 10:25:08-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码