Zurück zu den Modellen
Detector

PELT

Pruned Exact Linear Time (PELT) changepoint detection.

PELT [1] solves the penalised optimal-partitioning problem with pruning of admissible start points, giving exact solutions in expected linear time for well-behaved cost functions.

Schnellstart

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)

Parameter(7)

costBaseIntervalScorer, optional, default=L2Cost()
Cost scorer used for changepoint detection.
penaltyfloat or None, default=None

Penalty for adding a changepoint. None uses 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_size are 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.

Beispiele

>>> 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)

Referenzen

[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.