【论文阅读】半监督时序动作检测 Semi-Supervised Action Detection

news2025/7/9 18:30:18

文章目录

  • 1. Learning Temporal Action Proposals With Fewer Labels (ICCV 2019)
    • 论文目的——拟解决问题
    • 贡献——创新
    • 实现流程
    • 详细方法
  • 2. Self-Supervised Learning for Semi-Supervised Temporal Action Proposal (CVPR 2021)
    • 论文目的——拟解决问题
    • 贡献——创新
    • 实现流程
    • 详细方法
  • 3. Semi-Supervised Temporal Action Detection with Proposal-Free Masking (ECCV 2022)
    • 论文目的——拟解决问题
    • 贡献——创新
    • 实现流程
    • 详细方法

在这里插入图片描述

在这里插入图片描述

本博客将阅读 Semi-Supervised Action Detection任务下,表现最好的三篇论文。并思考如何设计或者改进以达到STOA。

1. Learning Temporal Action Proposals With Fewer Labels (ICCV 2019)

论文目的——拟解决问题

  • 目前大多数训练动作建议模块的方法都依赖于完全监督的方法,这需要在长视频序列中有大量注释的时间性动作间隔,需要大量的成本和注释工作,促使我们研究用较少的监督来训练建议模块的问题。
  • 半监督学习方法的一个核心理念是用平滑和一致的分类边界来训练模型,对随机扰动具有鲁棒性。对于视频中的时间性动作建议任务,扰动的设计应该有利于序列学习。然而,先前的工作并没有为视频等序列数据提出适当的扰动。

贡献——创新

  • 是第一个将半监督学习纳入到时间性动作建议中,以实现标签效率利用。
  • 为这个半监督框架设计了两种基本类型的顺序扰动sequential perturbations,并在时态动作建议的关键实验中对它们进行了验证,以对抗强大的半监督基线。

实现流程

在这里插入图片描述
输入一个未经修剪的视频,首先将其编码为一个特征序列Φ。接下来,包括时间扭曲和时间遮蔽在内的序列扰动被应用到Φ上,学生提案模型将这个扰动的序列作为输入。
相反,教师模型直接对未受干扰的Φ进行预测。最后,学生模型与应用于标记视频的监督损失和应用于所有视频的一致性损失联合优化。

详细方法

