tsseg.algorithms.tglad package
tGLAD — temporal Graph-difference change point detection.
Description
tGLAD segments multivariate time series by tracking the evolution of conditional independence (CI) graphs over time. A sliding window converts the series into overlapping intervals; the uGLAD sparse graph recovery model (multitask mode) recovers a precision matrix (CI graph) for each interval simultaneously. A second-order trajectory-tracking algorithm measures graph-difference scores, and an allocation algorithm produces the final segmentation.
Parameters
Name |
Type |
Default |
Description |
|---|---|---|---|
|
int |
|
Time steps per uGLAD window. |
|
int |
|
Step between successive windows. |
|
int |
|
Windows processed together by the multitask solver. |
|
float |
|
Min Frobenius distance to trigger a change point. |
|
int / None |
|
Min distance between emitted CPs (default: |
|
int |
|
uGLAD training epochs per batch. |
|
float |
|
Optimiser learning rate. |
|
int |
|
Unrolled GLAD iterations. |
|
float |
|
Eigenvalue regularisation for batch covariance. |
|
bool |
|
Print progress information. |
|
int |
|
Time axis. |
Usage
from tsseg.algorithms import TGLADDetector
detector = TGLADDetector(window_size=256, stride=64, threshold=0.4)
labels = detector.fit_predict(X)
Implementation: Origin: new code. Inspired by the tGLAD paper.
Reference: Imani & Shrivastava (2023), Are uGLAD? Time will tell!