VideoAgent——使用大规模语言模型作为代理来理解长视频

概述

论文地址:https://arxiv.org/pdf/2403.10517
本研究引入了一个新颖的基于代理的系统,名为 VideoAgent。该系统以大规模语言模型为核心,负责识别关键信息以回答问题和编辑视频。VideoAgent 在具有挑战性的 EgoSchema 和 NExT-QA 基准上进行了评估,平均帧数分别为 8.4 帧和 8.2 帧,零镜头准确率分别达到 54.1% 和 71.3%。的零镜头准确率。

介绍

理解长视频需要能够处理各种信息并有效推理长序列的模型。现有的尝试发现,要建立能满足所有这些要求的模型非常困难。目前的大规模语言模型适合处理长语境,但不足以处理视觉信息。另一方面,视觉语言模型被认为难以处理长视觉输入。我们的系统模仿了视频理解过程,侧重于推理能力而不是处理长视觉输入;VideoAgent 比现有方法更有效、更高效,是长视频理解领域的一大进步。

相关研究

传统方法包括对视频进行选择性或压缩性处理。压缩稀疏性方法试图将视频压缩为有意义的嵌入或表示。选择性压缩方法则试图根据输入的问题或文本对视频进行子采样。代理是做出决策和执行行动的实体。大规模语言建模(LLM)技术的进步促使越来越多的研究将 LLM 作为代理来使用。这种方法已成功应用于多种场景,如在线搜索和纸牌游戏。受人类理解视频方式的启发,本研究将视频理解重新表述为一个决策过程。

建议方法

  1. 初始状态检索:.

首先,向 LLM 展示视频中的均匀采样帧,使其熟悉视频上下文。视觉语言模型(VLM)用于将视觉信息转化为语言描述。这种初始状态记录了视频内容和含义的概况。

  1. 决定下一步行动:。

考虑到当前情况,LLM 决定下一步行动;有两种可能的选择。一个是回答问题,另一个是搜索新信息;LLM 会考虑问题和现有信息,进行反思,并根据置信度选择行动。

  1. 收集新的观察结果:。

需要新信息时,LLM 使用工具来检索。有些信息是在分段级别收集的,以增强时间推理功能。获取的信息可作为更新当前状态的观测信息。

  1. 最新现状:.

考虑到新的观察结果,VLM 用于为每一帧生成标题,然后请求 LLM 生成下一轮的预测。

与传统方法相比,这种方法具有若干优势。特别是,收集信息的适应性选择策略可以找到相关信息,并将回答不同难度问题所需的成本降至最低。

试验

数据集和衡量标准

EgoSchema 包含一个以自我为中心的视频,包含 5000 个问题;NExT-QA 包含一个以物体互动为特色的自然视频,包含 48000 个问题。自然视频,包含 48,000 个问题。

实施细节。

所有视频都以 1 帧/秒的速度解码,并根据视觉描述和帧特征之间的余弦相似度检索出最相关的帧。在实验中,我们将 LaViLa 用于 EgoSchema,将 CogAgent 用于 NExT-QA。GPT-4 也被用作 LLM。

与最先进技术的比较

VideoAgent 在 EgoSchema 和 NExT-QA 数据集上取得了 SOTA 结果,明显优于之前的方法。例如,它在完整的 EgoSchema 数据集上取得了 54.1% 的准确率,在 500 个问题的子集上取得了 60.2% 的准确率。

迭代帧选择分析。

VideoAgent 的关键组件之一是迭代帧选择。这一过程会动态检索和汇总信息,直到收集到足够的信息来回答问题。为了更好地理解这一过程,我们进行了全面的分析和消融研究。

基本模型的消融

LLM(大型语言模型):对不同的 LLM 进行了比较,发现 GPT-4 的性能优于其他模型;GPT-4 在结构化预测方面尤为突出,在生成准确的 JSON 格式方面表现出色。

VLM(视觉语言模型):对三种最先进的 VLM 进行了研究,结果发现 CogAgent 和 LaViLa 的性能相近,而 BLIP-2 的性能较差。

CLIP(对比语言图像模型):对不同版本的 CLIP 进行了评估,结果表明,所有版本的 CLIP 性能相当;CLIP 在检索任务方面更胜一筹,而且效率更高,因为它不需要重新计算图像嵌入。

案例研究

我们以解析 NExT-QA 实例为例,说明视频代理如何识别缺失信息、确定所需的附加信息并使用 CLIP 检索详细信息。

