--- license: creativeml-openrail-m base_model: runwayml/stable-diffusion-v1-5 tags: - stable-diffusion - diffusion-models - machine-unlearning - unlearncanvas --- # FADE UnlearnCanvas -- Retain-only oracle (seed 0) A retain-only oracle: Stable Diffusion fine-tuned on the 47/50 UnlearnCanvas styles that exclude Monet, Picasso, Van_Gogh (seed 0 of 3 independently-trained retain seeds). This is the reference model FADE compares an unlearned model against -- it represents 'what the model should look like if it had never seen the forget styles,' with no unlearning algorithm involved. ## Files | File | Description | |---|---| | `retain_seed0.safetensors` | retain-only, seed 0 (47/50 styles, excludes Monet/Picasso/Van_Gogh) | ## About FADE FADE (Functional Alignment for Distributional Equivalence) is a metric for evaluating machine unlearning in diffusion models: it generates images from an unlearned model and a retain-only oracle, then measures a variational upper bound on the KL divergence between the two models' output distributions on those images. See the project repo for the full method and evaluation code: the project's public GitHub repo (link forthcoming) This checkpoint is a fine-tune of Stable Diffusion v1.5, built on the [UnlearnCanvas](https://github.com/OPTML-Group/UnlearnCanvas) dataset/benchmark (Zhang et al., 2024). It inherits Stable Diffusion's CreativeML OpenRAIL-M license -- see the license file for the specific use-based restrictions that apply. ## Citation ``` @article{cho2025referencespecific, title={Reference-Specific Unlearning Metrics Can Hide the Truth: A Reality Check}, author={Cho, Sungjun and Hwang, Dasol and Sala, Frederic and Hwang, Sangheum and Cho, Kyunghyun and Cha, Sungmin}, journal={arXiv preprint arXiv:2510.12981}, year={2025} } ``` ## Loading ```python import torch from safetensors.torch import load_file state_dict = load_file(".safetensors") # merge into a CompVis-format LDM model, e.g. via UnlearnCanvas's # ldm.util.instantiate_from_config, then: # model.load_state_dict(state_dict, strict=False) ```