MUGEN No codebook, one draw.

MUGEN

Motion Understanding & Generation

A Unified Framework for Efficient Motion Understanding and Generation

No codebook, one draw.

One continuous latent interface for both directions · HumanML3D & SnapMoGen

11.1GFLOPs
An order of magnitude less compute
Per generated motion, against 95.5 and 105.5 for the strongest published baselines.
Kslots
No quantization anywhere
A clip of any length becomes K continuous slots. Nothing in the pipeline looks up a codebook entry.
1draw
One shot, no refinement
K language-model steps, then one sample and one decoder pass. There is no denoising chain to run.

Generated by MUGEN from the text beneath each clip.

Method

A shared motion–language interface

Generation predicts the latent slots from text, and understanding reads the same slots back. Neither direction has a tokenizer or a decoder of its own.

  • 01 Adaptive-length autoencoder Any-length clip in, K continuous slots out, and back to any frame count.
  • 02 Depth-routed states A prompt-conditioned router gives each slot its own mixture over all layers.
  • 03 Calibrated latent head One low-rank-plus-diagonal Gaussian over the whole latent set.
  • 04 Joint training Both directions run on the same batches through the same backbone.
MUGEN pipeline: a MOT-seeded K-step rollout keeps all layer states, a router assigns each slot a depth mixture, and a calibrated low-rank head draws the latent set for the frozen ALAE decoder; the understanding branch maps an input motion through the frozen encoder and a projector back into the same language model.
Overview. Flames are trainable, snowflakes frozen. Top: a <MOT>-seeded K-step rollout keeps every layer state, the router picks a depth mixture per slot, and the calibrated head draws the whole latent set at once for the frozen decoder. Bottom: the frozen encoder turns an input motion into the same K slots, and a projector hands them to the same language model.

1 Adaptive-length autoencoder, no codebook

ALAE architecture: an encoder produces a temporal memory, K learned latent queries cross-attend to it to give K latent slots, and T sinusoidal phase queries cross-attend back to the slots to reconstruct the motion.

ALAE. Learned queries cross-attend to a temporal memory to give exactly K slots, and the decoder rebuilds the motion from those slots.

A clip of any length becomes exactly K slots

A convolutional backbone turns the input into a temporal memory, and K learned queries cross-attend to it instead of looking up codebook entries. An orthogonality penalty keeps the queries from collapsing onto each other.

The decoder asks for frame t by its relative phase in the clip rather than an absolute index, so one decoder covers every length while K stays fixed.

K slots, D = 512 4 encoder + 4 decoder layers Frozen after stage one

2 Depth-routed hidden states

Layer-selection preference of the two slots: k0 concentrates 54% of its routing mass on layer 10 with 2.9 effective layers, while k1 spreads over layers 5 to 11 with 6.3 effective layers.

Router. Layer preference of the two slots on HumanML3D. k₀ reads deep and narrow at layer 10, while k₁ scans layers 5–11.

Each slot reads from the depth it needs

Reading the final layer is a habit inherited from next-token prediction. At small budgets every slot carries a large part of the sequence, so slots that all read the last layer see the same kind of evidence.

MUGEN gives each slot its own distribution over the L layers, conditioned on the prompt. The logits are a bounded residual: a prompt-independent table plus a zero-initialized correction, each squashed separately. The last layer stays a special case, so nothing is given up.

FID 0.123 → 0.087 29% better at fixed budget Same top layer on only 49% of prompts

3 Calibrated low-rank factor head

One draw has to carry all the variance

A single-step sampler gets no second chance, so its one draw has to hold the variation the description allows. A deterministic head gives one motion per prompt, and per-dimension noise cannot express variation shared between slots.

MUGEN puts a low-rank-plus-diagonal Gaussian over the whole flattened latent set. The learned basis U spans across slots, so one sample carries correlation between slots as well as inside them. With the amplitudes at zero the family reduces to the diagonal model.

q( | y) = N( μ(y), U diag(a(y))² Uᵀ + diag(σ(y)²) )

The head is fitted by exact maximum likelihood with a decoupled anchor: one term trains the mean under a detached precision, the other fits the covariance to the detached residual. Without that split the likelihood explains mean error away as inflated variance. No KL term is needed, and σ(y) ends up genuinely text-dependent.

Text → Motion

Generated from the caption beneath it

Every clip comes from the HumanML3D test set, sampled once from the calibrated distribution at the reported operating point. We do not re-rank the samples or keep the best of several seeds.

Motion → Text

The same slots, read the other way

The frozen encoder maps a real motion to the same K slots. The dataset annotation under each caption is there for comparison and never reaches the model.

Evaluation

Two benchmarks, both directions

HumanML3D and SnapMoGen, each with its own splits and evaluator, under the official 20-replication protocol. Baseline numbers come from the original papers.

A Text-to-motion on HumanML3D

Method R@1 ↑R@2 ↑R@3 ↑ FID ↓MM-Dist ↓DiversityMM
Real motions 0.5100.7000.795 3.0129.503
Generation only
MotionDiffuse0.4910.6810.7820.6303.1139.4101.55
T2M-GPT0.4910.6800.7750.1163.1189.7611.86
MMM0.5040.6960.7940.0802.9989.4111.16
MoMask0.5210.7130.8070.0452.9589.6201.24
BAMM0.5250.7200.8140.0552.9199.7171.69
MoMask++ in-context0.5280.7180.8110.0722.9121.23
MoMask++ cross-attn0.5170.7090.8030.0692.9481.19
Generation & understanding
MotionGPT0.4920.6810.7780.2323.0969.5282.01
MotionGPT30.5530.7470.8370.2082.7259.7001.02
UniMo0.5390.7380.8310.1772.76810.0421.92
MUGEN (ours) 0.5790.7720.859 0.0872.6299.5100.83

