Here we give a brief overview of supervised changepoint detection; for details see [1]}.
We assume for each labeled training example \(i\in \lbrace 1,\dots ,n\rbrace \)  there is a corresponding data sequence vector \(\mathbf {z}_i\)  and label set \(L_i\) .
For example in Figure REF  we show a data sequence \(\mathbf {z}_i\)  with a label set \(L_i\)  that contains one positive label (grey region in which there should be exactly one predicted changepoint).
Dynamic programming algorithms can be used on the data sequence \(\mathbf {z}_i\)  to compute a path of optimal changepoint models \(\mathbf {\hat{m}}^k_i\)  for different model sizes \(k\in \lbrace 1,2,\dots \rbrace \)  [2]}.
For example in Figure REF  (left) we show four models in the path (with \(k=2,3,4,15\)  segments).
The label set \(L_i\)  can be used to compute the number of false positive and false negative labels with respect to any predicted set of changepoints (false positives for too many changepoints, false negatives for not enough changepoints).
Each example \(i\)  also has a model selection function \(k^*_i:\mathbb {R}^+_0 \rightarrow \lbrace 1,2,\dots \rbrace \)  which maps a non-negative penalty value \(\hat{\lambda }_i\)  to a selected model size \(k^*_i(\hat{\lambda }_i)\)  (Figure REF , right bottom).
We assume there is a fixed feature map \(\phi \)  which can be used to compute a feature vector \(\mathbf {x}_i = \phi (\mathbf {z}_i)\in \mathbb {R}^p\)  for each labeled example.
