Skip to main content

Universal Hyperbolic Geometry Library for PyTorch

Project description

Universal Hyperbolic Geometry Library

PyPI version License Build Status Code Coverage

A PyTorch library for Universal Hyperbolic Geometry (UHG) and Hyperbolic Graph Neural Networks. All operations are performed directly in hyperbolic space without tangent space mappings.

Installation

Basic Installation

pip install uhg

With GPU Support

pip install uhg[gpu]

CPU-Only Version

pip install uhg[cpu]

Development Version

pip install uhg[dev]

Documentation Tools

pip install uhg[docs]

Quick Start

import uhg
import torch

# Create hyperbolic tensors
manifold = uhg.LorentzManifold()
x = uhg.HyperbolicTensor([1.0, 0.0, 0.0], manifold=manifold)
y = uhg.HyperbolicTensor([0.0, 1.0, 0.0], manifold=manifold)

# Compute hyperbolic distance
dist = uhg.distance(x, y)

# Create a hyperbolic neural network
model = uhg.nn.layers.HyperbolicGraphConv(
    manifold=manifold,
    in_features=10,
    out_features=5
)

# Use hyperbolic optimizer
optimizer = uhg.optim.HyperbolicAdam(
    model.parameters(),
    manifold=manifold,
    lr=0.01
)

Features

  • Pure UHG implementation without tangent space operations
  • Hyperbolic neural network layers and models
  • Hyperbolic optimizers (Adam, SGD)
  • Hyperbolic samplers (HMC, Langevin)
  • Graph neural networks in hyperbolic space
  • Comprehensive documentation and examples

Platform Support

  • Linux (all major distributions)
  • macOS (including Apple Silicon)
  • Windows
  • Docker containers
  • Splunk environments

Documentation

Full documentation is available in the docs directory and in the GitHub repository.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Citation

If you use UHG in your research, please cite:

@software{uhg2023,
  title = {UHG: Universal Hyperbolic Geometry Library},
  author = {Bovaird, Zach},
  year = {2023},
  url = {https://github.com/zachbovaird/UHG-Library}
}

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

uhg-0.1.6.tar.gz (42.0 kB view details)

Uploaded Source

Built Distribution

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

uhg-0.1.6-py3-none-any.whl (44.5 kB view details)

Uploaded Python 3

File details

Details for the file uhg-0.1.6.tar.gz.

File metadata

  • Download URL: uhg-0.1.6.tar.gz
  • Upload date:
  • Size: 42.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.9.20

File hashes

Hashes for uhg-0.1.6.tar.gz
Algorithm Hash digest
SHA256 2801b995a646e614d11b7c3ff73009ec65c1ce3c757740d8c659e4745448212b
MD5 2b63da2a0a5ecfdf5ee750e1c14cc7d0
BLAKE2b-256 6b751cd63d6660b203fdf7a6675eec9741bea0cb2013f38a59c7ced25fd6daef

See more details on using hashes here.

File details

Details for the file uhg-0.1.6-py3-none-any.whl.

File metadata

  • Download URL: uhg-0.1.6-py3-none-any.whl
  • Upload date:
  • Size: 44.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.9.20

File hashes

Hashes for uhg-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 6f027de58ae25f88fa69518d488ffb68f90ed3ac48dec7e4ea350f2680ffd48f
MD5 692ec04347d2df970055bb396c9503b4
BLAKE2b-256 457b39baf562407f23670e52a717fc1f63c97a1a43b1a8699bd1cd2c166b4197

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