individual_bisegments_table
Per-bisegment classification table scenario for no-reset benchmarks.
- class pysatl_cpd.benchmark.online.noreset.scenarios.individual_bisegments_table.NoResetBisegmentsTableScenario(entries, collect_states=False, threshold=0.0)[source]
Bases:
NoResetBenchmarkScenario[DataT,DataFrame]Scenario that computes per-bisegment classification at a fixed threshold.
- Parameters:
entries (
Sequence[OnlineNoResetBenchmarkEntry]) – Detector entries to benchmark.collect_states (
bool) – Whether to retain algorithm states during detection (default False).threshold (
float) – Fixed detection threshold (default 0.0).
- __init__(entries, collect_states=False, threshold=0.0)[source]
- Parameters:
entries (Sequence[OnlineNoResetBenchmarkEntry])
collect_states (bool)
threshold (float)
- Return type:
None
- prepare_benchmark_jobs(dataset)[source]
Build benchmark jobs using only bisegment providers.
- Parameters:
dataset (
Dataset[TypeVar(DataT),TimeseriesAnnotation]) – Input dataset with bisegment annotations.- Returns:
One job per entry, each using the bisegment providers.
- Return type:
Sequence[BenchmarkJob[TypeVar(DataT)]]
- analyze(registry)[source]
Evaluate per-bisegment metrics for every entry.
- Parameters:
registry (
BenchmarkRegistry[TypeVar(DataT),OnlineDetectionTrace[Any]]) – Registry containing cached detection runs.- Returns:
Bisegment classification table per detector description.
- Return type:
dict[ChangePointDetectorDescription,DataFrame]
- set_registry(registry)[source]
Set the registry used by the internal bisegment analyzer.
- Return type:
- Parameters:
registry (BenchmarkRegistry[DataT, OnlineDetectionTrace[Any]])
- set_classification_report(classification_report)[source]
Set the classification report used by the internal bisegment analyzer.
- handle_benchmark_error(job, exc)[source]
Re-raise with a message suggesting a data-transformer fix.
- Return type:
- Parameters:
job (BenchmarkJob[DataT])
exc (ValueError)