7、非局部神经网络--学习笔记

0、Abstract

卷积网络和循环网络都是构建在一次处理一个局域信息的。例如:卷积核
现在,我们为捕获长时间的信息提出了一种可以通用的非局部神经网络构建块。受计算机视觉中的经典非局部平均的方法的启发,我们的非局部操作用所用特征的权重和来计算一个位置的输出

1、Introduction

1、在深度神经网络的工作中,捕获长时间的依赖是非常重要的
2、卷积和循环网络的弊端–(用来突出非局部神经网络的优点,欲扬其先抑他)

  1. 计算低效

  2. 优化困难

  3. 这些挑战使多跳依赖变得复杂(例如接收消息时,需要远距离来回的传播)
    3、我们的非局部神经网络对于捕获长时间的依赖在深度神经网络中是有效、简单并且具有通用性的一个成分、
    NL计算一个位置的输出需要所有位置的特征的权重的总和
    优点

  4. NL捕获长距离依赖关系直接计算两个位置的交互,不管他们的位置距离

  5. NL是高效的且仅通过很少的几层就可以实现很好的结果
    在前馈网络中,我们最基础的单元(NL)可以捕获时间、空间和时空依赖关系

  6. NL允许输入的可变,且输出与输入保持一致

2、Related Work

1、Non-local processing
是计算图像中计算所有像素的加权均值的分类滤波算法,运行远像素在基于补丁外观相似性的位置对过滤后的响应做出贡献
2、Graphical models
长距离依赖可以通过图像模型进行修复,例如CRF(conditional random filrlds)
3、Feedforward modeling for sequences
通过非常深的一维卷积网络的大感受野来捕获长距离依赖关系
4、Self-attention
自注意模块通过关注所有位置并取其在嵌入空间中的加权平均值来计算序列(例如,句子)中某个位置的响应。
自注意机制可以被视为一种非局部均值的一种形式
我们的工作是将机器翻译的自注意和适用于计算机视觉中的图像和视频问题的更一般的非局部滤波操作结合起来
5、Interaction networks
虽然我们的非局部网络与这些方法相连,但我们的实验表明,模型的非局部性,与注意力/交互/关系的思想正交(例如,网络可以关注局部区域),是他们经验成功的关键。非局部建模是图像处理的一个长期关键元素.
6、Video classification architectures
前馈模型是通过时空中的3D卷积(C3D)[26,48]实现的
3D滤波器可以通过“膨胀”[13,7]预训练的2D滤波器来形成。

3、Non-local Neural Networks

3、1Formulation构造

在这里插入图片描述
i:是要计算的输出位置的索引;x:输入信号
j:枚举所有可能位置的索引;y是与x大小相同的输出信号
C是为了归一化
与FC层进行对比,突出NL层的优点:
1、NL基于不同位置之间的关系来计算输出
2、适用于可变输入,且输出与输入保持一致

3、2Instantiations实例化

我们的NL对f、g函数的选择并不敏感,这表明一般的非局部行为是观察到改进的主要原因
1、Gaussian
2、Embedded Gaussian
非局部操作的两种可选自的版本:
1、Dot product
2、Concatenation
上述都证明了通用NL操作的灵活性

3、3Non-local Block

NL mean演变成为NL operation 打包成为 NL block
在这里插入图片描述
+X表明是残差网络的连接。残差网络允许我们加入新的NL块到预训练的模型中,而不需要打乱原有的行为。---->残差网络

残差网路理解:

在这里插入图片描述
目前得到的知识x,
H(x):想要得到的映射,
所以构造了一个函数F(x)=H(x)-x
如果效果较好(误差较小),则使用F(x)+x=H(x);否则,就直接使用x,这样一更线连过去的就做skip connecion
如果F(x)0,则H(x)=x叫做相等映射
在这里插入图片描述
通过规律,可以推导出任意一层的式子
>信号可以更容易的传播到更高层的网络中

在这里插入图片描述
通过代码理解这幅图更好,因为图中细节较少(所有视频都这样说,我还没干)

4、Video Classification Models

消融实验:

"消融研究 "被用来描述切除网络某些部分的过程,以便更好地了解网络的行为。
消融实验的目的在于移除系统中的特定的部分,来控制变量式的研究这个部分对于系统整体的影响。
如果去除这一部分后系统的性能没有太大损失,那么说明这一部分对于整个系统而言并不具有太大的重要性;
如果去除之后系统性能明显的下降,则说明这一部分的设计是必不可少的。
如果出现了第三种情况,也就是去除之后模型的性能不降反升,那么建议找一下bug或者修改设计。

首先,我们描述了1、用于该任务的基线网络架构,然后将其扩展到2、3D ConvNets[48,7]和我们提出的3、非局部网络中。
1、2D ConvNet baseline(C2D):
与3D网络对比,隔除对时间的影响
在2D网络中,时间维度被琐碎的处理了(仅通过池化层进行)
使用在imageNet上预训练的ResNet权重直接进行初始化。唯一涉及时域的操作就是池化层,仅仅是聚合了时间信息

在这里插入图片描述

