{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/ambient-diffusion-posterior-sampling-solving","title":"Ambient Diffusion Posterior Sampling: Solving Inverse Problems with Diffusion Models trained on Corrupted Data","arxiv_id":"2403.08728","date":"2024-03-13","proceeding":null,"authors":["Asad Aali","Giannis Daras","Brett Levac","Sidharth Kumar","Alexandros G. Dimakis","Jonathan I. Tamir"],"abstract":"We provide a framework for solving inverse problems with diffusion models learned from linearly corrupted data. Our method, Ambient Diffusion Posterior Sampling (A-DPS), leverages a generative model pre-trained on one type of corruption (e.g. image inpainting) to perform posterior sampling conditioned on measurements from a potentially different forward process (e.g. image blurring). We test the efficacy of our approach on standard natural image datasets (CelebA, FFHQ, and AFHQ) and we show that A-DPS can sometimes outperform models trained on clean data for several image restoration tasks in both speed and performance. We further extend the Ambient Diffusion framework to train MRI models with access only to Fourier subsampled multi-coil MRI measurements at various acceleration factors (R=2, 4, 6, 8). We again observe that models trained on highly subsampled data are better priors for solving inverse problems in the high acceleration regime than models trained on fully sampled data. We open-source our code and the trained Ambient Diffusion MRI models: https://github.com/utcsilab/ambient-diffusion-mri .","url_abs":"https://arxiv.org/abs/2403.08728v1","url_pdf":"https://arxiv.org/pdf/2403.08728v1.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"ambient-diffusion-posterior-sampling-solving","repo_url":"https://github.com/utcsilab/ambient-diffusion-mri","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"diffusion-mri","task_name":"Diffusion  MRI"},{"task_slug":"image-inpainting","task_name":"Image Inpainting"},{"task_slug":"image-restoration","task_name":"Image Restoration"}],"methods":[{"method_slug":"diffusion","method_name":"Diffusion"},{"method_slug":"speed","method_name":"SPEED"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2403.08728","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2403.08728"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/utcsilab/ambient-diffusion-mri","reach":null}],"summary":{"ran_violates":3},"by_repo_kind":{"official":{"samples":3,"ran":3,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":3,"samples":[{"code_sha256_prefix":"fbfab7977067c5c5","entry":"fft","repo":"utcsilab/ambient-diffusion-mri","repo_kind":"official","path":"solve_inverse_adps.py","file_url":"https://github.com/utcsilab/ambient-diffusion-mri/blob/HEAD/solve_inverse_adps.py","link_basis":"first_harvest_node","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"fbfab7977067c5c5"}},{"code_sha256_prefix":"bda617ed9ad620ab","entry":"fftmod","repo":"utcsilab/ambient-diffusion-mri","repo_kind":"official","path":"solve_inverse_adps.py","file_url":"https://github.com/utcsilab/ambient-diffusion-mri/blob/HEAD/solve_inverse_adps.py","link_basis":"first_harvest_node","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"bda617ed9ad620ab"}},{"code_sha256_prefix":"338300e834c4a557","entry":"ifft","repo":"utcsilab/ambient-diffusion-mri","repo_kind":"official","path":"solve_inverse_adps.py","file_url":"https://github.com/utcsilab/ambient-diffusion-mri/blob/HEAD/solve_inverse_adps.py","link_basis":"first_harvest_node","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":"well_formed","behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"338300e834c4a557"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}