Irene Iele1, Giulia Romoli2, Daniele Molino1, Elena Mulero Ayllón1, Filippo Ruffini1,2, Paolo Soda1,2, Matteo Tortora3
1 University Campus Bio-Medico of Rome, 2 Umeå University, 3 University of Genoa
Public release of the code for NDVI forecasting using satellite time series and weather data.
For questions and comments, feel free to contact me: irene.iele@unicampus.it
If you use this work, please cite:
@article{iele2026probabilistic,
title={Probabilistic NDVI Forecasting from Sparse Satellite Time Series and Weather Covariates},
author={Iele, Irene and Romoli, Giulia and Molino, Daniele and Ayll{\'o}n, Elena Mulero and Ruffini, Filippo and Soda, Paolo and Tortora, Matteo},
journal={arXiv preprint arXiv:2602.17683},
year={2026}
}dataset_builder/cache_builder_unified_monthly_noise.py: builds the cached dataset from the raw CSV files, adding monthly weather noise and saving the cache metadata and scaler.dataset_builder/torch_dataset.py: loads the cached samples as a PyTorch dataset, with optional feature engineering, scaling, and target discretization.dataset_builder/scaler.py: handles feature and target scaling, plus inverse transforms for evaluation.agrimatnet/model_quantile.py: defines the AgriMatNet quantile model and the pinball loss used during training.agrimatnet/train_quantile_ablation.py: trains the quantile model and supports ablation studies and time-weighted loss.agrimatnet/test_quantile_ablation.py: evaluates a trained checkpoint and exports metrics, predictions, and plots.agrimatnet/train_quantile.bash: SLURM wrapper that launches the training job on the cluster.agrimatnet/test_quantile_small_no_interp.bash: SLURM wrapper that launches the evaluation job on the cluster for the no-interpolation experiments.
