《入门学习.docx》由会员分享,可在线阅读,更多相关《入门学习.docx(20页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、入门学习|凯隐责编|Jane出品|AI科技大本营idrgznai100【导读】图卷积网络GraphConvolutionalNetworkGCN是近年度来逐渐流行的一种神经网络构造。不同于只能用于网格构造grid-based数据的传统网络模型LSTM以及CNN图卷积网络可以处理具有广义拓扑图构造的数据并深化开掘其特征以及规律例如PageRank引用网络、社交网络、通信网络、蛋白质分子构造等一系列具有空间拓扑图构造的不规那么数据。相比于一般的拓扑图而言人体骨骼拓扑图具有更加良好的稳定性以及不变性因此从2018年度开场就有许多学者尝试将图卷积网络应用到基于人体骨骼的行为识别领域来也获得了不错的成果
2、。下面就让我们来深化解析一下什么是图卷积网络和它在行为识别领域的最新工作进展吧什么是图graph为什么要研究GCN我们知道CNN在处理图像数据时具有很强的特征抽取才能以及整合才能这得益于卷积核(kernel,orfilter)的参数分享机制以及加权平均机制。卷积本质上就是一种加权求以及的经过而卷积核的参数就是不同像素点对应的权重并且不同的图片都分享同一个卷积核这使得CNN可以通过对卷积核参数的迭代更新来隐式的学习图像中具有的像素排列规律进而学习到不同的形状特征以及空间特征。但值得注意的一点是CNN所处理的数据都具有规那么的网格构造也就是排列很整齐的矩阵具有EuclideanStructure例
3、如RGB图片图1。假如要将CNN应用于非图像领域就必须将数据组合为规整的网络构造才能作为CNN的输入。例如在18年度之前的行为识别研究中常用的方法就是以一定的顺序将一个动作的关节坐标序列转换为一张RGB图片进而将动作识别工作转化为图像识别工作。图1规那么空间构造数据然而现实生活以及科学研究中有很多数据都不具备完好的矩阵构造相反更多的是以一定的连接关系聚合在一起如图2所示。社交网络通信网络互联网络等都具有类似的构造。图2社交网络拓扑图类似这样的网络构造就是图论中所定义的拓扑图。更一般的图就是指图论中用顶点以及边建立相应关系的拓扑图。我们可以用一个点以及边的集合来表示图G(E,V)其中E表示边的集
4、合V表示顶点的集合。那么对于这种具有拓扑图构造的数据而言CNN处理起来是非常困难的但也不是没有方法哦而且通常不能很好的抽取节点与节点之间的连接关系信息是否相连这也是我们研究GCN的重要原因。当然根本的原因还是在于数据的多样性广义上来讲任何数据在赋范空间内都可以建立拓扑关联谱聚类就是应用了这样的思想。所以讲拓扑连接是一种广义的数据构造GCN有很大的应用空间。图卷积操作怎样进展呢目前有两种类型的图卷积操作一种是基于空域的图卷积另一种是基于谱域的图卷积这里着重介绍第一种。前面我们提到卷积操作的本质意义就是对一个范围内的像素点进展加权求平均这能有助于提取空间特征那么怎样将这种思想应用到拓扑图上呢我们可
5、以换一种方式来理解卷积操作如图3对于featuremap蓝色局部中的一个点红色其特征值实际上是周围所有像素点将特征值传播到中心点后进展加权平均这种操作等效于传统的卷积操作只不过我们人为的为特征添加了一个传播方向(边)将每个像素点当成顶点进而在图构造上再次定义了卷积操作。图3卷积操作的另一种理解进一步的对于广义拓扑图构造的数据可以以按照这种思想来定义卷积操作如图4所示将每个节点的邻居节点的特征传播到该节点再进展加权平均就可以得到该点的聚合特征值只不过在CNN中我们将这个聚合特征值当做了featuremap中的一个点而在GCN中没有featuremap的概念我们直接将这个聚合特征值作为传播到下一层
6、的特征值。蓝色局部就是图卷积操作对应的kernel这里是为了理解才画出这个蓝色区域在GCN中也没有kernel的概念这也是因为图是不规那么的。类似于CNN图卷积也采用分享权重不过不同于CNN中每个kernel的权重都是规那么的矩阵按照对应位置分配图卷积中的权重通常是一个集合。在对一个节点计算聚合特征值时按一定规律将介入聚合的所有点分配为多个不同的子集同一个子集内的节点采用一样的权重进而实现权重分享。例如对于图4我们可以规定以及红色点间隔为1的点为1邻域子集间隔为2的点为2邻域子集。当然可以以采用更加复杂的策略例如按照间隔图重心的远近来分配权重。权重的分配策略有时也称为label策略对邻接节点分
7、配labellabel一样节点的分享一个权重。到这里想必你已经发现了其实图卷积操作就是传统的卷积操作在拓扑图上的概念延伸以及转移通过比照二者你能更好的学习到图卷积网络的精华。图4拓扑图上的卷积操作特征在层与层之间的传播方式可以用公式表示如下其中Hi是第i层的特征矩阵当i0时H0就表示输入图的节点特征矩阵。A是输入图的邻接矩阵Wi表示第i层的权重矩阵。表示激活函数。通过邻接矩阵左乘特征矩阵可以实现特征的聚合操作然后再右乘权重矩阵可以实现加权操作。权重矩阵W以及邻接矩阵H是用图卷积做行为识别工作时的重点研究对象。邻接矩阵的例如如下列图图5邻接矩阵例如假如两个节点相邻那么在矩阵中对应位置为1否那么为
8、0。这是一种非常根底的定义不同的行为识别工作会在此根底上设计不同的变体定义。概括的来讲图卷积操作就是将每个节点的特征与其邻居节点的特征加权平均后传播到下一层。这种图卷积操作称为在空域上的图卷积有如下几个特点1.随着层数的加深每个节点能聚合到的特征越远也就是感受野越大。2.权重是分享的不会详细到每个节点这以及传统CNN一样。直观的理解假如权重是因节点而不同的那么一旦图构造发生变化权重就会立即失效3.每个顶点的邻居节点数可能不同这导致邻居节点多的顶点的特征值更显著。4.邻接矩阵在计算时无法将节点自身的特征包含到聚合特征值中。此外为了克制空域图卷积的缺点学者们提出了谱域上的图卷积大概思想是利用图的拉
9、普拉斯矩阵以及傅里叶变换来进展卷积操作。基于谱域的图卷积目前在行为识别中应用较少并且原理非常复杂这里不做详细介绍有兴趣的同学可以浏览相关文章。GCN在行为识别领域的应用行为识别的主要任务是分类识别对给定的一段动作信息例如视频图片2D骨骼序列3D骨骼序列通过特征抽取分类来预测其类别。目前(18年度过后)基于视频以及RGB图片的主流方法是two-stream双流网络而基于骨骼数据的主流方法就是图卷积网络了。人体的骨骼图本身就是一个拓扑图因此将GCN运用到动作识别上是一个非常合理的想法。但不同于传统的图构造数据人体运动数据是一连串的时间序列在每个时间点上具有空间特征而在帧于帧之间那么具有时间特征怎样
10、通过图卷积网络来综合性的开掘运动的时空特征是目前的行为识别领域的研究热点。笔者选取了自18年度以来将GCN以及行为识别相结合的代表性工作用于讨论并分析这些工作的核心思想和在此根底上可以尝试的idea。 1SpatialTemporalGraphConvolutionalNetworksforSkeleton-BasedActionRecognition(AAAI,2018)(cv,88.3%,表示在NTURGBD数据集上cross-view验证结果下同)主要奉献1.将图卷积网络扩展到时空域称为时空图卷积网络ST-GCN。对于每个关节而言不仅考虑它在空间上的相邻关节还要考虑它在时间上的相邻关节也
11、就是讲将邻域的概念扩展到了时间上。2.新的权重分配策略文章中提到了三种不同的权重分配策略图(b)唯一划分将节点以及其1邻域节点划分到一样的子集中使他们具有一样的label自然也就具有一样的权重。这样的话每个kernel中的权重实际上就是一个1*N的向量N是节点的特征维数。图(c)按间隔划分将节点自身划分为一个子集1领域划分到一个子集。每个kernel的权重是一个2*N的向量。图(d)按节点与重心间隔划分间隔重心更近相对于中心节点的1邻域节点为一个子集间隔重心更远的1邻域节点为一个子集中心节点自身为1个子集。每个kernel的权重是一个3*N的向量。经过测试发现第三种策略效果最好这是因为第三种策
12、略实际上也包含了对末肢关节赋予更多关注的思想通常间隔重心越近运动幅度越小同时能更好的区分向心运动以及离心运动。核心思想1.将图卷积扩展到了时域上进而更好的开掘动作的运动特征而不仅仅是空间特征。2.设计了新的权重分配策略能更加差异化地学习不同节点的特征。3.合理的运用先验知识对运动幅度大的关节给予更多的关注潜在的表达在权重分配策略中。 2DeepProgressiveReinforcementLearningforSkeleton-basedActionRecognitionCVPR,2018(cv,89.8%)主要奉献1.首先通过深度渐进式强化学习(DPRL)用类似蒸馏的方法逐步得从输入的动作
13、帧序列中挑选最具识别力的帧并忽略掉那些模棱两可的帧这是一种类似于lstem中的attention的机制只不过注意力只放在了时域上。对应的网络是framedistillationnetwork(FDNet)。2.将FDNet的输出作为GCN的输入用于动作识别。不同于传统的骨骼图本文还定义了一些特殊的骨骼连接如下列图不仅包含了骨架的肢节连接实线为了开掘那些没有直接连接的关节之间的关系还定义了一些重要关节之间的间接连接虚线。例如系鞋带手部关节以及脚部关节会有亲密合作但他们并没有在骨骼图中直接相连间隔较远需要经太多层的图卷积两个关节的特征才会互相传播给对方因此可以通过额外建立间接连接来开掘其中的关系。
14、这个思想表达在邻接矩阵上就是将邻接矩阵中一局部本来值为0的元素改为其他大于0的值。此外观察上图你会发现定义了虚线连接的那些关节大都是间隔重心较远的关节这是因为在大局部动作中距重心越远的关节运动幅度越大其蕴含的信息越多。核心思想1.attention机制在时域上选择具有代表性识别才能更强的帧。2.对邻接矩阵进展改良不再是单一的0-1布尔矩阵对没有直接连接的节点之间也赋予一定的权重。3.合理运用先验知识对末肢关节赋予更多的关注表达在邻接矩阵上。 3Part-basedGraphConvolutionalNetworkforActionRecognition(BMVC,2018)(cv,93.2)主
15、要奉献1.用几何特征GeometricFeatures以及运动特征KinematicFeatures来代替原始的空间三维坐标作为每个节点的原始特征。如上图中的图(a)。2.将人体骨架图按一定的原那么划分为多个不同的子图。对每个子图分别进展图卷积操作然后再通过一个交融函数将结果交融。详细思想是首先对于一个节点计算该节点与所属子图内的邻接节点的卷积值我们称之为根本卷积值。而对于所属子图外的邻接节点属于相邻的另一个子图首先计算该邻接节点的根本卷积值然后将二者的根本卷积值以一定的权重交融。这么做可以在很大程度上进步每个子图边缘节点的感受野直接覆盖到相邻子图同时对于每个子图的非边缘节点于其他子图不相连那
16、么需要屡次传播才能获取到其他子图节点的特征。本文测试了三种不同的划分策略分别是:图(b)按间隔重心的间隔分为中轴关节以及末肢关节两个局部。图(c)在图(b)的根底上进一步细化按照关节的上下位置分为4个局部。图(d)在(c)的根底上参加了左右关节的概念按左右再细分为6个局部。实验证明图(c)的划分方法结果最好这是因为假如子图数量太多会导致特征值得传播更困难而数量过少那么无法差异化地对待不同类型的关节。3.时空域卷积。不同于文章1本文采用的时空卷积策略是先对每一帧按照子图特征交融的方法进展卷积得到空域卷积结果然后在将空域卷积结果作为时域上的特征值再进展时域上的卷积。这么做实际上是扩大了计算量以及复
17、杂度但能开掘的时空信息也更全面不再局限于部分关节范围。核心思想1.定义了更加复杂的卷积策略不再是简单的邻域特征交融而是扩大了邻域的概念进而进步了节点的感受野。2.采用了分图策略有助于挖掘部分范围内的关节联络。通常这种策略我们称为part-based或者part-aware。3.定义了范围更广的时空卷积操作代价是计算量更大了。4.传统方法使用关节原始的坐标信息作为GCN的输入而这里采用更具代表性的两种不同类型特征作为输入可以进一步进步识别才能。 4Actional-StructuralGraphConvolutionalNetworksforSkeleton-basedActionRecogni
18、tion(arXiv,2019)(cv,94.2)顶会的文章真的是一年度比一年度复杂固然讲效果越做越好但是特征工程以及网络构造都非常复杂有时候纯粹是靠堆复杂度来提升结果并不能合理解释自己的网络构造而且这种工作也很难follow主要奉献提出了AS-GCN主要涉及了两种网络构造Action-link以及Structural-link。通过Action-link来开掘潜在的关节之间的联络通过structual-link来开掘骨骼图的高阶关系。1.Action-Link提取关节连接信息如图(c)Action-Link实际上就是每个关节以及其他所有关节的连接通过一个编码-解码器来学习这些连接的权重进而开
19、掘关节之间的潜在联络如下列图详细细节理解难度较大假如不深化研究可以忽略上图中左侧黄色以及紫色分别代表某一帧的原始的jointsfeatures以及linksfeatures将两种类型的特征反复迭代更新(encoder)可以实现特征在关节以及边中的流动传播最终得到一个概率权重矩阵。将这个矩阵以及该帧之前的所有时刻的帧信息结合起来通过一个decoder来预测下一时刻的关节位置。这样就能通过反向传播的方式来不断的迭代更新网络参数实现对网络的训练。在网络得到初步的训练后将decoder去掉只使用前半局部抽取A-link特征用于动作分类任务的进一步训练。2.Structural-link扩大节点感受野传
20、统的图卷积网络中每个节点只将自己的信息传播给邻居节点这会导致节点感受野较小不利于获取长间隔的连接信息。通过对邻接矩阵取一定次数的幂可以扩大感受野如图(b)。3.多任务处理将A-Link以及S-link加权结合起来作为GCN的输入。将GCN以及Temporal-GCN结合得到AS-GCN作为根本网络(Backbone)。接不同的后端网络可以分别实现分类功能以及预测功能如下列图核心思想1.从原始的坐标信息中提取出A-links特征信息作为输入特征具有更高的可识别度类似于工作3。2.通过对邻接矩阵取屡次幂来扩大节点的感受域。3.多个block叠加通过进步复杂度来进步识别才能。 5AnAttentio
21、nEnhancedGraphConvolutionalLSTMNetworkforSkeleton-BasedActionRecognition(CVPR,2019)(cv,95%,目前最好)主要奉献不同于前面介绍的工作本文没有采用GCN而是将骨骼图作为LSTM的输入通过注意力增强型图卷积LSTM网络AGC-LSTM来抽取图中具有的空间以及时间特征并且设计了专门的损失函数以及特殊的学习方法。核心思想探究不同的图处理方式LSTM具有很强的时序特征获取才能将其于图构造结合起来可以实现对时空特征的获取。 6SemanticGraphConvolutionalNetworksfor3DHumanPos
22、eRegression(arXiv,2019)本文的工作不是行为识别而是姿态估计。但笔者认为其中用到的一些方法非常有道理可以迁移到行为识别任务中。主要奉献在我们之前介绍的图卷积工作中GCN网络需要学习的通常都只有根本的权重矩阵上面公式中的W而对于邻接矩阵都是通过一些先验知识提早设置好的不会随着网络进展迭代变化。然而事实上邻接矩阵的本质也是权重只不过通常这个权重是我们根据一些先验的知识或规律提早设置好的因此本文提出假如能通过网络来学习邻接矩阵的权重也就是公式中的M是否能更好的做到对特征的抽取呢按照这个思路网络就需要学习两个不同的权重其中根本权重W在不同的图卷积层有不同的值那么邻接矩阵的权重M也应
23、该是在不同的层有不同的值。可能有小伙伴会问为什么不把M以及W结合到一起呢读一读原文你就能找到答案了这里只提供一种思路。核心思想额外添加一个针对邻接矩阵的权重让网络自己去学习自己的邻接矩阵。总结总的来讲在基于图卷积的行为识别工作以及类似的工作中研究重点在以下几个方面1.怎样设计GCN的输入用一些更加具有识别才能的特征来代替空间坐标作为网络输入。2.怎样根据问题来定义卷积操作这是非常硬核的问题。3.怎样设计邻接矩阵。4.怎样确定权重分配策略。Idea可是无价之宝不过还是共享出来有兴趣的同学可以以及我一起讨论。从前面的文章中我们可以发现邻接矩阵以及权重矩阵在GCN中非常重要其中权重矩阵通常情况下是不
24、随图的构造变化的也就是讲不仅在不同的节点之间分享还会在不同的图构造中分享这样GCN就能在不同构造的图上训练以及测试。但是行为识别工作是比拟特殊的因为人的骨架通常不会发生变化而且同一个数据集提供的骨架也是固定不变的这样的话我们就不用考虑GCN的在不同构造上的通用性转而将权重直接指派到每个关节也就是讲如今每个节点都有一个只属于自己的权重而不再依赖于label策略以及其他节点分享。这么做能让网络能更加差异化地对待每一个关节进而对那些具有更强识别才能的关节赋予更多的关注。此外自动学习邻接矩阵也是一个不错的思路只不过在代码实现上面难度会比拟大。基于空域的图卷积网络目前在NTURGBD数据集7上已经到达了
25、前所未有的高度要想再有所提升恐怕会很困难不过南洋理工大学roselab已经发布了新的NTU120数据集8而且越来越多的工作聚焦于基于2D骨骼的姿态识别与之相对应的Kinetic数据集也更有挑战性所以这个领域还是非常有研究价值以及前景的。此外谱图卷积在近年度也得到了很大的关注但就目前来看笔者只发现了一篇与姿态识别有关的文章是使用了谱图卷积的笔者认为主要是谱图卷积相对于空域图卷积而言复杂程度太高导致很多人望而却步但越是复杂的东西其性能相对也越好因此在下一篇文章中笔者将为大众详细剖析谱图卷积的原理和相关的行为识别工作从目前顶会文章的开展趋势来看工作都是越来越复杂的假如考虑冲击顶会就要重点研究第1个以
26、及第2个思路假如是次级一些的会议就可以从第3以及第4个思路入手。此外尽量follow一些已经在顶会上发表了的被同行检查过的文章和有源代码的文章这样可以有效降低工作难度。【Reference】 1Yan,S.,Xiong,Y.,Lin,D.(2018).SpatialTemporalGraphConvolutionalNetworksforSkeleton-BasedActionRecognition.AAAI. 2Tang,Y.,Tian,Y.,Lu,J.,Li,P.(2018).DeepProgressiveReinforcementLearningforSkeleton-basedActi
27、onRecognition.CVPR. 3Thakkar,K.(2018).Part-basedGraphConvolutionalNetworkforActionRecognition.BMVC. 4Li,M.,Chen,S.,Chen,X.,Zhang,Y.,Wang,Y.,Tian,Q.,Electric,M.(2019).Actional-StructuralGraphConvolutionalNetworksforSkeleton-basedActionRecognition.ar.Xiv. 5Si,C.,Chen,W.,Wang,W.,Wang,L.,Tan,T.(2019).An
28、AttentionEnhancedGraphConvolutionalLSTMNetworkforSkeleton-BasedActionRecognition.CVPR. 6Zhao,L.(n.d.).SemanticGraphConvolutionalNetworksfor3DHumanPoseRegression.Ar.Xiv. 7Shahroudy,A.,Liu,J.,Ng,T.-T.,Wang,G.(2016).NTURGBD:ALargeScaleDatasetfor3DHumanActivityAnalysis.CVPR.s:/doi.org/10.1109/CVPR.2016.
29、115 8LiuJ,ShahroudyA,PerezM,etal.(2019).NTURGBD120:ALarge-ScaleBenchmarkfor3DHumanActivityUnderstanding.arXivpreprintarXiv:1905.04757.*本文为AI科技大本营编译文章转载请微信联络1092722531精彩推荐6月29-30日2019以太坊技术及应用大会特邀以太坊创始人V神与以太坊基金会核心成员和海内外知名专家齐聚北京聚焦前沿技术把握时代机遇深耕行业应用共话以太坊2.0新生态。扫码或者点击浏览原文既享优惠购票推荐浏览代码有温度科技需向善点击浏览原文查看更多精彩内容。