InternVideo2.5:Empowering Video MLLMs with Long and Rich Context Modeling

一、TL;DR

  1. InternVideo2.5通過LRC建模來提升MLLM的性能。
  2. 層次化token壓縮和任務偏好優化(mask+時空 head)整合到一個框架中,并通過自適應層次化token壓縮來開發緊湊的時空表征
  3. MVBench/Perception Test/EgoSchema/MLVU數據benchmark上提升明顯

二、介紹

MLLM的問題點:

MLLM在基本視覺相關任務上的表現仍不如人類,這限制了其理解和推理能力。它們在識別、定位和回憶常見場景中的物體、場景和動作時表現不佳。

本文如何解決:

研究多模態上下文的長度和細粒度如何影響MLLM以視覺為中心的能力和性能,而不是專注于通過scaling law直接擴展MLLM。

取得了什么結果:

具體而言,本文的貢獻在于:

  • 首次全面研究了如何實現長且豐富的上下文(Long and Rich Context,LRC),以提升MLLM的記憶和專注能力。

    • 通過將層次化token壓縮(Hierarchical Token Compression,HiCo)和任務偏好優化(Task Preference Optimization,TPO)整合到一個框架中

  • InternVideo2.5能夠顯著提升現有MLLM在視頻理解方面的表現,并賦予它們專家級的視覺感知能力。

    • 在多個短視頻和長視頻基準測試中取得了領先的性能。InternVideo2.5的視頻記憶容量使其能夠保留至少比原始版本長6倍的輸入。

三、方法

InternVideo2.5通過增強MLLM的上下文長度和細粒度來獲得長且準確的視頻理解,采用了視頻長度自適應的標記表示和任務偏好優化,如圖2所示。整個模型通過三個階段進行學習,利用了短視頻、長視頻以及經典視覺任務數據。整個方法詳細描述如下。

說人話:在前面的clip encoder時使用Tome做token壓縮,在淺層使用TDrop進行token prune做算力壓縮,深層使用注意力機制提取關鍵token,然后增加了一個mask Head和時間理解的head用于理解上下文和視覺細節(任務偏好優化),最后面接生成出結果

3.1 視頻長度自適應標記表示用于長多模態上下文

引入了一種實用的長度自適應token representation方法,能夠高效地處理任意長度的視頻序列。在動態幀采樣之后,給定的流程實現了具有兩個不同階段的層次化標記壓縮(HiCo):

  1. 視覺編碼過程中的時空感知壓縮
  2. 語言模型處理過程中的自適應多模態上下文整合。

自適應時間采樣:實現了一種根據視頻時長和內容特征進行調整的上下文感知采樣機制。

  1. 對于運動粒度至關重要的較短序列,我們采用密集時間采樣(每秒15幀)。
  2. 對于專注于事件級別理解的長序列(例如分鐘/小時級別的視頻),我們使用稀疏采樣(每秒1幀)。
  3. 這種自適應方法確保了在不同時間尺度上都能正確捕捉運動。

分層token壓縮:我們通過事件中的時空冗余和事件之間的語義冗余來壓縮長視覺信號。

  • 時空token合并:通過層次化壓縮方案解決時空冗余問題,通過語義相似性進行令牌合并,保留視頻中的關鍵信息:

    • 給定一個被劃分為T個時間片段的視頻序列,每個片段由視覺編碼器E處理以生成M個初始標記:vji?(i=1,2,...,M)用于第j個片段。這些標記通過標記連接器C進行自適應壓縮,產生N個壓縮后的標記sji?(i=1,2,...,N),其中N < M

????????通過語義相似性進行令牌合并,保留視頻中的關鍵信息。實驗表明,基于語義相似性的令牌合并方法(如ToMe)在視覺壓縮中表現出色,能夠在保留細節的同時顯著減少計算開銷。

  • 多模態token丟棄:我們引入了在語言模型處理過程中運行的標記丟棄,以進一步優化長距離視覺理解。它實現了兩階段標記減少策略:

    • 淺層中進行均勻token prune,以保持結構完整性,同時減少計算開銷;

    • 深層中進行注意力引導的token選擇,以保留與任務的關鍵信息。

