[ANN] Bayesian Online Changepoint Detection implementation (BOCD.jl)

PedroPizarro
Sun, 30 Mar 2025 15:02:54 +0000
Package Announcements

As part of my MSc studies, I developed the BOCD.jl, a Julia implementation of the Bayesian Online Changepoint Detection (BOCD) algorithm, based on the Adams & MacKay’s 2007 paper, “Bayesian Online Changepoint Detection”.

This implementation is inspired by existing versions in Python. The package version v0.3.0 currently supports the following models:

Hazard Functions:

Constant Hazard

Conjugate Models:

Normal with unknown mean and known precision

Normal with unknown mean and unknown precision

LogNormal with unknown mean and known precision

The package README.md has instructions on how to use it.

Any constructive feedback are welcome! Such as considerations about the package architecture, implemented statistical features, and potential errors. Your insights would be greatly appreciated!

PS: In the future I will try to implement this algorithm using the RxInfer.jl package, as the message passing algorithm from RxInfer.jl could be used in place of the currently manual posterior hyperparameter calculation for each conjugate model — at least I think it might be feasible. This is currently on hold due to other research commitments.

1 post - 1 participant