在一个最先进的全监督提议生成网络——边界敏感网络(BSN)上建立了我们的模型。我们将平均教师框架扩展为两种类型的连续扰动 时间扭曲和时间掩码 来训练提案模型。

  • Video Encoding:
    给定一个有N个帧的未经修剪的视频作为输入,我们首先把它分成不重叠的短片段,对每个视频的RGB帧和光流都进行编码,然后将编码的向量连接起来。有标签的视频和无标签的视频共享同一个视频编码器,它们共同存在于同一个批次中。

  • Temporal Action Proposal Model:
    编码后的序列送入BSN提议模型。BSN由两个可训练的模块序列组成:时态评估模块(TEM)和提议评估模块(PEM)
    视频编码后,TEM将片段特征序列Φ作为输入。序列Φ通过时间卷积层,生成三个系列的概率信号:动作性,开始和结束。
    然后根据这三个信号序列生成建议。最后,PEM为每个提议预测一个置信度分数pconf,表示一个提议与最接近的地面真相区间的重叠程度,以决定该提议是否被接受或拒绝。

  • Mean Teacher Framework:
    如何构建半监督学习框架来进行时间性动作建议?当只有少量标记的训练样本可用时,像BSN这样的深度模型往往会过度拟合,无法从训练集中提取足够的知识来归纳到未见过的视频。 这可以通过半监督学习来缓解,在半监督学习中,未标记的视频也可以用来训练。如果没有GT,监督分类的损失在未标记的视频上是无法定义的。
    相反,我们需要引入一个无监督的辅助任务来利用来自无标签视频的信息。
    作为一个baseline,可以直接将平均教师法应用于时间动作建议模型,形成半监督学习框架。
    在这里插入图片描述

  • Sequential Perturbations:
    加入随机扰动,对于半监督算法学习一个鲁棒的模型是有非常帮助的。
    Time Warping: Time Warping本质上是一个重采样层,它在随机生成的一维流场网格的引导下,沿时间维度对特征向量序列Φ进行重采样。
    在这里插入图片描述
    左图:通时间扭曲Time Warping,可以在编码空间中对更多的片段特征进行采样。在已标记的片段特征(填充的圆圈)中重新取样新的特征点(空的圆圈),鼓励学生模型产生一个更平滑的流形来进行预测。
    首先,通过将标签传播到特征空间中未标记的位置,重采样导致更平滑的预测(左图);
    其次,时间翘曲作为一种数据增强的方式,为训练提供更多的标记数据,这在标签很少的情况下特别有帮助
    第三,拉伸和压缩输入信号可以产生更多的变体来学习某些任务,如时间动作建议,这需要准确的开始和结束位置预测
    为了对输入特征序列Φ进行扭曲,每个输出特征向量都是根据密集的一维网格G对Φ进行线性采样计算的,其中gt是对输出特征向量进行采样的时间位置。在执行时间扭曲的过程中,网格应该包括长期失真,使视频的某些部分变慢,而其他部分变快;它还应该包含短期随机噪声。 基于这些考虑,提出了一个混合截断正态分布(MTND)采样器(右图)来生成网格。
    Time Masking: 时间掩码,作为训练期间顺序扰动的另一个来源。时间掩码紧随时间扭曲之后,以WG(Φ)作为输入。时间屏蔽的想法很简单:输入序列中的一些片段被屏蔽在学生模型之外,而教师模型可以看到整个无遮挡的视频序列。我们把时间屏蔽的输出表示为WG(Φ)。在训练过程中,鼓励被屏蔽的学生模型在每次迭代中产生与教师相同的输出,尽管他们无法获得输入视频的全部信息
    时间屏蔽可以被看作是一个特殊的Dropout层。 在常规的Dropout层中,一个片段中的神经元不可能完全被丢弃,这就给了模型一个机会从感受野中的每个片段中偷取一些信息。相反,在时间屏蔽中,被丢弃的片段的任何信息都不会被传递到下一个层。学生模型将被迫从时间背景中聚合信息,以对丢失的片段进行预测。这种时间背景聚合的能力将从标记的视频上的监督损失和所有训练数据上与教师模型的一致性中学到。

  • Training:
    训练我们的半监督框架包括两部分:最小化标记数据的监督损失和所有训练数据的一致性损失。
    Supervised Losses: 与完全监督的建议模型相一致,半监督框架使用与BSN中相同的监督损失进行训练。
    Consistency Regularization: 一致性损失将教师模型的输出视为标签,并鼓励学生学习像教师那样的平滑流形。与监督损失不同的是,一致性损失可以应用于训练集中有标签和无标签的视频。
    在这里插入图片描述
    对于距离函数D,我们在所有实验中使用平均平方误差。与有监督的优化一样,只训练学生模型中的权重。一致性损失和监督性损失相加为总损失。

2. Self-Supervised Learning for Semi-Supervised Temporal Action Proposal (CVPR 2021)

论文目的——拟解决问题

几乎所有的方法都依赖于训练视频的密集时间标注。然而,标注任务是繁琐的,需要大量的人力劳动,这可能在满足实际需求方面能力有限。

贡献——创新

  • 设计统一的SSTAP框架,首次将自监督学习纳入半监督的时间行动建议中;
  • 设计了两种简单而有效的时间顺序扰动,并为SSTAP定义了两种自监督的pretext任务;

实现流程

