TALL论文笔记

news2024/11/26 19:31:48

TALL论文笔记

  • 0.论文来源
  • 1摘要
  • 2引言
  • 3模型结构
    • 3.1视觉编码器
    • 3.2句子编码器
    • 3.3模态融合
    • 3.4时间定位回归网络
  • 4训练
    • 4.1损失函数
    • 4.2采集训练样本
  • 5 评估
    • 5.1数据集
    • 5.2评价指标
    • 5.3实验结果

0.论文来源

  • 2017 TALL

1摘要

  • 问题描述:通过语言来对未修剪视频中动作的时间定位
  • 当前的需要:
    • 适当的文本和视频表示的设计,以允许动作和语言查询的跨模态匹配
    • 能够从有限的尺寸的滑动窗口精确地定位动作所给定的特征。
  • 贡献:提出了一种新的跨模态时间回归定位器(CTRL),以联合建模候选剪辑的文本查询和视频剪辑、输出对齐分数和动作边界回归结果。

2引言

传统的时间动作定位:

  1. 以滑动窗口的方式应用基于光流的方法或卷积神经网络训练的活动分类器。然后将查询映射到一个离散的标签。但是设计这样的标签空间使得对所有的活动进行查询而不丢失细节是比较难的。

  2. 或者将视觉特征和句子特征嵌入到一个公共空间,然而找不到合适的视觉模型来提取特征,并且实现高精度的预测开始/结束时间。

    人们可以在不同的尺度上密集地采样滑动窗口但这样做不仅在计算上很昂贵,而且随着搜索空间的增加,使对齐任务也很难。或者通过学习回归的参数来调整时间边界,但这种方式由于活动具有时空体积,这可能会导致更多的背景噪声过去没有实现。

于是作者提出了 Cross-modal Temporal Regression Localizer (CTRL) 模型
具体贡献如下:

  • 提出了一种新的通过自然语言(TALL)查询的时间活动定位问题
  • 引入了一种有效的跨模态时间回归定位器(CTRL),它通过联合建模语言查询和视频剪辑来估计对齐分数和时间动作边界。

3模型结构

在这里插入图片描述

3.1视觉编码器

通过时间滑动窗口生成一组视频剪辑,将剪辑个上下文映射到一个特征向量。Ev用来提取剪辑级特征向量,其输入为nf帧,输出为维数为dv的向量。从每个剪辑(中央剪辑和上下文剪辑)中均匀地采样nf帧。对于上下文剪辑,我们使用池化层来计算预上下文特性:
在这里插入图片描述

在这里插入图片描述
三者合并映射

3.2句子编码器

这篇文章是2017年发的,这里是用的2种方法编码

  • LSTM
  • Skip-thought

3.3模态融合

如模型图所示,用公式来说的话就是
在这里插入图片描述

3.4时间定位回归网络

Fsv为输入,并有2个输出:

  • alignment score
  • 剪辑位置和回归偏移,设计了两种位置偏移表示:

在这里插入图片描述

tc和tl分别是参数化的中心点偏移和长度偏移 ,p和l分别表示剪辑的中心坐标和剪辑的长度,变量p、pc用于预测剪辑和测试剪辑,l、lc也是一样。

List item
s和e分别表示剪辑的开始坐标和结束坐标

4训练

4.1损失函数

在这里插入图片描述
Laln用于视觉-语义对齐,Lreg用于剪辑位置回归,α是一个超参数,它控制着两个任务损失之间的平衡。对齐丢失鼓励对齐的剪辑句子对有正分数,而不对齐的句子对有负分数。
在这里插入图片描述
N为批处理大小,CSi,j为句子sj和视频剪辑ci之间的对齐得分,αc和αw是控制正(对齐)和负(不对齐)的剪辑句子对之间的权重的超参数。
在这里插入图片描述
x和y表示p和l表示参数化偏移量,或s和e表示非参数化偏移量。R (t)为Smoth L1函数

4.2采集训练样本

