LongVLM:让大模型解读长视频 SOTA 的方法

news2024/11/24 20:32:12

LongVLM:让大模型解读长视频 SOTA 的方法

    • 使用LongVLM处理长视频的步骤
    • LongVLM 方法
      • 3.1 总体架构
      • 3.2 局部特征聚合
      • 3.3 全局语义整合
    • 效果
      • 4.1 实验设置
      • 4.2 主要结果
      • 4.3 消融研究
      • 4.4 定性结果

 


论文:https://arxiv.org/pdf/2404.03384.pdf

代码:https://github.com/ziplab/LongVLM

 

LongVLM是一种高效的长视频理解方法,它通过大型语言模型(LLMs)来增强对长视频的理解。

针对现有VideoLLM在处理长视频时因无法精细理解而面临的挑战,LongVLM采用了一种简单有效的方法,提出了以下解决方案:

具体问题与解法

  • 问题1: 处理长视频需要模型能够处理大量的视觉令牌,导致计算成本高昂。

    • 解法: 通过预先压缩视觉令牌和利用池化操作或查询聚合来提取视频表示,减少了需要处理的视觉令牌数量。
  • 问题2: 现有模型无法精确识别长视频中的细节信息,如特定颜色或正在修理的具体部件。

    • 解法: LongVLM通过将长视频分解为多个短期片段,并针对每个片段提取局部特征,以维持故事线的连续性和时间结构。

解法拆解

  • 子解法1:均匀采样视频帧和特征提取 使用预训练的视觉编码器(如CLIP-ViT-L/14)提取每帧的视觉特征,包括[CLS]令牌和最后第二层的补丁特征。

    • 之所以使用均匀采样和特征提取,是因为这可以有效地从长视频中捕获关键视觉信息,同时降低处理长视频的复杂性。
  • 子解法2:局部特征聚合和时间序列维护 通过令牌合并模块将每个短期片段内的补丁特征聚合成一组紧凑的令牌,以获得每个片段的局部特征,并将这些特征按时间顺序连接。

    • 之所以采用局部特征聚合和时间序列维护,是因为它们有助于保留长视频中各个短期片段的时间结构,从而实现对视频内容更细致的理解。
  • 子解法3:全局语义信息整合 将来自视频帧的[CLS]令牌平均化以代表整个视频的全局语义信息,并将这些全局信息与每个短期片段的特征结合,然后输入到LLM中。

    • 之所以整合全局语义信息,是因为它可以丰富对每个短期片段的上下文理解,增强模型对长视频内容的整体把握能力。

主要贡献

  1. 提出了LongVLM:一种针对长视频内容进行精细级别理解的简单而有效的VideoLLM,同时保持计算成本在可接受范围内。
  2. 短期片段分解和特征提取:通过将长视频分解为短期片段并提取每个片段的局部特征,LongVLM能够保持这些片段的时间顺序,通过层次化的令牌合并模块聚合视觉令牌,同时将全局语义信息整合到每个片段中,以增强对上下文的理解。
  3. 在实验中取得显著进展:在VideoChatGPT基准测试和零样本视频问答数据集上的实验结果显示,LongVLM在细粒度水平上为长视频生成的响应比先前的最先进方法更为精确和准确。

LongVLM的提出有效地解决了长视频理解的挑战,其结合局部和全局信息的策略为视频内容理解领域提供了新的视角和方法。

 

例子背景:假设我们有一个5分钟长的视频,记录了一个手工艺人在工作坊中从头到尾制作一个木制桌子的过程。

这个视频涵盖了多个关键活动,包括选择木材、切割、打磨和组装等。

使用LongVLM处理长视频的步骤

  1. 均匀采样和特征提取

    • LongVLM首先均匀地从整个视频中采样视频帧。例如,它可能从这5分钟视频中每隔10秒提取一个帧,然后使用预训练的视觉编码器(如CLIP-ViT-L/14)来提取每帧的视觉特征。
    • 这样做能够捕获从选择木材到最终组装各个阶段的关键视觉信息,同时避免处理整个视频中的每一帧,从而降低复杂性和计算成本。
  2. 局部特征聚合和时间序列维护

    • 接下来,LongVLM将视频划分为若干短期片段,每个片段可能代表一个关键活动,如切割木材或打磨边缘。通过令牌合并模块,模型聚合每个短期片段内的补丁特征,生成每个活动的紧凑表示。
    • 通过按照这些活动发生的时间顺序连接这些表示,LongVLM能够保持视频故事的连贯性,使得最终的视频理解能够反映出手工艺人工作的实际流程。
  3. 全局语义信息整合

    • 同时,模型计算整个视频范围内[CLS]令牌的平均值,代表整个视频的全局语义信息。然后,将这些全局信息与每个短期片段的特征结合,确保在理解每个具体活动时也考虑到整个视频的上下文。
    • 例如,在解释打磨过程的具体细节时,模型也能考虑到这一步骤在整个桌子制作流程中的位置和重要性。

