{"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/thermalizer-stable-autoregressive-neural","title":"Thermalizer: Stable autoregressive neural emulation of spatiotemporal chaos","arxiv_id":"2503.18731","date":"2025-03-24","proceeding":null,"authors":["Chris Pedersen","Laure Zanna","Joan Bruna"],"abstract":"Autoregressive surrogate models (or \\textit{emulators}) of spatiotemporal systems provide an avenue for fast, approximate predictions, with broad applications across science and engineering. At inference time, however, these models are generally unable to provide predictions over long time rollouts due to accumulation of errors leading to diverging trajectories. In essence, emulators operate out of distribution, and controlling the online distribution quickly becomes intractable in large-scale settings. To address this fundamental issue, and focusing on time-stationary systems admitting an invariant measure, we leverage diffusion models to obtain an implicit estimator of the score of this invariant measure. We show that this model of the score function can be used to stabilize autoregressive emulator rollouts by applying on-the-fly denoising during inference, a process we call \\textit{thermalization}. Thermalizing an emulator rollout is shown to extend the time horizon of stable predictions by an order of magnitude in complex systems exhibiting turbulent and chaotic behavior, opening up a novel application of diffusion models in the context of neural emulation.","url_abs":"https://arxiv.org/abs/2503.18731v1","url_pdf":"https://arxiv.org/pdf/2503.18731v1.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":[],"tasks":[{"task_slug":"denoising","task_name":"Denoising"}],"methods":[{"method_slug":"diffusion","method_name":"Diffusion"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2503.18731","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2503.18731"}},"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":"deterministic:regex_extraction","url":"https://github.com/pdearena/pdearena","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":2,"ran_draft_wrong":1,"unverified":4},"by_repo_kind":{"found_in_text":{"samples":7,"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":7,"samples":[{"code_sha256_prefix":"be31a0618c98c1b9","entry":"batchmul1d","repo":"pdearena/pdearena","repo_kind":"found_in_text","path":"pdearena/modules/fourier.py","file_url":"https://github.com/pdearena/pdearena/blob/HEAD/pdearena/modules/fourier.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":false,"mcp_get_code":{"code_sha256":"be31a0618c98c1b9"}},{"code_sha256_prefix":"4c0fb383786dadb3","entry":"batchmul2d","repo":"pdearena/pdearena","repo_kind":"found_in_text","path":"pdearena/modules/fourier.py","file_url":"https://github.com/pdearena/pdearena/blob/HEAD/pdearena/modules/fourier.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":false,"mcp_get_code":{"code_sha256":"4c0fb383786dadb3"}},{"code_sha256_prefix":"d83235be62a2525b","entry":"pearson_correlation","repo":"pdearena/pdearena","repo_kind":"found_in_text","path":"pdearena/modules/loss.py","file_url":"https://github.com/pdearena/pdearena/blob/HEAD/pdearena/modules/loss.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":false,"mcp_get_code":{"code_sha256":"d83235be62a2525b"}},{"code_sha256_prefix":"6c3ea29ff7061656","entry":"batchmul3d","repo":"pdearena/pdearena","repo_kind":"found_in_text","path":"pdearena/modules/fourier.py","file_url":"https://github.com/pdearena/pdearena/blob/HEAD/pdearena/modules/fourier.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":false,"mcp_get_code":{"code_sha256":"6c3ea29ff7061656"}},{"code_sha256_prefix":"86d0930a8092c898","entry":"custommse_loss","repo":"pdearena/pdearena","repo_kind":"found_in_text","path":"pdearena/modules/loss.py","file_url":"https://github.com/pdearena/pdearena/blob/HEAD/pdearena/modules/loss.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":false,"mcp_get_code":{"code_sha256":"86d0930a8092c898"}},{"code_sha256_prefix":"e363d96b6681e2f0","entry":"get_model","repo":"pdearena/pdearena","repo_kind":"found_in_text","path":"pdearena/models/pderefiner.py","file_url":"https://github.com/pdearena/pdearena/blob/HEAD/pdearena/models/pderefiner.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":false,"mcp_get_code":{"code_sha256":"e363d96b6681e2f0"}},{"code_sha256_prefix":"85fc41048fade072","entry":"scaledlp_loss","repo":"pdearena/pdearena","repo_kind":"found_in_text","path":"pdearena/modules/loss.py","file_url":"https://github.com/pdearena/pdearena/blob/HEAD/pdearena/modules/loss.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":false,"mcp_get_code":{"code_sha256":"85fc41048fade072"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}