Skip to main content

ANGLE: Angular Neural Generative Learning via Engression

Project description

ANGLE: Angular Neural Generative Learning via Engression

Authors: Rajdeep Pathak, Archi Roy, Tanujit Chakraborty

Paper License: MIT


Overview

anglepy is a lightweight deep generative Python framework designed for non-parametric distributional regression on circular data. Traditional regression targets the conditional mean, which can be geometrically misleading for circular responses under multimodal, skewed, or asymmetric data structures. ANGLE addresses these limitations by learning the full conditional distribution of an angular response, given Euclidean and circular covariates, through a generative map optimized via a generalized circular energy score (GCES) loss.

Key Features

  • Intrinsic Uncertainty Quantification: Provides prediction with model-intrinsic uncertainty quantification, bounding true poses with predictive intervals.
  • Extrapolation on the Circle: Extends its utility to underexplored challenges like out-of-distribution extrapolation.
  • Sufficient Dimension Reduction (SDR): Finds low-dimensional representations of high-dimensional covariates without discarding predictive information.
  • Conditional Distribution Equality Testing: Provides unified methodologies to test equality across conditional distributions.
  • Flexible Architecture: Seamlessly accommodates both pre-additive and post-additive noise models (covariate noise and response noise).
  • Computationally Efficient: Maintains a bandwidth-free architecture that is significantly more lightweight than existing Bayesian alternatives.

⚙️ Installation

You can install the package directly via PyPI or clone the repository to install it from the source.

Option 1: Install via PyPI (Coming soon)

pip install anglepy

Option 2: Install from Source

If you want to modify the code or run the latest development version, you can clone the repository:

git clone https://github.com/PyCoder913/anglepy.git
cd anglepy
pip install -r requirements.txt

Quick Start

For detailed interactive examples, please check the Jupyter notebook in the examples/ directory.

🚀 Applications

The practical efficacy of the ANGLE framework has been rigorously demonstrated across diverse data modalities:

  • 📸 Object Pose Estimation: Evaluated on the PASCAL3D+ benchmark to predict the horizontal rotation angle (azimuth) of 12 object categories from imagery, utilizing fine-tuned visual encoders like Inception-v3 and ConvNeXt.
  • 🌬️ Wind Direction Prediction: Applied to complex meteorological datasets from Germany and India to estimate the full distribution of wind directions based on spatial coordinates, providing critical probabilistic predictions for safety-critical operations.

Documentation

Full documentation, including API references, mathematical foundations, and detailed usage tutorials, can be found in the docs/ folder or hosted online (link coming soon).

📝 Citation

If you use this code, models, or find our work helpful in your research, please consider citing our paper:

@article{pathak2026angle,
  title={ANGLE: Angular Neural Generative Learning via Engression},
  author={Pathak, Rajdeep and Roy, Archi and Chakraborty, Tanujit},
  journal={arXiv preprint arXiv:2607.12833},
  year={2026}
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

anglepy-0.0.1.tar.gz (36.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

anglepy-0.0.1-py3-none-any.whl (37.6 kB view details)

Uploaded Python 3

File details

Details for the file anglepy-0.0.1.tar.gz.

File metadata

  • Download URL: anglepy-0.0.1.tar.gz
  • Upload date:
  • Size: 36.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for anglepy-0.0.1.tar.gz
Algorithm Hash digest
SHA256 59b2f29df07118402e46145cb0fca8ad32c30ebbe7c5ff0e81cdb0a0b6afcc15
MD5 2a70252dd0eaec796f46f60a5614ad59
BLAKE2b-256 95727c4a3d14b30eaee49fc462ba6aa99fb6b61611b09f4421df5b5b8b76be2c

See more details on using hashes here.

File details

Details for the file anglepy-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: anglepy-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 37.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for anglepy-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 6d162d86c9cf1e4cfbdc8b452c43fc6cd1d0c9635fbe28ca4e9460846e420613
MD5 ca4f77388290119b1df580400575de87
BLAKE2b-256 093900360c3af57ecca22f1206656b8289e0f593f059a4f977bd3729979957bd

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page