LongVLM 方法

LongVLM的方法,包括其总体架构、局部特征聚合过程和全局语义信息整合方式。

通过细化各个组成部分的作用和逻辑,我们可以更清晰地理解LongVLM如何实现对长视频的细粒度理解。

3.1 总体架构

图展示了所提出的LongVLM(长视频理解的大型语言模型)的总体架构。

从图中可以看出,LongVLM的流程包括以下几个主要步骤:

  1. 均匀采样视频帧:首先从视频中均匀采样T帧。

  2. 视觉编码器:对采样出的每帧视频独立地使用视觉编码器提取帧级特征。

  3. 视频划分:将输入视频划分成S个片段,每个片段包含K帧。

  4. 局部特征的聚合:在每个片段内应用层次化的令牌合并模块来获取紧凑的局部特征。

  5. 序列连接:将片段级特征顺序连接起来,显式地保留了长视频中多个短期片段的时间顺序。

  6. 全局语义特征的整合:收集[CLS]令牌并通过平均池化来聚合全局语义特征。

  7. 特征融合:将全局特征与局部特征序列连接起来形成视频表示。

  8. 投影层:投影层将视频表示转换为适合LLM处理的格式。

  9. 大型语言模型(LLM):最终,将投影后的视觉特征与标记化的系统指令和用户查询结合,并输入到LLM以生成响应。

此图还显示了模型中不同组件的参数更新状态,标识为冰雪晶体的部分表示参数在此过程中是冻结的,而火焰图标的部分表示参数在训练过程中会更新。

这表明LongVLM在不同阶段利用了不同的训练策略。

此外,通过图示的步骤性描述,我们可以了解到该模型如何从输入视频中提取关键信息,并最终生成对用户查询的响应。

  • 子解法1:视觉编码器 用于独立地提取每个视频帧的帧级特征,包括补丁特征和[CLS]令牌。

    • 之所以使用视觉编码器,是因为它能够从视频帧中提取丰富的视觉信息,为后续的特征聚合和语义理解提供基础。
  • 子解法2:局部特征序列的创建 将长视频分解为短期片段,对每个片段应用令牌合并模块,生成紧凑的片段级特征,这些特征按顺序连接,显式保留短期片段在长视频中的时间顺序。

    • 之所以这样做,是为了捕获视频中的局部信息,并保持短期事件或动作的时间结构,有助于理解视频的序列性质。
  • 子解法3:全局语义特征的整合 通过汇集和平均每个帧的[CLS]令牌,形成代表整个视频全局语义的特征,与局部特征序列一起输入到LLM。

    • 之所以整合全局语义信息,是为了丰富局部特征序列的上下文信息,帮助模型在整个视频范围内生成合理的响应。

3.2 局部特征聚合

  • 子解法1:分段和令牌合并 对每个短期片段应用层次化的令牌合并模块,通过软匹配方法逐步合并视觉令牌,以减少视觉令牌的数量并生成紧凑的局部特征。
    • 之所以采用层次化的令牌合并,是因为视频具有高度的时空冗余,直接考虑所有补丁特征会导致冗余的计算成本。

3.3 全局语义整合

  • 子解法1:全局特征的提取和整合 通过从每个帧的编码器层收集[CLS]令牌,并在时间维度上进行平均,生成代表整个视频的全局语义特征。
    • 之所以重视全局语义特征,是因为它为模型提供了视频的整体上下文信息,有助于理解不同片段之间的关系,从而在整个视频上生成合理的响应。

LongVLM通过将长视频分解为多个短期片段并聚合每个片段的局部空间-时间特征,同时通过整合全局语义信息,提出了一种既能捕获细粒度局部信息又能保留视频整体上下文的方法。

这种结合局部和全局信息的策略,使得LongVLM能够实现对长视频内容的精细理解和响应生成,克服了现有方法在处理长视频时细节理解不足的问题。

不同于依赖全局语义进行长视频理解的传统方法,LongVLM提供了一种直接且有效的方法,用于实现长期视频中的精细级别理解。

效果

这部分文本描述了LongVLM模型的实验设置、主要结果、消融研究和定性结果。以下是各个部分的中文概述和针对问题与解法的精细化分析。

