{"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/arxiv-2603-27814","title":"RG-TTA: Regime-Guided Meta-Control for Test-Time Adaptation in Streaming Time Series","arxiv_id":"2603.27814","date":"2026-03-29","proceeding":null,"authors":["Indar Kumar","Akanksha Tiwari","Sai Krishna Jasti","Ankit Hemant Lade"],"abstract":"Test-time adaptation (TTA) enables neural forecasters to adapt to distribution shifts in streaming time series, but existing methods apply the same adaptation intensity regardless of the nature of the shift. We propose Regime-Guided Test-Time Adaptation (RG-TTA), a meta-controller that continuously modulates adaptation intensity based on distributional similarity to previously-seen regimes. Using an ensemble of Kolmogorov-Smirnov, Wasserstein-1, feature-distance, and variance-ratio metrics, RG-TTA computes a similarity score for each incoming batch and uses it to (i) smoothly scale the learning rate -- more aggressive for novel distributions, conservative for familiar ones -- and (ii) control gradient effort via loss-driven early stopping rather than fixed budgets, allowing the system to allocate exactly the effort each batch requires. As a supplementary mechanism, RG-TTA gates checkpoint reuse from a regime memory, loading stored specialist models only when they demonstrably outperform the current model (loss improvement >= 30%). RG-TTA is model-agnostic and strategy-composable: it wraps any forecaster exposing train/predict/save/load interfaces and enhances any gradient-based TTA method. We demonstrate three compositions -- RG-TTA, RG-EWC, and RG-DynaTTA -- and evaluate 6 update policies (3 baselines + 3 regime-guided variants) across 4 compact architectures (GRU, iTransformer, PatchTST, DLinear), 14 datasets (6 real-world multivariate benchmarks + 8 synthetic regime scenarios), and 4 forecast horizons (96, 192, 336, 720) under a streaming evaluation protocol with 3 random seeds (672 experiments total). Regime-guided policies achieve the lowest MSE in 156 of 224 seed-averaged experiments (69.6%), with RG-EWC winning 30.4% and RG-TTA winning 29.0%. Overall, RG-TTA reduces MSE by 5.7% vs TTA while running 5.5% faster; RG-EWC reduces MSE by 14.1% vs standalone EWC.","url_abs":"https://arxiv.org/abs/2603.27814","url_pdf":"https://arxiv.org/pdf/2603.27814","source":{"archive":null,"snapshot":"2025-07-28","note":"not in the Papers with Code archive (frozen at the snapshot)","row_kind":"graph","title_abstract_authors_date":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license)"},"code_links":[],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2603.27814","atlas_url":"https://app.syntology.ai/?focus=2603.27814","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2603.27814"}},"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":[{"mentioned_in_github":null,"is_official":null,"provenance":"deterministic:regex_extraction","mentioned_in_paper":null,"url":"https://github.com/IndarKarhana/RGTTA-Regime-Guided-Test-Time-Adaptation","reach":null}],"summary":{"ran":4,"ran_honours":1,"ran_fixture":2,"ran_draft_wrong":2},"by_repo_kind":{"found_in_text":{"samples":9,"ran":9,"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":"7b9f557dcac6f1cd","entry":"DataPreprocessor","repo":"IndarKarhana/RGTTA-Regime-Guided-Test-Time-Adaptation","repo_kind":"found_in_text","path":"benchmarks/rgtta_forecaster.py","file_url":"https://github.com/IndarKarhana/RGTTA-Regime-Guided-Test-Time-Adaptation/blob/HEAD/benchmarks/rgtta_forecaster.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"7b9f557dcac6f1cd"}},{"code_sha256_prefix":"0eb757e66e885977","entry":"RGTTAForecaster","repo":"IndarKarhana/RGTTA-Regime-Guided-Test-Time-Adaptation","repo_kind":"found_in_text","path":"benchmarks/rgtta_forecaster.py","file_url":"https://github.com/IndarKarhana/RGTTA-Regime-Guided-Test-Time-Adaptation/blob/HEAD/benchmarks/rgtta_forecaster.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"0eb757e66e885977"}},{"code_sha256_prefix":"4a1ba8a7091785b7","entry":"TimeSeriesTransformer","repo":"IndarKarhana/RGTTA-Regime-Guided-Test-Time-Adaptation","repo_kind":"found_in_text","path":"benchmarks/rgtta_forecaster.py","file_url":"https://github.com/IndarKarhana/RGTTA-Regime-Guided-Test-Time-Adaptation/blob/HEAD/benchmarks/rgtta_forecaster.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"4a1ba8a7091785b7"}},{"code_sha256_prefix":"a8b312c8f0ccfffc","entry":"_RegimeMemory","repo":"IndarKarhana/RGTTA-Regime-Guided-Test-Time-Adaptation","repo_kind":"found_in_text","path":"benchmarks/rgtta_forecaster.py","file_url":"https://github.com/IndarKarhana/RGTTA-Regime-Guided-Test-Time-Adaptation/blob/HEAD/benchmarks/rgtta_forecaster.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"a8b312c8f0ccfffc"}},{"code_sha256_prefix":"71b220dba6546d05","entry":"_distribution_features","repo":"IndarKarhana/RGTTA-Regime-Guided-Test-Time-Adaptation","repo_kind":"found_in_text","path":"benchmarks/rgtta_forecaster.py","file_url":"https://github.com/IndarKarhana/RGTTA-Regime-Guided-Test-Time-Adaptation/blob/HEAD/benchmarks/rgtta_forecaster.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"71b220dba6546d05"}},{"code_sha256_prefix":"b65ee08addbee833","entry":"_multivariate_distribution_features","repo":"IndarKarhana/RGTTA-Regime-Guided-Test-Time-Adaptation","repo_kind":"found_in_text","path":"benchmarks/rgtta_forecaster.py","file_url":"https://github.com/IndarKarhana/RGTTA-Regime-Guided-Test-Time-Adaptation/blob/HEAD/benchmarks/rgtta_forecaster.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"b65ee08addbee833"}},{"code_sha256_prefix":"0b2257622372735c","entry":"create_lagged_features","repo":"IndarKarhana/RGTTA-Regime-Guided-Test-Time-Adaptation","repo_kind":"found_in_text","path":"benchmarks/rgtta_forecaster.py","file_url":"https://github.com/IndarKarhana/RGTTA-Regime-Guided-Test-Time-Adaptation/blob/HEAD/benchmarks/rgtta_forecaster.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"0b2257622372735c"}},{"code_sha256_prefix":"99264b7454646fe7","entry":"prepare_sequences","repo":"IndarKarhana/RGTTA-Regime-Guided-Test-Time-Adaptation","repo_kind":"found_in_text","path":"benchmarks/rgtta_forecaster.py","file_url":"https://github.com/IndarKarhana/RGTTA-Regime-Guided-Test-Time-Adaptation/blob/HEAD/benchmarks/rgtta_forecaster.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"99264b7454646fe7"}},{"code_sha256_prefix":"78d5bd77cf75bf32","entry":"regime_aware_loss","repo":"IndarKarhana/RGTTA-Regime-Guided-Test-Time-Adaptation","repo_kind":"found_in_text","path":"benchmarks/rgtta_forecaster.py","file_url":"https://github.com/IndarKarhana/RGTTA-Regime-Guided-Test-Time-Adaptation/blob/HEAD/benchmarks/rgtta_forecaster.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"78d5bd77cf75bf32"}}]},"arxiv_metadata":{"licence":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license)","fields":["title","abstract","authors","date"],"primary_category":"cs.LG","source":"arxiv_2026.jsonl"},"syntology_extracted_results":null}