Skip to content
/ MHC Public

MHC: Manifold-Constrained Hyper-Connections. A high-performance library for dynamic, manifold-aware skip connections. It optimizes gradient flow and enhances feature representation in deep neural networks through stable geometric constraints (Simplex, Identity, Matrix). πŸ‡²πŸ‡¦

License

Notifications You must be signed in to change notification settings

gm24med/MHC

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

86 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

mHC Logo

mhc: Manifold-Constrained Hyper-Connections

Honey Badger Stability for Deeper, More Stable Neural Networks.

Python 3.9+ PyTorch 2.0+ License: MIT CI

Documentation β€’ Examples β€’ Paper β€’ Contributing


🎯 What is mHC?

mhc is a next-generation PyTorch library that reimagines residual connections. Instead of simple one-to-one skips, mHC learns to dynamically mix multiple historical network states through geometrically constrained manifolds, bringing Honey Badger toughness to your gradients.

πŸš€ High Performance 🧠 Smart Memory πŸ› οΈ Drop-in Ease
Reach deeper than ever before with optimized gradient flow. Dynamically mix past states for richer feature representation. Transform any model to mHC with a single line of code.

mHC Architecture

Installation

β€œWe recommend uv for faster and reproducible installs, but standard pip is fully supported.”

# Using pip (standard)
pip install mhc
# Using uv (faster, recommended)
uv pip install mhc

Optional Extras

# Visualization utilities
pip install "mhc[viz]"
uv pip install "mhc[viz]"

# TensorFlow support
pip install "mhc[tf]"
uv pip install "mhc[tf]"

30-Second Example

import torch
from mhc import MHCSequential

# Create a model with mHC skip connections
model = MHCSequential([
    nn.Linear(64, 64),
    nn.ReLU(),
    nn.Linear(64, 64),
    nn.ReLU(),
    nn.Linear(64, 32)
], max_history=4, mode="mhc", constraint="simplex")

# Use it like any PyTorch model
x = torch.randn(8, 64)
output = model(x)

Inject into Existing Models

Transform any model to use mHC with one line:

from mhc import inject_mhc
import torchvision.models as models

model = models.resnet50(pretrained=True)
inject_mhc(model, target_types=nn.Conv2d, max_history=4)

πŸ€” Why mHC?

The Gradient Bottleneck

Standard residual connections only look one step back: $x_{l+1} = x_l + f(x_l)$. While revolutionary, this narrow window limits the network's ability to leverage long-range dependencies and can lead to diminishing returns in extremely deep architectures.

The mHC Breakthrough

mHC implements a history-aware manifold that mixes a sliding window of $H$ past representations:

$$ x_{l+1} = f(x_l) + \sum_{k=l-H+1}^{l} \alpha_{l,k}, x_k $$

Where:

  • $\alpha_{l,k}$: Learned mixing weights optimized for feature relevance.
  • Constraints: Weights are projected onto stable manifolds (Simplex, Identity-preserving, or Doubly Stochastic) to ensure mathematical convergence.

Key Advantages

Benefit Description
Deep Stability Geometric constraints prevent gradient explosion even at 200+ layers.
Feature Fusion Multi-history mixing allows layers to recover lost spatial or semantic info.
Adaptive Flow The network learns which historical states are most important for the current layer.

πŸ“Š Performance Highlights

Experiments with 50-layer networks show:

  • βœ… 2x Faster Convergence compared to standard ResNet on deep MLPs.
  • βœ… Superior Gradient Stability through geometric manifold constraints.
  • βœ… Minimal Overhead (~10% additional compute for 4x history).

Tip

Run the benchmark yourself: uv run python experiments/benchmark_stability.py


πŸ“Š Visualizing Results

Training Dashboard History Evolution
Training Dashboard Mixing Weights
Loss curves & weight dynamics Learned coefficients over time

Gradient Flow Feature Contribution
Gradient Flow History Contribution
Improved backpropagation signal Single layer state importance

🌳 Repository Structure

MHC/
β”œβ”€β”€ mhc/                     # Core package
β”‚   β”œβ”€β”€ constraints/         # Mathematical projections
β”‚   β”œβ”€β”€ layers/              # mHC Skip implementations
β”‚   β”œβ”€β”€ tf/                  # TensorFlow compatibility
β”‚   └── utils/               # Injection & logging tools
β”œβ”€β”€ tests/                   # Robust PyTest suite
β”œβ”€β”€ docs/                    # Documentation sources
└── examples/                # Quick-start notebooks

πŸ› οΈ Development Installation

For contributors cloning the repository:

git clone https://github.com/gm24med/MHC.git
cd MHC

# Using uv (recommended for dev)
uv pip install -e ".[dev]"

# Or standard pip
pip install -e ".[dev]"

⭐ Star us on GitHub!

Report Bug β€’ Request Feature β€’ Discussions

About

MHC: Manifold-Constrained Hyper-Connections. A high-performance library for dynamic, manifold-aware skip connections. It optimizes gradient flow and enhances feature representation in deep neural networks through stable geometric constraints (Simplex, Identity, Matrix). πŸ‡²πŸ‡¦

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages