2. 计算神经科学与类脑智能教育部重点实验室(复旦大学), 上海 200433;
3. 复旦大学 类脑智能科学与技术研究院, 上海 200433;
4. 复旦大学 计算机科学技术学院 上海市智能信息处理重点实验室, 上海 200433;
5. 复旦大学 信息科学与工程学院 微纳中心, 上海 200433;
6. 复旦大学 大数据学院, 上海 200433
2. Key Laboratory of Computational Neuroscience and Brain-inspired Intelligence, Ministry of Education (Fudan University), Shanghai 200433, China;
3. Institute of Science and Technology for Brain-inspired Intelligence, Fudan University, Shanghai 200433, China;
4. Shanghai Key Laboratory of Intelligent Information Processing, School of Computer Science, Fudan University, Shanghai 200433, China;
5. Micro Nano System Center, School of Information Science and Technology, Fudan University, Shanghai 200433, China;
6. School of Data Science, Fudan University, Shanghai 200433, China
计算机视觉是使用计算机及相关设备对生物视觉机制的一种模拟技术. 在图影资料剧烈增长的信息化时代, 如何智能感知和解读图影, 成为了计算机视觉领域重要的研究方向. 其中, 行为识别作为计算机视觉领域的一个重要应用分支, 已在智能监控[1]、异常行为检测[2]、人机交互[3]、视频预测[4]、医疗健康[5]等众多领域扮演着越来越重要的角色, 具有十分广阔的应用前景.
行为识别的实现方法可分为传统的机器学习方法和深度学习方法. 传统的机器学习方法的优势在于模型简单、分类速度快, 代表性的方法有iDT (improved dense trajectories)[6]算法, 其使用改进的特征编码方式来表征人体运动, 但基于密集的流场运算会产生高维数据特征, 这将大大增加存储开销. 而近10年, 基于神经网络的深度学习方法凭借模拟人类神经元的传递原理、复杂网络的设计、参数的反向传播机制以及端到端的架构使其成为直接输出结果的任意复杂函数逼近器, 逐渐成为了视觉任务的主流方法, 并且被证实比传统机器学习方法更加强大和鲁棒[7], 深度学习算法从而也被广泛运用到行为识别任务中. 而基于神经网络的行为识别主要分为两个过程: 特征表示与动作的感知及理解.
针对视频行为识别任务, 目前的深度学习方法可分为基于3D卷积神经网络(3D CNN)[8, 9]、长短记忆单元(LSTM)[10-12]及双流神经网络(Two-Stream CNN)[13-16]的行为识别模型. 其中3D CNN可以捕获时空特征, 这意味着它可直接对视频进行特征提取, 因此具有较好的识别性能, 但其需要训练大量数据的同时也会产生较高的计算开销. 而LSTM虽然具有处理时序数据的先天优势, 但其容易引起梯度消失且不能很好地学习时序之外的横向信息, 比如运动特征. Two-Stream CNN最早由Karpathy等人[14]提出, 它通过扩展CNN局部时空信息以达到时空域上的连通性, 并通过分析额外的运动信息对CNN预测性能的影响, 从而选择两个输入流进行不同分辨率特征的学习, 通过融合多尺度时空信息从而提高了网络的识别精度. 与此同时, 在基于视频的输入策略上, 以往的密集采样往往带来较高的计算量且未能对长时程行为进行有效建模, 而固定间距采样的堆帧并不能保证特征信息的有效利用, 从而不能有效提高网络的泛化能力.
针对以上问题, 本文首先在整体输入上采取时间稀疏分组随机采样策略[17], 从而保证有效信息的长时程覆盖. 同时创新性地提出基于时移(temporal shift, TS)[18]和片组注意力(split attention, SA)[19]模块融合的轻量型时空双流网络模型(TS-SA Net). 其中时移模块可以让模型在二维卷积的基础上学习到时序特征, 片组注意力机制则用于帮助网络“聚焦”有效区域, 从而产生更具分辨性的特征, 提高网络的行为识别能力. 目前我们在UCF101、HMDB51上分别取得了95.00%和72.55%的识别精度.
1 基于时移和片组注意力融合的时间分组双流网络(TS-SA Net) 1.1 TS-SA Net整体架构行为识别任务的本质是分类(classification)问题, 即给定一个待识别的样本
在本文提出的双流TS-SA 网络中, 针对待处理视频集
$ \begin{array}{l} P\left( {I_1^q,I_2^q,\cdots,I_p^q} \right) = H\left( {G\left( {F\left( {I_1^q,W} \right),F\left( {I_2^q,W} \right),\cdots,F\left( {I_p^q,W} \right)} \right)} \right) \hfill \end{array} $ | (1) |
其中,
对于深度神经网络来说, 数据集及数据的采样对结果十分重要, 其往往决定了网络的学习质量与效率. 在采样策略上, 虽然减少图像序列的输入能够直接降低计算量, 但这同时造成了行为内容本身的缺失, 尤其无法对长时程行为进行完整建模. 而密集的图像序列输入虽然能保证行为特征的完全捕获, 但大量的数据带来了高额计算, 使网络缓慢笨重. 而固定间隔的图像采样方法同样存在有效信息遗失的问题.
我们意识到, 对于包含特定行为的视频来说, 相邻帧所包含的信息是高度重叠的, 这为网络非密集输入条件下保持性能的稳定提供了事实基础. 基于此, 本文在输入策略上采用了稀疏分组随机采样方法.
如图1所示, 本文所提出的TS-SA Net使用时间稀疏分组随机采样的视频帧作为输入. 具体地, 我们将视频进行等间距地稀疏分离为
$ \begin{split} & P\left( {{T_1},{T_2},\cdots,{T_N}} \right) \\ & = H\left( {g\left( {F\left( {{T_1},W} \right),F\left( {{T_2},W} \right),\cdots,F\left( {{T_N},W} \right)} \right)} \right) \hfill \end{split} $ | (2) |
具体地,
$ L\left( {y,G} \right) = - \sum\limits_{i = 1}^C {{y_i}\left( {{G_i} - \log \sum\limits_{j = 1}^C {\exp {G_j}} } \right)} $ | (3) |
其中,
$ G = g\left( {F\left( {{T_1},W} \right),F\left( {{T_2},W} \right),\cdots,F\left( {{T_N},W} \right)} \right) $ | (4) |
实验中, 我们试验了多种不同的聚合函数
$ \frac{{\partial L\left( {y,G} \right)}}{{\partial W}} = \frac{{\partial L}}{{\partial G}}\sum\limits_{n = 1}^N {\frac{{\partial g}}{{\partial F\left( {{T_n}} \right)}}} \frac{{\partial F\left( {{T_n}} \right)}}{{\partial W}} $ | (5) |
具体实践中使用随机梯度下降(SGD)优化模型, 设置稀疏分组数的超参
1.3 片组注意力模块
以SK-Net[20]为代表的多路径(multi-path)注意力启发自人脑皮质神经元根据不同的刺激可动态调节自身的感受野, 是一种通过非线性地融合来不同分支下的核尺寸对应的特征来捕获不同比例的目标对象的动态选择注意机制. SE-Net[21]则通过重新定义通道间特征图谱的关系来实现“特征重标定”, 即对于不同通道的特征来说, 加强有效信息的权重并压缩无用信息的参与, 它属于一种通道层级的注意力机制——自适应地调整通道特征响应. 前者在ResNeXt[22]的基础上用不同分支对应的不同尺寸的卷积核减少计算量而维持性能不变, 后者建立了通道层级的注意机制, 可自适应地学习不同通道间的特征关系. 在面对深度学习中大量的矢量计算时, 基于多路径和通道的注意机制都只在通道维度对权值进行了重分配, 而未考虑特征图谱内的关系响应, 所以两者的提升效果有限.
本文采用基于残差块(residual block)[23]的多路径与特征注意结合的注意力映射方法, 使得注意力得以跨特征图谱运作, 图2展示的是一个片组注意力模块.
在RGB和光流分支网络中, 特征首先被分为几个基组(cardinal), 每一基组再划分为若干片组(split)(详细结构于图2、图3), K和R分别是基组数和片组数的超参, 因此特征组的总数为
具体地, 每个基组的映射算法设计为多个片组的元素(element-wise)加和结果, 因此第
$ {\hat U^k} = \sum\limits_{i = R\left( {k - 1} \right) + 1}^{Rk} {{U_i}} $ | (6) |
其中,
在每个基组中, 首先通过跨越空间维度的全局平均池化可以收集全局上下文信息, 如图3. 设
$ s_c^k{\text{ = }}\frac{1}{{H \times W}}\sum\limits_{i = 1}^H {\sum\limits_{j = 1}^W {\hat U_c^k\left( {i,j} \right)} } $ | (7) |
设
$ V_c^k = \sum\limits_{i = 1}^R {\alpha _i^k\left( c \right){U_{R\left( {k - 1} \right) + i}}} $ | (8) |
其中,
$ \alpha _i^k\left( c \right){\text{ = }}\left\{ {\begin{array}{*{20}{c}} {\dfrac{{\exp \left( {{\cal{G}}_i^c\left( {{s^k}} \right)} \right)}}{{\displaystyle\sum\nolimits_{j = 0}^R {\exp \left( {{\cal{G}}_j^c\left( {{s^k}} \right)} \right)} }},\;\;\;\;{\text{ if }}\;\;R > 1} \\ {\dfrac{1}{{1 + \exp \left( { - {\cal{G}}_i^c\left( {{s^k}} \right)} \right)}},\;\;\;\;{\text{ if }}\;\;R{\text{ = }}1} \end{array}} \right. $ | (9) |
其中, 权重映射函数
最后, 我们使用整合函数得到分块中加入了片组注意力映射的整体特征表达:
$ V = {\text{Contact}}\left( {{V^1},{V^2},\cdots,{V^K}} \right) $ | (10) |
借鉴ResNet的恒等映射机制, 最终分块输出为Y:
$ Y = V + {\cal{T}}\left( X \right) $ | (11) |
其中,
对于视频分类任务, 传统的2D CNNs由于被设计适应基于二维图形的抽象学习, 因此无法做到对视频(行为)进行时空建模. 3D CNNs虽然可以直接对视频进行时空建模, 但其对硬件的计算能力要求较高, 效率较低.
为了能在不增加计算量的前提下提高网络对时空信息的建模能力, 我们在基于时间稀疏分组随机采样策略的双流网络中加入时移模块(temporal shift module). 以基于瓶颈结构的ResNet为例, 我们在每个残差块中插入时移模块, 如图4所示.
在基于图像特征的抽取与传递过程中, 网络中的特征图谱通常可以表达为
在特征抽取过程中, 时移相当于将卷积分为数据移动和计算两步. 如在1D 卷积过程中, 设X为一维向量,
$ \begin{array}{l} {Y_i} = Conv\left( {W,X} \right) = {w_1}{X_{i - 1}} + {w_2}{X_i} + {w_3}{X_{i + 1}} \end{array} $ | (12) |
时移操作相当于把式(12)分解为两步:
1) 平移置换:
$ X_i^{ - 1} = {X_{i - 1}},X_i^0 = {X_i},X_i^{ + 1} = {X_{i + 1}} $ | (13) |
2) 乘积累加运算:
$ Y = {w_1}{X^{ - 1}} + {w_2}{X^0} + {w_3}{X^{ + 1}} $ | (14) |
由于行为分析涉及视频帧(二维图像), 我们把时移模块应用到了2D卷积中, 可以看出时移模块相较原始模型不会额外增加计算开销. 在平移置换的具体实践中, 我们将前
实验表明, 大幅增加平移时的通道比例以增加当前帧中混合的前后帧的特征信息不会提高网络的时序建模能力, 相反会损害网络性能. 这是由于过多的置换会损害当前帧的正常信息表达, 过度的信息交叉对网络学习造成了负面干扰. 同时我们也扩展研究了时移模块的一些变体, 实践发现, 过大的平移幅度如上下移动两个步长(+2、−2)难以帮助网络优化, 将特征图谱以相同比例在所有时刻上进行置换也无益于性能提升. 基于本文实验, 上下平移
实验环境为PyTorch 1.4.0, 显卡设备为Tesla V100-SXM2 (显存为32 GB), 处理器设备为英特尔至强4110 (2.1 GHz, 8核), 操作系统为CentOS 7.5.1804.
为了说明算法的有效性和鲁棒性, 实验数据集包括UCF101数据集[16]和HMDB51数据集[24]. 其中UCF101共包含101类的13320个主要内容为人类体育运动的短视频; HMDB51则主要来源于网站视频或电影, 共有51类人体行为的6 849个视频. 对于这两个公共数据集, 本文均使用其官方提供的划分方式 (Split 1)作为训练计划, 训练集和验证集的比例分别为2.5:1 (9537:3783)和2.3:1 (3570:1530).
在数据预处理阶段, 抽取RGB图像和光流图像作为空域和时域特征输入, 同时将数据以多位点随机剪裁的方式(并调整至224×224), 结合随机水平翻转(概率为0.5)进行数据增强.
在训练过程中, 采用标准交叉熵损失的学习策略, 在总数为50次的迭代中设置前20轮的学习率为0.001, 在第20和40轮分别降为原来的0.1倍, 批处理大小为90, 动量为0.9, 分组采样数为8, 权重衰减为
在测试阶段, 统一在全像素图像上进行左中右方式剪裁以增强测试数据. 并以1:1.5的比例拟合RGB网络和光流网络的判别分数作为双流TS-SA网络的最终结果.
2.2 对比实验各经典算法准确率对比如表1所示, 表1中UCF101与HMDB51数据集下的除本文方法外的数据(准确率)均来自于Wang等人[17]的实验. 从表1中可以看出, iDT[6]结合Fisher Vector作为最好的传统特征抽取方法之一效果明显, 但在UCF101和HMDB51上的识别精度可看出其与深度学习方法尚有差距. Two-Stream[15]作为经典的原始双流网络, 在两个数据集上的识别效果提升明显. C3D[9]作为更适合学习时空特征的代表网络并没有在精度上超过Two-Stream, 推测是由于单一地使用RGB图像还不能够很好地对外观和运动特征进行统一建模.
在视频级计算量(FLOPs)上, 均以批处理大小为1, 视频帧数为50, 分组采样数为8为前提进行RGB网络计算量统计. 本文算法在视频级计算量上由于时间稀疏分组随机采样策略优势明显. 因时移模块与分组注意力模块的加入, 模型在参数量上对比原始的网络有小幅增加, 但考虑到模型性能的提升与整体计算量的下降, 本文算法依旧具有较强优势.
2.3 消融实验为了进一步验证本文提出的策略的优势及有效性, 本文针对算法策略、片段聚合方式以及主干网络的差异进行了消融实验.
为了验证与分析第1章中算法策略的有效性及相对重要性, 实验采用ResNet-50为主干网络, 在两个数据集上对比了时间稀疏分组随机采样策略(表2中简写为STGRS)、片组注意力模块(表2中简写为SA)、时移模块(表2中简写为TS)及其组合的准确率, 具体见表2.
由表2可知, 对比密集采样策略, 时间稀疏分组随机采样策略的优势明显, 在不增加计算量的同时成功对行为进行了长时程建模, 在UCF101、HMDB51数据集上分别提升了5.89%和3.33%的识别精度.
在分组策略的基础上, 分别只添加时移模块和注意力模块, 由表2可见两种策略在3个数据集上均能展现出对网络学习性能的优化. 其中片组注意力模块加入的结果令人瞩目, 在UCF101、HMDB51数据集上的识别精度分别提升了6.40%、1.93%, 这说明多路径和特征图谱注意结合的片组注意力机制能在网络中强化学习时的重要特征.
单独添加时移模块较单独增加片组注意力模块的提升较低, 但时移模块与片组注意力模块的组合在3个数据集上分别提升了6.86%和2.19%, 说明两种策略的组合能最优化双流网络的识别性能.
接着, 文章试验了片段间不同融合方式对结果的影响. 如表3所示, 实验依次比较了最大值融合、平均融合及加权平均融合对精度的影响. 由于平均融合综合考虑了不同时序处的信息, 效果最佳.
最后, 由于不同的网络有着不同的学习能力, 一般情况下, 网络越深或越复杂, 意味着其载体容量越大, 所以学习能力越强. 本文对比了不同主干网络下基于两个数据集的识别性能, 结果如表4所示.
由表4可知, 在保证片段采样数、批处理大小等可控超参数一致的条件下, 本文提出的基于ResNet-50的TA-SA网络以更轻量的网络结构超过了使用分组卷积改进了的ResNeXt-101[22]网络和融合了压缩与激励(squeeze and excitation, SE)模块[21]的SE-ResNet-101网络, 充分说明本文算法可以在行为识别任务中实现高效、快速、高准确率的识别效果.
3 结论与展望本文提出了基于时移和片组注意力融合的时间分组双流深度网络并全面评估了各个模块及其组合的性能. 实验结果表明, 对视频数据进行时间稀疏分组随机采样策略能对行为内容进行长时程高效建模, 且时移模块和片组注意力机制的组合能有效捕获时空特征, 提升网络泛化性能. 相较目前多数行为识别算法, 本文算法在公共数据集中被证明更具有普适性和鲁棒性. 为了进一步提高算法的识别性能, 今后还可从更高效的主干网络优化及多模态特征融合的方向进行深入研究.
[1] |
Ben Mabrouk A, Zagrouba E. Abnormal behavior recognition for intelligent video surveillance systems: A review. Expert Systems with Applications, 2018, 91: 480-491. DOI:10.1016/j.eswa.2017.09.029 |
[2] |
Dhiman C, Vishwakarma DK. A robust framework for abnormal human action recognition using R-transform and Zernike moments in depth videos
. IEEE Sensors Journal, 2019, 19(13): 5195-5203. DOI:10.1109/JSEN.2019.2903645 |
[3] |
Ahmad Z, Khan N. Human action recognition using deep multilevel multimodal (M2) fusion of depth and inertial sensors
. IEEE Sensors Journal, 2020, 20(3): 1445-1455. DOI:10.1109/JSEN.2019.2947446 |
[4] |
Vyas S, Rawat YS, Shah M. Multi-view action recognition using cross-view video prediction. Proceedings of the European Conference on Computer Vision. Glasgow: Springer, 2020. 427–444.
|
[5] |
Venkataraman V, Turaga P, Lehrer N, et al. Attractor-shape for dynamical analysis of human movement: Applications in stroke rehabilitation and action recognition. Proceedings of the 2013 IEEE Conference on Computer Vision and Pattern Recognition Workshops. Portland: IEEE, 2013. 514–520.
|
[6] |
Wang H, Schmid C. Action recognition with improved trajectories. Proceedings of the 2013 IEEE International Conference on Computer Vision. Sydney: IEEE, 2013. 3551–3558.
|
[7] |
O’Mahony N, Campbell S, Carvalho A, et al. Deep learning vs. traditional computer vision. Proceedings of the Science and Information Conference. Las Vegas: Springer, 2019. 128–144.
|
[8] |
Kay W, Carreira J, Simonyan K, et al. The kinetics human action video dataset. arXiv: 1705.06950, 2017.
|
[9] |
Tran D, Bourdev L, Fergus R, et al. Learning spatiotemporal features with 3D convolutional networks. Proceedings of the 2015 IEEE International Conference on Computer Vision. Santiago: IEEE, 2015. 4489–4497.
|
[10] |
Sharma S, Kiros R, Salakhutdinov R. Action recognition using visual attention. arXiv: 1511.04119, 2015.
|
[11] |
Ng JYH, Hausknecht M, Vijayanarasimhan S, et al. Beyond short snippets: Deep networks for video classification. Proceedings of the 2015 IEEE Conference on Computer Vision and Pattern Recognition. Boston: IEEE, 2015. 4694–4702.
|
[12] |
Li ZY, Gavrilyuk K, Gavves E, et al. Videolstm convolves, attends and flows for action recognition. Computer Vision and Image Understanding, 2018, 166: 41-50. DOI:10.1016/j.cviu.2017.10.011 |
[13] |
Feichtenhofer C, Pinz A, Zisserman A. Convolutional two-stream network fusion for video action recognition. Proceedings of the 2016 IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas: IEEE, 2016. 1933–1941.
|
[14] |
Karpathy A, Toderici G, Shetty S, et al. Large-scale video classification with convolutional neural networks. Proceedings of the 2014 IEEE Conference on Computer Vision and Pattern Recognition. Columbus: IEEE, 2014. 1725–1732.
|
[15] |
Simonyan K, Zisserman A. Two-stream convolutional networks for action recognition in videos. Proceedings of the 27th International Conference on Neural Information Processing Systems. Cambridge: MIT Press, 2014. 568–576.
|
[16] |
Soomro K, Zamir AR, Shah M. UCF101: A dataset of 101 human actions classes from videos in the wild. arXiv: 1212.0402, 2012.
|
[17] |
Wang LM, Xiong YJ, Wang Z, et al. Temporal segment networks: Towards good practices for deep action recognition, Proceedings of the European Conference on Computer Vision. Floren: Springer, 2016. 20–36.
|
[18] |
Lin J, Gan C, Han S. TSM: Temporal shift module for efficient video understanding. Proceedings of the 2019 IEEE/CVF International Conference on Computer Vision. Seoul: IEEE, 2019. 7082–7092.
|
[19] |
Zhang H, Wu CR, Zhang ZY, et al. ResNest: Split-attention networks. arXiv: 2004.08955, 2020.
|
[20] |
Li X, Wang WH, Hu XL, et al. Selective kernel networks. Proceedings of the 2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Long Beach: IEEE, 2019. 510–519.
|
[21] |
Hu J, Shen L, Albanie S, et al. Squeeze-and-Excitation networks. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2020, 42(8): 2011-2023. DOI:10.1109/TPAMI.2019.2913372 |
[22] |
Xie SN, Girshick R, Dollár P, et al. Aggregated residual transformations for deep neural networks. Proceedings of the 2017 IEEE Conference on Computer Vision and Pattern Recognition. Honolulu: IEEE, 2017. 5987–5995.
|
[23] |
He KM, Zhang XY, Ren SQ, et al. Deep residual learning for image recognition. Proceedings of the 2016 IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas: IEEE, 2016. 770–778.
|
[24] |
Kuehne H, Jhuang H, Garrote E, et al. HMDB: A large video database for human motion recognition. Proceedings of the 2011 International Conference on Computer Vision. Barcelona: IEEE, 2011. 2556–2563.
|