在这里插入图片描述
SSTAP概述。首先将一个采样的未修剪的输入视频编码为一个特征序列f1。在时间感知的半监督分支(右上角),有两个连续的扰动操作:时间特征转移和时间特征翻转。而基础模块将被扰动的序列f_pert和未被扰动的f_1作为输入。接下来,同一网络结构的学生模型和教师模型产生输出。
在关系感知的自监督分支(右下角),有两个自监督的前文任务:遮蔽特征重建和剪辑顺序预测。
最后,一个统一的多任务框架被利用来进行优化。彩色编码的箭头表示框架中的特征与各自模块之间的关联。

详细方法

  • Feature Encoding: 先将其分为不重叠的短片段,每个片段包含σ帧。然后采用双流网络来提取视觉特征序列φ。

  • Temporal-aware Semi-Supervised Branch: 简单介绍了预选框生成网络BMN和Mean Teacher模型,并讲述了加入扰动项对半监督系统学习一个稳健的模型具有好处。但是上一篇文章所加入的扰动忽略了时间上的相互作用。于是提出本文的两个扰动:temporal feature shift and temporal feature flip(时间特征的转移和时间特征的翻转)
    temporal feature shift 时间特征移动扰动是在输入视频的特征图上沿时间维度双向移动一些随机选择的通道。因此,时间特征移动可以大大增加输入特征的多样性,即作为一种数据增强的方式,为训练提供更多的数据。
    temporal feature flip 时间特征翻转使原始和翻转的视频特征中的提议之间的一对一对应关系可以很容易地对齐
    由于具有不同扰动的连续视频特征可能有不同位置和大小的建议数量,因此,要匹配给定的视频特征是具有挑战性的。因此,采用水平翻转的视频特征,在训练过程中,鼓励每个迭代中的学生模型产生与教师模型对称的输出。在训练过程中,每个小批次都包括有标签和无标签的数据。平均教师框架工作中的一致性正则化利用了未标记的数据,其假设是当输入相同输入的扰动版本时,模型应该输出类似的预测。在时间感知半监督分支中,一致性损失被应用于标记的和未标记的数据。请注意,一致性损失(L2-loss)添加到BMN输出的边界概率序列和边界匹配置信图中。
    因此,在时间感知的半监督分支中,总损失公式为:
    在这里插入图片描述

  • Relation-aware Self-Supervised Branch: 假设半监督的时间动作提议方法可以极大地受益于自监督学习技术。而基于这种洞察力,在关系感知的自监督分支中,我们提出了两个辅助性任务。这两个辅助任务,即Masked feature reconstruction遮蔽特征重建和clip-order prediction片段顺序预测,可以帮助网络学习时间关系和判别性表征。
    Masked feature reconstruction: 遮蔽特征的重建。这个自监督的辅助任务的关键思想是通过沿时间维度随机掩盖视频特征f1的一些时间点来生成特征f2。然后,基础模块利用f2来重建f1。 掩蔽特征重建从原始特征f1中产生自监督信号,可以以一种简单而有效的方式学习鉴别性的表征。
    在掩蔽特征重构的辅助任务中,基础模块将被驱动去感知和聚合来自上下文的信息,以预测掉落的片段。这样一来,学习到的时间语义关系和判别特征自然有利于半监督的时间行动建议。
    clip-order prediction: 这个辅助任务需要预测片段特征序列在随机洗牌的特征图中的正确顺序。 具体来说,三个随机洗牌的特征序列的重新排序主图所示。实际上,片段顺序预测被表述为一个分类任务。输入是一个片段特征序列的元组,输出是一个不同顺序的概率分布。
    在实验中,我们根据经验设计了两个随机洗牌的特征序列的重新排序。片段顺序预测可以利用特征f1的时间顺序来学习鉴别性的时间表征。而且片段顺序预测是在片段序列层面,可以减少顺序的不确定性,更适合于学习视频特征表征。

  • Overall Loss:在这里插入图片描述

3. Semi-Supervised Temporal Action Detection with Proposal-Free Masking (ECCV 2022)

