hildensia/bayesian_changepoint_detection

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

해결하는 문제

이 라이브러리는 시계열 데이터의 잠재적인 통계적 특성의 급격한 변화("changepoints")를 베이즈 추론을 사용하여 탐지하는 방법을 제공합니다. 실시간(온라인) 또는 데이터 수집 후(오프라인)에 데이터 스트림의 행동이 언제 변화했는지 식별할 수 있습니다.

작동 방식

이 프로젝트는 "run length"(마지막 변화 이후 경과 시간) 개념을 기반으로 한 베이즈 변화점 탐지 알고리즘을 구현합니다. 관측된 데이터를 바탕으로 이러한 run length에 대한 확률 분포를 계산합니다. 변화 발생의 사전 확률을 정의하기 위해 해저드 함수를 사용하고, 현재 세그먼트에 데이터가 얼마나 잘 맞는지 판단하기 위해 우도 모델(예: 스튜던트의 t분포)을 사용합니다.

대상 사용자

단변량 또는 다변량 시계열 데이터를 다루며 베이즈 변화점 탐지의 고성능 구현이 필요한 연구자 및 데이터 과학자에게 적합합니다.

주요 특징

  • PyTorch 백엔드: 자동 미분과 벡터 연산을 위해 PyTorch 사용.
  • GPU 가속: CUDA 및 Apple Silicon(MPS)을 지원하여 대규모 데이터셋에서 10~100배의 속도 향상.
  • 온라인 및 오프라인 모드: 스트리밍 데이터용 순차 탐지와 과거 데이터용 배치 처리 모두 지원.
  • 유연한 분포: 단변량 및 다변량 스튜던트의 t분포 지원.
  • 사용자 정의 사전 분포: 상수, 기하학적, 음의 이항 사전 분포 제공.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트