多模态大型模型,实现以人为中心的精细视频理解
大家看完觉得有帮助记得点赞和关注!!!
抽象
精细理解视频中人类的动作和姿势对于以人为中心的 AI 应用程序至关重要。在这项工作中,我们介绍了 ActionArt,这是一个细粒度的视频字幕数据集,旨在推进以人为中心的多模态理解的研究。我们的数据集包含数千个视频,这些视频捕捉了广泛的人类动作、人机交互和各种场景,每个视频都附有详细的注释,精心标记了每一个肢体运动。 我们开发了 8 个子任务来评估现有大型多模态模型在不同维度上的细粒度理解能力。实验结果表明,虽然目前的大型多模态模型在各种任务上表现值得称赞,但它们往往无法实现细粒度的理解。我们将这种限制归因于精心注释的数据的稀缺性,这些数据既昂贵又难以手动扩展。 由于手动注释成本高昂且难以扩展,我们提出了代理任务来增强模型在空间和时间维度上的感知能力。这些代理任务经过精心设计,由现有 MLLM 自动生成的数据驱动,从而减少对昂贵的手动标签的依赖。实验结果表明,所提出的代理任务显著缩小了与手动注释的细粒度数据所实现的性能差距。
1介绍
对视频中人类行为的精细理解对于推进各种以人为中心的 AI 应用程序至关重要,例如在 VR 系统和复杂的监控系统中增强人机 AI 交互[2,15,51,61].这些应用程序依赖于 AI 系统准确解释动态环境中微妙而复杂的人类活动的能力。尽管本质上是多模态的[1,60,9],使用多模态大型模型进行以人为中心的详细视频理解仍然是一个相对未开发的探索领域。
在这项工作中,我们介绍了 ActionArt,这是一个以人为中心的视频数据集,富含细粒度的手动字幕,旨在推动详细视频理解的研究。 我们的数据集建立在 MoVid 之上[7]数据集,其中包含数千个视频,展示了不同场景中的各种人类作和交互。由于 MoVid 缺乏详细的字幕,我们精心注释了每个视频,并提供了全面的描述,为每个肢体动作提供了详细的注释,如图 1 所示。1. 基于这些注释,我们提出了一个新的基准,以全面评估多模态大型语言模型 (MLLM) 的细粒度理解能力。
图 1:ActionArt 数据集中连续帧的字幕示例。我们提供详细的字幕,用于描述人类姿势、身体部位以及与对象的交互。字幕还以细粒度的级别传达了视频中的时间变化。
尽管现有的 MLM 在各种任务中表现出色[41,40,32,62,16],我们的实验发现了一个重大限制:它们辨别人类行为中细粒度细节的能力受到限制。我们主要将此归因于缺乏可用于训练这些模型的精细注释数据。鉴于生成此类详细注释的成本很高[6,34,28,26,46,13],我们的工作通过提出相应的代理任务来解决细粒度以人为中心的视频理解的具体挑战。这些任务旨在利用自动注释的数据,从而增强 MLLM 的细粒度感知能力,而无需手动注释工作。
具体来说,我们已经确定了三个关键能力,这对于精细的以人为本的视频理解至关重要。首先,模型必须准确解释每个单独帧中的人体姿势。这包括识别和分析身体各个部位的位置和方向[38,56,54,50].为了增强此功能,我们采用高级 MLLM 为单个人类图像生成详细的姿势描述,并将“姿势描述”确立为我们的代理任务之一。 其次,模型需要理解连续帧之间人体姿势的变化。这种时间理解使模型能够有效地捕获动态运动和过渡。为了解决这个问题,我们引入了一个名为 “空间差异挖掘” 的代理任务,它要求模型识别相邻帧中人类姿势之间的差异。
最后,该模型应该能够理解人类行为的时间连贯性和顺序上下文。这不仅涉及识别离散的动作,还涉及感知这些动作随时间推移的流动和相互联系[35,43,42,27],从而全面解读视频中的人类活动。为了增强此功能,我们开发了一种创新的管道,用于自动生成支持细粒度时间理解的视频问答 (QA) 对。 我们的方法不是直接从整个视频中生成 QA 对,而是从成对帧中推断出细粒度的信息,并通过连接这些成对帧来合成长视频和相应的 QA。通过这种方式,我们有效地减轻了 QA 代的噪音。
我们的主要贡献有三个方面:(1) 我们引入了 ActionArt,这是一个具有挑战性的基准测试,专注于细粒度的以人为中心的视频理解,并配有全面的评估协议。(2) 我们发现现有的 MLLM 在此基准上表现出不令人满意的性能。为了解决这个问题,我们剖析了所涉及的挑战并设计了相应的代理任务,提供了端到端的解决方案,而无需手动注释。(3) 我们的实验表明,这些代理任务大大提高了多模态模型的细粒度理解能力。
2相关工作
2.1多模态大型语言模型
多模态大型语言模型 (MLLM) 在各种应用中表现出卓越的性能,包括光学字符识别 (OCR)[53]数学[24]和视觉问答 (VQA)[21].当前的 MLLM 利用 CLIP 等视觉语言模型[33]或 SigLIP[55]提取视觉标记,然后通过连接器将其转换为大型语言模型 (LLM) 特征空间。这种方法有助于将文本人类指令与视觉上下文相结合。LLM 处理视觉标记和文本指令,从而使其能够根据视觉上下文响应查询。
在基于图像的 MLLM 领域,研究主要集中在克服固定图像分辨率的局限性上[58,25,59]以及增强连接器以优化视觉语言模型和 LLM 之间的接口[44,42].拉瓦[21]建议使用一个简单的全连接层作为连接器,而 BLIP-2[18]引入了 Q-Former 来提取与文本输入相关的视觉信息。蜜蜂[5]建议使用卷积块作为连接器。装饰[45]利用池层来减少代币,同时保持有效的 MLP 区块和 DC[52]在连接器中统一来自 VLM 多个层的视觉令牌。
将图像 ML 扩展到视频域时[56,8,63]中,现有方法将来自每个帧的视觉标记连接起来以进行视频表示[48,20,47]或使用 Q 成型器来减少令牌负载[19,14].Xu 等人。[49]建议在 SlowFast 中组织视觉标记[10]方式。视频聊天2[19]利用 Q 成型器进行可视化标记压缩。羚羊-MLLM[23]引入了一个动态压缩器,通过不同的池化步幅来减少视觉标记。
图 2:我们的注释管道首先提示 GPT-4V 为每个视频生成初始字幕。我们观察到,现有的多模态大型语言模型 (MLLM) 通常难以准确辨别人体部位的方向,即使有精心设计的提示,也会导致粗粒度的描述。此外,GPT 的标题很嘈杂,标题中的错误以红色突出显示。在发现这些问题后,我们手动干预,然后提示 GPT-4 使用相应的模板生成各种类型的 QA,然后进行手动优化。
2.2视频 ML 中的基准测试
引入了几个基准来评估模型理解视频的能力[3,36].视频MME[11]旨在全面评估 MLLM 掌握时间维度、处理多模态输入(如字幕和音频)以及适应复杂场景的能力。此数据集包括来自不同领域的 900 个视频,总计 254 小时,并包含 2700 个人工注释的问答对。MVBench[19]重点介绍了 MLLM 在时间敏感型视频理解任务中的性能,例如复杂场景中的动作识别和时间推理。它由 20 个时间理解任务组成,视频的长度主要在 20 秒左右。Ziyao 等人。[36]提出一个高质量的视频基准测试,消除视频 QA 中的捷径,确保模型必须对视频进行彻底的推理才能得出正确的答案。尽管在时间理解方面取得了重大进展,但这些工作无法评估 MLLM 的细粒度理解能力。
同时,MoVid[7]已开发用于评估人类运动理解领域的模型性能;但是,它在提供精细的字幕来详细说明每个视频中的人类动作方面存在不足。运动工作台[12]通过从不同领域获取数据并为每个视频提供全面的字幕来详细描述人类运动,从而解决了这一差距。
相比之下,我们的 ActionArt 强调以人为中心的视频理解,评估子任务同时关注细粒度的空间感知和时间理解,这与 MotionBench 中的截然不同。此外,虽然之前的工作主要旨在增强网络架构以处理更多帧以进行精细理解,但我们的战略以数据驱动的方法为中心。这包括开发新的代理任务和利用灵活的数据收集方法来提高模型性能。
3动作艺术
尽管人类动作识别和视频理解取得了重大进步,但实现精细理解(例如捕捉身体部位和方向的细微运动)仍未得到充分探索。
为了推进以人为中心的细粒度视频理解的研究,我们引入了 ActionArt 数据集。我们的数据集包含精心策划的视频,展示了不同的人类动作,每个视频都附有详细的注释,作为强大的分析基准。此外,我们设计了 7 个子任务来全面评估多模态大型语言模型 (MLLM) 在以人为中心的视频理解中的能力。
3.1数据
我们使用 MoVid[7]数据集作为我们的视频源,因为它收集了大量的人体运动记录。由于 MoVid 不包含每个视频的详细人工字幕,因此我们总共处理了 4,009 个视频剪辑,每个剪辑都提供了细致入微的字幕注释。这些视频的长度各不相同,描绘了跨多个领域的广泛人类活动和人物互动,包括武术、舞蹈以及室内和室外环境。这种多样性对理解此基准内的人类行为提出了重大挑战。
为了在视频中捕捉人类动作的复杂性,我们设计了特定的提示并利用了 GPT-4V 等先进的多模态大型模型[30]以生成初步字幕。鉴于这些模型目前在全面理解细粒度人类作方面的局限性,每个字幕都经过手动优化,以确保准确性和完整性。注释过程经过严格的双重检查,以保持高质量。
图 3:不同类型 QA 的示例。
3.2精细的以人为本的视频理解基准
为了全面评估现有大型模型的细粒度理解能力,我们受先前研究的启发,设计了 7 个子任务[19,12,7]并形成基准。这些任务跨多个维度评估模型,涵盖全局到局部和时间到空间的视角。这七个子任务是:局部空间理解、全局空间理解、时间定位、动作序列、移动方向、动作理解和动作计数。
为了确保公平和准确的评估,我们像以前的工作一样,以多项选择的形式设计了 QA[32,19,7]. 每个任务的插图如图 1 所示。3
- 局部空间理解 (LS)。此任务评估模型辨别特定身体部位(如手和大腿)的姿势和位置的能力。例如,确定手的位置或脚的姿势。
- 全球空间理解 (GS)。作为对局部空间理解的补充,此任务评估模型识别视频帧中个体整体姿势和位置的能力。它涉及确定一个人是站着、躺着还是以其他姿势,从而挑战模型整合来自整个画面的空间线索。
- 时间定位 (TL)。此任务评估模型准确确定视频序列中特定动作的时间的能力,例如识别一个人何时开始下蹲。模型必须准确观看整个视频序列,并识别其中的所有精细作才能完成任务。
-作序列 (AS)。这项任务要求模型识别和解释涉及身体各个部位的运动顺序,例如舞蹈或武术中手臂和腿部运动的顺序。它需要整合时间和空间信息。
- 移动方向 (MD)。此任务评估模型确定人或特定身体部位的方向运动的能力。通过要求模型解释三维空间中的空间方向和运动动力学,它强调空间和时间信息的整合以实现全面的运动理解。
- 动作识别 (AR)。此任务侧重于识别身体部位执行的特定动作,尤其是手和脚,例如挥手或敲击脚。它要求模型探索详细的运动语义,从而将细微的动作识别推进到传统分析之外。
-作计数 (AC)。此任务评估模型准确计算视频中特定动作频率的能力,例如计算手挥或深蹲。它强调了时间一致性在人类行为建模中的重要性,有助于在各个领域实现稳健的应用。
- 人机交互 (HOI)。在以人为中心的视频中,人与物体之间的互动非常普遍,例如捡起或丢弃物品,或使用道具进行表演。因此,在细粒度的理解中,评估模型对人-对象交互的理解至关重要。
3.3问答对生成。
我们为每种类型的子任务生成了不同的多项选择 QA 对,以衡量模型在该子任务上的表现。 对于每个子任务,我们手动定义了问题模板和示例。我们将手动精细注释的字幕与模板和示例一起输入大型语言模型(例如 GPT-4),指导大型语言模型生成所需的 QA 对。
尽管存在手动注释的细粒度字幕,但从 LLM 生成的 QA 对经常包含错误,包括冲突的选项和不正确的答案,这进一步表明了精细的以人为本的视频理解的挑战。我们手动查看了测试视频并更正了每个问题和答案。最终,我们获得了 2,678 个 QA 对。
4代理任务学习
我们认为,目前的模型很难学习细粒度的动作理解,主要是由于缺乏必要的训练数据。尽管精确标记的数据成本高昂且难以扩展,但幸运的是,我们已经将细粒度理解的挑战解构为三个部分,并相应地设计了辅助任务以增强模型的能力。通过巧妙的设计,这些辅助任务的数据可以通过自动化生产流程大规模生成。
具体来说,要细粒度地理解视频,模型应该具备三个关键能力。(1) 首先,模型需要理解每一帧中的静态空间信息。(2) 其次,该模型捕获了相邻帧之间空间信息的动态变化。(3) 此外,模型应该理解视频中的时间信息以进行动作识别和理解动作序列,等等。
根据我们的分析,我们开发了三个代理任务,以有效地利用先进的 MLLM 自动生成标记数据进行学习,接近手动标签微调的性能。 在学习代理任务后,该模型有望表现良好。
4.1姿势描述
静态空间信息理解涉及对每帧中的人体姿势信息进行分析和解释,以提高模型对静态内容的理解。 我们观察到,现有的 MLLM 可以有效地描述每一帧中的人类姿势。因此,我们可以利用高级 MLLM 为这项任务自动生成不同的标记图像。
型 | 交流 | AR 系列 | 如 | GS系列 | 海 | LS 系列 | MV | 三叶草 | 平均 Acc. |
---|---|---|---|---|---|---|---|---|---|
人类 (10%) | 71.7 | 93.5 | 78.8 | 94.8 | 92.5 | 93.3 | 80.0 | 79.4 | 87.4 |
GPT-4o 机器人† | 32.5 | 71.4 | 51.1 | 68.3 | 66.3 | 56.3 | 47.1 | 30.4 | 54.7 |
双子座† | 27.8 | 62.1 | 50.5 | 74.8 | 65.2 | 49.0 | 48.5 | 36.5 | 53.9 |
国际特工VL-2.5-78B | 54.0 | 61.4 | 55.2 | 82.9 | 73.0 | 60.8 | 48.2 | 53.5 | 62.2 |
Qwen2.5-VL-72B | 50.8 | 64.3 | 49.5 | 81.2 | 74.2 | 61.0 | 47.7 | 38.6 | 59.5 |
羚羊-7B | 39.7 | 64.3 | 52.4 | 78.6 | 75.3 | 58.8 | 44.6 | 33.1 | 57.3 |
Llava-OV-7B | 42.9 | 71.1 | 56.4 | 84.0 | 75.3 | 65.2 | 55.4 | 29.2 | 62.2 |
llava-video-qwen2-7B | 42.9 | 69.8 | 58.6 | 84.5 | 78.7 | 68.8 | 46.8 | 37.7 | 63.2 |
国际 VL-2.5-8B | 42.9 | 54.0 | 50.5 | 81.4 | 68.5 | 60.8 | 48.8 | 51.4 | 59.6 |
Qwen2.5-VL-7B | 41.3 | 59.8 | 44.8 | 78.6 | 70.8 | 55.3 | 44.9 | 30.4 | 54.7 |
PLLAVA-7B† | 24.6 | 53.7 | 43.3 | 53.8 | 70.8 | 45.3 | 27.7 | 36.2 | 44.1 |
长 VITA | 46.8 | 56.9 | 50.2 | 77.9 | 67.4 | 55.3 | 45.4 | 40.1 | 56.3 |
寒武纪-8B | 21.4 | 44.7 | 40.1 | 72.4 | 57.3 | 47.5 | 37.4 | 15.5 | 45.2 |
我们 | 45.2 | 82.6 | 61.8 | 85.5 | 83.1 | 75.7 | 59.6 | 42.5 | 69.4 |
表 1:与 ActionArt 数据集上的高级 MLLM 的比较。具有 7B 参数的模型中性能最高,以粗体突出显示。我们的方法明显优于所有其他开源 MLLM,取得了最佳结果。默认情况下,通过对每个视频 64 帧进行采样来获得结果。标有†对应于每个视频 16 帧获得的值。
4.2空间差异挖掘
捕获相邻帧之间的空间信息变化对于精细的视频理解至关重要。我们开发了一个名为 “Spatial difference mining” 的代理任务,以训练模型捕获相邻帧之间的人体姿势转换。
由于我们只需要了解两帧之间的姿势差异,因此我们可以将两张图像完全输入到多模态大型语言模型 (MLLM) 中,而无需压缩,而不必担心超过预定义的标记长度。在适当的提示下,现有的 ML 可以有效地理解两张图像之间人体姿势的变化,即使图像被解压缩并且仅限于两张。因此,我们可以利用现有的多模态大型模型来自动生成此代理任务所需的数据。
通过利用自动生成的数据集,我们可以实现对运动轨迹或姿势变化的连续跟踪,从而提高模型对动作转换的理解。
4.3合成的细粒度 QA
时态内容理解要求模型掌握整个视频中的作顺序。通常,长视频包含丰富的时间变化。 但是,为长视频获取精细字幕具有挑战性并且容易出现噪点。
为了解决这个问题,我们采用 concatenation 方法创建长视频并形成精细的动作序列。 具体来说,由于两帧可以描述人类动作,因此我们将视频中的两帧视为一个动作单元。 这些作单元被馈送到现有的 MLLM 中,以分配精细的作标签,例如 “raise right hand” 或 “bend over” 。 在得到动作单元和对应的标签后,我们将不同的动作单元和标签拼接起来,形成一个具有细粒度动作序列标签的伪长视频。 值得注意的是,串联的动作单元可能来自不同的视频,这使得我们的生成管道更具可扩展性。 我们提示高级 MLLM 根据每个视频的动作序列生成不同的 QA。
通过集成这些方法,我们的目标是让模型在不依赖大规模手动注释数据的情况下逐渐提高其理解细粒度动作的能力。通过自动化工具可以促进辅助任务数据的生成,从而降低人工标注成本并提高训练效率。
5实验
在本节中,我们将评估 ActionArt 中的高级 MLLM,并报告结果。 然后,我们进行实验以证明我们提议的代理任务的有效性。
5.1数据集和评估指标
我们的 ActionArt 中有 2,678 个手动注释的多项选择质询,它们进一步分为七项任务。 我们利用每个子任务的准确率和整个基准测试的平均准确率作为我们的评估指标。
5.2实现细节
我们使用 Oryx-7B 图像[23]model 作为我们的基线。在训练期间,我们将最大采样帧数限制为 64,每帧的分辨率上限为 480x480 像素。 我们从每个帧中提取视觉标记,并将这些标记组织到 SlowFast 中[49,10]方式来派生视频表示形式。 我们的培训过程包括三个阶段。首先,我们在 Oryx-Video-SFT 数据集上训练模型[23]以适应 SlowFast 方法进行视频表示,而不是简单地连接每个帧的视觉标记。在此设置中,空间池步幅在慢速分支中设置为 2,在快速分支中设置为 4。 接下来,我们使用代理任务训练模型。
在最后阶段,模型在我们手动注释的数据集上进行训练。此时,仅使用手动注释的字幕。我们采用高级语言模型 GPT-4[29]从这些字幕生成不同的 QA 对以进行训练。
代理任务的数据收集。我们的代理任务利用来自 NTU-RGB+D-120 数据集的数据[22]以及 Kinetics700(简称 K700)数据集[4].NTU-RGB+D-120 数据集具有广泛的人类动作和高视频质量,而 K700 数据集则包含不同领域的各种人类动作。
鉴于这些数据集的独特特征,我们通过提示 Qwen2.5-VL-72B 来解决姿态描述任务[41]描述从 NTU-RGB+D-120 数据集中随机选择的 50K 帧中的人体姿势。对于空间差分挖掘任务,我们分配了 Qwen2.5-VL-72B 的任务[41]识别 K700 视频中两个均匀采样帧之间的姿势差异,最终选择 200K 帧进行训练。
对于细粒度的 QA,我们使用 Qwen2.5-VL-72B[41]推断两个帧中描述的详细动作,并创建一个带标签的动作单元集。然后,我们连接多个动作单元以合成更长的视频,从而提示 Qwen-2.5[41]替换为作单元标签来生成各种 QA 对。我们总共使用 200K 合成视频进行训练。
PF 系列 | 任务 | 交流 | AR 系列 | 如 | GS系列 | 海 | LS 系列 | MV | 三叶草 | 平均 Acc. | |||
帕金森 | 标清 | FGQA 认证 | 马 | ||||||||||
✗ | ✗ | ✗ | ✗ | ✗ | 40.5 | 58.5 | 50.8 | 81.2 | 74.2 | 54.3 | 44.0 | 32.8 | 55.8 |
\cdashline1-14 第 2 阶段。代理任务学习 | |||||||||||||
\cdashline1-14 ✗ | ✗ | ✗ | ✔ | ✗ | 46.0 | 66.9 | 54.2 | 79.9 | 77.5 | 62.2 | 47.1 | 34.0 | 59.6 (+3.8) |
✔ | ✗ | ✗ | ✔ | ✗ | 48.4 | 72.7 | 57.3 | 82.3 | 75.3 | 64.3 | 45.4 | 33.4 | 61.4 (+5.6) |
✗ | ✔ | ✗ | ✔ | ✗ | 50.0 | 72.1 | 56.1 | 82.5 | 73.0 | 62.0 | 44.9 | 31.6 | 60.4 (+4.6) |
✔ | ✔ | ✗ | ✔ | ✗ | 46.8 | 75.2 | 55.5 | 84.0 | 73.0 | 64.5 | 46.3 | 31.6 | 61.6 (+5.8) |
✗ | ✗ | ✔ | ✔ | ✗ | 46.0 | 71.4 | 55.8 | 82.3 | 75.3 | 66.3 | 44.0 | 32.8 | 61.1 (+5.3) |
✔ | ✗ | ✔ | ✔ | ✗ | 48.4 | 73.0 | 58.0 | 84.2 | 76.4 | 67.8 | 47.9 | 33.7 | 63.0 (+7.2) |
✗ | ✔ | ✔ | ✔ | ✗ | 50.0 | 72.3 | 56.7 | 81.2 | 73.0 | 64.7 | 45.4 | 31.3 | 60.9 (+5.1) |
✔ | ✔ | ✔ | ✔ | ✗ | 46.0 | 72.7 | 59.9 | 83.6 | 78.7 | 67.7 | 47.4 | 31.9 | 62.8 (+7.0) |
\cdashline1-14 第 3 阶段。使用手动注释进行训练 | |||||||||||||
\cdashline1-14 ✗ | ✗ | ✗ | ✗ | ✔ | 39.7 | 82.6 | 60.8 | 84.9 | 79.8 | 70.5 | 54.0 | 48.6 | 67.6 (+11.8) |
✗ | ✔ | ✔ | ✔ | ✔ | 45.2 | 82.6 | 61.8 | 85.5 | 83.1 | 75.7 | 59.6 | 42.5 | 69.4 (+13.6) |
表 2:ActionArt 数据集中的消融研究。“PD” 表示姿态描述任务,“SD” 表示空间差异挖掘任务,“FGQA” 表示细粒度的 QA。 “MA” 表示使用手动注释。 为了更好地证明建议的代理任务的有效性,我们报告了使用手动标记数据(标记为灰色)直接训练的结果。 与基线模型的改进标记为红色。“PF” 表示参数融合策略。有关详细信息,请参阅文本。
5.3ActionArt 中的主要结果
我们将我们的模型与高级 MLLM 进行了比较,包括专有的 MLLM:GPT-4o[31]双子座[39];和开源 MLLM,包括 InternVL-2.5[47]、Qwen2.5-VL[41]、羚羊-7B[23], llava-onevision-7B[17]、llava-video-qwen2-7B[57]、PLLAVA-7B[48]、Long-VITA[37]和 Cambrian-8B[42]. 除了 MLLM 之外,我们还对每项任务中 10% 的问题进行了抽样,并让 5 名志愿者回答这些问题以计算人工准确性。 实验结果如表 1 所示。
从表 1 中,我们可以观察到当前多模态大型语言模型在 ActionArt 数据集上的性能还有很大的改进空间。例如,Qwen2.5-VL-72B 尽管参数尺寸较大,但准确率仅为 59.5%。不同的模型在不同的子任务中表现出不同的优势。Llava-ov-7B 在动作识别、局部空间理解和移动方向任务中表现良好,而 InternVL-2.5-8B 在时间定位方面表现出色,明显优于其他模型。这些结果表明,当前的多模态大型模型在以人为中心的视频理解方面仍然缺乏足够的粒度。
此外,结果表明,实现细粒度的、以人为中心的理解是具有挑战性的,因为简单地增加模型的参数只会导致边际改进。例如,将 Qwen-2.5-VL 模型从 7B 参数扩展到 72B 参数仅产生 4.8% 的性能提升。
相比之下,与现有方法相比,我们提出的模型表现出卓越的性能,突出了我们方法的有效性和价值。我们在基准测试中实现了 69.4% 的总体准确率,比具有 7B 参数的次优模型高出 7.2%,并超过了更大的 Qwen-2.5-VL-72B 模型。我们的模型在所有子任务中都提供了最佳性能,但作计数任务除外,与前 7B 模型 Long-VITA 相比,它比前七 7B 模型 Long-VITA 少了 1.6%。这个缺点归因于我们专注于为以人为中心的视频理解设计代理任务,这并没有解决现有 MLLM 架构的固有限制。作计数需要密集帧采样才能进行精确计算,但当前 MLLM 的有限上下文长度限制了它们对帧进行密集采样的能力。与我们的方法不同,Long-VITA 强调长视频理解并采用先进的采样策略,使其能够在该领域取得卓越的结果。
5.4消融研究
我们进行了广泛的实验,以展示我们提议的代理任务的有效性。实验结果如表 5.2 所示。第一行显示我们的基线的结果,即 Oryx-7B 模型,没有对代理任务或手动标记的数据进行任何微调。
我们的代理任务中使用的训练数据不包含实际的视频序列。例如,用于空间差异挖掘的数据包括成对帧。因此,我们推测这些代理任务可能会削弱模型处理长序列的能力。为了应对这一挑战,我们进一步探索了一个简单的解决方案:参数融合策略。
- 细粒度 QA (FGQA) 的有效性。使用从现有多语言语言模型 (MLLM) 自动合成的建议细粒度 QA 训练模型,可以显著提高模型在各个任务中的性能。平均性能从 55.8% 提高到 59.6%,比基线提高了 3.8%。这些实验表明,我们的细粒度 QA 方法有效地指导模型在更详细的层面上理解以人为中心的视频,从而减少了对手动注释的要求。
性能改进源于我们生成精细 QA 的方法。我们不是提示 MLLM 从整个视频生成 QA,而是提示它推断两个帧之间的作。通过连接这些成对帧,我们合成了一个更长的视频并得出了细粒度的标签,从而增强了模型的理解。 无花果。6 说明了我们生成的 QA,突出了这种方法的有效性。
- 姿势描述 (PD) 任务的有效性。如表 5.2 所示,姿势描述 (PD) 任务显着增强了模型识别人类动作和理解空间信息的能力。这可能是因为动作识别和空间理解都需要准确感知视频中的空间信息。使用 PD 和 FGQA 任务训练模型可将平均准确率从 55.8% 提高到 60.4%,性能比基线提高了 4.6%。
- 空间差分 (SD) 任务的有效性。与 PD 相比,SD 任务更具挑战性,因为它需要了解两帧之间的空间信息变化。SD 和 FGQA 任务的组合显示出更高的性能,平均准确率上升到 61.1%,比基线高出 5.3%。然而,将 PD 与 SD 和 FGQA 一起包括在内只能实现有限的增益,平均准确率达到 60.9%。这可能是因为通过 PD 获得的知识部分包含在 SD 任务中,而 SD 任务也需要了解姿态信息。
尽管如此,所提出的代理任务显著提高了模型性能,达到了 61.1% 的平均准确率。作为参考,如第 5.2 节所述,使用手动注释训练模型的平均准确率为 67.6%,展示了代理任务减少对昂贵的手动标签依赖的能力。
- 组合代理任务和手动注释。我们的代理任务与手动注释相结合时,可进一步提高性能。如第 5.2 节所述,我们的最终模型最初在代理任务上进行训练,然后再使用手动注释的数据。表 5.2 中的最后一行显示,与仅使用手动注释进行训练相比,代理任务的预训练将模型准确率从 67.6% 提高到 69.4%。 代理任务可以提高大多数任务的性能,但临时定位除外。这可能是由于代理任务训练中缺少真正的长视频,影响了模型处理时间变化的能力。
- 参数融合策略。根据上面的实验分析,代理任务可能会削弱模型捕获长序列的能力。 因此,我们研究了针对此问题的参数融合策略:在使用代理任务进行训练后,我们将模型参数的加权平均值与基线模型应用于基线模型,该模型是在视频指令调优数据集上训练的。 结果如表 5.2 所示。我们可以观察到,通过参数融合策略,所提出的代理任务可以将模型性能进一步提高到 63.0%,这仅比仅使用手动标记数据训练的模型低 4.6%。
图 6:从视频直接生成 QA 与我们提议的管道的比较。直接从视频生成 QA 通常会导致冲突。如图所示,C和D选项对于“男人什么时候戴上耳机? ”这个问题都是正确的。随着 QA 粒度的增加,更有可能出现冲突,因为现有的 MLML 难以感知视频中的所有精细细节。
6结论
在这项工作中,我们提出了 ActionArt,这是一个具有挑战性的基准测试,旨在评估 MLLM 在细粒度的以人为中心的视频理解方面的性能。我们将此任务分为七个子任务,以评估模型在各个维度上的能力。我们的实验结果表明,目前的 MLLM 在以人为中心的视频中难以捕获细粒度的空间细节和时间变化。 由于获取手动标签的成本很高,我们研究了精细的以人为中心的视频理解的固有挑战,并设计了相应的代理任务作为解决方案。通过对这些任务的精心设计,我们促进了训练数据的自动生成,从而减少了对昂贵的手动标记的依赖。广泛的实验表明,我们提出的代理任务显著提高了模型性能。
限制和未来的工作。 我们的工作是从数据驱动的角度开发的,因此,它受到当前 MLLM 现有局限性的限制。例如,受限的上下文长度限制了输入帧的数量,而计算人工作等详细任务需要更多的帧才能有效。但是,我们的方法有可能在未来与 MLLM 架构优化工作集成以克服这些限制。
相关文章:
多模态大型模型,实现以人为中心的精细视频理解
大家看完觉得有帮助记得点赞和关注!!! 抽象 精细理解视频中人类的动作和姿势对于以人为中心的 AI 应用程序至关重要。在这项工作中,我们介绍了 ActionArt,这是一个细粒度的视频字幕数据集,旨在推进以人为中…...
向量数据库Milvus的部署与使用
Milvus介绍 Milvus是一个开源、高性能、高扩展性的向量数据库,Milvus可以用来存储文本、图像、音频等非结构化数据,本质上是用Embeddings将非结构化数据转换成能够捕捉其基本特征的数字向量,然后将这些向量存储在向量数据库中,从…...
1.文档搜索软件Everything 的使用介绍
Everything 是 Windows 文件搜索的效率天花板,通过灵活语法和极速响应,彻底告别「找文件焦虑」。 定位:一款专注于 极速文件名搜索 的 Windows 工具,免费且轻量(安装包仅几 MB)。 核心优势…...
2025系统架构师---论企业集成平台的技术与应用
摘要 本文探讨了企业集成平台的技术与应用,以某商业银行开发的绩效考核平台系统为例,分析了企业集成平台的基本功能及关键技术,并详细阐述了在表示集成、数据集成、控制集成和业务流程集成方面的应用和实施方式。通过异构系统之间的集成,绩效考核平台与其他系统实现了有机…...
STM32Cubemx-H7-16-FreeRTOS-1-创建工程,实现两个灯的基本亮灭
前言 裸机也是开发到一半快要结束了,接下来开始上操作系统,然后先能使用基本的,后面再讲理论。 Cubemx创建工程 基本打开生成就不说了,直接从界面开始 从这里开始吧 1.首先开启外部高速晶振 2.先这样选择 选择HSE时钟环ÿ…...
深入浅出限流算法(二):更平滑的滑动窗口
好的,接续上一篇关于固定窗口计数器的讨论,我们现在来看看它的改进版——滑动窗口算法,它旨在解决固定窗口那个恼人的“临界突变”问题。 在上一篇文章中,我们探讨了最简单的固定窗口计数器限流算法,并指出了它最大的缺…...
纷析云开源财务软件:基于Spring Boot的轻量化财务中台实践
一、技术架构与核心设计 全栈开源技术栈 后端框架:基于Spring Boot 3.x构建,集成MyBatis-Plus作为ORM层,支持JDK 17特性(如虚拟线程并发处理),确保高吞吐与稳定性。 前端框架:采用Vue 3 TypeS…...
软考-软件设计师中级备考 5、数据结构 树和二叉树
1、树的基本概念 节点的度:节点拥有的子树数目。例如,若一个节点有 3 棵子树,其度为 3。树的度:树中节点的最大度数。如树中所有节点的度最大为 4,则树的度是 4。叶子节点:度为 0 的节点,也…...
php 需要学会哪些技术栈,掌握哪些框架
作为一个「野生」程序员,我的学习过程比较急功近利。 我记得自己写的第一个 PHP 程序是留言本。一上来对 PHP 一窍不通,所以直接去网上找了个留言本的源码,下载下来后先想办法让它在自己电脑上运行起来。通过这个过程掌握了 PHP 开发环境的搭…...
短视频矩阵系统贴牌批量剪辑功能开发,支持OEM
一、引言 在短视频行业蓬勃发展的当下,短视频矩阵运营已成为企业和个人实现品牌推广、流量增长的重要策略。然而,面对大量的视频素材和多个运营账号,传统的单个视频剪辑、发布方式效率极低,难以满足矩阵运营的需求。为了提高内容…...
【Java EE初阶】多线程(二)
1.在图中代码,我们调用了start方法,真正让系统调用api创建了一个新线程,而在这个线程跑起来之后,就会自动执行到run。调用start方法动作本身速度非常快,一旦执行,代码就会立即往下走,不会产生任…...
分布式链路追踪理论
基本概念 分布式调用链标准-openTracing Span-节点组成跟踪树结构 有一些特定的变量,SpanName SpanId traceId spanParentId Trace(追踪):代表一个完整的请求流程(如用户下单),由多个Span组成…...
conda和bash主环境的清理
好的!要管理和清理 Conda(或 Bash)安装的包,可以按照以下步骤进行,避免冗余依赖,节省磁盘空间。 📌 1. 查看已安装的包 先列出当前环境的所有安装包,找出哪些可能需要清理ÿ…...
Linux系统管理与编程14:Shell变量及定制bash登录界面
兰生幽谷,不为莫服而不芳; 君子行义,不为莫知而止休。 1.准备工作 创建用户wu useradd wu passwd wu 修改权限 chmod uw /etc/sudoers 编辑 visudo 在root行下,添加:“wu ALL……” 图14- 1 恢复文件权限并…...
微信小程序开发笔记
一、首先,下载一个微信开发者工具。前端项目就正常创建,由于本人的前端一塌糊涂,就让AI给我生成了一个我想要的前端项目(包括后面写功能)。 这里开发的时候会用到这个,但是一定注意服务部署到服务器上再本…...
SEO长尾关键词优化核心策略
内容概要 在搜索引擎优化领域,长尾关键词因其精准的流量捕获能力与较低的竞争强度,已成为提升网站自然流量的核心突破口。本文围绕长尾关键词优化的全链路逻辑,系统拆解从需求洞察到落地执行的五大策略模块,涵盖用户搜索意图解析…...
第一节:Linux系统简介
理论知识 Linux的起源与发展:1991 年,芬兰赫尔辛基大学的学生林纳斯托瓦兹受到 Minix 和 Unix 思想的启发,开始编写 Linux 内核。最初,它只是一个个人项目,但随着开源社区的加入,Linux 迅速发展壮大。如今…...
微信聊天机器人搭建 教程/开发
创建标签 简要描述: 添加标签 请求URL: http://域名地址/addContactLabel 请求方式: POST 请求头Headers: Content-Type:application/jsonAuthorization:login接口返回 参数: 参数名必…...
Ubuntu中C++项目安装二次规划库——qpOASES 库
一、在Ubuntu安装qpOASES 库 步骤 1:更新系统包列表 首先,打开终端,执行以下命令更新系统的包列表,以确保你能获取到最新的软件包信息。 sudo apt update 步骤 2:安装必要的依赖 qpOASES库的编译和安装需要一些基…...
JavaScript-基础语法
前言: 一个网页由三个部分组成: 1.html:超文本标记语言,用于控制网页的结构(页面元素和内容) 2.css:级联样式表,用于控制网页布局,涉及对网页文字,背景,布局进…...
已有 npm 项目,如何下载依赖、编译并运行项目
诸神缄默不语-个人技术博文与视频目录 这篇博文的适用场景是比如说反正你现在有了一个现成的npm项目,然后无论如何,你要把前端挂起来。 文章目录 一、准备工作1. 安装 Node.js 和 npm2. 克隆或获取项目代码 二、安装项目依赖三、了解 npm 脚本命令四、构…...
第四章:Messaging and Memory
Chapter 4: Messaging and Memory 从配置管理到消息记忆:如何让AI记住对话内容? 在上一章的配置管理中,我们已经能让系统记住所有参数设置。但你是否想过:如果用户连续提问“今天天气如何?”和“明天呢?”…...
iPhone闹钟无法识别调休致用户迟到,苹果客服称会记录反馈
iPhone闹钟无法识别调休致用户迟到,苹果客服称会记录反馈 基于 6 个来源 因“五一”劳动节调休,4月27日(周日)本应上班,不少iPhone用户却因闹钟未响迟到,“调休”“当苹果闹钟遇到调休”话题登上热搜。苹…...
npm error code CERT_HAS_EXPIRED
npm error code CERT_HAS_EXPIRED 欢迎来到我的主页,我是博主英杰,211科班出身,就职于医疗科技公司,热衷分享知识,武汉城市开发者社区主理人 擅长.net、C、python开发, 如果遇到技术问题,即可私…...
C++ 之 【list的简介、list 的构造函数、iterator、容量操作、元素访问、增删查改与迭代器失效】
目录 1.list的介绍 2.list的使用 2.1 构造函数 2.2 iterator 的使用 2.3 容量操作 2.4 元素访问 2.5 增删查改 2.5.1头插头删与尾插尾删 2.5.2 insert 、erase 函数 2.5.3 clear、swap函数 2.5.4 关于find函数 3.迭代器失效 1.list的介绍 (1)list的底层通常实现为带…...
使用手机录制rosbag包
文章目录 简介录制工具录制步骤录制设置设置IMU录制频率设置相机分辨率拍照模式录制模式数据制作获取数据数据转为rosbag查看rosbag简介 ROS数据包(rosbag)是ROS系统中用于记录和回放传感器数据的重要工具,通常用于算法调试、系统测试和数据采集。传统上,rosbag依赖于ROS环…...
使用阿里云 CDN 保护网站真实 IP:完整配置指南
使用阿里云 CDN 保护网站真实 IP:完整配置指南 一、宝塔面板准备工作1. 确认网站部署状态2. 宝塔中检查网站配置 二、配置阿里云 CDN1. 添加域名到 CDN2. 配置 DNS 解析3. 配置成功确认 三、宝塔面板安全加固(隐藏 IP 的关键步骤)1. 禁止通过…...
JAVA-StringBuilder使用方法
JAVA-StringBuilder使用方法 常用方法 append(Object obj) 追加内容到末尾 sb.append(" World"); insert(int offset, Object obj) 在指定位置插入内容 sb.insert(5, “Java”); delete(int start, int end) 删除指定范围的字符 sb.delete(0, 5); replace(int start…...
Milvus(9):字符串字段、数字字段
1 字符串字段 在 Milvus 中,VARCHAR 是用于存储字符串数据的数据类型。定义VARCHAR 字段时,有两个参数是必须的: 将datatype 设置为DataType.VARCHAR 。指定max_length ,它定义了VARCHAR 字段可存储的最大字符数。max_length 的有…...
locust压力测试
安装 pip install locust验证是否安装成功 locust -V使用 网上的教程基本上是前几年的,locust已经更新了好几个版本,有点过时了,在此做一个总结 启动 默认是使用浏览器进行设置的 # 使用浏览器 locust -f .\main.py其他参数 Usage: locust […...
Uniapp:showLoading(等待加载)
目录 一、出现场景二、效果展示三、具体使用一、出现场景 在项目的开发中,我们经常会请求后台接口返回数据,但是每一个接口返回数据的时间不一致,有的快,有的慢,这个时候如果不加一个遮罩层,接口返回慢的时候,非常影响用户体验 二、效果展示 三、具体使用 显示加载框…...
线性代数的本质大白话理解
先一句话总结的如下: 线性代数的本质,就是研究“线性变化”——包括空间中点、向量、矩阵之间如何通过线性规则(加法、数乘)变化和联系,并理解这些变化背后的结构。 1. 向量(Vector)——不是数据…...
【Rust通用集合类型】Rust向量Vector、String、HashMap原理解析与应用实战
✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…...
Kotlin await等待多个异步任务都完成后才进行下一步操作
Kotlin await等待多个异步任务都完成后才进行下一步操作 import kotlinx.coroutines.*fun main() {runBlocking {val tagA "a"val tagB "b"val a async {worker(tagA)}val b async {worker(tagB)}println("${System.currentTimeMillis()} 等待 $t…...
佛山大旺高新区3650 M5 ERP服务器维修案例
1:机器型号:联想system x3650 m5 2:故障问题:纺织公司由于没有专业的it网管,导致服务器各种爆故障灯,本次处理的是用户反馈最近ERP软件使用过程中经常弹出资源不足的报错。 3:于是预约我们工程…...
利用Python生成Xilinx FPGA ROM IP核 .coe初始化文件
以下是一个 Python 脚本,用于生成 Xilinx IP ROM 的.coe 格式初始化文件,假设ROM 深度为 1024,数据位宽为 32bit,使用随机的 32 位无符号数进行初始化: import random# 定义ROM的深度和数据位宽 rom_depth 1024 data…...
配置电子邮件服务
配置电子邮件服务 一.基于Postfix的邮件发送 1. 安装Postfix yum install postfix -y 再下载一个telnet工具 yum -y install telnet 启动Postfix systemctl start postfix systemctl enable postfix 查看系统中端口是否被Postfix使用 netstat -tnlp | gre…...
WGCAT工单系统发现错误 定时处理工单数据任务错误
一直在用WGCAT工单系统,今天在系统日志里,看到了这个错误提示,不知道是什么原因 2025-04-26 07:05:00.000 [taskScheduler-10] INFO com.wgcloud.task.ScheduledTask - 定时处理工单数据任务开始----------2025-04-26 07:05:00 2025-04-26 …...
软件工程(一):黑盒测试与白盒测试
黑盒测试(Black Box Testing) 定义 黑盒测试是指不关心程序内部实现细节,只关注输入和输出的测试方法。把被测软件当作一个“黑盒子”,只依据功能说明书或需求文档来编写测试用例,验证功能是否正确。 特点 不需要了…...
emqx部署
要修改文件-命名空间-节点选择器 #apiVersion: v1 ##kind: ConfigMap ##metadata: ## name: emqx-config ##data: ## emqx.conf: | ## # --- apiVersion: v1 kind: PersistentVolume metadata:name: emqx-pv spec:capacity:storage: 5GivolumeMode: FilesystemaccessMode…...
【KWDB 创作者计划】_KWDB产品技术解读
文章目录 每日一句正能量一、KWDB简介二、官网信息三、技术亮点解读(一)存储引擎(二)查询引擎(三)分布式架构 四、应用场景五、总结 每日一句正能量 你的心为什么这样分散,使得你放慢了脚步。他…...
C++ 表达式求值优先级、结合律与求值顺序(五十九)
1. 运算符优先级与结合律 优先级(Precedence) 决定未加括号时运算符如何“绑”在一起:5 10 * 20 / 2; // 等同于 5 ((10 * 20) / 2)结合律(Associativity) 决定同级运算符的结合方向: 左结合࿰…...
乐理学习笔记(一)---节拍与音符
节拍 衡量音的长度和节奏的基本单位,以强弱关系按照一定的规律循环进行 拍大腿、拍手 类型 上面的这些不同类型节拍的强弱关系中第一个都是强(起确定性作用,而不是音量最大) 强和弱是决定性的区别,每一个强拍是和弦…...
《系统架构 - Java 企业应用架构中的完整层级划分》
文章目录 Java 企业应用架构中的完整层级划分核心层级(基础架构)业务逻辑层接口层基础设施层辅助层级特殊架构层级现代架构扩展层各层调用关系示例分层原则建议 Java 企业应用架构中的完整层级划分 除了常见的 Controller、Service、DAO 等标准层级外&a…...
Adobe Lightroom Classic v14.3.0.8 一款专业的数字摄影后期处理软件
软件介绍 Adobe Lightroom Classic 2025中文激活版(Adobe桌面照片编辑软件)LRC2025(LR2025本地离线版)是一款桌面照片编辑器和相册管理软件的raw格式编辑软件,支持各种RAW图像相机配置,HDR全景照片&#x…...
SQL 易混易错知识点笔记1(drop,role,%,localhost)
DROP 与 DELETE 的区别 DELETE:删除表中的数据行,属于DML操作,可回滚,可带WHERE条件 DELETE FROM table WHERE condition; -- 删除特定行 DELETE FROM table; -- 删除所有行但保留表结构 DROP:删除整个数据库对象(表、…...
C++23 std::bind_back:一种调用包装器 (P2387R3)
文章目录 引言背景知识旧有的绑定工具C20的std::bind_front std::bind_back的定义和功能定义功能 std::bind_back的使用场景简化回调函数部分应用参数 std::bind_back与其他绑定工具的对比与std::bind的对比与std::bind_front的对比 总结 引言 在C的发展历程中,每一…...
使用多线程快速向Excel中快速插入一万条数据案例
当有大量数据需要存入Excel时,使用传统的单线程完成会有以下这些弊端: 导入速度慢:单线程一次只能处理一个任务,在导入大量数据时,需要逐个将数据写入 Excel。这意味着 CPU 在大部分时间里只能处理一个数据块ÿ…...
RestRequest ,newtonsoft解析
var request new RestRequest(Method.GET); IRestResponse response client.Execute(request); Console.WriteLine(response.Content); //保存token Newtonsoft.Json.Linq.JObject obj3 Newtonsoft.Json.Linq.JObject.Pars…...
vs2022解决 此项目需要MFC库。从visual studio安装程序(单个组件选项卡)为正在使用的任何工具和体系结构安装他们问题
使用visual studio 2022创建MFC 单文档的项目,编译器报错: 严重性 代码 说明 项目 文件 行 禁止显示状态 详细信息 错误 MSB8041 此项目需要 MFC 库。从 Visual Studio 安装程序(单个组件选项卡)为正在使用的任何工具集和体系结构安装它们。 osgEarthMFC…...