{"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/blast-balanced-sampling-time-series-corpus","title":"BLAST: Balanced Sampling Time Series Corpus for Universal Forecasting Models","arxiv_id":"2505.17871","date":"2025-05-23","proceeding":null,"authors":["Zezhi Shao","Yujie Li","Fei Wang","Chengqing Yu","Yisong Fu","Tangwen Qian","Bin Xu","Boyu Diao","Yongjun Xu","Xueqi Cheng"],"abstract":"The advent of universal time series forecasting models has revolutionized zero-shot forecasting across diverse domains, yet the critical role of data diversity in training these models remains underexplored. Existing large-scale time series datasets often suffer from inherent biases and imbalanced distributions, leading to suboptimal model performance and generalization. To address this gap, we introduce BLAST, a novel pre-training corpus designed to enhance data diversity through a balanced sampling strategy. First, BLAST incorporates 321 billion observations from publicly available datasets and employs a comprehensive suite of statistical metrics to characterize time series patterns. Then, to facilitate pattern-oriented sampling, the data is implicitly clustered using grid-based partitioning. Furthermore, by integrating grid sampling and grid mixup techniques, BLAST ensures a balanced and representative coverage of diverse patterns. Experimental results demonstrate that models pre-trained on BLAST achieve state-of-the-art performance with a fraction of the computational resources and training tokens required by existing methods. Our findings highlight the pivotal role of data diversity in improving both training efficiency and model performance for the universal forecasting task.","url_abs":"https://arxiv.org/abs/2505.17871v2","url_pdf":"https://arxiv.org/pdf/2505.17871v2.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":"blast-balanced-sampling-time-series-corpus","repo_url":"https://github.com/gestaltcogteam/basicts","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"blast-balanced-sampling-time-series-corpus","repo_url":"https://github.com/gestaltcogteam/blast","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"none","reach":null}],"tasks":[{"task_slug":"diversity","task_name":"Diversity"},{"task_slug":"time-series-1","task_name":"Time Series"},{"task_slug":"time-series-forecasting","task_name":"Time Series Forecasting"}],"methods":[{"method_slug":"mixup","method_name":"Mixup"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":null,"atlas_url":"https://app.syntology.ai/?focus=2505.17871","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2505.17871"}},"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/gestaltcogteam/blast","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/gestaltcogteam/basicts","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"ran_draft_wrong":2,"ran_fixture":2,"ran_honours":1},"by_repo_kind":{"official":{"samples":5,"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":0,"samples":[{"code_sha256_prefix":"5bd8fd310a571931","entry":"format_dataset_name","repo":"gestaltcogteam/blast","repo_kind":"official","path":"raw_data_construction/Chronos_read_and_save.py","file_url":"https://github.com/gestaltcogteam/blast/blob/HEAD/raw_data_construction/Chronos_read_and_save.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"5bd8fd310a571931"}},{"code_sha256_prefix":"af44cc9be52e766c","entry":"get_key","repo":"gestaltcogteam/blast","repo_kind":"official","path":"raw_data_construction/Chronos_read_and_save.py","file_url":"https://github.com/gestaltcogteam/blast/blob/HEAD/raw_data_construction/Chronos_read_and_save.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"af44cc9be52e766c"}},{"code_sha256_prefix":"d0a34ca7c2252022","entry":"get_long_tail_point","repo":"gestaltcogteam/blast","repo_kind":"official","path":"sampling/sampling.py","file_url":"https://github.com/gestaltcogteam/blast/blob/HEAD/sampling/sampling.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"d0a34ca7c2252022"}},{"code_sha256_prefix":"364674c55f8636d3","entry":"pad_sequence","repo":"gestaltcogteam/blast","repo_kind":"official","path":"sampling/sampling.py","file_url":"https://github.com/gestaltcogteam/blast/blob/HEAD/sampling/sampling.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"364674c55f8636d3"}},{"code_sha256_prefix":"168409319946ad61","entry":"read_valid_indices","repo":"gestaltcogteam/blast","repo_kind":"official","path":"sampling/sampling.py","file_url":"https://github.com/gestaltcogteam/blast/blob/HEAD/sampling/sampling.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"168409319946ad61"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}