视频分类|VidSage: Unsupervised Video Representational Learning with Graph Convolutional Networks个人论文笔记

模型主要从视觉和语义上编码一个视频:通过预训练的图像特征提取器提取视觉特征,再通过GCN变体来传播背景信息,获取视频语义
3D CNN, LSTM, GCN(提取每帧人的关节作为关键点后产生的图像来预测动作)
1.介绍
通过GCN来对视频间的概念关联性进行建模:创建一个图Graph G,里面每个视频作为一个节点,然后基于视频间的语义相似性来形成节点间不同的连接;首先通过对比预训练好的图片特征提取器计算视频内平均帧间的特征(标准)来连接视觉上相似的视频,然后识别视频中的物体作为自监督信号作为另一个视频间相似性定义(1.视觉相似 2.相似的物体)(这些都是不需要人工标注的信息);一旦这个Graph G建立,反复变换(transform)特征并将信息传递到附近来获取每个视频k-hops距离内的结构;这样做可以更加视频级的特征更加的丰富(通过自监督),然后将这些特征用于视频分类网络
GNN变形:GCN,GraphSage,Graph Attention Network
之前方法的问题:LRCN,3D CNN计算量较大且平行计算时有限制
3.方法
3.1 术语
GCN:在一个graph G中包括n个节点和e个边线(edge);每个节点特征都由d维向量表示,共有n个节点,即整个特征矩阵形状为nd;整个graph的信息都存储在一个邻接矩阵A中(如下):视频分类|VidSage: Unsupervised Video Representational Learning with Graph Convolutional Networks个人论文笔记
文章图片

每层神经网络可以由下图(对于整个特征矩阵):
视频分类|VidSage: Unsupervised Video Representational Learning with Graph Convolutional Networks个人论文笔记
文章图片

H0=X, X为最初的特征矩阵,l代表层数,HL=Z(最后一层的输出,依然为一个n
d的特征矩阵);每个节点的新特征都是保留之前特征有价值的信息和抓取节点在graph中局部和全局结构
对于每个节点的更新:
视频分类|VidSage: Unsupervised Video Representational Learning with Graph Convolutional Networks个人论文笔记
文章图片

两个希腊字母代表任意的变换(主要是单层的神经网络加非线性加dropout); AGGR能被不同的领域聚集函数所代替(如max-pooling,mean,sum)
3.2 预处理
提取每个视频的d维特征
视频分类|VidSage: Unsupervised Video Representational Learning with Graph Convolutional Networks个人论文笔记
文章图片

括号中的x为视频的每帧经过ImageNet预训练的Inception v1模型后得到的1024维的向量,希腊字母代表任意的聚集函数如序列函数或简单的平均;fv即为视频级的特征,1024维的向量(序列函数和简单的平均差不多,所以之后都使用平均)
3.3 模型结构
GCN的作用:对视频间的关联进行建模并从把每个视频的信息传播到概念上相似的视频
节点u和v(u,v均为d维向量)连接在一起如果dis(u,v)>r,dis测量相似性,r为控制稀疏度的阈值;节点更新的两个希腊字母为单层神经元,RELU,dropout,更新次数为2;具体更新函数如下(竖线代表concat, W1,W2对于不同的节点和层数都是一样的)
视频分类|VidSage: Unsupervised Video Representational Learning with Graph Convolutional Networks个人论文笔记
文章图片

每层在做了聚集和转换操作后的输出都会做一个normalize标准化,neighbor sampling(Inductive representation learning on large graphs-GraphSage)。另外带有自注意力机制的GCN(Graph Attention Networks)也在本文中探索
带自注意力的GCN:计算每层更新视频d维特征之间(视频之间)的注意力系数和一个triplet loss
LiteVidSage:若两个视频的d维特征(标准化后的)之间的欧几里和距离(与余弦相似性成比例)小于一个阈值,则连接这两个视频节点;这样定义的距离可以导致不同种类的视频之间的边界更加清晰,使得视觉上相似的视频的特征经过转换后更加的相近
VidSage:不仅连接相似的视频,而且在graph图中融入视频语义;对于每一个视频以一定的帧频均匀取样图片帧,对这些图片进行成品的目标检测,然后把检测后的物体聚集在一起
视频分类|VidSage: Unsupervised Video Representational Learning with Graph Convolutional Networks个人论文笔记
文章图片

