1.针对的问题

  在没有帧级注释的情况下,W-TAL方法很难识别假阳性的动作建议,并生成具有精确时间边界的动作建议。具体来说,之前的W-TAL方法所面临的最关键的问题之一是缺乏排除假阳性动作建议的能力。如果没有帧级注释,它们会定位不一定与视频级标签对应的动作示例。例如,模型可能仅通过检查场景中是否存在水来错误定位动作“游泳”。因此,有必要利用更细粒度的监督来指导学习过程。另一个问题在于动作建议的制定。在以前的方法中,动作建议是通过使用一个固定的阈值对激活序列进行阈值化来生成的,该阈值是根据经验预设的。它对动作建议的质量有重大影响:高阈值可能会导致动作建议不完整,而低阈值可能会带来更多误报。但如何走出这一困境却鲜有研究。

2.主要贡献

  -为W-TAL引入了双流共识网络(TSCN)。所提出的TSCN使用迭代细化训练方法,其中由前一迭代中的late fusion注意力序列生成的伪ground-truth可以为当前迭代提供更精确的帧级监督。

  –提出了一个注意力归一化损失函数,它迫使注意力像二进制选择一样,从而提高了阈值方法生成的动作建议的质量。

  –在两个标准baseline(即THUMOS14和ActivityNet)上进行了大量实验,以证明所提出方法的有效性。TSCN显著优于之前最先进的W-TAL方法,甚至与最近一些完全监督的TAL方法取得了相当的结果。

3.方法

  提出的TSCN具有一种迭代优化训练方法,其中帧级伪ground-truth被迭代更新,并用于为改进的模型训练和误报动作建议消除提供帧级监督。此外,提出了一种新的注意力归一化损失,以鼓励预测的注意力权重接近二进制选择,并促进动作实例边界的精确定位。

  模型流程如下:

  (1)给定一个分为T个非重叠片段的视频,特征提取模块使用预训练好的网络提取RGB和光流特征{fRGB,i}Ti=1和{fflow,i}Ti=1

  (2)双流base模型执行视频级动作分类,然后使用帧级伪ground-truth迭代地细化base模型。将两种模式的特征分别输入到两个独立的base模型中,两个base模型使用相同的体系结构,但不共享参数。由于这些特征最初不是针对W-TAL任务进行训练的,首先连接T个输入特征{fi}Ti=1,并使用一组时间卷积层生成一组新特征{xi}}Ti=1,再输入conv层+FC层得到注意力值Ai∈(0,1)以测量第i个片段包含一个动作的可能性,引入了一个注意力归一化项来强制注意力接近极值,然后,对特征序列进行注意力加权池化,生成单个前景特征xfg,并将其输入FC softmax层,得到视频级预测。分类损失函数Lcls被定义为标准的交叉熵损失。

  (3)伪ground-truth生成,用一个帧级伪ground-truth对双流base模型进行迭代优化,具体来说,将整个训练过程划分为几个迭代。在迭代0中,只有视频级别的标签用于训练。在迭代n+1时,在迭代n生成帧级伪ground-truth,并为当前迭代提供帧级监督。作者介绍了两种伪ground-truth生成方法:(1)soft伪ground-truth,直接使用融合注意力值作为伪标签,它包含了一个片段是前景动作的概率,但也增加了模型的不确定性。(2)hard伪ground-truth,在注意力序列上施加阈值以生成一个二进制序列,它消除了不确定性,提供了更强的监督,但引入了超参数。

