HDMRLib
A unified Python library for HDMR and EMPR
HDMRLib provides a consistent interface for decomposing high-dimensional tensors and multivariate functions into interpretable lower-order components. It supports both High-Dimensional Model Representation (HDMR) and Enhanced Multivariate Products Representation (EMPR) across NumPy, PyTorch, and TensorFlow backends.
Interpretable decomposition for high-dimensional structure
HDMRLib is designed for research and scientific computing workflows that require decomposition, approximation, and interaction analysis in high-dimensional settings. The library makes it easier to compute lower-order representations, inspect component terms, and work within a unified backend-flexible API.
Core capabilities
HDMR and EMPR in one interface
Work with classical HDMR and EMPR-based formulations through a consistent Python workflow.
Lower-order component analysis
Decompose tensors and multivariate functions into interpretable lower-order terms for inspection and analysis.
Multi-backend execution
Use the same workflow across NumPy, PyTorch, and TensorFlow, including tensor-based and GPU-enabled pipelines where supported.
What is HDMRLib?
HDMRLib is a research-oriented library for studying high-dimensional structure through lower-order representations. It supports decomposition, reconstruction, and component extraction for tensor-valued data and multivariate functions, making it suitable for experimentation, analysis, and scientific software workflows.
The library is particularly useful when interaction structure, approximation quality, and computational flexibility are central to the problem setting.
Supported backends
HDMRLib currently supports the following computational backends:
NumPy for standard array-based workflows
PyTorch for tensor computation and GPU-enabled pipelines
TensorFlow for TensorFlow-based numerical workflows
Explore the documentation
Start with the Installation guide to set up the library
Visit the User Guide for the main workflow
See Fundamentals for the underlying decomposition concepts
Browse the Examples gallery for practical use cases
Use the API Reference for detailed documentation