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.7.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.7-py3-none-any.whl (44.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: uhg-0.1.7.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.7.tar.gz
Algorithm Hash digest
SHA256 3f0a9e14a967461c78d41431be9dc6ae78bee00078599c876d133f854b1c05a2
MD5 505efba9261de610e5ab904d050dc89b
BLAKE2b-256 f44c6e95b8aca9c84f6afe8dc2270d2e6367069a7abfc813d754cab0bdd926c9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: uhg-0.1.7-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.7-py3-none-any.whl
Algorithm Hash digest
SHA256 30631b21cb29b421edcfda04a819a9c3fda3b1b2cdc4a5b422c066cc69dda587
MD5 1907e3a3f87313daedfb928dcaab7340
BLAKE2b-256 0d1a3b85a473a3348c1ac8782c5b2788efb4459fb02b309681180e09e66a91b3

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