Detector
PELT
Pruned Exact Linear Time (PELT) changepoint detection.
Quickstart
python
from sktime.detection.pelt import PELT
estimator = PELT(cost=None, penalty=None, min_segment_length=1, step_size=1, split_cost=0.0, prune=True, pruning_margin=0.0)Parameters(7)
- costBaseIntervalScorer, optional, default=L2Cost()
- Cost scorer used for changepoint detection.
- penaltyfloat or None, default=None
Penalty for adding a changepoint.
Noneuses a BIC penalty computed from the data at prediction time.- min_segment_lengthint, default=1
- Minimum number of observations in a segment.
- step_sizeint, default=1
Only multiples of
step_sizeare considered as changepoints (JumpPELT).- split_costfloat, default=0.0
- Additive cost of splitting a segment.
- prunebool, default=True
If
False, disables pruning (optimal partitioning).- pruning_marginfloat, default=0.0
- Margin added to the pruning criterion.
Examples
>>> from sktime.detection.pelt import PELT
>>> from sktime.detection.costs._l2_cost import L2Cost
>>> import numpy as np
>>> X = np. concatenate ([np. zeros (50), 10 * np. ones (50)])
>>> detector = PELT (cost = L2Cost (), penalty = 15)
>>> detector. fit (X). predict (X)References
- [1 ] Killick, R., Fearnhead, P., & Eckley, I. A. (2012). Optimal detection of changepoints with a linear computational cost. Journal of the American Statistical Association, 107(500), 1590-1598. [2 ] Bakka, K. B. (2018). Changepoint model selection in Gaussian data. Master’s thesis, NTNU.