3.2 通過任務偏好優化增強多模態上下文中的視覺精度

為了增強多模態語言模型(MLLMs)在細粒度視覺任務中的表現,我們引入了多任務偏好學習(MPL)。該方法通過將專門的視覺感知模塊與基礎MLLM架構集成,實現了精確的定位和時間理解等能力

  • 時間理解:為了處理動態視覺內容,我們開發了一個時間組件,結合視頻特征提取和時間對齊能力。該組件能夠預測精確的時間邊界和相關分數,從而幫助模型更好地理解視頻中的時間關系。

  • 實例分割:為了實現像素級理解和實例級區分,我們設計了一個分割模塊,基于最新的分割基礎模型(如SAM2)。該模塊通過自適應投影層將MLLM的嵌入與像素級預測連接起來,從而實現了對視頻中目標的精確分割。

模型通過聯合優化視覺感知模塊和基礎MLLM,實現了對細粒度視覺任務的精確處理。

3.3 多模態上下文建模的訓練視頻語料庫

訓練過程分為三個階段,分別使用了視覺-文本對齊數據、長視頻數據和特定任務的視覺數據。訓練數據如表1所示。

  • 視覺-文本數據用于跨模態對齊:我們收集了包含700萬圖像-文本對和370萬視頻-文本對的視覺-文本數據,以及14.3萬用于增強語言能力的文本數據。

  • 長視頻語料庫用于上下文擴展:我們主要使用了來自MoiveChat、Cineplie、Vript和LongVid的長視頻指令數據。

  • 特定任務的數據用于精確感知:包括用于指代分割任務的MeViS和SAMv2,用于空間定位的AS-V2、Visual Genome、RefCOCO等。

3.4 逐步多階段訓練

我們提出了一個統一的逐步訓練方案,共同增強MLLM的細粒度感知和時間理解能力。該方法包括三個主要階段,逐步增加任務的復雜性和視頻輸入的時間長度。

  • 階段1:基礎學習:該階段專注于兩個并行目標:(a)使用多樣化的對話模板對LLM進行任務識別指令調整,使模型能夠識別和路由不同的視覺任務;(b)視頻-語言對齊訓練,其中我們凍結視覺編碼器和LLM,同時優化壓縮器和MLP以建立基本的視覺-語言連接。

  • 階段2:細粒度感知訓練:該階段通過(a)使用特定任務的數據集集成和訓練特定任務的組件,包括任務標記、區域頭、時間頭和掩碼適配器;以及(b)使用350萬圖像和250萬短視頻-文本對進行視覺概念預訓練來增強模型的視覺理解能力。

  • 階段3:集成準確和長形式上下文訓練:最后階段通過(a)在結合多模態對話和特定任務數據的混合語料庫上進行多任務訓練,允許任務監督梯度從專門頭流向MLLM;以及(b)在包含350萬樣本的綜合數據集上進行指令調整,包括110萬圖像、170萬短視頻(<60秒)和70萬長視頻(60-3600秒)。

這種逐步訓練策略使模型能夠在發展細粒度感知和長形式視頻理解的同時,減少對通用能力的潛在退化。與依賴長文本擴展上下文窗口的先前方法不同,我們直接在長視頻上進行訓練,以最小化訓練和部署場景之間的差距。

3.5 實現

  • 分布式系統:基于XTuner開發了一個多模態序列并行系統,用于訓練和測試數百萬個多模態標記(主要是視覺)。通過整合序列和張量分布式處理以及多模態動態(軟)數據打包,我們實現了長視頻的可擴展計算。

  • 模型配置:在我們的多模態架構中,我們使用了一個結合先進視頻處理和語言建模能力的綜合框架。該系統實現了動態視頻采樣,處理64-512幀,每個8幀剪輯壓縮為128個標記,產生大約每幀16個標記的表示

四、實驗結果

在MVBench和Perception Test上,InternVideo2.5分別提升了3.7分和6.7分。在長視頻理解方面,InternVideo2.5在EgoSchema和MLVU上的提升尤為明顯,分別提升了12.4分和3.9分