论文目的——拟解决问题

  • 现有的时间性动作检测(TAD)方法依赖于大量的训练数据和片段级的注释。因此,收集和标注这样一个训练集是非常昂贵的,而且无法扩展。
  • 先前的SS-TAD方法直接结合了现有的基于建议的TAD方法和SSL方法。由于它们的顺序定位(如候选框生成)和分类设计,它们很容易出现候选框错误传播。这是因为现有的TAD模型采用了连续的定位(例如,建议生成)和分类设计。当扩展到SSL设置时,在用未标记的数据训练时不可避免的定位错误会很容易传播到分类模块,导致类别预测的累积错误。
    在这里插入图片描述

贡献——创新

  • 提出了一种新型的基于无提议时空掩码(SPOT)的半监督时空动作检测模型,它具有并行的定位(掩码生成)和分类架构。这种新颖的设计通过切断中间的错误传播途径,有效地消除了定位和分类之间的依赖性。
    在这里插入图片描述
  • 进一步引入了边界细化算法,以实现预测的细化,并为自监督的模型预训练引入了一个新的pretext任务。将SPOT与SS-TAD的伪标签相结合,并为并行设计专门制定了新的分类和掩码损失函数。

实现流程

在这里插入图片描述
Overview of the proposed Semi-supervised Temporal action detection model based on Proposal-free Temporal mask
给定一个未经修剪的视频V,首先用预先训练好的视频编码器提取一连串的T片段特征,并进行自我注意学习以获得具有全局背景的片段编码E。对于每个片段编码,我们用分类流预测一个分类分数P,用掩码流预测一个前景掩码M,两者都进一步用于边界细化。它是基于挖掘难易程度的前景(FG)和背景(BG)片段。对于SS-TAD,交替地预测和利用未标记的训练视频的伪类和掩码标签,以及标记的视频。

详细方法

  • Proposal-Free Temporal Mask Learning:
    在这里插入图片描述
    Video Snippet Embedding: 将未经修剪的视频分割成T个等距的时间片段,并利用双流网络来提取RGB特征和光流特征,并将二者串联为序列F,虽然F包含局部的时空信息,但它缺乏对TAD至关重要的全局背景。因此,我们利用自我注意机制来学习全局背景。形式上,我们将多头变形器编码器 T() 的输入{query, key, value}设定为特征{F, F, F}。
    TAD Head: 为了实现无建议的设计,引入了一个基于时空掩码学习的TAD头。它由两个平行的流组成:一个用于片段分类,另一个用于时间掩码推理。 这种设计打破了定位和分类之间的顺序依赖,这种依赖会导致现有TAD模型中不必要的错误传播。
    Snippet classification stream: 鉴于第t个片断,分类分支预测了Y的概率分布pt∈R (K+1)×1。对于一个有T个片段的视频,分类分支的输出可以表示为。
    Temporal mask stream: 与分类流并行,该流预测整个视频时间跨度内的动作实例的时间掩码。给定第t个片段E(t),它输出一个掩码向量mt,每个元素qi表示第i个片段的前景概率。这是由三个一维卷积层Hm叠加实现的。
    有了提议的掩码信号作为模型输出监督,就不再需要提议来促进SS-TAD学习。
    Boundary Refinement: 在TAD头的末端设计了一个流间互动机制(inter-steam interaction mechanism) 来完善TAD,专注于前景和背景之间的过渡(即时间边界)的模糊片段(hard snippets)。它们被认为是困难的片段,与那些位于远离时间边界的掩码或背景区间内的容易的片段相比,有更多值得信赖的干扰。通过检查时间掩码M的结构来检测困难片断。在这里插入图片描述
    如上图b所示,被侵蚀的掩码边界所跨越的片段为硬背景,而被非边界掩码所跨越的片段为硬前景。

  • Model Training:
    在这里插入图片描述
    Stage I: Self-supervised pre-training
    在video-level特征层面随机选取起止时间不同的特征为前景,剩余部分为背景,并随之将背景特征置0,只保留伪前景。
    在获得masked feature sequence后,前置任务旨在同时预测:
    1)具有开始和结束的时间遮蔽
    2)时间洗牌后每个片段的时间位置
    3)片段特征的重建
    通过丢弃随机片段,转化器被迫聚合并利用来自上下文的信息来预测丢弃的片段。
    该模型可以学习时间语义关系和对TAD有用的鉴别性特征。预训练的语境任务损失被表述为:
    在这里插入图片描述
    其中, 为mask learning loss, 为feature reconstruction loss, 为temporal position prediction loss。
    Stage II: Semi-supervised fine-tuning:
    Pseudo class label:
    在这里插入图片描述
    Pseudo mask label:
    在这里插入图片描述
    使用伪标签和真实标签来最小化目标函数:
    classifcation stream
    在这里插入图片描述
    mask stream
    在这里插入图片描述
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/36870.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