Table 1. MUGEN has the best retrieval precision and matching distance in the table, both past the real-motion reference, and the best FID among language-model generators. The masked-codebook pipelines keep the overall FID lead, but their best R@1 trails MUGEN by 0.051.

B Text-to-motion on SnapMoGen

Method R@1 ↑R@2 ↑R@3 ↑ FID ↓CLIP score ↑DiversityMM
Real motions 0.9400.9760.9850.0010.837 19.5–19.8
Generation only
MDM0.5030.6530.72757.780.48113.41
T2M-GPT0.6180.7730.81232.630.5739.17
StableMoFusion0.6790.8230.88827.800.6059.06
MARDM0.6590.8120.86026.880.6029.81
MoMask0.7770.8880.92717.400.6648.18
MoMask++ in-context0.8050.9040.93815.560.6846.56
MoMask++ cross-attn0.8020.9050.93815.060.6857.26
Generation & understanding
MUGEN (ours) 0.8150.9160.947 21.050.69819.796.09

Table 2. MUGEN is the only entry here that also does understanding, and it leads at every retrieval rank and on CLIP score with confidence intervals separated. FID is the one column where the residual codebooks stay ahead. An oracle decode traces that gap to the sampler, not the representation.

C Motion understanding on HumanML3D

Method R@1 ↑R@2 ↑R@3 ↑MM-Dist ↓ BLEU@1 ↑BLEU@4 ↑ROUGE ↑ CIDEr ↑BERTScore ↑
Real motions 0.5230.7250.8282.901
Understanding only
LaMP-M2T0.5470.8312.80847.813.0437.128.932.7
Generation & understanding
TM2T0.5160.8232.93548.97.0038.116.832.2
MotionGPT0.5430.8272.82148.212.5037.429.232.4
MoTe0.5770.8712.64946.711.1537.431.530.3
MotionGPT30.5730.7730.8642.42659.0819.4146.1728.7235.23
UniMo63.1019.7448.846.6954.26
MUGEN (ours) 0.5860.7840.8732.536 60.7521.9847.3750.4143.37

Table 3. MUGEN trains no captioning-specific variant, yet it leads every reported retrieval rank plus BLEU@4 and CIDEr. UniMo, trained on curated chain-of-thought annotations, leads the remaining caption metrics and reports no retrieval.

D Ablations

HumanML3D R@1 ↑R@3 ↑FID ↓Div.MM
Latent budget K
K = 10.5740.8590.1099.500.67
K = 2  flagship0.5790.8590.0879.510.83
K = 40.5770.8620.0919.460.70
K = 80.5670.8530.1119.450.91
K = 160.5660.8520.1439.460.74
Rollout interface at K = 2
Last layer only0.5740.8600.1231.05

Table 4. Retrieval is flat over K = 1–4 and drops after. Inference cost grows with K, so we take the smallest budget that holds quality. Depth routing helps more than any change of budget inside that range.

Training objective FID ↓R@1 ↑CIDEr ↑BERT ↑Params
Generation only0.1070.578221.9M
Understanding only52.844.8222.3M
Joint, no loss floor0.1000.57440.739.2222.3M
Joint, λ = 0.250.0890.57653.544.7222.3M
Joint, λ = 1  flagship0.0870.57950.443.4222.3M
Joint, λ = 40.1110.57149.743.2222.3M

Table 5. Dropping the captioning branch makes generation worse, not better (FID 0.107 vs. 0.087, disjoint confidence intervals): understanding regularizes the shared representation. The reverse cost is small, within 5% of a dedicated captioner's CIDEr for a 0.39M projector.

Where the router looks depends on the verb. k₀ stays on layer 10 for almost everything, while k₁ moves with the action: shallow for crawl, punch and kick, mid-depth for run, walk and jump, deep for pick, clap and wave. A router with fixed weights has no way to express that.

Per-verb layer preference heatmaps for the two slots, showing k0 fixed on layer 10 and k1 shifting with verb semantics.
Per-verb routing. Mean routing weight over GPT-2 layers for the 20 most frequent verbs in the HumanML3D test split.
Efficiency

K steps, one draw, one decoder pass

One NVIDIA L4, the same pinned prompt list, each model at the operating point its own paper reports.

Compute and latency do not rank the same way, so the table below reports both. MotionGPT3 needs 8.6× the compute but 14.3× the time, because a token-by-token rollout is latency-bound. MoMask++ needs 9.5× the compute but only 5.8× the time, because its 18 guided steps are big matrix multiplies that keep the GPU busy.

Method Params (M)GFLOPs / motionLatency (ms)Throughput (motion/s)
MoMask++150.2105.55555.1
MotionGPT3299.795.513653.2
MUGEN (ours)222.311.19325.2

Table 6. Model size is not the explanation. MUGEN's parameter count and peak memory both sit between the two baselines'. The difference is 18 masked-decoding steps, or a token-at-a-time diffusion head, against K steps and one draw.

Citation

BibTeX

@misc{ye2026mugenunifiedframeworkefficient,
      title={MUGEN: A Unified Framework for Efficient Motion Understanding and Generation},
      author={Zhankai Ye and Yukai Jin and Bingyang Wei and Bofan Li and Yusen Wu and Fangyi Li and Shangqian Gao and Xin Liu},
      year={2026},
      eprint={2607.27581},
      archivePrefix={arXiv},
      primaryClass={cs.LG},
      url={https://arxiv.org/abs/2607.27581},
}