4.1 实验设置

  • 数据集和评估指标:使用VideoChatGPT基准和ANET-QA等数据集对模型进行量化评估。涵盖了多个评估方面如正确性信息、细节取向、上下文理解等。

  • 实现细节:使用CLIP-ViT-L/14作为视觉编码器,Vicuna-7B-v1.1作为LLM,并在VideoChatGPT-100K数据集上微调。

4.2 主要结果

  • 基于视频的生成基准:LongVLM在细节取向和一致性方面相较于现有模型有显著提升。

  • 零样本视频问答:在三个零样本视频QA数据集上均达到了最高准确率。

4.3 消融研究

  • 局部特征聚合的影响

    • 子解法1:引入短期片段级特征,保留局部信息和时间结构。
      • 理由:与全局语义特征相比,局部特征更能够提高对视频的细粒度理解。
  • 全局语义整合的影响

    • 子解法1:将全局语义特征融入局部特征。
      • 理由:全局语义的加入显著提升了上下文理解和一致性的评分。
  • M的影响

    • 子解法1:选定M值,平衡内存成本和性能。
      • 理由:适当长度的视觉令牌能够提高模型性能。
  • E的影响

    • 子解法1:选取不同的[CLS]令牌数量,以选择最佳的E值。
      • 理由:适当数量的全局语义令牌能够提高生成质量分数。

4.4 定性结果

  • 精细理解的展示:模型能够捕捉细节信息,如准确识别正在修理的是链条而非车轮。
    • 例子:与Video-ChatGPT相比,LongVLM能够更准确地识别视频内容中的细节信息。

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

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

相关文章

java混淆的重要性分析

Java代码混淆是一种常用的安全技术,它通过对Java代码进行变换和重命名,使得源代码变得难以理解和逆向工程,从而增强代码的安全性。以下是对Java混淆重要性的分析: 保护知识产权:Java混淆可以防止恶意用户或竞争对手轻易…

算法:树形dp(树状dp)

文章目录 一、树形DP的概念1.基本概念2.解题步骤3.树形DP数据结构 二、典型例题1.LeetCode:337. 打家劫舍 III1.1、定义状态转移方程1.2、参考代码 2.ACWing:285. 没有上司的舞会1.1、定义状态转移方程1.2、拓扑排序参考代码1.3、dfs后序遍历参考代码 一…

【可视化大屏开发】18. 加餐-ECharts+百度地图API实现热力图

ECharts结合百度地图API能获得更好的使用体验。 效果展示 放大后的效果 切换卫星地图模式 实现步骤 1. 通过Python实现GPS数据模拟 2. 通过IDEA开发地图 通过Python实现GPS数据模拟 import random from math import cos, sin, radians, sqrt import jsondef generate_random…

【web网页制作】html+css网页制作学校网站主题校园网页(5页面)【附源码】

学校网页制作目录 涉及知识写在前面一、网页主题二、网页效果Page1、简介Page2、校园风光Page3、学术研究Page4、校训阐述Page5、留言 三、网页架构与技术3.1 脑海构思3.2 整体布局3.3 技术说明书 四、网页源码4.1 主页模块源码4.2 源码获取方式 作者寄语 涉及知识 学校网站主…

【云计算】云网络产品体系概述

云网络产品体系概述 在介绍云网络产品体系前,先介绍几个与云计算相关的基础概念。 阿里云在基础设施层面分为 地域 和 可用区 两层,关系如下图所示。在一个地域内有多个可用区,每个地域完全独立,每个可用区完全隔离,同…

低噪声、低电压、低功耗特点的双运算放大器D722

概述 Silicore D722具有低噪声、低电压、低功耗特点的双运算放大器,具有9MHz的高增益带宽积,转换率为8.5V/μs, 5V时静态电流为0.97mA/每个放大器。适用于低电压和低噪声场合的应用系统,它提供轨到轨的输出摆幅,符合工…

【C++】1.从C语言转向C++

