Signature kernels #
The truncated signature kernel k_n(a, b) = Σ_{|w| ≤ n} a(w)·b(w) (Salvi,
Cass, Foster, Lyons, Yang): symmetric, bilinear, and positive semidefinite
— its Gram quadratic form is a sum of squares of feature evaluations. The
word enumeration is parametrised by a listing of the alphabet, so it is
computable: for piecewise-linear paths over ℚ concrete kernel values can
be certified by native_decide.
All words of a given length over a listed alphabet.
Equations
- RoughPaths.Word.wordListOfLength letters 0 = [[]]
- RoughPaths.Word.wordListOfLength letters n.succ = List.flatMap (fun (a : α) => List.map (fun (w : List α) => a :: w) (RoughPaths.Word.wordListOfLength letters n)) letters
Instances For
All words of length at most n over a listed alphabet.
Equations
- RoughPaths.Word.kernelWords letters n = List.flatMap (RoughPaths.Word.wordListOfLength letters) (List.range (n + 1))
Instances For
The truncated signature kernel: the ℓ²-pairing of word coefficients
through length n, the alphabet being listed by letters.
Equations
- RoughPaths.Word.sigKernelTruncated letters a b n = (List.map (fun (w : List α) => RoughPaths.Word.coeff a w * RoughPaths.Word.coeff b w) (RoughPaths.Word.kernelWords letters n)).sum
Instances For
The kernel is symmetric.
The kernel is additive on the left (bilinearity).
The kernel scales on the left (bilinearity).
Positive semidefiniteness of the truncated kernel: the Gram quadratic form is a sum of squares of feature evaluations.