hildensia/bayesian_changepoint_detection

Methods to get the probability of a changepoint in a time series.

解決的問題

此套件提供一種透過貝葉斯推論檢測時間序列資料中「變更點」(即底層統計特性突然改變)的方法。它允許使用者識別資料流行為何時改變,無論是即時(線上)或資料收集後(離線)。

工作原理

本專案實作基於「運行長度」(自上次變更以來的時間)概念的貝葉斯變更點檢測演算法。根據觀測資料計算這些運行長度的機率分佈。使用風險函數定義變更發生的先驗機率,並使用似然模型(例如學生t分配)來判斷資料與目前區段的符合程度。

適用對象

專為需要高效率貝葉斯變更點檢測實作的單變量或多元時間序列資料研究人員與資料科學家所設計。

主要特色

  • PyTorch 後端:使用 PyTorch 實現自動微分與向量化運算。
  • GPU 加速:支援 CUDA 與 Apple Silicon(MPS),在大型資料集上實現 10–100 倍加速。
  • 線上與離線模式:同時支援即時資料流的順序檢測與歷史資料的批次處理。
  • 彈性分布:支援單變量與多變量的學生t分配。
  • 可自訂先驗:提供常數、幾何與負二項先驗分配。

相關

  • 專案
  • 專案
  • 專案
  • 專案