ESC
输入关键词搜索文章
目录

SemHiTok:语义引导的层级码本,统一多模态理解与生成

0.66rFID (384)
1512.8MME-P (384)
5.40gFID MJHQ
93.7%Codebook Usage
Part 1
统一 Tokenizer 的困境

自回归模型在 NLP 上的成功,让研究者们开始思考:能否用一套统一的 next-token prediction 框架同时做多模态理解和生成?关键瓶颈在于图像 tokenizer——理解任务需要语义特征("这是什么"),生成任务需要像素特征("长什么样"),而两者几乎天然矛盾。

之前的方案可以分成几类:VILA-U #Wu et al., 2024c 把语义对齐损失和像素重建损失混在一起联合优化,但两个目标互相打架,总是妥协到次优解;SDE #Xie et al., 2025 进一步解耦编码器但仍保留混合码本;TokenFlow #Qu et al., 2024 用双码本加共享映射做并行投票,仍然摆脱不了联合训练的魔咒;Janus #Wu et al., 2024a 干脆用两套独立编码器各干各的,但混合任务处理起来很别扭。

不同 tokenizer 架构与训练策略对比
图 1:不同 Tokenizer 架构与训练策略对比(来源:SemHiTok, Fig.1)。从左到右:(a) SDE——混合码本 + 联合训练;(b) TokenFlow——解耦码本但仍联合训练;(c) SemHiTok——层级码本 + 分阶段训练。结构和训练策略都解耦才是最优解。
Part 2
联合训练为什么总是次优?

先看一组对比实验(论文 Table 6),揭示问题的本质#Chen et al., 2025

实验结构训练GQA↑MME-P↑SEED-Bench↑rFID↓Usage
Exp 1 (SDE)耦合联合58.01240.056.73.7892.9%
Exp 2解耦联合57.81357.455.33.2245.9%
Exp 3 (拼接)独立分阶段58.71210.956.12.1997.0%
Exp 4 (SemHiTok)层级分阶段60.31355.862.91.4293.7%

这组实验说明几个关键事实:

  1. 联合训练 + 耦合结构 = 最差(Exp 1):SDE 的做法,两个方向都做得不好
  2. 解耦结构救不了联合训练(Exp 2):虽然结构分开了,但联合训练导致 codebook usage 崩塌到 45.9%,说明语义和像素目标在梯度层面互相干扰
  3. 简单拼接 ≠ 统一(Exp 3):两个独立预训练的 tokenizer 拼起来,重建好但理解性能明显下降(MME-P 从 1355.8 跌到 1210.9),因为原始像素特征干扰了语义对齐
  4. 层级 + 分阶段 = 最优(Exp 4):在所有维度上取得最佳平衡
核心洞察:问题不在于结构是否解耦,而在于训练策略是否解耦#Chen et al., 2025。SemHiTok 的层级结构天然支持分阶段训练——先冻结语义码本学像素,互不干扰#Chen et al., 2025

那为什么层级结构能做到这一点?这源于一个更底层的观察。

语义 code 与像素特征的关联
图 1:语义 code 对应的图像块在像素层面高度相似(来源:SemHiTok, Fig.4)。语义 code v14312 对应的全是鸡冠,v3108 对应的全是鼻子——同一语义 code 下的像素块不仅语义一致,颜色和纹理也高度相似。

同一语义 code 下的像素块具有内在的像素相似性#Chen et al., 2025。这意味着:如果已知一个 patch 属于哪个语义 code,那么它的像素特征大概率分布在一个很窄的子空间内,而不是全局像素空间中的任意位置。SemHiTok 利用这一点,为每个语义 code 构建一个专属的 pixel sub-codebook,把全局量化问题分解成 K 个更简单的局部量化问题。

Part 3
模型结构与创新:Semantic-Guided Hierarchical Codebook

SemHiTok 的架构可以用三层来概括:语义分支 → SGHC 层级量化 → 像素解码器

SemHiTok 整体架构图
图 2:SemHiTok 整体架构(来源:SemHiTok, Fig.2)。语义分支(蓝色)提取并量化语义特征,SGHC(灰色大框)根据语义 code 索引选择对应的 pixel sub-codebook,量化后的语义和像素特征沿通道维度拼接后输入像素解码器。右下角展示了 flatten 后接入 LLM 的方式。

语义分支

输入图像 $X \in \mathbb{R}^{H \times W \times 3}$ 经过冻结的文本对齐图像编码器(SigLIP,即 Sigmoid Language-Image Pre-Training)#Zhai et al., 2023,提取连续语义特征:

