Spectral-Aware Text-to-Time Series Generation with Billion-Scale Multimodal Meteorological Data
Organizations: School of Computer Science and Engineering, Northeastern University, Shenyang, China
Abstract
Text-to-time-series generation is particularly important in meteorology, where natural language offers intuitive control over complex, multi-scale atmospheric dynamics. Existing approaches are constrained by the lack of large-scale, physically grounded multimodal datasets and by architectures that overlook the spectral-temporal structure of weather signals. We address these challenges with a unified framework for text-guided meteorological time-series generation. First, we introduce MeteoCap-3B, a billion-scale weather dataset paired with expert-level captions constructed via a Multi-agent Collaborative Captioning (MACC) pipeline, yielding information-dense and physically consistent annotations. Building on this dataset, we propose MTransformer, a diffusion-based model that enables precise semantic control by mapping textual descriptions into multi-band spectral priors through a Spectral Prompt Generator, which guides generation via frequency-aware attention. Extensive experiments on real-world benchmarks demonstrate state-of-the-art generation quality, accurate cross-modal alignment, strong semantic controllability, and substantial gains in downstream forecasting under data-sparse and zero-shot settings. Additional results on general time-series benchmarks indicate that the proposed framework generalizes beyond meteorology.
Figures & tables
| Category | Metric | Value |
|---|---|---|
| Global Scale | Total observation points | |
| Number of stations | ||
| Time span | 1991–2025 | |
| Series Modality | Variables per step | 5 (Temp, Press, Humid, Wind, Precip) |
| Sequence length ( ) | 168 (hourly) / 512 (sub-hourly) | |
| Steady / Transient / Volatile | 60% / 30% / 10% |
| MTransformer (Ours) | T2S [ 22 ] (IJCAI 2025) | DiffusionTS [ 14 ] (ICLR 2024) | TimeVAE [ 29 ] (arXiv 2025) | GPT-4o-mini [ 30 ] (2024) | Llama3.1-8b [ 31 ] (2023) | Gemini-3 (2025) | |||||||||||||||||
| Group | Datasets | Length | WAPE | MSE | MRR@10 | WAPE | MSE | MRR@10 | WAPE | MSE | MRR@10 | WAPE | MSE | MRR@10 | WAPE | MSE | MRR@10 | WAPE | MSE | MRR@10 | WAPE | MSE | MRR@10 |
| TSFragment-600K [ 22 ] | ETTh1 | 24 | 0.162 | 0.009 | 0.279 | 0.183 | 0.008 | 0.283 | 0.793 | 0.077 | 0.267 | 0.666 | 0.055 | 0.211 | 0.264 | 0.041 | 0.104 | 0.883 | 0.663 | 0.097 | 0.245 | 0.035 | 0.112 |
| 48 | 0.216 | 0.014 | 0.300 | 0.234 | 0.013 | 0.289 | 1.207 | 0.120 | 0.298 | 0.647 | 0.055 | 0.286 | 0.414 | 0.080 | 0.100 | 0.923 | 1.260 | 0.086 | 0.385 | 0.072 | 0.108 | ||
| 96 | 0.218 | 0.012 | 0.296 | 0.229 | 0.011 | 0.291 | 0.498 | 0.028 | 0.214 | 0.643 | 0.055 | 0.286 | 0.500 | 0.118 | 0.096 | 0.949 | 1.748 | 0.056 | 0.466 | 0.105 | 0.099 | ||
| ETTm1 | 24 | 0.376 | 0.032 | 0.287 | 0.426 | 0.033 | 0.286 | 0.604 | 0.040 | 0.251 | 0.666 | 0.048 | 0.219 | 0.244 | 0.031 | 0.101 | 1.134 | 0.798 | 0.099 | 0.238 | 0.030 | 0.108 | |
| 48 | 0.368 | 0.054 | 0.280 | 0.53 | 0.053 | 0.283 | 1.119 | 0.100 | 0.285 | 0.636 | 0.051 | 0.217 | 0.453 | 0.112 | 0.097 | 1.074 | 1.496 | 0.079 | 0.425 | 0.101 | 0.103 | ||
| Training Data Source | Backbone: Transformer | Backbone: TimesNet | ||||||
|---|---|---|---|---|---|---|---|---|
| 96 | 192 | 336 | 720 | 96 | 192 | 336 | 720 | |
| Real Only (10% data) | 0.342 | 0.385 | 0.441 | 0.512 | 0.285 | 0.324 | 0.388 | 0.442 |
| + TimeVAE [ 29 ] | 0.335 | 0.372 | 0.430 | 0.498 | 0.278 | 0.315 | 0.375 | 0.430 |
| + Diffusion-TS [ 14 ] | 0.318 | 0.355 | 0.412 | 0.475 | 0.262 | 0.301 | 0.358 | 0.412 |
| + T2S [ 22 ] | 0.305 | 0.340 | 0.395 | 0.455 | 0.255 | 0.292 | 0.345 | 0.398 |
| + MTransformer (Ours) | 0.272 | 0.305 | 0.352 | 0.408 | 0.238 | 0.274 | 0.322 | 0.375 |
| Pre-training | Zero-Shot | Full FT | Avg. Gain | |||
|---|---|---|---|---|---|---|
| MSE | MAE | MSE | MAE | ZS | FT | |
| Scratch (Random Init.) | 0.612 | 0.525 | 0.285 | 0.318 | - | - |
| Unimodal Pre-train (Series Only) | 0.545 | 0.482 | 0.264 | 0.295 | +10.1% | +7.3% |
| Multimodal Pre-train (Ours) | 0.465 | 0.412 | 0.235 | 0.268 | +22.8% | +16.4% |
| Part A: Ablation | Model Variants | MSE | WAPE |
| Full Model (Ours) | 0.028 | 0.265 | |
| w/o Spectral Scheduler (Fixed ) | 0.030 | 0.278 | |
| w/o SPAC (Standard Cross-Attn) | 0.033 | 0.292 | |
| w/o MSPG (Raw Text Embed.) | 0.038 | 0.325 | |
| w/o Text Cond. (Base DiT) | 0.045 | 0.368 | |
| Part B: Hyperparameter | Parameter Settings | MSE | WAPE |
| Method | Hallucination Rate ( ) | Phys. Consistency ( ) | Informativeness ( ) |
|---|---|---|---|
| GPT-4o | 24.5% | 3.12 0.45 | 3.45 0.38 |
| Claude-4.5 | 18.2% | 3.35 0.41 | 3.68 0.42 |
| MACC (Ours) | 3.8% | 4.82 0.15 | 4.65 0.22 |
| Method | Overall Test Set (All Subsets) | Meteo-Volatile Subset (Extreme Events) | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Text-to-Series | Series-to-Text | Text-to-Series | Series-to-Text | |||||||||
| R@1 | R@5 | MRR | R@1 | R@5 | MRR | R@1 | R@5 | MRR | R@1 | R@5 | MRR | |
| Heuristic Baselines | ||||||||||||
| Random Guess | 0.01 | 0.05 | 0.001 | 0.01 | 0.05 | 0.001 | 0.01 | 0.05 | 0.001 | 0.01 | 0.05 | 0.001 |
| Stat-Feature Matching | 8.5 | 22.1 | 0.145 | 8.2 | 21.5 | 0.142 | 4.2 | 12.8 | 0.085 | 3.8 | 11.5 | 0.080 |
| DTW-Matching | 12.4 | 26.8 | 0.185 | 11.5 | 25.2 | 0.178 | 6.8 | 15.5 | 0.110 | 6.2 | 14.2 | 0.105 |