視頻理解效果好,尤其是細節:

在特定任務上也表現出色:

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/75992.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/75992.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/75992.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【時時三省】(C語言基礎)條件運算符和條件表達式

山不在高&#xff0c;有仙則名。水不在深&#xff0c;有龍則靈。 ----CSDN 時時三省 有一種if語句&#xff0c;當被判別的表達式的值為“真”或“假”時&#xff0c;都執行一個賦值語句且向一個變量賦值。 如&#xff1a; if ( a > b ) max a&#xff1b; else max …

KWDB創作者計劃—邊緣計算:從概念到落地的技術解讀

引言 隨著物聯網&#xff08;IoT&#xff09;和人工智能&#xff08;AI&#xff09;的快速發展&#xff0c;數據量呈爆炸式增長&#xff0c;傳統的云計算架構逐漸暴露出延遲高、帶寬占用大等問題。邊緣計算作為一種新興的分布式計算范式&#xff0c;正在改變數據處理的方式。本…

藍橋杯基礎算法-遞歸

代碼簡潔&#xff0c;但涉及到的運算&#xff0c;會隨著遞歸層數的增加成指數級增長 路分析&#xff1a;第20行20列位于45度這條線上 這條線上的數字是1 5 13 25 41...兩數之差:4 8 12 16 --->每一個都是在前面的基礎上4&#xff0c;可以用遞歸或者循環 public class dem…

通過學習opencv圖像庫編程借助第三方庫函數完成一個綜合程序設計

通過學習opencv圖像庫編程借助第三方庫函數完成一個綜合程序設計 1) 編譯命令解釋&#xff1a; 編譯命令&#xff1a; gcc test1.cpp -o test1 pkg-config --cflags --libs opencv這條命令包含了以下部分&#xff1a; gcc test1.cpp -o test1: gcc 是 GNU 編譯器集合&#…

第十四屆藍橋杯大賽軟件賽國賽C/C++研究生組

研究生C國賽軟件大賽 題一&#xff1a;混乘數字題二&#xff1a;釘板上的正方形題三&#xff1a;整數變換題四&#xff1a;躲炮彈題五&#xff1a;最大區間 題一&#xff1a;混乘數字 有一點像哈希表&#xff1a; 首先定義兩個數組&#xff0c;拆分ab和n 然后令n a*b 查看兩個…

系統與網絡安全------網絡通信原理(2)

資料整理于網絡資料、書本資料、AI&#xff0c;僅供個人學習參考。 物理層解析 物理層概述 物理層是TCP/IP模型的最底層物理層數據傳輸提供穩定的物理連接 物理層功能 定義設備的物理連接的標準和特性&#xff0c;比如接口形狀&#xff0c;大小定義電氣特性&#xff0c;高低…

內容中臺的數字化管理核心是什么?

數字化整合與系統協同 現代企業的內容管理正經歷從分散式架構向數字化整合的范式轉變。通過將內容管理系統與文檔管理技術深度耦合&#xff0c;組織能夠打破數據孤島&#xff0c;實現跨部門、跨平臺的資源互通。例如&#xff0c;基于元數據分類的標準化體系&#xff0c;不僅提…

Python爬蟲第二戰(使用xpath爬取網站數據)

本文是我在學習過程中記錄學習的點點滴滴&#xff0c;目的是為了學完之后鞏固一下順便也和大家分享一下&#xff0c;日后忘記了也可以方便快速的復習。 使用xpath爬取豬八戒網站數據 前言 前言 今天學習的主要是關于Python使用xpath來爬取豬八戒網的網頁知識的理解和應用 #1.獲…

進程同步和進程互斥的區別

如大家所了解的&#xff0c;進程互斥是由互斥資源引起的&#xff0c;即各進程之間共享互斥資源的使用權&#xff0c;這種競爭沒有確定的必然聯系&#xff0c;哪個進程競爭到互斥資源的使用權&#xff0c;則該資源就歸哪個進程使用&#xff0c;從而獲得所需資源的進程就可以獲得…

ArkTS語言基礎之函數

