Self-Attention Network for Skeleton-based Human Action Recognition

摘要

目前,基于骨架序列的动作识别大多都是用CNN,RNN,Graph-based CNN作为模型的,但是现在的问题是,这些模型都无法捕捉到我们视频的长期联系信息。为了能够让模型有更好的表示,作者提出了3种类型的Self-Attention网络(SAN),分别是SAN-V1,SAN-V2,SAN-V3。SAN 有比较强的提取高阶长期语义信息的能力。基于此,作者还加入了Temporal Segment Network(TSN)来提高模型的能力。

在这里插入图片描述

介绍

在提取骨架序列信息时,现有模型一般都是

  1. 利用RNN来提取时序上的动态信息
  2. 利用CNN来提取某一帧的骨架序列信息(这里一般是将3D骨架当作一个2D图像,即坐标当作通道)
  3. 将骨架序列构建为图模型,GCN

但是这3种方法都有一个缺点:

这些操作无论在空间还是在时间上都是基于邻接点的局部操作

文章模型概述:

本文作者提出了一个Self-Attention Network(SAN)来解决以上的问题,并且能够得到更好的特征信息。

  1. 原始特征信息需要首先经过Encoder层,提取出encoded 特征信息。

  2. Encoded signals 再输入到SAN-Variants,计算序列每一个位置的关系密切层度。

  3. 结构化的SAN结果综合在一起,能够更好的捕捉更高层的语义理解信息。

本篇文章主要贡献:

  1. 为了从人体骨骼序列中提取到更加有效的深层语义关系,作者提出了SAN-Variants(SAN-V1,SAN-V2 and SAN-V3)
  2. 将SAN-Varants与Temporal Segment Network(TSN)相结合,提升了模型的表现。
  3. 可视化自注意力下的各帧联系紧密程度。
  4. 在当先的两大数据集上取得SOTA

Self-Attention Network

本节简要回顾Self-Attention Network

SAN是用来计算表征输入序列任意位置之间的联系程度。这篇文章的SAN机制参考了之前这篇文章。即该注意力函数也包含了query A Q A_Q AQ,keys A K A_K AK,values A V A_V AV,这里query,keys都有相同的维度 d k d_k dk,values以及output有相同的维度 d v d_v dv.
A t t e n t i o n ( Q , K , V ) = s o f t m a x ( Q K T d K ) V Attention(Q,K,V)=softmax(\frac{QK^T}{\sqrt{d_K}})V Attention(Q,K,V)=softmax(dK QKT)V

这里的 d k \sqrt{d_k} dk 是一个缩放因子,目的在于起调节的作用,使得内积不易过大

Muti-head attention:

多头attention:

  1. 对query,key,value进行线性变换
  2. 输入到缩放点积attention机制,重复做h次,每次的输入为线性变换后的原始输入,这里,多头就是指做多次attention之后进行拼接,每一次算一个头,每次Q、K和V的线性变换参数W是不一样的;
  3. 最后,将拼接后的模型做一次线性变换,得到的值为多头attention的结果。可以看出,多头attention与传统的attention区别在于计算了h次,这样可以从不同的维度和表示子空间里学习到相关的信息,可通过attention可视化机制来验证。

同时本篇文章还做了残差连接、layer normalization。

在这里插入图片描述

Approach

该模型是基于SAN的,并且在前面需要有一个Encoder,在这里作者采用了简单的非线性操作或者CNN操作来原始的关节序列进行一个编码,得到encoded 特征。

在这里原始关节序列有两个,即Position Data 、Motion Data.

Raw Position and Motion Data

Position Data:

原始的关节点序列数据。定义为: x p ∈ R F ∗ J ′ ∗ C x_p \in R^{F *J^{'}*C} xpRFJC

其中

F表示帧数

C表示每个节点的坐标数

J ′ = S ∗ J J'=S*J J=SJ,S表示在一帧画面中有人数,J表示每个人的节点个数。所以在这里 J ′ J' J

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
"Channel-wise Topology Refinement Graph Convolution for Skeleton-Based Action Recognition" 是一篇关于基于骨架的动作识别的论文。如果要提出改进方法,可以考虑以下几个方向: 1. 模型结构改进:可以尝试改进论文中提出的Channel-wise Topology Refinement Graph Convolution模块。例如,可以探索更复杂的图卷积模型结构,引入更多的注意力机制或者跨层连接,以提高模型对骨架数据的建模能力。 2. 数据增强和预处理:骨架数据可能存在缺失或者噪声,可以尝试使用数据增强技术(如旋转、平移、缩放)来增加数据的多样性和鲁棒性,或者使用预处理技术(如滤波、插值)来处理数据中的噪声和缺失。 3. 图结构优化:可以尝试优化骨架数据的图结构表示。例如,可以使用图剪枝算法来去除冗余的边或节点,或者使用图生成算法来自动构建更准确的图结构。 4. 跨模态信息融合:可以考虑将骨架数据与其他传感器数据(如深度图像或RGB图像)进行融合。通过融合不同模态的信息,可以提高对动作的理解和识别能力。 5. 模型训练优化:可以探索更有效的模型训练方法,例如引入更合适的损失函数或者优化算法。此外,可以尝试使用迁移学习或领域自适应的方法,将从其他相关任务或领域中学到的知识迁移到骨架动作识别任务中。 以上是一些可能的改进方向,具体的改进方法需要根据具体问题和实验结果来确定。同时,也可以参考相关领域的最新研究和技术进展,以获取更多的启发和创新点。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值