{"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/generative-diffusion-based-downscaling-for","title":"Generative Diffusion-based Downscaling for Climate","arxiv_id":"2404.17752","date":"2024-04-27","proceeding":null,"authors":["Robbie A. Watt","Laura A. Mansfield"],"abstract":"Downscaling, or super-resolution, provides decision-makers with detailed, high-resolution information about the potential risks and impacts of climate change, based on climate model output. Machine learning algorithms are proving themselves to be efficient and accurate approaches to downscaling. Here, we show how a generative, diffusion-based approach to downscaling gives accurate downscaled results. We focus on an idealised setting where we recover ERA5 at $0.25\\degree$~resolution from coarse grained version at $2\\degree$~resolution. The diffusion-based method provides superior accuracy compared to a standard U-Net, particularly at the fine scales, as highlighted by a spectral decomposition. Additionally, the generative approach provides users with a probability distribution which can be used for risk assessment. This research highlights the potential of diffusion-based downscaling techniques in providing reliable and detailed climate predictions.","url_abs":"https://arxiv.org/abs/2404.17752v1","url_pdf":"https://arxiv.org/pdf/2404.17752v1.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":"generative-diffusion-based-downscaling-for","repo_url":"https://github.com/robbiewatt1/climatediffuse","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"super-resolution","task_name":"Super-Resolution"}],"methods":[{"method_slug":"concatenated-skip-connection","method_name":"Concatenated Skip Connection"},{"method_slug":"convolution","method_name":"Convolution"},{"method_slug":"focus","method_name":"Focus"},{"method_slug":"max-pooling","method_name":"Max Pooling"},{"method_slug":"relu","method_name":"ReLU"},{"method_slug":"u-net","method_name":"U-Net"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2404.17752","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2404.17752"}},"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/robbiewatt1/climatediffuse","reach":{"status":"ok"}}],"summary":{"ran":4,"ran_fixture":1,"unverified":4},"by_repo_kind":{"official":{"samples":9,"ran":5,"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":9,"samples":[{"code_sha256_prefix":"b1e0d795ab31ae72","entry":"compute_spectrum2d","repo":"robbiewatt1/climatediffuse","repo_kind":"official","path":"inference/compute_spectrum.py","file_url":"https://github.com/robbiewatt1/climatediffuse/blob/HEAD/inference/compute_spectrum.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"b1e0d795ab31ae72"}},{"code_sha256_prefix":"6b7fd3aa737d57fd","entry":"crps","repo":"robbiewatt1/climatediffuse","repo_kind":"official","path":"inference/CRPS.py","file_url":"https://github.com/robbiewatt1/climatediffuse/blob/HEAD/inference/CRPS.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"6b7fd3aa737d57fd"}},{"code_sha256_prefix":"bee90a510907cd3e","entry":"sample_model","repo":"robbiewatt1/climatediffuse","repo_kind":"official","path":"src/TrainDiffusion.py","file_url":"https://github.com/robbiewatt1/climatediffuse/blob/HEAD/src/TrainDiffusion.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"bee90a510907cd3e"}},{"code_sha256_prefix":"24c744794804a6b0","entry":"train_step","repo":"robbiewatt1/climatediffuse","repo_kind":"official","path":"src/TrainUnet.py","file_url":"https://github.com/robbiewatt1/climatediffuse/blob/HEAD/src/TrainUnet.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"24c744794804a6b0"}},{"code_sha256_prefix":"d41a4250066bce93","entry":"weight_init","repo":"robbiewatt1/climatediffuse","repo_kind":"official","path":"src/Network.py","file_url":"https://github.com/robbiewatt1/climatediffuse/blob/HEAD/src/Network.py","link_basis":"harvester_set","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"d41a4250066bce93"}},{"code_sha256_prefix":"591114375a44dd35","entry":"sample_model","repo":"robbiewatt1/climatediffuse","repo_kind":"official","path":"src/TrainUnet.py","file_url":"https://github.com/robbiewatt1/climatediffuse/blob/HEAD/src/TrainUnet.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"591114375a44dd35"}},{"code_sha256_prefix":"f9593467ea75ab43","entry":"sample_model_EDS","repo":"robbiewatt1/climatediffuse","repo_kind":"official","path":"src/Inference.py","file_url":"https://github.com/robbiewatt1/climatediffuse/blob/HEAD/src/Inference.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"f9593467ea75ab43"}},{"code_sha256_prefix":"82125c75de7ebf9a","entry":"sample_unet","repo":"robbiewatt1/climatediffuse","repo_kind":"official","path":"src/Inference.py","file_url":"https://github.com/robbiewatt1/climatediffuse/blob/HEAD/src/Inference.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"82125c75de7ebf9a"}},{"code_sha256_prefix":"721951068b07a5d4","entry":"training_step","repo":"robbiewatt1/climatediffuse","repo_kind":"official","path":"src/TrainDiffusion.py","file_url":"https://github.com/robbiewatt1/climatediffuse/blob/HEAD/src/TrainDiffusion.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"721951068b07a5d4"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}