Janus-Pro
- 摘要
- Abstract
- 文章信息
- 引言
- 方法
- Janus 架構
- Janus 訓練
- Janus-Pro 的改進
- 實驗結果
- 總結
摘要
本篇博客介紹了Janus-Pro,這是一個突破性的多模態理解與生成統一模型,其核心思想是通過解耦雙路徑視覺編碼架構解決傳統方法中語義理解與像素生成的任務沖突。針對統一編碼器在高低層次特征需求上的矛盾,Janus-Pro采用SigLIP編碼器提取圖像語義特征(理解路徑)與VQ Tokenizer建模像素細節(生成路徑),再通過自回歸Transformer聯合訓練;針對訓練效率低的問題,提出三階段優化策略:延長ImageNet基礎生成訓練、采用高密度文本-圖像數據預訓練、調整微調數據配比,使訓練周期縮短20%;同時引入9000萬結構化理解數據和7200萬合成美學生成數據,平衡多任務性能。實驗表明,Janus-Pro在MMBench(79.2)和GenEval(0.80)上達到SOTA,生成穩定性顯著提升。然而,受限于384×384分辨率,其在細粒度識別和圖像細節還原上仍有不足。未來研究可探索更高分辨率輸入、動態特征融合機制,以及跨模態對齊損失優化,進一步突破多模態統一架構的語義-細節平衡瓶頸。
Abstract
This blog introduces Janus-Pro, a groundbreaking unified model for multimodal understanding and generation. Its core innovation lies in a decoupled dual-path visual encoding architecture that resolves the inherent conflict between semantic comprehension and pixel-level generation tasks in traditional unified encoders. To address the contradictory demands for high-level semantic features (understanding) and low-level pixel details (generation), Janus-Pro employs a SigLIP encoder to extract image semantic features (understanding path) and a VQ Tokenizer to model pixel-level details (generation path), unified via joint training with an autoregressive Transformer. To enhance training efficiency, it proposes a three-stage optimized strategy: prolonging ImageNet-based foundational training, adopting high-density text-image data for pretraining, and adjusting fine-tuning data ratios, reducing the training cycle by 20%. The model further balances multitask performance by integrating 90 million structured understanding samples and 72 million synthetic aesthetic generation datasets. Experiments demonstrate SOTA results on MMBench (79.2) and GenEval (0.80), with significantly improved generation stability. However, constrained by 384×384 resolution, challenges remain in fine-grained recognition and intricate detail restoration. Future research should explore higher-resolution inputs, dynamic feature fusion mechanisms, and cross-modal alignment loss optimization to further bridge the semantic-detail trade-off in unified multimodal architectures.
文章信息
Title:Janus-Pro: Unified Multimodal Understanding and Generation with Data and Model Scaling
Author:Xiaokang Chen, Zhiyu Wu, Xingchao Liu, Zizheng Pan, Wen Liu, Zhenda Xie, Xingkai Yu, Chong Ruan
Source:https://arxiv.org/abs/2501.17811
引言
近年來,多模態大模型在理解和生成任務上取得了顯著進展,成為人工智能領域的核心研究方向之一。傳統方法通常采用統一的視覺編碼器處理多模態輸入,但由于理解和生成任務對視覺特征的需求存在本質差異(前者需要高層次的語義信息,后者依賴低層次的像素級建模),這種架構容易導致性能沖突。例如,生成任務對圖像細節的建模要求可能削弱理解任務的語義捕捉能力,反之亦然。為了解決這個問題,Janus 提出解耦兩種任務的視覺編碼,這緩解了多模態理解和生成任務之間的沖突,在這兩項任務中都實現了出色的性能。
Janus在1.5B的參數規模上驗證了可行性,其仍存在明顯局限:
(1)訓練策略效率低下,例如在預訓練階段需分階段處理ImageNet數據和文本生成數據,導致計算資源浪費;
(2)訓練數據規模和質量不足,尤其在文本到圖像生成任務中,真實數據噪聲大、合成數據缺乏美學優化,影響生成穩定性;
(3)模型容量受限,無法充分發揮解耦架構的潛力。
為了解決上述問題,本文介紹的Janus-Pro,從三個維度對Janus進行全面升級:
- 訓練策略優化:重新設計三階段訓練流程,延長ImageNet數據建模時間以增強像素依賴學習,并在預訓練階段直接采用高質量文本生成數據,提升效率。
- 數據擴展與平衡:引入9000萬理解任務樣本(含表格、圖表等結構化數據)和7200萬合成美學圖像數據,通過1:1的真實-合成數據比例改善生成質量。
- 模型規模化驗證:將參數量從1.5B擴展至7B,證明解耦架構的可擴展性,并通過實驗發現大模型在多任務損失收斂速度上顯著優于小模型。
這些改進使Janus-Pro在多模態理解和生成任務上均超越現有SOTA模型。
方法
Janus 架構
Janus-pro 的架構與 Janus 的架構一致。所以在此小節先介紹Janus。
對于多模態理解,通常遵循LLaVA的設計,使用視覺編碼器作為橋梁,使大語言模型能夠理解圖像。對于生成,通常基于擴散模型,也有一些基于自回歸方法。一些方法試圖使用單個Transformer試圖統一多模態理解與生成任務,其通常使用單一視覺編碼器處理兩個任務的輸入。
然而,多模態理解與生成任務所需要的表示有所差異。在多模態理解任務中,視覺編碼器的目的是提取高層次的語義信息(如物體類別或者視覺屬性),輸出不僅涉及從圖像中提取信息,還涉及復雜的語義推理,編碼器主要集中于高維語義表示。生成任務主要關注于生成局部細節并在圖像中保持全局一致性,因此需要低維度編碼表示空間結構和紋理細節。在同一空間中將兩種任務的表示進行統一會導致沖突。
Janus包含2個獨立的視覺編碼路徑,分別用于多模態理解、生成,并帶來兩個收益:
- 緩解了源自多模態理解和生成不同粒度需求的沖突
- 具有靈活性和可擴展性,解耦后,理解和生成任務都可以采用針對其領域最先進的編碼技術
- 對于文本理解,使用LLM內置Tokenizer將文本轉換為離散IDs;
- 對于多模態理解,使用SigLIP編碼器抽取圖片中的高維語義特征(筆者注:Cosmos中在Guardrails部分同樣使用SigLIP編碼器),使用Adaptor(2層MLP)將抽取特征映射到LLM的文本特征空間中;
- 對于視覺生成,使用VQ Tokenizer將圖像轉換為離散IDs,使用Adaptor(2層MLP)將每個ID映射到LLM的文本特征空間中;
無論是視覺生成還是多模態理解任務,圖片特征序列和文本特征序列都會連接在一起,作為LLM(文中使用DeepSeek-LLM 1.3B)的輸入。
The built-in prediction head of the LLM is utilized for text predictions in both the pure text understanding and multimodal understanding tasks, while a randomly initialized prediction head is used for image predictions in the visual generation task. The entire model adheres to an autoregressive framework without the need for specially designed attention masks.
LLM 的內置預測頭用于純文本理解和多模態理解任務中的文本預測,而隨機初始化的預測頭用于視覺生成任務中的圖像預測。整個模型遵循自回歸框架,不需要專門設計的注意力掩碼。
Janus 訓練
Janus的訓練分為3個階段:
- stage1:訓練Adaptor與Image Head,在嵌入空間創建語言元素與視覺元素之間的聯系,使得LLM能夠理解圖像中的實體,并具備初步視覺生成能力。其中對于多模態理解,使用來自SHareGPT4V125萬個圖像-文本配對字幕數據,格式:<圖像><文本>;對于視覺生成,使用來自ImageNet1k的120萬個樣本,格式:<類別名><圖像>。
- stage2:統一預訓練,使用多模態語料庫進行統一預訓練,學習多模態理解和生成。在該階段使用純文本數據、多模態理解數據和視覺生成數據。使用ImageNet-1k進行簡單的視覺生成訓練,隨后使用通用文本到圖像數據提升模型開放領域的視覺生成能力。
- stage3:監督微調,使用指令微調數據對預訓練模型進行微調,以增強其遵循指令和對話的能力。微調除生成編碼器之外的所有參數。在監督答案的同時,對系統和用戶提示進行遮蓋。為了確保Janus在多模態理解和生成方面都具備熟練度,不會針對特定任務分別微調模型。相反,我們使用純文本對話數據、多模態理解數據和視覺生成數據的混合數據,以確保在各種場景下的多功能性。
訓練目標 Janus是自回歸模型,訓練使用交叉熵損失函數,對于純文本理解和多模態理解任務,在文本序列計算損失。對于視覺生成任務,僅在圖像序列上計算損失。為了保持設計簡單,沒有為不同任務分配不同的損失權重。
推理 使用下一個詞元預測方法,對于純文本理解和多模態理解,從預測分布中依次采樣詞元。對于圖像生成,使用無分類器引導。
Janus-Pro 的改進
Janus訓練數據有限且模型容量(1B)相對較小,在一些方面存在不足,如在短提示下的圖像生成表示不佳,文本到圖像生成的質量不穩定。Janus-Pro的架構與Janus相同。
Janus 的改進主要在三個方面:訓練策略、數據規模和模型規模。
訓練策略上:
- 延長 stage1 的訓練,在 ImageNet 數據集上充分訓練,即便 LLM 參數固定,模型也能有效建模像素依賴并生成合理圖像;
- stage2 中不再使用ImageNet,直接使用正常文本到圖像數據訓練模型基于密集描述生成圖像,提高訓練效率和整體性能。
- 調整 stage3 監督微調過程中不同類型數據集的數據比例,從 7:3:10 調整為 5:1:4,在保持視覺生成能力的同時提升多模態理解性能。
數據規模上:
在多模態理解和視覺生成方面均擴展了訓練數據。
多模態理解中,第二階段預訓練數據參考 DeepSeekVL2 添加約 9000 萬個樣本,包括圖像字幕數據集、表格圖表和文檔理解數據;第三階段監督微調數據也加入了 DeepSeek-VL2 的其他數據集,如 MEME 理解、中文對話數據等,豐富了模型處理任務的能力和對話體驗。
視覺生成中,Janus 之前使用的真實世界數據質量欠佳且有噪聲,導致文本到圖像生成不穩定。Janus-Pro 引入約 7200 萬個合成美學數據樣本,統一預訓練階段真實數據與合成數據比例為 1:1,實驗表明使用合成數據訓練模型收斂更快,生成的圖像更穩定且美學質量更高。
模型規模上,Janus 使用 1.5B參數的 LLM 驗證了視覺編碼解耦的有效性,Janus-Pro 將模型擴展到 7B 參數。實驗觀察到,使用更大規模的 LLM 時,多模態理解和視覺生成的損失收斂速度比小模型顯著提升,進一步驗證了該方法的強擴展性。
實驗結果
多模態理解性能
在多個廣泛認可的基于圖像的視覺語言基準測試中評估 Janus-Pro,包括 GQA、POPE、MME 等。結果顯示 Janus-Pro 取得總體最佳成績,這得益于其對多模態理解和生成的視覺編碼解耦,緩解了兩個任務間的沖突。
與參數規模大得多的模型相比,Janus-Pro 也極具競爭力,例如 Janus-Pro-7B 在除 GQA 外的所有基準測試中均優于 TokenFlow-XL(13B)。
視覺生成性能
在 GenEval 基準測試中評估文本到圖像的生成能力,Janus-Pro-7B 總體準確率達到 80%超越了所有其他統一模型或僅用于生成的模型,如 Transfusion、SD3-Medium 和 DALL-E 3 等,這表明該模型具有更好的指令跟隨能力。
在 DPG-Bench 基準測試中,Janus-Pro 得分為 84.19,超過所有其他方法,證明 Janus-Pro 在遵循密集指令進行文本到圖像生成方面表現出色。
Janus-pro 代碼:https://github.com/deepseek-ai/Janus
總結
Janus-Pro作為多模態理解與生成統一架構的突破性模型,其核心在于雙路徑視覺編碼器與三階段訓練策略的協同優化:通過獨立的SigLIP編碼器(提取語義特征)和VQ Tokenizer(捕捉像素細節)分別處理理解與生成任務,再將特征序列拼接輸入自回歸Transformer聯合訓練;訓練流程上,第一階段延長ImageNet數據學習以強化生成基礎,第二階段直接采用高密度文本-圖像數據提升效率,第三階段調整數據配比以平衡多任務性能。該方法在多模態理解(MMBench 79.2)和生成(GenEval 0.80)上實現SOTA,生成穩定性顯著提升,但受限于384×384分辨率,存在細粒度識別不足和圖像細節缺失的缺陷。未來研究可探索更高分辨率輸入、動態特征融合機制,以及跨模態對齊損失的優化,以進一步突破多模態統一架構的語義-細節平衡瓶頸。