(Ou为视频u中检测到的所有物体)
视频分类|VidSage: Unsupervised Video Representational Learning with Graph Convolutional Networks个人论文笔记
文章图片

视频分类|VidSage: Unsupervised Video Representational Learning with Graph Convolutional Networks个人论文笔记
文章图片

视频分类|VidSage: Unsupervised Video Representational Learning with Graph Convolutional Networks个人论文笔记
文章图片

本文中alpha=0.7,beta=0.3,分别用于控制视觉连接和语义连接的贡献
3.4训练
模型仅两层(防止过度平滑),V100*1,cosine decay(最大值为10-5),10个epoch线性warm-up, dropout概率为0.5, batchsize=512
3.5推理
对于一个测试集的视频,首先通过预训练的Inception v1提取图像特征,然后聚集为视频特征;然后在均匀取样的图片帧上进行目标检测再把检测出的物体聚集在一个list序列中;然后连接该视频节点和离其最近的邻近节点或是在Wuv权重较好的节点;然后将这些节点的特征矩阵进行转换transform得到最后的特征矩阵
4 实验
4.1 评价标准
mAP:AP为precision-recall曲线下的估计面积;mAP对每个class的AP进行平均
top-k accuracy
4.2 动作识别(action recognition)
YouTube-8m:含有35000小时的视频,26亿的预计算特征,3862类;在mAP标准下Sota
4.3 活动识别(activity recognition)
MiT:800K个视频,30s每个视频;表现低于i3d,比assemblenet还有些距离
Charades:800K个训练视频,33900个验证视频(339类);在Youtube-8m的VidSage表现远超除assemblenet的其他视频分类网络,距离assemblenet两个多百分点;
概述:简单来说,本文主要是通过Inception v1和GNN提取更加丰富内容的特征放入一个简单视频分类网络进行训练,从而得到更好的分类结果;具体操作是对每个视频的每帧都进行预训练Inception v1的特征提取得到帧数个1024维向量,然后取平均得到一个1024维向量特征代表此视频;再对每个视频进行均匀取样采集一定帧数的图片,进行带预训练权重的目标探测,每个视频探测出来的物体形成一个list序列;欧几里何距离计算得到距离相近的视频特征,目标探测出来物体序列相似的视频特征,与该视频形成一个特征矩阵放入GNN进行训练(不断提取有用特征和结合局部全局特征),最后得到(丰富表征)特征矩阵放入一个简单的视频分类网络进行训练测试、
遗漏细节:(主要来源于GraphSage论文-Inductive Representation Learning on Large Graphs)输入到GNN的特征数组为所有视频的1024维特征组成特征矩阵;AGGR本文中使用的是sum;在每个loop中,对于特征矩阵中的每个视频的特征的更新采样固定个数的均匀采样满足要求的邻近视频,本文中使用了两层GNN,第一层每个视频均匀采样25个满足要求(如两个特征向量欧几里得距离小于某个值)的其他视频,第二层每个视频均匀采样10个满足要求的邻近的其他视频(即K=2,较大的K导致计算量的指数上升,虽然K每加1都会导致0-5%的表现提高;越大的邻近采样样本量也存在减少的边际效应);由于每个节点的邻近节点过多,GraphSage会对每个节点的邻近节点进行一个下采样以至于没有节点的邻近节点数目大于128
【视频分类|VidSage: Unsupervised Video Representational Learning with Graph Convolutional Networks个人论文笔记】下列为对GraphSage进行minibatch训练的伪代码
视频分类|VidSage: Unsupervised Video Representational Learning with Graph Convolutional Networks个人论文笔记
文章图片

    推荐阅读