train
May 5, 2026 Β· View on GitHub
The official experiment code for the paper HELIX: Hybrid Encoding with Learnable Identity and Cross-dimensional Synthesis for Time Series Imputation, which has been accepted as a Spotlight paper at the International Conference on Machine Learning (ICML) 2026.
Fengming Zhang, Wenjie Du, Huan Zhang, Ke Yu, Shen Qu. HELIX: Hybrid Encoding with Learnable Identity and Cross-dimensional Synthesis for Time Series Imputation. In Proceedings of the International Conference on Machine Learning (ICML), 2026.
π€ If you find HELIX helpful to your work, please cite it and βοΈstar this repository to help others discover it. Thank you!
β Motivation and Highlights
β¦Ώ Motivation: Existing time series imputation methods often treat temporal and feature dimensions in isolation,
limiting their ability to capture the complex inter-dependencies in multivariate incomplete data. HELIX is proposed
to bridge this gap by jointly encoding temporal position, feature identity, and cross-dimensional interactions
within a unified framework.
β¦Ώ Highlights:
- Learnable Feature Identity (FeatID): A learnable embedding module that assigns each feature a unique identity representation, enabling the model to distinguish and specialize across heterogeneous variables.
- Hybrid Encoding: Combines sinusoidal positional encoding with learnable identity embeddings, capturing both absolute temporal positions and feature-specific characteristics simultaneously.
- Cross-dimensional Synthesis: A fusion mechanism that synthesizes information across the temporal and feature dimensions, allowing bidirectional information flow for more accurate imputation.
- State-of-the-art Performance: HELIX achieves competitive or superior results on multiple benchmark datasets for time series imputation.
β Model Availability
Important
π£ HELIX has been merged into PyPOTS main branch
and will be officially released in PyPOTS v1.5!
π Full parameter documentation: pypots.imputation.helix
pip install pypots # v1.5+ when released; for now install from main branch
from pypots.imputation import HELIX
# initialize the model
helix = HELIX(
n_steps=48, # number of time steps
n_features=37, # number of features
# ... (refer to PyPOTS documentation for full parameter list)
epochs=100,
)
# train
helix.fit(train_set, val_set)
# impute
imputation = helix.impute(test_set)
Note
Parameter naming difference: The experiment code in this repo uses pe_dim and feature_embed_dim,
while PyPOTS uses d_pe and d_feature_embed to follow its naming convention.
If you run the benchmark code directly, please rename these two parameters accordingly.
Additional variants available at milaogou/PyPOTS@add-helix-model:
- Ablation variants (w/o FeatID, w/o Fusion, w/o Hybrid, w/o Sinusoidal PE)
- Gated fusion variant with learnable gate mechanism
β Reproducing Experiments
All experiments were conducted on a Linux aarch64 HPC cluster with NVIDIA A100 GPUs.
Tasks were submitted in parallel via SLURM. The shell scripts (.sh) in this repo reflect this cluster setup β
please adapt them to your own environment as needed.
Training logs are omitted due to their large size. Each script is self-explanatory; the overall workflow is described below.
Step-by-step Workflow
- Prepare datasets: Follow the data preprocessing instructions in
benchmark_code/. - Configure experiments: Adjust hyperparameters and paths in the config/script files as needed.
- Run training: Submit the
.shscripts via SLURM or run them directly. - Evaluate: Results will be saved automatically. Compare with baselines using the provided evaluation scripts.
See benchmark_code/ for full details.
β Repository Structure
HELIX/
βββ benchmark_code/ # Full experiment code and evaluation
β βββ train_model.py # Main training script (5 seeds)
β βββ train_model_tuning.py # HPO training script
β βββ in_sample_exp.py # Batch SLURM job submission
β βββ global_config.py # Global configuration
β βββ utils.py # Utilities
β βββ data/ # Dataset generation scripts
β βββ hpo_results/ # Tuned hyperparameters per dataset
β βββ PyPOTS_tuning_configs/ # HPO search spaces and scripts
β βββ reproduce_imputation/ # Result collection and analysis
β βββ generate_latex_tables.py # LaTeX table generation
β βββ feature_embedding_analysis.py # Embedding analysis (Fig. 2)
β βββ extract_attention.py # Attention patterns (Fig. 3, 4)
β βββ imputation_visualization.py # Imputation visualization (Fig. 5)
β βββ physionet_embedding_analysis.py# Clinical grouping analysis (Fig. 6)
β βββ README.md # Detailed experiment instructions
βββ LICENSE # MIT License
βββ README.md # This file
β Citing HELIX
If HELIX is helpful to your research, please cite our paper as below and βοΈstar this repository. π€ Thank you!
@inproceedings{zhang2026helix,
title = {{HELIX}: Hybrid Encoding with Learnable Identity and Cross-dimensional Synthesis for Time Series Imputation},
author = {Fengming Zhang and Wenjie Du and Huan Zhang and Ke Yu and Shen Qu},
booktitle = {Forty-third International Conference on Machine Learning},
year = {2026},
url = {https://arxiv.org/abs/2605.02278}
}
or
Fengming Zhang, Wenjie Du, Huan Zhang, Ke Yu, and Shen Qu. HELIX: Hybrid Encoding with Learnable Identity and Cross-dimensional Synthesis for Time Series Imputation. In Proceedings of the Forty-third International Conference on Machine Learning (ICML), 2026.
π₯ If you use PyPOTS in your research, please also cite:
@article{du2023pypots,
title = {{PyPOTS: a Python toolbox for data mining on Partially-Observed Time Series}},
author = {Wenjie Du},
journal = {arXiv preprint arXiv:2305.18811},
year = {2023}
}
β Acknowledgments
Thanks to all co-authors for their valuable contributions. Thanks to the PyPOTS community for providing the ecosystem and infrastructure. Thanks to all reviewers for helping improve the quality of this paper.
β¨ Stars/forks/issues/PRs are all welcome!
β License
This project is released under the MIT License.
β Contact
If you have any questions or are interested in collaboration, please feel free to open an issue or contact us. π