classification_table_global

Global classification table scenario for no-reset benchmarks.

class pysatl_cpd.benchmark.online.noreset.scenarios.classification_table_global.NoResetClassificationTableScenario(entries, collect_states=False)[source]

Bases: NoResetBenchmarkScenario[DataT, DataFrame]

Scenario that computes classification metrics across all transitions.

Parameters:
__init__(entries, collect_states=False)[source]
Parameters:
Return type:

None

set_registry(registry)[source]

Set the registry used by the internal classification analyzer.

Return type:

None

Parameters:

registry (BenchmarkRegistry[DataT, OnlineDetectionTrace[Any]])

set_classification_report(classification_report)[source]

Set the classification report used by the internal analyzer.

Return type:

None

Parameters:

classification_report (Any)

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 classification metrics across resolved thresholds.

Resolves thresholds from picked runs, then evaluates the classification table for each entry.

Parameters:

registry (BenchmarkRegistry[TypeVar(DataT), OnlineDetectionTrace[Any]]) – Registry containing cached detection runs.

Returns:

Classification table per detector description.

Return type:

dict[ChangePointDetectorDescription, DataFrame]