{"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/zero-shot-forecasting-of-chaotic-systems","title":"Zero-shot forecasting of chaotic systems","arxiv_id":"2409.15771","date":"2024-09-24","proceeding":null,"authors":["Yuanzhao Zhang","William Gilpin"],"abstract":"Time-series forecasting is a challenging problem that traditionally requires specialized models custom-trained for the specific task at hand. Recently, inspired by the success of large language models, foundation models pre-trained on vast amounts of time-series data from diverse domains have emerged as a promising candidate for general-purpose time-series forecasting. The defining characteristic of these foundation models is their ability to perform zero-shot learning, that is, forecasting a new system from limited context data without explicit re-training or fine-tuning. Here, we evaluate whether the zero-shot learning paradigm extends to the challenging task of forecasting chaotic systems. Across 135 distinct chaotic dynamical systems and $10^8$ timepoints, we find that foundation models produce competitive forecasts compared to custom-trained models (including NBEATS, TiDE, etc.), particularly when training data is limited. Interestingly, even after point forecasts fail, large foundation models are able to preserve the geometric and statistical properties of the chaotic attractors. We attribute this success to foundation models' ability to perform in-context learning and identify context parroting as a simple mechanism used by these models to capture the long-term behavior of chaotic dynamical systems. Our results highlight the potential of foundation models as a tool for probing nonlinear and complex systems.","url_abs":"https://arxiv.org/abs/2409.15771v3","url_pdf":"https://arxiv.org/pdf/2409.15771v3.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":"zero-shot-forecasting-of-chaotic-systems","repo_url":"https://github.com/williamgilpin/dysts","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"attribute","task_name":"Attribute"},{"task_slug":"in-context-learning","task_name":"In-Context Learning"},{"task_slug":"time-series-1","task_name":"Time Series"},{"task_slug":"time-series-forecasting","task_name":"Time Series Forecasting"},{"task_slug":"zero-shot-learning","task_name":"Zero-Shot Learning"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2409.15771","atlas_url":"https://app.syntology.ai/?focus=2409.15771","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2409.15771"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+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/williamgilpin/dysts","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"ran":15,"unverified":5},"by_repo_kind":{"official":{"samples":20,"ran":15,"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":0,"samples":[{"code_sha256_prefix":"6ca7388c4374b749","entry":"cartesian_to_polar","repo":"williamgilpin/dysts","repo_kind":"official","path":"dysts/utils/utils.py","file_url":"https://github.com/williamgilpin/dysts/blob/HEAD/dysts/utils/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"6ca7388c4374b749"}},{"code_sha256_prefix":"17271ca7113c9d2a","entry":"cast_to_numpy","repo":"williamgilpin/dysts","repo_kind":"official","path":"dysts/utils/integration_utils.py","file_url":"https://github.com/williamgilpin/dysts/blob/HEAD/dysts/utils/integration_utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"17271ca7113c9d2a"}},{"code_sha256_prefix":"34bf4d444d86a29a","entry":"find_sigma","repo":"williamgilpin/dysts","repo_kind":"official","path":"dysts/metrics.py","file_url":"https://github.com/williamgilpin/dysts/blob/HEAD/dysts/metrics.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"34bf4d444d86a29a"}},{"code_sha256_prefix":"47e00bc876198ff4","entry":"freq_from_autocorr","repo":"williamgilpin/dysts","repo_kind":"official","path":"dysts/utils/integration_utils.py","file_url":"https://github.com/williamgilpin/dysts/blob/HEAD/dysts/utils/integration_utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"47e00bc876198ff4"}},{"code_sha256_prefix":"b0229080f6f5486b","entry":"has_module","repo":"williamgilpin/dysts","repo_kind":"official","path":"dysts/utils/native_utils.py","file_url":"https://github.com/williamgilpin/dysts/blob/HEAD/dysts/utils/native_utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"b0229080f6f5486b"}},{"code_sha256_prefix":"26283fc7efcc5ea9","entry":"logarithmic_n","repo":"williamgilpin/dysts","repo_kind":"official","path":"dysts/analysis.py","file_url":"https://github.com/williamgilpin/dysts/blob/HEAD/dysts/analysis.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"26283fc7efcc5ea9"}},{"code_sha256_prefix":"e1666a981313feae","entry":"lowrank_response_matrix","repo":"williamgilpin/dysts","repo_kind":"official","path":"dysts/coupling.py","file_url":"https://github.com/williamgilpin/dysts/blob/HEAD/dysts/coupling.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"e1666a981313feae"}},{"code_sha256_prefix":"5b69c96c96697d81","entry":"num_unspecified_params","repo":"williamgilpin/dysts","repo_kind":"official","path":"dysts/utils/native_utils.py","file_url":"https://github.com/williamgilpin/dysts/blob/HEAD/dysts/utils/native_utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"5b69c96c96697d81"}},{"code_sha256_prefix":"60b4c2122712e743","entry":"parabolic","repo":"williamgilpin/dysts","repo_kind":"official","path":"dysts/utils/integration_utils.py","file_url":"https://github.com/williamgilpin/dysts/blob/HEAD/dysts/utils/integration_utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"60b4c2122712e743"}},{"code_sha256_prefix":"f0b10444363d236f","entry":"polar_to_cartesian","repo":"williamgilpin/dysts","repo_kind":"official","path":"dysts/utils/utils.py","file_url":"https://github.com/williamgilpin/dysts/blob/HEAD/dysts/utils/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"f0b10444363d236f"}},{"code_sha256_prefix":"a9654d28509836a8","entry":"random_response_matrix","repo":"williamgilpin/dysts","repo_kind":"official","path":"dysts/coupling.py","file_url":"https://github.com/williamgilpin/dysts/blob/HEAD/dysts/coupling.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"a9654d28509836a8"}},{"code_sha256_prefix":"c9d8d9901e3c6aab","entry":"relu","repo":"williamgilpin/dysts","repo_kind":"official","path":"dysts/metrics.py","file_url":"https://github.com/williamgilpin/dysts/blob/HEAD/dysts/metrics.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"c9d8d9901e3c6aab"}},{"code_sha256_prefix":"4b951162fc303bcf","entry":"rowwise_euclidean","repo":"williamgilpin/dysts","repo_kind":"official","path":"dysts/analysis.py","file_url":"https://github.com/williamgilpin/dysts/blob/HEAD/dysts/analysis.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"4b951162fc303bcf"}},{"code_sha256_prefix":"f255065e8c32eda1","entry":"sample_initial_conditions","repo":"williamgilpin/dysts","repo_kind":"official","path":"dysts/analysis.py","file_url":"https://github.com/williamgilpin/dysts/blob/HEAD/dysts/analysis.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"f255065e8c32eda1"}},{"code_sha256_prefix":"be18207a2bb9a906","entry":"signif","repo":"williamgilpin/dysts","repo_kind":"official","path":"dysts/utils/utils.py","file_url":"https://github.com/williamgilpin/dysts/blob/HEAD/dysts/utils/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"be18207a2bb9a906"}},{"code_sha256_prefix":"46cff83740aa032d","entry":"convert_json_to_gzip","repo":"williamgilpin/dysts","repo_kind":"official","path":"dysts/utils/native_utils.py","file_url":"https://github.com/williamgilpin/dysts/blob/HEAD/dysts/utils/native_utils.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"46cff83740aa032d"}},{"code_sha256_prefix":"97f40b2b6129141a","entry":"get_attractor_list","repo":"williamgilpin/dysts","repo_kind":"official","path":"dysts/systems.py","file_url":"https://github.com/williamgilpin/dysts/blob/HEAD/dysts/systems.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"97f40b2b6129141a"}},{"code_sha256_prefix":"109afd132b86e11c","entry":"get_system_data","repo":"williamgilpin/dysts","repo_kind":"official","path":"dysts/systems.py","file_url":"https://github.com/williamgilpin/dysts/blob/HEAD/dysts/systems.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"109afd132b86e11c"}},{"code_sha256_prefix":"6a46cfdf29e6c5b1","entry":"simplex_neighbors","repo":"williamgilpin/dysts","repo_kind":"official","path":"dysts/metrics.py","file_url":"https://github.com/williamgilpin/dysts/blob/HEAD/dysts/metrics.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"6a46cfdf29e6c5b1"}},{"code_sha256_prefix":"8d92366dc15e472a","entry":"staticjit","repo":"williamgilpin/dysts","repo_kind":"official","path":"dysts/base.py","file_url":"https://github.com/williamgilpin/dysts/blob/HEAD/dysts/base.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"8d92366dc15e472a"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}