微服务之间,最佳的调用方式是什么?

在微服务架构中,需要调用很多服务才能完成一项功能。服务之间如何互相调用就变成微服务架构中的一个关键问题。服务调用有两种方式,一种是RPC方式,另一种是事件驱动(Event-driven)方式,也就是发消息方式。消…

多模态实战视频生成文本:基于VGG与LSTM实现图像对应的描述文本生成任务

任务描述:本教程将帮助你利用深度学习的方法为照片等图像自动生成文字描述,图像描述是结合计算机视觉与自然语言处理的综合任务,输入一幅图像, 输出一段描述该图像的文字,这一任务要求模型可以识别图片中的物体、理解物体间的关系,并用一句自然语言表达出来。 运行环境:在…

体系结构30_同步性能问题

栅栏(barrier)同步 栅栏强制所有到达该栅栏的进程进行等待,直到全部的进程到达栅栏,然后释放全部的进程,从而形成同步。 栅栏的典型实现是要用两个旋转锁:一个用来记录到达栅栏的进程数,另一个用…

Java 对象拷贝原理剖析及最佳实践

1 前言 对象拷贝,是我们在开发过程中,绕不开的过程,既存在于 Po、Dto、Do、Vo 各个表现层数据的转换,也存在于系统交互如序列化、反序列化。 Java 对象拷贝分为深拷贝和浅拷贝,目前常用的属性拷贝工具,包…

【外卖项目实战开发二】

文章目录1、完善登录功能问题分析代码实现2、新增员工需求分析数据模型代码开发3、员工信息分页查询需求分析代码开发4、启用/禁用员工账号需求分析代码开发代码修复5、编辑员工信息需求分析代码开发1、完善登录功能 问题分析 前面我们已经完成了后台系统的员工登录功能开发&…

zabbix集群搭建分布式监控的操作步骤

作用: 分担server的集中式压力解决多机房之间的网络延迟问题环境准备: 服务器1:zabbix-server 服务器2:zabbix-proxy 服务器3:zabbix-agent 关系:zabbix-agent发送数据到代理,代理汇总数据发送…

Linux多核运行机制(SMP)

一、Linux内核兼容多处理器要求 有多个 CPU 处理器 的 系统中 , Linux 内核需要处理的问题 : 1、公平共享 : CPU 的负载 , 需要公平地共享 , 不能出现某个CPU空闲 , 造成资源浪费。 2、可设置进程 与 CPU 亲和性 : 可以为 某些类型的 进程 与 指定的 处理器设置亲和性 , 可以针…

QT:debug,打不开头文件以及qDebug和Q_CLASSINFO的使用

这个是因为链接器在给定路径上搜索不到对应的头文件,而大多数的Qt相关的头文件都集中在一个include文件夹里: 我电脑上的路径是:C:\Qt\Qt5.9.7\5.9.7\msvc2017_64\include 然后我们在项目设置里: 注意,这边要加上\*&…

【Java】Assert.assertEquals断言

Assert.assertEquals 1.概述 在开发中,我们需要测试时候,不可能把全部程序运行一次,在此我们就需要通过编写单元测试来对程序进行测试了。在 Assert 类里面有大量的静态方法,本篇的主角就是 Assert.assertEquals 这个静态方法。该…

