--- license: other license_name: cub-derived-research-only license_link: https://www.vision.caltech.edu/datasets/cub_200_2011/ library_name: pytorch tags: - sparse-autoencoder - interpretability - crossmodal - cub-200-2011 extra_gated_heading: "Request access to this demo bundle" extra_gated_description: "Access requests are reviewed manually by the author." extra_gated_prompt: | Derived from CUB-200-2011. By requesting access, you agree to: 1. Use the data for non-commercial research and evaluation purposes only. 2. Not redistribute it, in whole or in part, to any third party. extra_gated_fields: Full name: text Affiliation or company: text Work email: text Country: country I agree to the non-commercial research-only terms above: checkbox extra_gated_button_content: "Request access" --- # SAE CUB — bundle de démonstration Extrait compact et autoportant de deux dépôts plus gros ([sae-cbm-unification](https://huggingface.co/AlexandreRocchi/sae-cbm-unification), [supervised-concept-sae-crossmodal](https://huggingface.co/AlexandreRocchi/supervised-concept-sae-crossmodal)), prévu pour être exploitable en une demi-heure. 160 Mo, 24 fichiers. Aucune dépendance au code d'origine : `torch` + `safetensors` suffisent. Les poids sont des `safetensors`, pas des pickles, et chaque export a été vérifié numériquement contre le modèle d'origine. **Voir [`QUICKSTART.md`](QUICKSTART.md) pour les extraits de code prêts à coller.** ## Contenu | Chemin | Quoi | | --- | --- | | `sae_crossmodal/` | SAE crossmodal image↔caption, 6144 atomes, top-k 32 | | `sae_cbm/` | SAE TopK sur features DINOv2, 1536 atomes, top-k 8 | | `inputs/` | les entrées exactes des deux modèles (dont le `scaler.pkl`) | | `expected/` | sorties de référence, pour valider une intégration | | `naming/atoms_best.parquet` | 24 576 atomes nommés, avec AUROC | | `parquet/` | les mêmes matrices en tabulaire | | `reference_sae.py` | le loader, ~90 lignes, sans dépendance | ## Vérifier une intégration en une ligne ```python x_hat = sae.decode(sae.encode(X)) abs(x_hat.numpy() - np.load("expected/cbm_val_xhat.npy")).max() # ~4e-6 ``` Le FVU se reproduit à la quatrième décimale : 0.1851 contre 0.185 mesuré à la publication. ## Licence Dérivé de CUB-200-2011 — usage recherche non commercial, pas de redistribution. Les images sources ne sont pas incluses, uniquement des embeddings.