Equivarianza a rotaciones como prior físico en difusión de video

Pesos y videos generados del trabajo final de Visión Artificial Avanzada (UdeSA), de Alexander Bodner y Mateo Costantini.

Se hace fine-tuning con LoRA de SANA-Video 2B imponiendo una simetría en vez de una ley de conservación: si se rota la escena, la cinemática de lo generado tiene que rotar igual. La cinemática se estima con RAFT sobre los propios videos generados, dentro del paso de entrenamiento, y todo se retropropaga hasta los pesos. No hace falta ground truth físico.

Qué hay acá

carpeta contenido
checkpoints/con_fisica/ 8 checkpoints LoRA del brazo entrenado con la pérdida de equivarianza sobre velocidades (pasos 125 a 1000)
checkpoints/control/ los 8 checkpoints del control: idéntico en semilla, datos y arquitectura, con λ_rot = 0
videos/ ~2400 videos generados a lo largo de todos los experimentos, ordenados por experimento y por paso de entrenamiento

Los dos brazos comparten semilla, datos y GPU, y difieren sólo en la pérdida, así que cualquier par de checkpoints del mismo paso es una comparación apareada.

Resultado, en dos frases

La restricción sí se aprende: medido fuera del bucle de entrenamiento, sobre clips que el modelo nunca vio, las velocidades de las dos ramas pasan de estar a 63° de diferencia en el control a 51° en el brazo entrenado, y la ventaja es consistente en los 8 checkpoints. Pero no se traduce en mejor física: el error de velocidad contra el ground truth del simulador no mejora, y fuera de distribución el modelo degenera.

Dos advertencias para quien use estos números: el efecto de equivarianza ya está entero en el primer checkpoint (paso 125) y no crece con más entrenamiento; y aun en el mejor caso el desacuerdo entre ramas sigue siendo del ~92% de la magnitud del movimiento, o sea que el modelo está lejos de ser equivariante.

Cómo usar los pesos

from diffusers import SanaVideoPipeline   # Efficient-Large-Model/SANA-Video_2B_480p_diffusers
from huggingface_hub import hf_hub_download

ruta = hf_hub_download("AlexBodner/tpf-equivarianza-video",
                       "checkpoints/con_fisica/checkpoint-1000/pytorch_lora_weights.safetensors")
# LoRA rango 32, alfa 64, sobre to_q / to_k / to_v / to_out.0

Config completa de entrenamiento: LoRA rango 32 y alfa 64, lr 1e-4, batch 1, bf16, 1000 pasos, semilla 42, 500 clips sintéticos de 33 cuadros a 384×384, λ_rot = 4,7e-03 calibrado por sondas de razón de gradiente, rotación de 45°, 12 pasos de Euler dentro del entrenamiento.

Videos

videos/LEEME.md explica la estructura y videos/indice.csv tiene una fila por archivo. La ruta es <experimento>/paso_XXXX/<tipo>/<brazo>/<escenario>/<clip>.mp4.

Más

Los videos comentados, con la historia de los experimentos y todas las tablas, están en github.com/AlexBodner/tpf-equivarianza-videos.

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