YAML Metadata Warning:empty or missing yaml metadata in repo card

Check out the documentation for more information.

RLSplat ablation checkpoints (2026-09-16)

Uploaded checkpoints: Table 5 only โ€” base/epoch_1-step_40000.ckpt (random 0901), 27aa_gspo5k_lr1e5_head1e3_legacysampler, 40a_alloc_uniform_5000, 40b_alloc_sobel_5000 (manifest.json["base"|"arms"]). The 1000-step ablation arms listed below are finished and their configs are here (arms/<arm>/, manifest.json["arms_not_uploaded"]) but their checkpoints stay on the training server โ€” ask for them if a full-eval cell needs one.

Finished ablation arms of the softmax-proportional allocation recipe, all finetuned from the 0901 random-allocation base (base/epoch_1-step_40000.ckpt). Training-side details, validation curves and conclusions: results.md (sweep log, newest at the bottom) and HANDOFF_training.md. Full-evaluation protocol for the paper tables: EVAL_PROMPT.md (hand it to Claude on the eval server).

Layout

manifest.json                 arm -> ckpt path, recipe, eval_overrides (hydra tokens needed to LOAD the ckpt), train_overrides, note
base/epoch_1-step_40000.ckpt  0901 random base (recipe rlsplat_b200_random_up504, no overrides)
arms/<arm>/                   epoch_0-step_N.ckpt + sweep.env (training overrides + rationale)
                              + config.yaml / overrides.yaml (resolved hydra) + eval_overrides.txt
code/GIT_BASE.txt             commit the ckpts were trained with; code/uncommitted.patch = working-tree diff
                              on top of it (needed: image_gradient mode, log_density encoding, view conditioning, ...)
code/assets/                  evaluation_index_{re10k,acid}[_ctx_{8,16,24}].json (the ctx_N files are untracked in git)
code/eval_arms.sh             runner: one mode=test run per (arm, dataset) sweeping the 7 validation budget
                              rungs (per-view 1024..16384), chained per GPU; needs uncommitted.patch applied
code/aggregate_arms.py        per-rung + AUC_log table over every finished run (+ --csv, --ref ARM for deltas)
code/compare_grpo_test.sh.reference   the training-server script eval_arms.sh was derived from

Arms

All 1000-step arms share the ICLR ablation protocol: GSPO finetune from the 0901 base, 4 GPUs, no grad accumulation, legacy view sampler, val every 100 steps on 7 budgets 1024..16384/view. Reference row for them is 35b_alloc_gspo_ref_legacysampler. The 5000-step arms (27aa, 40a, 40b) use the main recipe (4 GPU x accumulate 2 = 8-GPU batch).

arm steps alloc mode what it ablates
27aa_gspo5k_lr1e5_head1e3_legacysampler 5000 softmax (GSPO) Table 5 ours: GSPO, main recipe, legacy sampler
40a_alloc_uniform_5000 5000 uniform Table 5: uniform allocation, same 5000 renderer steps
40b_alloc_sobel_5000 5000 image_gradient Table 5: Sobel high-frequency heuristic (power 1.0, eps 0.05)
30a_alloc_uniform_ctrl 1000 uniform allocation control (ZipSplat-style sampler; superseded by 35b/40a)
30b_alloc_gspo_ref 1000 softmax (GSPO) GSPO reference on the ZipSplat-style sampler (superseded by 35b)
31a_est_grpo_s1 / 31d_est_grpo_s2 / 31g_est_grpo_s3 1000 softmax (GRPO) estimator = GRPO (token-level ratio), seeds 1/2/3
31b_est_reinforce_s1 / 31e_est_reinforce_s2 / 31h_est_reinforce_s3 1000 softmax (REINFORCE) estimator = REINFORCE, seeds 1/2/3
31c_est_gspo_s2 / 31f_est_gspo_s3 1000 softmax (GSPO) estimator = GSPO, seeds 2/3 (seed 1 = 35b)
34a_loss_noproj 1000 softmax (GSPO) loss: projection weight 0
34b_loss_novoronoi 1000 softmax (GSPO) loss: anchor-distance (Voronoi) term 0
34c_loss_nodisp 1000 softmax (GSPO) loss: position-delta (displacement) term 0
35a_struct_norefine 1000 softmax (GSPO) structure: no gaussian residual refinement
35b_alloc_gspo_ref_legacysampler 1000 softmax (GSPO) reference row for every 1000-step arm
36a_cond_none 1000 softmax (GSPO) head: no budget conditioning (one ranking for every budget)
36b_cond_shift / 36c_cond_concat / 36d_cond_film2 1000 softmax (GSPO) head conditioning mode shift / concat / film2 (depth 2); ref = film
37a_recon_sampled 1000 softmax (GSPO) recon target rendered from a sampled candidate instead of deterministic
37b_group3 / 37c_group8 1000 softmax (GSPO) GSPO group size 3 / 8 (ref 5)
37d_tau1.0 / 37e_tau1.5 1000 softmax (GSPO) rollout temperature 1.0 / 1.5
38a_cond_logdensity 1000 softmax (GSPO) budget encoding log_density (fix candidate for the high-budget regime)
38b_cond_logdensity_views 1000 softmax (GSPO) log_density + view-count conditioning
39a_sh3_expanded 1000 softmax (GSPO) SH degree 3 (from the sh3-expanded base)

Per-arm rationale (verbatim from the sweep env): arms/<arm>/sweep.env or manifest.json["arms"][arm]["note"]. Every checkpoint is ~1.4-1.5 GB; 30 arms + base = ~45 GB.

Loading a checkpoint

checkpointing.load=<ckpt> restores the full Lightning state, but the architecture flags are NOT stored in it, so always pass the arm's eval_overrides (from manifest.json or arms/<arm>/eval_overrides.txt): uniform / image_gradient arms have no logit head, 36d has head depth 2, 39a has sh_degree 3, 36a has no budget conditioning. uniform / image_gradient arms need train.gaussian_allocation_rank_loss=0.0 (already included). The base uses recipe rlsplat_b200_random_up504, every arm uses rlsplat_softmax_grpo.

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support