daniil-shmelev/pySigLib
daniil-shmelev/pySigLib has 28 GitHub stars and 5 forks. GitHot measured +1 stars in 24 hours and +1 in 7 days. Last checked 2026-11-12 07:33 UTC. Last push 2026-11-05.
Fast path signatures, log signatures, and signature kernels with PyTorch, JAX, and CUDA support
できること
- Signatures Truncated signatures and individual coefficients. - Log-signatures Truncated log signatures in full or compact Lyndon coordinates. - Signature kernels Kernels and metrics for sequential data.
- Branched signatures Branched signatures, branched log signatures and branched signature kernels. - Signature streams Online updates and constant-time interval queries. - Backpropagation Manual and automatic backpropagation with PyTorch and JAX support.
計測したスター増加
- 24時間
- +1
- 7日間
- +1
- 15日間
- 更新が遅れています
- 1か月
- 更新が遅れています
期間ごとの純増数です。期間は重複しており、日別の値ではありません。未計測の値は空欄です。スター数は注目度の指標であり、品質の保証ではありません。
README.md
オリジナル
The high-performance toolkit for rough path computation
Documentation | Installation | API reference | Paper
pySigLib brings path signatures, log-signatures, branched signatures, and signature kernels into one accelerated toolkit. It provides NumPy, PyTorch, and JAX support, with automatic differentiation for PyTorch and JAX and multithreaded C++ or native CUDA execution.
Installation
pip install pysiglib
# Add CUDA support
pip install "pysiglib[cuda]"
The JAX integration is included in the wheel. Install JAX separately with
pip install jax if you want to use it. For source builds and platform-specific
guidance, see the installation guide.
For Julia wrappers, the native release artifacts provide CPU and CUDA libraries callable through ccall, without requiring Python or a compiler.
Quick start
import numpy as np
import pysiglib
path = np.random.default_rng().normal(size=(32, 1000, 10))
signature = pysiglib.sig(path, degree=5)
Paths have shape (path length, dimension) or
(batch size, path length, dimension). Computation runs on the device where
the input already lives.
Why pySigLib?
- A unified toolkit for rough path computations - signatures, log-signatures, branched signatures, and signature kernels.
- Accelerated CPU and CUDA implementations for large workloads.
- Native NumPy, PyTorch, and JAX support without moving data between frameworks.
- Automatic differentiation with PyTorch and JAX, including
jitandvmapsupport in JAX. - Cross-platform - Windows, Linux and Mac systems supported.
Capabilities
|
Signatures Truncated signatures and individual coefficients. |
Log-signatures Truncated log signatures in full or compact Lyndon coordinates. |
Signature kernels Kernels and metrics for sequential data. |
|
Branched signatures Branched signatures, branched log signatures and branched signature kernels. |
Signature streams Online updates and constant-time interval queries. |
Backpropagation Manual and automatic backpropagation with PyTorch and JAX support. |
Framework integrations
PyTorch autograd
Signatures compose directly with the rest of a PyTorch model:
import torch
from pysiglib.torch_api import sig
path = torch.randn(32, 1000, 10, device="cuda", requires_grad=True)
sig(path, degree=5).sum().backward()
JAX transforms
The JAX API supports jit, vmap, and grad:
import jax
import jax.numpy as jnp
from pysiglib.jax_api import sig
@jax.jit
def signature_norm(path):
return jnp.sum(sig(path, degree=5) ** 2)
path = jax.random.normal(jax.random.key(0), (1000, 10))
gradient = jax.grad(signature_norm)(path)
See the documentation for complete examples and the full API reference.
Citation
If the library supports your research, please consider citing the paper:
@article{shmelev2025pysiglib,
title={pySigLib -- Fast Signature-Based Computations on CPU and GPU},
author={Shmelev, Daniil and Salvi, Cristopher},
journal={arXiv preprint arXiv:2509.10613},
year={2025}
}
Contributing
Contributions are welcome. Please open an issue first to discuss a change, then submit a pull request.
Sponsors
If you'd like to support development, please consider sponsoring the project.
関連プロジェクトを探す
tensorflow/tensorflow
すべての人のためのオープンソース機械学習フレームワーク
201,584 スターhuggingface/transformers
🤗 Transformers:テキスト、ビジョン、音声、マルチモーダルの最先端機械学習モデル向けモデル定義フレームワークで、推論と学習の両方に対応します。
168,917 スターAUTOMATIC1111/stable-diffusion-webui
Stable Diffusion の Web UI
165,300 スターComfy-Org/ComfyUI
グラフとノードによるインターフェースを備えた、最も強力でモジュール性の高い拡散モデル向け GUI、API、バックエンド。世界最速のローカル推論エンジン。
146,472 スター