pysiglib.branched_sig_combine_backprop#
- branched_sig_combine_backprop(derivs, bsig1, bsig2, dimension, degree, *, tree_order='recursive', planar=False, n_jobs=1)[source]#
Backpropagates through the branched signature combine (Butcher product).
Given
out = branched_sig_combine(bsig1, bsig2, dimension, degree)and upstream derivativesderivs = dF/d(out), computes(dF/d(bsig1), dF/d(bsig2)).- Parameters:
derivs – Upstream derivatives, same shape as combine output.
bsig1 – First branched signature input to the forward combine.
bsig2 – Second branched signature input to the forward combine.
dimension – Dimension of the underlying path.
degree – Maximum tree order.
tree_order – Tree ordering convention of
derivs,bsig1,bsig2and the returned gradients."recursive"(default) uses the recursive construction order."canonical"uses the shape-first order matchingtree_to_idx().planar – If True, backpropagate through planar branched sig combine.
n_jobs – Number of parallel threads for batch processing.
- Returns:
Tuple
(dF/d(bsig1), dF/d(bsig2)), in the same scalar-term format as the inputs.
Citation#
If you found this library useful in 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}
}