2、Inflated 3D ConvNet (I3D):
在时间上重复的单个静态帧组成,初始化与2D网络相同
2种膨胀的情况:
1、将残差块中的3×3核膨胀为3×3×3(类似于[7])
2、残差区块中的第一个1×1核膨胀至3×1×1(类似于[13]
由于3D卷积是计算密集型的,我们只为每2个残差块膨胀一个内核;膨胀更多的层显示回报递减。

3、Non-local network:
将NL block添加到C2D和I3D中,转换成NL network
要探究添加多少块,在哪里添加块最优

4、1Implementation Details

1、Training:
模型在ImageNet上进行了预训练
在原始视频上随机选取64帧,后隔一帧选一帧,得到32帧作为输入
图像时随机裁剪的224*224
用8个GPU的机器同时训练,每个GPU在一个小批量中有8给剪辑,因此共有64个剪辑的小批量大小
总共训练400k轮,学习率为0.01,每150k轮减少10倍
动量是0.9,权重衰退是0,001
在全局池化层后采用dropout,随即率为0.5
用BN来调整模型防止过拟合,参数初始化为0,插入其他网络中时,保持原有行为。
2、Inference(推导):
在我们的实践中,我们从全长视频中平均采样10个片段,并分别计算它们的softmax分数。最后的预测是所有剪辑的平均softmax分数。

5、Experiments on Video Classification

5、1在Kinetics数据集上进行全面的研究

Kinetics数据集中包含246k的训练视频和20k的验证视频,是一个包含400种行为动作的分类任务
在这里插入图片描述
总体来说加入NL后,训练集和验证机的错误率均有下降

在这里插入图片描述
2a:不同形式的NL添加到C2D中:NL操作很重要,对于哪种形式并不敏感
2b:哪个阶段添加NL块:res2,3,4结果相似,res5稍微低一点
一种可能的解释是,res5的时域空间跟小不足以提高准确的时间信息
2c:NL块在更深层的网络中:NL块越多结果越好
NL块可以执行长距离的通信,信息可以更好的在长距离中来回跳转传递
由于NL块与以标准方式变深的网络是互补的,所以效果变好了
2d:在时空上的NL:NL模型可以很好的捕获时空信号
仅计算时间或空间的效果比基模型好,但是都比时空模型差
2e:NL网络和3D卷积对比:NL+C2D都比I3D网络号,且计算量小
2f:NL操作和3D卷积是互补的。3D网络可以捕获局部依赖性关系
2g:在较长的输入视频上的通用性:与2e进行对比,在较长的视频输入上的效果更好
与SOTA相比,超过所有RGB或者是RGB+flow的一大截

5、2在Charades数据集上进行NL通用性的研究

6、Extension: Experiments on COCO

Object detection and instance segmentation:目标检测和十六分割
keypoint detection:关键点检测

7、Conclusion

提出了一种新的神经网络,可以通过NL 操作来获取长距离依赖
1、可以插入到任何已存在的框架中
2、适用性非常高,在视频分类,物体检测和分割以及姿态轨迹任务中效果都很好

AP

1、基础

TP(True Positive): loU>0.5的检测框数量(同一Ground Truth只计算一次)
FP(False Positive): loU<=0.5的检测框(或者是检测到同一个GT的多余检测框的数量)
FN(False Negative):没有检测到的GT的数量---------------------漏解了

Precision: TP/(TP +FP)模型预测的所有目标中,预测正确的比例-----------------查准率
Recall: TP/(TP +FN)所有真实目标中,模型预测正确的目标比例------------------查全率

IoU (Intersection over union)交并比其是预测框(Prediction)与原标记框(Ground truth)之间的重叠度(Overlap),最理想情况是完全重叠,即比值为1。IoU用于衡量预测框的准确度。
Confidence Score (置信度分数) 其是一个分类器(Classifier)预测一个锚框(Anchor Box)中包含某个对象的概率(Probability)
Confidence Score和IoU共同决定一个检测结果(detection)是Ture Positive还是False Positive

2、AP

P-R曲线(Precision-Recall曲线)
AP:P-R曲线下的面积
mAP:mean Average Precision:各类AP的平均值
步骤:
1、按照confidence进行排序
2、分rank进行precision和recall的计算
在这里插入图片描述

3、画图进行AP求解:
在这里插入图片描述
需要的请去B站找目标检测mAP计算以及coco评价标准,up主讲的非常好,这些图仅供自己理解。

3、CoCo评价指标的细节

在这里插入图片描述

一张图片中给100个目标检测物品

4、Accuracy和Precision

1、Accuracy指准度,意味着系统误差(System Error)小,即偏差(Bias) 小,描述了的实际值与真实结果的偏离程度。其是预测为正实际为正和预测为负实际负占总样本的比例。

2、Precision指精度,意味着随机误差(Random Error)小,即方差(Variance)小,描述了实际值的扰动情况。其是预测实际为正,占预测为正的比例,Precision可以视作是模型找出来的数据的正确能力。
在这里插入图片描述
特别的形象
3、F1 Score:是Precision与Recall的调和平均(harmonic mean),是综合Precision与Recall的评估指标,用于综合反映整体的指标,避免Precision或Recall的单一极大值,Precision很大、Recall很小;或Precision很小,Recall很大,都不是好的检测能力。
在这里插入图片描述

有侵图的,联系秒删。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值