cpop: Detecting Changes in Piecewise-Linear Signals

Changepoint detection is an important problem with a wide range of applications. There are many different types of changes that one may wish to detect, and a widerange of algorithms and software for detecting them. However there are relatively few approaches for detecting changes-in-slope in the me...

Full description

Saved in:
Bibliographic Details
Main Authors: Paul Fearnhead, Daniel Grose
Format: Article
Language:English
Published: Foundation for Open Access Statistics 2024-05-01
Series:Journal of Statistical Software
Online Access:https://www.jstatsoft.org/index.php/jss/article/view/4896
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1850058983809744896
author Paul Fearnhead
Daniel Grose
author_facet Paul Fearnhead
Daniel Grose
author_sort Paul Fearnhead
collection DOAJ
description Changepoint detection is an important problem with a wide range of applications. There are many different types of changes that one may wish to detect, and a widerange of algorithms and software for detecting them. However there are relatively few approaches for detecting changes-in-slope in the mean of a signal plus noise model. We describe the R package cpop, available on the Comprehensive R Archive Network (CRAN). This package implements CPOP, a dynamic programming algorithm, to find the optimal set of changes that minimizes an L0 penalized cost, with the cost being a weighted residual sum of squares. The package has extended the CPOP algorithm so it can analyse data that is unevenly spaced, allow for heterogeneous noise variance, and allows for a grid of potential change locations to be different from the locations of the data points. There is also an implementation that uses the CROPS algorithm to detect all segmentations that are optimal as you vary the L0 penalty for adding a change across a continuous range of values.
format Article
id doaj-art-65d67dac235c437c82e2b017ea438f77
institution DOAJ
issn 1548-7660
language English
publishDate 2024-05-01
publisher Foundation for Open Access Statistics
record_format Article
series Journal of Statistical Software
spelling doaj-art-65d67dac235c437c82e2b017ea438f772025-08-20T02:51:00ZengFoundation for Open Access StatisticsJournal of Statistical Software1548-76602024-05-01109110.18637/jss.v109.i07cpop: Detecting Changes in Piecewise-Linear SignalsPaul Fearnhead0Daniel Grose1Lancaster UniversityLancaster University Changepoint detection is an important problem with a wide range of applications. There are many different types of changes that one may wish to detect, and a widerange of algorithms and software for detecting them. However there are relatively few approaches for detecting changes-in-slope in the mean of a signal plus noise model. We describe the R package cpop, available on the Comprehensive R Archive Network (CRAN). This package implements CPOP, a dynamic programming algorithm, to find the optimal set of changes that minimizes an L0 penalized cost, with the cost being a weighted residual sum of squares. The package has extended the CPOP algorithm so it can analyse data that is unevenly spaced, allow for heterogeneous noise variance, and allows for a grid of potential change locations to be different from the locations of the data points. There is also an implementation that uses the CROPS algorithm to detect all segmentations that are optimal as you vary the L0 penalty for adding a change across a continuous range of values. https://www.jstatsoft.org/index.php/jss/article/view/4896
spellingShingle Paul Fearnhead
Daniel Grose
cpop: Detecting Changes in Piecewise-Linear Signals
Journal of Statistical Software
title cpop: Detecting Changes in Piecewise-Linear Signals
title_full cpop: Detecting Changes in Piecewise-Linear Signals
title_fullStr cpop: Detecting Changes in Piecewise-Linear Signals
title_full_unstemmed cpop: Detecting Changes in Piecewise-Linear Signals
title_short cpop: Detecting Changes in Piecewise-Linear Signals
title_sort cpop detecting changes in piecewise linear signals
url https://www.jstatsoft.org/index.php/jss/article/view/4896
work_keys_str_mv AT paulfearnhead cpopdetectingchangesinpiecewiselinearsignals
AT danielgrose cpopdetectingchangesinpiecewiselinearsignals