首先采用滑动的窗口对视频片段进行滑动,滑动窗口的大小分为[64,128,256,512]帧,测试的时候是128帧。每个训练样本都包含一个句子描述(sh,τh,τeh)和一个视频剪辑(ch、ts h、te h)正例的样本需要满足三个条件:1.视频片段与句子重叠的部分大于并集长度的50%。2.非重叠部分小于视频片段长的20%。3.一个滑动窗口只能描述一个句子。
在这里插入图片描述

5 评估

5.1数据集

TACoS
Charades-STA,这个是作者自己改进的数据集

5.2评价指标

R@n,IoU=m

5.3实验结果

在这里插入图片描述
CTRL(aln):我们不使用回归,只用对齐损失Laln来训练CTRL。
CTRL(reg-p):用对齐损失Laln和参数化回归损失−训练CTRL
CTRL(reg-np):考虑上下文信息,CTRL用Laln对齐损失和非参数化回归损失进行训练。
CTRL(loc): 参考SCNN提出使用重叠损失来提高活动定位性能在这里插入图片描述

在这里插入图片描述

“CTRL”意味着我们只是简单地将整个复杂的句子输入到CTRL模型中。“CTRL+Fusion”是指我们将一个复杂查询中的每个句子分别输入到CTRL中,然后进行后期融合。

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

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

相关文章

【JVM】日志分析工具--gcviewer的使用

文章目录 gcviewer是什么?gcviewer的使用最后 gcviewer是什么? GCViewer是一个小工具,可以可视化Sun / Oracle、IBM、HP和BEA Java虚拟机生成的详细GC输出。它是在GNU LGPL下发布的自由软件。—官网翻译 gcviewer的使用 文章使用的配置 工具…

Dubbo面试题

Dubbo 基础知识为什么要用 Dubbo?Dubbo 是什么?Dubbo 的使用场景有哪些?Dubbo 核心功能有哪些? 架构设计Dubbo 服务器注册与发现的流程?Dubbo 的整体架构设计有哪些分层?Dubbo Monitor 实现原理? 分布式框…

一键部署通义千问预体验丨阿里云云原生 5 月动态

云原生月度动态 云原生是企业数字创新的最短路径。 《阿里云云原生每月动态》,从趋势热点、产品新功能、服务客户、开源与开发者动态等方面,为企业提供数字化的路径与指南。 本栏目每月更新。 01 趋势热点 🥇 Apache RocketMQ 入选可信开…

如何创建 GitHub 配置文件自述文件

背景 最近再搞GitHub Actions的东西。突然看到了 github推出的这项服务。就搞了一下。主要目的:装扮自己的GitHub主页。俗称装逼(小声) 步骤 创建一个与 GitHub 用户名同名(包括大小写)的新仓库。比如我的就是 创建…

Docker学习(一)

第1章 docker简介 1.1 什么是docker Docker 最初是 dotCloud 公司创始人 Solomon Hykes 在法国期间发起的一个公司内部项目,它是基于 dotCloud 公司多年云服务技术的一次革新,并于 2013 年 3 月以 Apache 2.0 授权协议开源,主要项目代码在 …

ethers.js常用的操作方法

安装:npm install --save5.7.2 ethers --ethers比web3来说使用方式相对简洁很多,主要就操作三个大对象 1. Provider,(提供者)是一个用于连接以太坊网络的抽象类,提供了只读形式来访问区块链网络和获取链上…

8年测试老鸟总结,性能测试案例经验,高级测试之道...

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 性能基准测试&…

测试员最令程序员讨厌的十种行为,你中了几条?

在做软件测试这些年,总会有程序员给我吐槽某某测试员令其发指的一些事。这里我总结了一些,看你有没有中呢? 1、爱较真,只要逮着问题,哪怕是技术文档中的错别字也要提到bug管理工具中,更让程序员绝望的是&a…

测试员与程序员那些烂在心里的共同秘密

1、生产环境出现了一个较严重的bug,赶在用户没发现的情况下,测试员与程序员悄悄地改了,并跳过了N个步骤做了次发布。 2、程序员告诉测试员,新来的技术leader每天做得最多的事就是copy他们的代码,一份不够还再来一份&a…

VR全景智慧园区,沉浸式数字化体验,720度全视角展示

导语: 随着科技的迅猛发展,虚拟现实(Virtual Reality,简称VR)全景技术已经成为了人们趋之若鹜的新兴领域。 而城市园区作为现代社会的重要组成部分,也正在积极寻求创新的方式来吸引更多的人流和投资。 一&…

【QQ界面展示-设置文本框的leftView属性 Objective-C语言】

一、这个搞定以后,接下来,就实现另外一个效果, 1.注意,我们上午把这个文本框,是不是本来说文本框,直接放这儿就OK了吧,但是,我们上午为了能让这个文本框兼容iOS6,是不是把这个文本框的边框,设为None,然后呢,边框设为nil边框,是不是设了一个背景图啊, 但我们做完…

Ansys Zemax | 如何在OpticStudio中建模和设计真实波片

本文介绍了如何在 OpticStudio 中建模和设计真实的单色和消色差波片。它将演示如何使用双折射材料,通过构建评价函数来计算相位延迟,并使用 Universal Plot 将相位延迟与波片厚度的关系可视化。(联系我们获取文章附件) 双折射材料…

搜索树的逻辑以及代码实现-重点删除结点的逻辑

目录 搜索二叉树概念 代码 二叉搜索树的插入 二叉搜索树的查找 二叉搜索树的删除(非常重要) a、b、c情况:删除14 d情况 打印结点中序遍历 整体代码:(有R开头的就是递归写法,逻辑一样) 搜…

合宙Air724UG Cat.1模块硬件设计指南--UART接口

UART接口 简介 串行接口简称串口,同时串口又分为同步收发串口与异步收发串口两种方式,而CAT1模块支持的串口为异步收发方式,简称UART口。串口作为设备的外部接口,是调试开发的一种重要的开发手段。 特性 UART1串口 包括数据线TXD…

ubuntu (Linux mint) 安装mysql 5.7

1 从官网下载deb格式安装包 网址: https://downloads.mysql.com/archives/community/ 2 解压安装包 执行命令: tar -xvf mysql-server_5.7.41-1ubuntu18.04_amd64.deb-bundle.tar 如下图所示: 你会发现多了很多.deb文件。 3 批量安装 .d…

当C/C++遇上高性能计算|会C/C++编程的看过来,这类岗位是真香

C/C编程语言作为经典而强大的编程语言,一直在计算机科学领域占据着重要的地位。而当C/C遇上高性能计算,这个组合将带给你无尽的机遇和挑战,成为一名高性能计算工程师,你会发现这类岗位是真香。从此告别爹不疼、娘不爱的尴尬境地。…

【RH850/U2A】:Task激活过程

Task激活过程 Autostart非AutostartTASK(Default_Init_Task)EcuM_StartupTwo(void)SchM_Init(void)BswM_Init(xx)Rte_Start(void)Task激活过程,分自动运行(AutoStart)和非自动运行。 Autostart 在DavinciCfg中的配置如下: Autostart意味作在执行StartOS()后就开始运行了。…

使用Python进行小波变化

上图展示了使用Python小波变换的一个使用案例,数据和代码来自https://github.com/ct6502/wavelets。在使用运行代码的时候发现了源代码的报错分别在Line115和Line136,是将Y轴变为对数轴,需要将“plt3.set_yscale(‘log’,base2, subsNone)”改…

pycharm HfArgumentParser ArgumentParser 参数设置 以及Debug

HfArgumentParser可以将类对象中的实例属性转换成转换为解析参数。必须注意的是,这里的类对象必须是通过dataclass()创建的类对象。并且通过HfArgumentParser创建的解析参数,都是可选参数。 from transformers import HfArgumentParser from dataclasse…

Pytest教程__fixture(9)

什么是fixture fixture是pytest特有的功能,使用装饰器 pytest.fixture 标记的函数在其他函数中能被当作参数传入并被调用。 fixture有明确的名字,在其他函数,模块,类或整个工程调用它时会被激活。 fixture是基于模块来执行的&a…