前言 臭寶們終于來到了ArkTS基礎之函數&#xff0c;今天我們來學習一下ArkTS的函數的相關知識&#xff0c;上一節中也有一些函數的基礎知識。 函數聲明 函數聲明引入一個函數&#xff0c;包含其名稱、參數列表、返回類型和函數體,在下面的例子中&#xff0c;我們聲明了一個名…

redis中的hash

Redis中的hash是什么 Hash: 哈希&#xff0c;也叫散列&#xff0c;是一種通過哈希函數將鍵映射到表中位置的數據結構&#xff0c;哈希函數是關鍵&#xff0c;它把鍵轉換成索引。 Redis Hash&#xff08;散列表&#xff09;是一種 field-value pairs&#xff08;鍵值對&#x…

彈簧質點系統(C++實現)

本文實現一個簡單的物理算法&#xff1a;彈簧質點系統&#xff08;Mass-Spring System&#xff09;。這是一個經典的物理模擬算法&#xff0c;常用于模擬彈性物體&#xff08;如布料、彈簧等&#xff09;的行為。我們將使用C來實現這個算法&#xff0c;并結合鏈表數據結構來管理…

領域大模型

領域技術標準文檔或領域相關數據是領域模型Continue PreTrain的關鍵。 現有大模型在預訓練過程中都會加入書籍、論文等數據&#xff0c;那么在領域預訓練時這兩種數據其實也是必不可少的&#xff0c;主要是因為這些數據的數據質量較高、領域強相關、知識覆蓋率&#xff08;密度…

Wincc項目被鎖定無法打開

Wincc項目被鎖定無法打開 解決方法 解決方法 一般這種情況是因為項目打開的時候直接關機導致的。 刪除項目文件夾的ProjectOpened.lck的文件夾即可 然后即可正常打開項目

SpringBoot3筆記

簡介&#xff1a; springboot整合了springframework&#xff0c;整合了許多配置&#xff0c;讓我們能夠快速創建一個以springframework為基礎的項目。 問題&#xff1a; 到目前為止&#xff0c;你已經學習了多種配置Spring程序的方式。但是無論使用XML、注解、Java配置類還是…

DeepSeek和文心一言的區別

文章目錄 1.開發公司&#xff1a;2.應用場景&#xff1a;3.訓練數據&#xff1a;4.模型架構&#xff1a;5.技術特點&#xff1a;6.語言風格&#xff1a;7.開源性&#xff1a;8.界面與用戶體驗&#xff1a; 1.開發公司&#xff1a; DeepSeek 由杭州深度求索人工智能基礎技術研究…

Windows 10 安裝Mysql 8

安裝準備 下載 MySQL Windows ZIP版&#xff08;無安裝程序&#xff09;&#xff1a; 進入官網&#xff1a;https://dev.mysql.com/downloads/mysql/ 選擇 Windows → 下載 ZIP Archive&#xff0c;例如&#xff1a; mysql-8.0.34-winx64.zip 如果你的電腦沒有安裝 VC Redi…

ARM分揀機vs傳統PLC:實測數據揭示的4倍效率差

在蘇州某新能源汽車零部件倉庫&#xff0c;凌晨3點的分揀線上依然燈火通明。8臺搭載ARM Cortex-A72處理器的智能分揀機正在以每秒3件的速度處理著形狀各異的電池包組件&#xff0c;它們通過MES系統接收訂單信息&#xff0c;自主規劃最優路徑&#xff0c;將不同規格的零部件精準…

使用python訪問mindie部署的vl多模態模型

說明 今天使用mindie1.0部署了qwen2_7b_vl模型&#xff0c;測試過程出現一些問題&#xff0c;這里總結下。 問題1&#xff1a;transformers版本太低 報錯信息&#xff1a; [ERROR] [model_deploy_config.cpp:159] Failed to get vocab size from tokenizer wrapper with ex…

vscode 跳轉失敗之c_cpp_properties.json解析

{"configurations": [{"name": "Linux", // 配置名稱&#xff0c;對應當前平臺&#xff0c;VS Code 中可選"includePath": ["${workspaceFolder}/**", // 包含當前工作區下所有文件夾的頭文件&#xff08;遞歸&…