目录 一.对C的认识 二.C的关键字 三.命名空间 3.1命名空间的定义 3.2命名空间的使用 四.C的输入与输出 五.缺省参数 5.1全缺省参数 5.2半缺省参数 六.函数重载 七.引用 7.1引用的特性 7.2引用和指针的区别 八.内联函数 九.auto关键字(C1…

面试:如何设计一个注册中心?

大家好,我是田哥 上周,一位群里的朋友反馈面试情况: 今天,给大家分享如何设计一个注册中心。其实这个问题,我之前在知识星球里分享过,可能是因为时间比较久了,加上这位朋友加入不久,…

提升编程效率的秘密武器:IntelliJ IDEA

IntelliJ IDEA的基本介绍 正如一个故事的开头,我们从一个名字开始 - IntelliJ IDEA。这是一个在程序员中广受欢迎的集成开发环境(IDE),由捷克公司JetBrains开发。它的名字听起来有些复杂,但实际上,它的功能…

Windows联网状态工具TCPView

文章目录 TCPView命令行工具更多Sysinternals Suite工具 TCPView TCPView用于显示系统上所有 TCP 和 UDP 终结点的详细列表,包括本地和远程地址以及 TCP 连接的状态,界面如下。 列表的表头含义如下 表头含义表头含义Process name应用名称Process id进程…

Web App 入门指南:构建预测模型 App 的利器(shiny)

Web App 入门指南:构建预测模型 App 的利器 简介 近年来,随着机器学习和人工智能技术的快速发展,预测模型在各行各业得到了广泛应用。为了方便地部署和使用预测模型,将模型构建成 Web App 是一种非常好的选择。Web App 无需下载…

【vue】v-if 条件渲染

v-if 不适用于频繁切换显示模式的场景 修改web.user&#xff0c;可看到条件渲染的效果 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initi…

ChatGPT 会被 OpenAI 的版权诉讼摧毁吗?|TodayAI

未来人工智能是否能与人类融合成为一个引人关注的问题&#xff0c;但目前&#xff0c;ChatGPT等人工智能技术可能首先需要面对一个更紧迫的挑战&#xff1a;大规模的版权侵权诉讼。近期&#xff0c;ChatGPT因涉嫌在未经授权的情况下使用大量作者的作品进行训练&#xff0c;而被…

元象4.2B参数 MoE大模型实战

01 简介 近期&#xff0c;元象公司推出了其首个Moe大模型XVERSE-MoE-A4.2B。该模型采用了混合专家模型架构&#xff08;Mixture of Experts&#xff09;&#xff0c;并拥有4.2B的激活参数&#xff0c;其性能可与13B模型相媲美。值得一提的是&#xff0c;这个模型是完全开源的&…

算法设计与分析实验报告c++实现(最近点对问题、循环赛日程安排问题、排序问题、棋盘覆盖问题)

一、实验目的 1&#xff0e;加深学生对分治法算法设计方法的基本思想、基本步骤、基本方法的理解与掌握&#xff1b; 2&#xff0e;提高学生利用课堂所学知识解决实际问题的能力&#xff1b; 3&#xff0e;提高学生综合应用所学知识解决实际问题的能力。 二、实验任务 1、最…

《剑指 Offer》专项突破版 - 面试题 107 : 矩阵中的距离(C++ 实现)

题目链接&#xff1a;矩阵中的距离 题目&#xff1a; 输入一个由 0、1 组成的矩阵 M&#xff0c;请输出一个大小相同的矩阵 D&#xff0c;矩阵 D 中的每个格子是矩阵 M 中对应格子离最近的 0 的距离。水平或竖直方向相邻的两个格子的距离为 1。假设矩阵 M 中至少有一个 0。 …

Google 推出 Gemini 1.5 Pro能处理音频;iOS 18或带来Safari 浏览助手;Llama 3 开源模型下个月推出

Google 推出 Gemini 1.5 Pro 公共预览版&#xff0c;能处理音频 Google 宣布将通过其 AI 应用平台 Vertex AI 向公众提供 Gemini 1.5 Pro&#xff0c;并且还赋予其「听力」&#xff0c;帮助用户处理音频内容。 用户可以上传会议录音、电视节目等音频内容&#xff0c;无需书面记…

Python计算多个表格中多列数据的平均值与标准差并导出为新的Excel文件

本文介绍基于Python语言&#xff0c;对一个或多个表格文件中多列数据分别计算平均值与标准差&#xff0c;随后将多列数据对应的这2个数据结果导出为新的表格文件的方法。 首先&#xff0c;来看一下本文的需求。现有2个.csv格式的表格文件&#xff0c;其每1列表示1个变量&#x…

如何入门做物联网系统压测?

文章目录 一、政策解读二、MQTT 压测常见场景三、MQTT常见业务场景1、并发连接2、消息吞吐量测试2.1 1 对 12.2 多对1&#xff08;上报&#xff09;2.3 1对多2.4 其它场景 三、MQTT常见性能指标四、MQTT常见性能工具1、emqtt-bench2、JMeter 五、小结 一、政策解读 微信公众号…

功能测试_验证标题长度合法性_边界值法

验证标题长度合法性&#xff08;标题长度大于0&#xff0c;小于等于30个字符&#xff09; 开内闭外&#xff0c;保留1和31