Two-Stream Consensus Network for Weakly-Supervised Temporal Action Localization概述的更多相关文章

  1. Background Suppression Network for Weakly-supervised Temporal Action Localization [Paper Reading]

    研究内容:弱监督时域动作定位 结果:Thumos14 mAP0.5 = 27.0 ActivityNet1.3 mAP0.5 = 34.5 从结果可以看出弱监督这种瞎猜的方式可以PK掉早些时候的一些全 ...

  2. 2018年发表论文阅读:Convolutional Simplex Projection Network for Weakly Supervised Semantic Segmentation

    记笔记目的:刻意地.有意地整理其思路,综合对比,以求借鉴.他山之石,可以攻玉. <Convolutional Simplex Projection Network for Weakly Supe ...

  3. LPAT: Learning to Predict Adaptive Threshold for Weakly-supervised Temporal Action Localization [Paper Reading]

    Motivation: 阈值分割的阈值并没有通过模型训练学出来,而是凭借主观经验设置,本文通过与背景得分比较提取对应的proposal,不用阈值的另一篇文章是Shou Zheng的AutoLoc,通过 ...

  4. TURN TAP: Temporal Unit Regression Network for Temporal Action Proposals(ICCV2017)

    Motivation 实现快速和准确地抽取出视频中的语义片段 Proposed Method -提出了TURN模型预测proposal并用temporal coordinate regression来 ...

  5. 论文笔记之 SST: Single-Stream Temporal Action Proposals

    SST: Single-Stream Temporal Action Proposals 2017-06-11 14:28:00 本文提出一种 时间维度上的 proposal 方法,进行行为的识别.本 ...

  6. SST:Single-Stream Temporal Action Proposals论文笔记

    SST:Single-Stream Temporal Action Proposals 这是本仙女认认真真读完且把算法全部读懂(其实也不是非常懂)的第一篇论文 CVPR2017 一作 论文写作的动机m ...

  7. [CVPR2017] Deep Self-Taught Learning for Weakly Supervised Object Localization 论文笔记

    http://openaccess.thecvf.com/content_cvpr_2017/papers/Jie_Deep_Self-Taught_Learning_CVPR_2017_paper. ...

  8. [CVPR 2016] Weakly Supervised Deep Detection Networks论文笔记

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px "Helvetica Neue"; color: #323333 } p. ...

  9. [CVPR2017] Weakly Supervised Cascaded Convolutional Networks论文笔记

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px "Helvetica Neue"; color: #042eee } p. ...

  10. Robust Tracking via Weakly Supervised Ranking SVM

    参考文献:Yancheng Bai and Ming Tang. Robust Tracking via Weakly Supervised Ranking SVM Abstract 通常的算法:ut ...

随机推荐

  1. C#整合ActiveMQ与SpringBoot整合ActiveMQ数据间交互

    一.SpringBoot整合AvtiveMQ部分 1.引入ActiveMQ依赖 <dependency> <groupId>org.springframework.boot&l ...

  2. django的模版

    django的模版 1模版语法  views.py 书写方式 def index(request): ''' 模版语法分: 变量: {{ }} 1. 深度查询 句点符 2. 过滤器 {{val|fil ...

  3. PK获取面积

    BOOL PK_AskFaceAreas(tag_t face_tag, double tol, double &areas) {//获得面积 tag_t ps_tag = NULL_TAG; ...

  4. Linux内核编译中的各类错误示例

    1. do_gettimeofday()函数的使用 linux发行版:Ubuntu22.04 linux内核:5.15.0-52-generic 预编译内核:linux-6.0.1 添加在linux- ...

  5. mac使用expect登录跳板机后的机器

    两个文档 #!/usr/bin/expect -f #连接文件名字记录 set ip [lindex $argv 0] catch {spawn ssh 1.1.1.1}## ip地址换成自己的 ex ...

  6. 前端js校验小数点

    let result = (value.toString()).indexOf("."); if (result != -1 && value.toString() ...

  7. SpringMVC学习day03

    第1个springmvc程序 这是根据狂神说视频和资料学习的,用于加强自己的记忆 入门学习 1. 步骤: 1.新建一个Moudle , springmvc-02-hello , 添加web的支持! 2 ...

  8. C - Perform the Combo

    C - Perform the Combo 思路:当读到这个题的时候,第一反应就是枚举,但是,无线超时,没办法,那就变,利用前缀和,减少时间. 代码: #include<iostream> ...

  9. Java多线程编程技术方案原理

    一 ,多线程相关的一些概念 1,线程和进程: 线程指的是进程中一个单一顺序的控制流, 进程中可以并发多个线程,每条线程并行执行不同的任务,被认为是一个计算资源的集合.进程不能被任务是一个应用,因为有些 ...

  10. 三、核心实战-服务Service-Ingress

    Service 将一组Pods公开为网络服务的抽象方法. 暴露deployment只能在集群内访问是ClusterIP,可以集群外访问是NodePort,默认端口分配是30000-32767之间 ku ...