$$Z_{\text{sem}} = \mathcal{E}_{\text{sem}}(X) \in \mathbb{R}^{h \times w \times d_{\text{sem}}}$$

通过 EMA VQ 量化到语义码本 $\mathcal{C}_{\text{sem}} = \{c_1, \ldots, c_K\}$

$$Z_{q_{\text{sem}}}, I_{q_{\text{sem}}} = \arg\min_{k \in \{1,\ldots,K\}} \|Z_{\text{sem}} - \mathcal{C}_{\text{sem}}[k]\|$$

语义解码器将量化后的特征映射回语义空间,通过语义蒸馏损失训练:

$$\mathcal{L}_{\text{sem}} = 1 - \cos(Z_{q_{\text{sem}}}, \hat{Z}_{\text{sem}}) + |Z_{q_{\text{sem}}} - \hat{Z}_{\text{sem}}|$$

Cosine 损失对齐方向,L1 损失约束距离,两者配合让语义码本精确捕捉 SigLIP 的语义空间。

SGHC:语义引导的层级码本

这是 SemHiTok 的核心创新#Chen et al., 2025。SGHC 的结构很简单:

SGHC 层级码本细节
图 3:Semantic-Guided Hierarchical Codebook 细节(来源:SemHiTok, Fig.2b)。每个语义 code 对应一个专属的 pixel sub-codebook,量化后的语义特征和像素特征沿通道维度拼接后送入解码器。
  1. 语义码本有 $K$ 个码字(默认 $K = 16384$
  2. 每个语义码字分配一个专属的 pixel sub-codebook,各含 $m$ 个码字(默认 $m = 12$
  3. 当某个 patch 的语义 code 确定为 $k$ 时,像素量化只在第 $k$ 个 sub-codebook 内进行
为什么是层级而非并行?TokenFlow #Qu et al., 2024 的双码本是并行的——语义和像素各自有一个码本,通过加权距离投票选同一索引。SemHiTok 则是串行的层级——先确定语义 code,再在语义 code 指定的子空间内量化像素。这使得像素量化天然受语义约束,不需要额外的对齐机制。

量化后的语义特征和像素特征沿通道维度拼接(不是序列长度维度),形成统一的离散表示,输入像素解码器重建图像#Chen et al., 2025。消融实验表明通道拼接优于序列拼接(rFID 1.42 vs 1.45),因为通道拼接保持了空间结构的完整性。

像素分支

像素编码器提取像素级特征,在 SGHC 选定的 sub-codebook 内量化后,与语义特征拼接。像素重建损失包括:

$$\mathcal{L}_{\text{rec}} = \mathcal{L}_{\text{img}} + \lambda_1 \mathcal{L}_c + \lambda_2 \mathcal{L}_{\text{per}} + \lambda_3 \mathcal{L}_{\text{GAN}}$$

其中 $\mathcal{L}_{\text{img}} = \ell_1(\hat{X}, X)$ 为像素重建损失,$\mathcal{L}_c$ 为码本学习损失,$\mathcal{L}_{\text{per}}$ 为感知损失,$\mathcal{L}_{\text{GAN}}$ 为对抗损失 #Chen et al., 2025

VQ 码本更新使用 commitment loss:

$$\mathcal{L}_{\text{VQ}} = \|\text{sg}[\hat{z}] - z\|_2^2 + \beta\|\hat{z} - \text{sg}[z]\|_2^2$$

辅助模块

  • Dual MLP:增强多层次特征建模,让理解任务能同时利用语义和像素两个层级的信息。消融实验显示加入 Dual MLP 后理解性能甚至超过纯语义码本。
  • Enhanced Decoder:将像素解码器扩大到 ViT-Large,进一步提升重建保真度。

接入统一 MLLM

SGHC 通过简单的 flatten 操作接入 next-token 范式:将 $K$ 个 sub-codebook 的 $m$ 个码字按序展开为单一 vocabulary(总大小约 $K \times m \approx 196\text{k}$),在 LLM vocabulary 中添加特殊 token $\langle \text{IMG}_i \rangle$ 表示每个图像 code。理解时用语义特征(通过 adapter),生成时用完整 token 序列。

Part 4
训练方法:分阶段,不联合

SemHiTok 的训练策略和它的架构一样,遵循分阶段、解耦的哲学。整个训练分为三个阶段:语义码本训练 → 像素分支训练 → 统一 MLLM 训练。

阶段一:语义码本训练

配置
语义编码器SigLIP(冻结)
码本大小 $K$16384
码本维度32
训练数据COYO-700M 的 50M 子集
训练轮次1 epoch
学习率1e-4,batch size 256
码本更新EMA VQ(非梯度更新)

这一步的目标很简单:让语义码本精确复现 SigLIP 的语义空间#Zhai et al., 2023。编码器冻结不动,只训练码本和解码器。EMA VQ 的好处是更新更稳定,不会出现梯度更新中常见的码本坍塌问题#Chen et al., 2025

阶段二:像素分支训练

像素编码器预训练:先在 ImageNet 上训练 ViT-Base,再在 50M COYO 上微调(遵循 LlamaGen 设置),获得良好的像素特征提取能力。 SGHC 训练:冻结语义码本,训练像素分支和所有 sub-codebook。关键点——语义码本完全不动,新增的像素信息不会污染已经学好的语义空间。 增强解码器微调:将像素解码器扩大到 ViT-Large,在 20M COYO + 20M MidJourney 风格合成数据上微调,进一步提升重建保真度。

分阶段的核心优势

对比实验(Table 6)中,Exp 2(相同 SemHiTok 结构但联合训练)的 codebook usage 崩塌到 45.9%,而 Exp 4(分阶段训练)保持 93.7%#Chen et al., 2025。联合训练时语义和像素目标在梯度层面互相干扰,导致大量码字不被使用;分阶段训练彻底避免了这个问题。

阶段三:统一 MLLM 训练

配置
语言 backboneQwen2.5-7B-Instruct
预训练数据3.5M 语言 + 10M 图文对 + 15M MidJourney 合成
微调数据1M 语言 + 4M 生成 + 4M 理解(Emova + LLaVA-SFT)
训练成本32×A800 × 7 天(MLLM),32×V100 × 3 天(tokenizer)
生成推理classifier-free guidance scale = 2.5

训练数据中一个值得注意的设计:MidJourney 风格合成数据同时出现在 tokenizer 阶段和 MLLM 阶段,占比不小。这说明高质量的风格化数据对提升生成多样性至关重要。

Part 5
实验验证:重建、理解、生成三线 SOTA

图像重建

模型分辨率压缩比Vocab 大小rFID↓Usage
LlamaGen25616×163842.1997%
VAR25616×1.00
VILA-U25616×163842.47
SDE25616×163842.87
TokenFlow25616×327681.37
SemHiTok25616×~196k1.1693.7%
TokenFlow38414.2×327680.63
SemHiTok38414.2×~196k0.66

384 分辨率下 rFID 0.66,与 TokenFlow 的 0.63 基本持平。256 分辨率下 1.16,在统一 tokenizer 中领先。需要注意的是 SemHiTok 的 vocabulary 规模约 196k($K \times m = 16384 \times 12$),虽然看似很大,但层次化结构意味着实际搜索空间是线性的(先 $K$ 路语义选择,再 $m$ 路像素选择),比 VILA-U (RQ) 的组合搜索空间 $N^D$ 要小。

多模态理解(LLaVA-v1.5,离散 SOTA)

方法分辨率SEED-Bench↑MMBench↑MME-P↑MMMU↑
LLaVA-1.5(连续)33658.664.4
EMU3(离散)512
VILA-U(离散)25659.21267.8
TokenFlow-XL(离散)38479.875.21512.8
SemHiTok (256)25669.772.31449.0
SemHiTok (384)38479.875.21512.841.0

在离散 tokenizer 中达到 SOTA #Chen et al., 2025。384 分辨率下 SemHiTok 和 TokenFlow-XL 在 SEED-Bench 和 MMBench 上打平(79.8 / 75.2),MME-P 也持平(1512.8)。

一个细节:理解任务仅使用语义分支的 final-scale 特征效果最佳#Chen et al., 2025。像素特征作为"补充"角色存在——它提升了重建能力,但理解时不需要直接使用像素 token。这与 Dual MLP 的设计一脉相承:多层次特征建模让 LLM 能选择性地利用不同层级的信息。

统一 MLLM(理解 + 生成)

集成到统一 MLLM 后,SemHiTok 在两个方向上都展现了强性能:

  • 理解:在 Und&Gen. Discrete 类别中大多数指标 SOTA,MMMU 上比 ShareGPT4V 高 3.8 分
  • 生成:MJHQ-30K gFID 5.40(256 分辨率),创下自回归图像生成的新 SOTA,甚至超越部分扩散专家模型(SDXL、SD v2.1)
  • GenAI-Bench:Basic 0.83、Advanced 0.64,与 Liquid 等专门化生成模型相当

消融实验

消融实验揭示了各模块的具体贡献:

模块rFID 变化理解影响说明
语义码本(基线)仅语义,无像素重建能力
+ SGHC3.17→1.42几乎无影响SGHC 带来巨大重建提升,不损害语义
+ Dual MLP超过纯语义码本多层次特征建模提升理解
+ Enhanced Decoder进一步提升更大解码器 → 更好重建

最重要的发现:引入 SGHC 后 rFID 降低了 1.75,但理解性能几乎不受影响。这验证了层级设计的核心假设——在冻结的语义码本之上添加像素信息,不会破坏已建立的语义空间。

Part 6
SemHiTok 在地图上的位置

层级 vs 并行:两种统一哲学

维度TokenFlowSemHiTok
码本结构双码本并行层级码本(语义→像素)
统一方式加权距离投票选同一索引语义 code 索引 sub-codebook + 通道拼接
训练策略联合训练分阶段训练
vocabulary 大小K(共享索引)~K×m(flatten)
核心哲学"统一索引,不统一特征""语义引导,层次分解"
384 rFID0.630.66

TokenFlow 更优雅——单索引即可同时获取两种特征,vocabulary 更紧凑。SemHiTok 更解耦——分阶段训练避免了目标冲突,但代价是更大的 vocabulary。两者性能接近,但在不同的设计约束下做出了不同的选择。

局限性

  • 生成效率低:256 分辨率需要 256 个 token,效率低、计算成本高。这是所有基于空间 grid 量化方法的共同瓶颈,也是 1D Tokenizer 研究方向的直接动机
  • 未探索 CoT 等后训练技术:在多模态推理任务中还有提升空间
  • Vocabulary 规模:196k 的 flatten vocabulary 虽然搜索是线性的,但对 LLM 的词表大小和 embedding 层参数有影响

个人启发

  1. "先冻结再追加"的训练哲学:分阶段训练在多目标场景下的优势不仅体现在 SemHiTok——它是一个通用的工程原则。当你有多个可能冲突的优化目标时,先确保一个做到位,再冻结它,然后在它的基础上追加另一个。这比联合优化更稳定。
  2. 从观察到设计的完整链条:作者的可视化观察(同一语义 code → 相似像素块)→ VRR 量化验证 → SGHC 设计,是一个"从现象到机制到工程"的完整研究链条,值得在论文写作中模仿。
  3. 与 1D Tokenizer 的关系:论文未来方向明确提到"一维序列化图像 tokenizer"。SemHiTok 的层级设计天然适配 1D 序列化——语义 token 作为"前缀"引导后续像素 token 的生成。这是一个值得关注的研究方向。

参考来源

  • Chen, Z. et al. (2025). SemHiTok: A Unified Image Tokenizer via Semantic-Guided Hierarchical Codebook for Multimodal Understanding and Generation. ICLR 2026. arXiv:2503.06764(代码与模型权重待论文接收后开源)
  • Qu, Q. et al. (2024). TokenFlow: Unified Image Tokenizer for Multimodal Understanding and Generation. arXiv:2412.03069
  • Wu, Y. et al. (2024a). Janus: Decoupling Visual Encoding for Unified Multimodal Understanding and Generation. arXiv:2404.16061
  • Wu, Y. et al. (2024c). VILA-U: Towards a Unified Foundation Model for Visual Language and Generation. arXiv:2409.04429
  • Xie, T. et al. (2025). SDE: Semantic-Decoupled Encoder for Unified Image Tokenizer. arXiv:2503.07605
  • Zhai, X. et al. (2023). Sigmoid Loss for Language Image Pre-Training (SigLIP). ICCV 2023. arXiv:2303.15343
  • Radford, A. et al. (2021). Learning Transferable Visual Models From Natural Language Supervision (CLIP). ICML 2021. arXiv:2103.00020
  • Esser, P. et al. (2021). Taming Transformers for High-Resolution Image Synthesis (VQGAN). CVPR 2021. arXiv:2012.09841
  • Wei, Y. et al. (2022). Vector Quantized Image Modeling with Improved VQGAN (VQKD). ICLR 2023. arXiv:2210.05046