day12_类中成员之方法

成员变量是用来存储对象的数据信息的,那么如何表示对象的行为功能呢?就要通过方法来实现 方法 概念: 方法也叫函数,是一个独立功能的定义,是一个类中最基本的功能单元。把一个功能封装为方法的目的是,可…

【知识网络分析】 一模网络(one node)

一模网络(one node) 1 本地文献读取并构建一模网络数据集2 网络数据集精简3 网络数据集中节点信息大小写转化4 获取一模网络中可使用的mode标签5 网络数据集清洗(以武汉大学信息管理学院为例)5.1 创建映射5.2 求解节点中count属性数值5.3 处理网络数据中的连线信息5.4 处理…

中文版:Spread .NET 16.0 -Winform-WPF-ASP.NET

Spread .NET 是一个功能、布局与 Excel 高度类似的 .NET表格控件,可全面满足 WinForm、ASP.NET、XAML 和 WinRT 等平台下表格数据处理、数据可视化开发需求。Spread .NET 支持 462 种 Excel 公式,提供可嵌入系统的类Excel设计器和全面开放的 API&#xf…

使用Python进行交易策略和投资组合分析

我们将在本文中衡量交易策略的表现。并将开发一个简单的动量交易策略,它将使用四种资产类别:债券、股票和房地产。这些资产类别的相关性很低,这使得它们成为了极佳的风险平衡选择。 动量交易策略 这个策略是基于动量的的,因为交易者和投资者…

美食杰项目 -- 编辑个人资料(六)

目录前言:具体实现思路:步骤:1. 展示美食杰编辑个人资料效果2. 引入element-ui3. 代码总结:前言: 本文给大家讲解,美食杰项目中 实现编辑个人资料页的效果,和具体代码。 具体实现思路&#xff…

【Java面经】阿里三面被挂、幸获内推,历经5轮终于拿到口碑offer

每一个互联网人心中都有一个大厂梦,百度、阿里巴巴、腾讯是很多互联网人梦寐以求的地方,而我也不例外。但是,BAT等一线互联网大厂并不是想进就能够进的,它对人才的技术能力和学历都是有一定要求的,所以除了学历以外&am…

面试官:单核 CPU 支持 Java 多线程吗?为什么?被问懵了

由于现在大多计算机都是多核CPU,多线程往往会比单线程更快,更能够提高并发,但提高并发并不意味着启动更多的线程来执行。更多的线程意味着线程创建销毁开销加大、上下文非常频繁,你的程序反而不能支持更高的TPS。 时间片 多任务…

Java项目:JSP员工出差请假考勤管理系统

作者主页:源码空间站2022 简介:Java领域优质创作者、Java项目、学习资料、技术互助 文末获取源码 项目介绍 本项目为后台管理系统; 管理员角色包含以下功能: 登录,首页,考勤记录增删改查,假期申请记录增删改查,出差申请记录增删…

maven学习:maven 的入门

2.maven 的入门 到目前为止,我们已经大概了解并安装好了Maven,现在,我们开始创建一个最简单的Hello World项目。 2.1 在Idea创建maven项目 创建一个Maven项目也十分简单,选择”Create New Project" 选择”maven”选项,创…

留学推荐信如何写好个人优点和缺点?

留学推荐信是出国申请文书的重要文件之一,是一个从第三方(通常是以前的导师)从学术权威的角度对申请者的客观评价。评价的内容包括学术能力(Academic competence)、性格特点(Personal characteristics&…

如何使用 MySQL 做全文检索这件事

​前言 这有朋友聊到他们的系统中要接入全文检索,这让我想起了很久以前为一个很古老的项目添加搜索功能的事儿。 一提到全文检索,我们首先就会想到搜索引擎。也就是用一个词、一段文本搜索出匹配的内容。一般这种技术都有对应的实现方式,ES&…