torchortho ๐
February 23, 2026 ยท View on GitHub
torchortho is a PyTorch library for learnable activation functions based on:
- Hermite Polynomials ๐งโโ๏ธ
- Fourier Series ใฐ
- Tropical Polynomials & Rational Functions ๐ด
These adaptive activations dynamically adjust during training, offering improved expressivity, better gradient flow, and enhanced generalization for vision and language models.
๐ Paper Reference
This library is based on the paper:
๐ Polynomial, Trigonometric, and Tropical Activations (Khalfaoui-Hassani & Kesselheim, 2025).
For experimental results, check our repos:
- Vision models (ConvNeXt with
torchorthoactivations): ๐ GitHub - Language models (GPT-2 with
torchorthoactivations): ๐ GitHub
๐ฆ Installation
Install from PyPI:
pip install torchortho
or install directly from GitHub:
pip install git+https://github.com/K-H-Ismail/torchortho.git
๐ Usage
You can use torchortho activations just like any other PyTorch activation:
Example: Using Hermite Activation
import torch
from torchortho import HermiteActivation
# Define a learnable Hermite activation
degree = 5
activation = HermiteActivation(degree)
# Forward pass
x = torch.rand(7, 4, 3, 2)
y = activation(x)
# Compute gradients
loss = y.sum()
loss.backward()
print("Gradients of activation coefficients:", activation.coefficients.grad)
print("Output:", y)
Example: Using Fourier Activation in a Neural Network
import torch
import torch.nn as nn
from torchortho import FourierActivation
class CustomMLP(nn.Module):
def __init__(self, input_dim, hidden_dim, output_dim):
super().__init__()
self.fc1 = nn.Linear(input_dim, hidden_dim)
self.activation = FourierActivation(degree=4) # Learnable Fourier activation
self.fc2 = nn.Linear(hidden_dim, output_dim)
def forward(self, x):
x = self.fc1(x)
x = self.activation(x)
return self.fc2(x)
# Initialize the model
model = CustomMLP(input_dim=10, hidden_dim=32, output_dim=1)
x = torch.randn(5, 10)
output = model(x)
print("Model Output:", output)
โก Why Use torchortho?
1๏ธโฃ Adaptive and Learnable Activations
Unlike static activations (ReLU, GELU), torchortho functions dynamically adapt during training, allowing models to learn optimal activation functions for different tasks.
| Activation Type | Strengths |
|---|---|
| Hermite Activation | Adaptive polynomial approximation, variance-preserving, smooth optimization |
| Fourier Activation | Captures periodic structures in data (useful for NLP, physics-based models, and time-series) |
| Tropical Polynomial Activation | Convex activation for structured learning (e.g., decision boundaries, optimization landscapes) |
| Rational Activation | Generalizes standard Tropical activation functions for non-convex function fitting |
2๏ธโฃ Improved Expressivity and Gradient Flow
- Better function approximation โ Increases expressivity for deep networks.
- Variance-preserving initialization โ Ensures stable training, avoiding vanishing/exploding gradients.
- More flexible than ReLU/SwiGLU โ Adapts activation behavior based on data.
3๏ธโฃ Benchmarked on Real-World Models
The effectiveness of torchortho activations has been validated on large-scale deep learning benchmarks:
โ Image Classification (ConvNeXt-T on ImageNet-1K)
- Replacing GELU with
torchorthoactivations improves top-1 accuracy.
โ Language Modeling (GPT-2 on OpenWebText)
- Learnable activations reduce perplexity compared to GELU-based models.
For full benchmarks, see:
๐ License
This project is licensed under the GPL-3.0 License. See LICENSE for details.
๐ Contributing
We welcome contributions! Feel free to submit issues, open PRs, or suggest improvements.
๐ฌ Contact
For questions or collaborations, reach out via GitHub Issues.
๐ Citation
If you use torchortho in your research, please cite the following paper:
@inproceedings{khalfaoui-hassani2026polynomial,
title={Polynomial, trigonometric, and tropical activations},
author={Ismail Khalfaoui-Hassani and Stefan Kesselheim},
booktitle={The Fourteenth International Conference on Learning Representations},
year={2026},
url={https://openreview.net/forum?id=QywpTFx86x}
}
or
@article{khalfaoui2025polynomial,
title={Polynomial, trigonometric, and tropical activations},
author={Khalfaoui-Hassani, Ismail and Kesselheim, Stefan},
journal={arXiv preprint arXiv:2502.01247},
year={2025}
}