演示了 VideoAgent 如何正确解析 YouTube 上一小时的视频。演示者强调,在这种情况下,GPT-4V 可以提供已识别的帧来正确回答问题。

结论

本研究介绍了一个视频理解系统,该系统利用一个名为 VideoAgent 的大规模语言模型,通过多轮迭代过程有效地检索和聚合信息,展示了其在理解长视频方面的卓越效果和效率。今后的工作将集中在改进和整合模型、将其扩展到实时应用、将其应用到各种应用领域以及改进用户界面等方面,这将进一步推进和拓宽 VideoAgent 的应用。

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

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

相关文章

TD-MPC(Temporal Difference Model Predictive Control)人形机器人行走举例

td-mpc控制机器人行走举例 TD-MPC(Temporal Difference Model Predictive Control)是一种结合了时序差分学习和模型预测控制的强化学习方法,特别适用于控制复杂系统如人形机器人行走任务。TD-MPC通过使用模型预测控制(MPC)在已学到的环境模型中进行多步预测和优化,再结合…

数据特征采样在 MySQL 同步一致性校验中的实践

作者:vivo 互联网存储研发团队 - Shang Yongxing 本文介绍了当前DTS应用中,MySQL数据同步使用到的数据一致性校验工具,并对它的实现思路进行分享。 一、背景 在 MySQL 的使用过程中,经常会因为如集群拆分、数据传输、数据聚合等…

qt 播放视频

在 Qt 中播放视频&#xff0c;你可以使用 Qt Multimedia 模块。这个模块提供了处理音频和视频内容的功能。以下是一个简单的例子&#xff0c;展示了如何使用 QMediaPlayer 和 QVideoWidget 来播放视频&#xff1a; 包含必要的头文件&#xff1a; #include <QMediaPlayer&g…

容器:queue(队列)

以下是关于queue容器的总结 1、构造函数&#xff1a;queue [queueName] 2、添加、删除元素: push() 、pop() 3、获取队头/队尾元素&#xff1a;front()、back() 4、获取栈的大小&#xff1a;size() 5、判断栈是否为空&#xff1a;empty() #include <iostream> #include …

一个简单的spring+kafka生产者

1. pom <dependency><groupId>org.springframework.kafka</groupId><artifactId>spring-kafka</artifactId></dependency>2. 生产者 import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.serializer.SerializerFeature; impo…

https 自签证书相关生成csr文件、p12文件、crt文件、jks文件、key文件、pem文件

文章目录 前言https 自签证书相关生成csr文件、p12文件、crt文件、jks文件、key文件、pem文件1, 检查openssl的版本2. 生成私钥和证书签署请求 (CSR)3. 生成自签名证书4. 将证书和私钥转换为 PKCS12 格式的密钥库5. 创建信任库 (Truststore)6. 将 PKCS12 文件转换为 JKS 文件7.…

IDEA安装IDE Eval Reset插件,30天自动续期,无限激活

第一步&#xff1a; 下载idea 注意&#xff1a;版本要是2021.2.2以下 第二步&#xff1a;快捷键CtrlAlts打开设置 第三步&#xff1a;打开下图中蓝色按钮 第四步&#xff1a;点击弹窗的 “” &#xff0c;并输入 plugins.zhile.io 点击 “ok” 第五步&#xff1a;搜索IDE Ea…

前端必修技能:高手进阶核心知识分享 - CSS mix-blend-mode 图片混合模式详解

标签定义及使用说明 mix-blend-mode 属性描述了元素的内容应该与元素的直系父元素的内容和元素的背景如何混合。 语法 mix-blend-mod: 使用mix-blend-mode 各种混合模式实例 注意: Internet Explorer 或 Edge 浏览器不支持 mix-blend-mode 属性。 &#xff08;还是那个熟…

AJAX-个人版-思路步骤整理版

前置知识&#xff1a;老式的web创建工程方法就是创建项目然后添加web工件&#xff0c;然后添加lib依赖如&#xff1a;tomcat,servlet&#xff0c;等。 传统请求 对于传统请求操作&#xff1a;整体流程也就是创建静态页面&#xff0c; <!DOCTYPE html> <html lang&q…

CSS技巧:用CSS绘制超写实的酷炫徽章缎带效果,超漂亮,超酷炫

为什么要用CSS来画个徽章&#xff1f;这货脑子进水了吧&#xff01; 今天在电脑前设计&#xff0c;要做徽章效果。突然觉得可以尝试用css实现近似的效果。说干就干&#xff0c;打开编辑器&#xff0c;让我的手指头活跃起来&#xff01; 技术要点 通过多个圆形嵌套和渐变属性…

【Rust练习】1.变量绑定与解构

地址&#xff1a;https://practice-zh.course.rs/variables.html &#x1f31f; 变量只有在初始化后才能被使用 // 修复下面代码的错误并尽可能少的修改 fn main() {let x: i32; // 未初始化&#xff0c;但被使用let y: i32; // 未初始化&#xff0c;也未被使用println!(&quo…

WIN32核心编程 - 线程操作(一) 线程信息 - 线程控制

公开视频 -> 链接点击跳转公开课程博客首页 -> 链接点击跳转博客主页 目录 Thread Thread Control 创建 - Create 执行 - Execute 挂起 - Suspend 恢复 - Resume 终止 - Terminate 远程 - Remote Thread Info GetCurrentThread/Id GetThreadContext CreateToo…

Vue iview-ui 被tooltip包裹的标题,点击跳转后,提示框不消失

tooltip包裹的标题&#xff0c;点击跳转后&#xff0c;提示框不消失 就会有这种显示问题 下面这种错误方法不可行&#xff0c;解决办法往下翻 css写得没错&#xff0c;问题出在Javascript当中的 getElementsByClassName(“xxabc”)&#xff0c; 这个方法得到的是一个由class&q…

【Android】【WIFI】检查 SDIO 设备的状态

检查 SDIO 设备的状态 要检查 Android 设备上 SDIO 设备的状态&#xff0c;可以使用 ADB 命令来获取系统信息。以下是一些示例命令&#xff1a; 列出 SDIO 设备 adb shell cat /proc/devices | grep sdio检查 SDIO 模块是否加载 adb shell lsmod | grep sdio获取 SDIO 相关的…

IDEA中使用Maven打包及碰到的问题

1. 项目打包 IDEA中&#xff0c;maven打包的方式有两种&#xff0c;分别是 install 和 package &#xff0c;他们的区别如下&#xff1a; install 方式 install 打包时做了两件事&#xff0c;① 将项目打包成 jar 或者 war&#xff0c;打包结果存放在项目的 target 目录下。…

自闭症在生活中的典型表现

自闭症&#xff0c;这个看似遥远却又悄然存在于我们周围的疾病&#xff0c;其影响深远且复杂。在日常生活中&#xff0c;自闭症患者的典型表现往往让人印象深刻&#xff0c;这些表现不仅揭示了他们内心的世界&#xff0c;也提醒我们要以更加包容和理解的心态去面对他们。 首先…

R语言4.3.0保姆级安装教程,包含安装包

[软件名称]&#xff1a;R语言4.3.0 R是用于统计分析、绘图的语言和操作环境。R是属于GNU系统的一个自由、免费、源代码开放的软件&#xff0c;它是一个用于统计计算和统计制图的优秀工具。 获取链接: https://pan.quark.cn/s/180306f47179 安装步骤: 1.解压压缩包。 2.进入…

EtherCAT转Profinet网关配置说明第二讲:上位机软件配置

EtherCAT协议转Profinet协议网关模块&#xff08;XD-ECPNS20&#xff09;&#xff0c;不仅可以实现数据之间的通信&#xff0c;还可以实现不同系统之间的数据共享。EtherCAT协议转Profinet协议网关模块&#xff08;XD-ECPNS20&#xff09;具有高速传输的特点&#xff0c;因此通…

iOS开发语言基础与Xcode工具初探

在iOS开发的世界里&#xff0c;Swift语言和Xcode开发工具是每个开发者旅程的起点。Swift&#xff0c;一种由Apple设计的编程语言&#xff0c;以其简洁的语法和强大的性能&#xff0c;成为了iOS开发的首选语言。而Xcode&#xff0c;则是Apple官方提供的集成开发环境&#xff08;…

Spring的核心概念理解案列

IDEA开发的简单“登陆成功”小项目 IDEA项目结构&#xff1a; 每一部分代码和相应的解读&#xff1a; com.itTony文件下有dao&#xff08;实体&#xff09;层&#xff0c;service&#xff08;服务&#xff09;层&#xff0c;编写的2个类&#xff08;HelloSpring和TestSpring&…