pdmlabs.experiment.streaming.unsupervised_experiment

pdmlabs.experiment.streaming.unsupervised_experiment#

Classes

StreamingUnsupervisedPdMExperiment(...[, ...])

Streaming (online) unsupervised anomaly detection.

class pdmlabs.experiment.streaming.unsupervised_experiment.StreamingUnsupervisedPdMExperiment(experiment_name: str, pipeline: PdMPipeline, param_space: dict, constraint_function: Callable = None, target_data: list[DataFrame] = None, target_sources: list[str] = None, historic_data: list[DataFrame] = [], historic_sources: list[str] = [], optimization_param: str = 'AD1_AUC', initial_random: int = 2, num_iteration: int = 20, batch_size: int = 1, n_jobs: int = 1, random_state: int = 42, random_n_tries: int = 3, constraint_max_retries: int = 10, historic_data_header: str = 'infer', target_data_header: str = 'infer', artifacts: str = 'artifacts', debug: bool = False, delay: float = None, log_best_scores: bool = False, maximize: bool = True, custom_evaluators: list = None)#

Bases: PdMExperiment

Streaming (online) unsupervised anomaly detection.

Status: Stub Implementation

This experiment flavor is designed for unsupervised streaming data: - Processes continuous data streams without labels - Adapts models in real-time - Produces anomaly scores online

Current Implementation: This is a placeholder stub with no execution logic. Use batch experiments for full functionality. Streaming support is planned for future versions.

Design Goals: - Minimal memory footprint for long-running applications - Per-sample or mini-batch prediction - Automatic concept drift handling - No offline/batch retraining required

Raises:

NotImplementedError – Streaming functionality not yet implemented.

Examples

>>> # Streaming experiments are not yet implemented
>>> # Use UnsupervisedPdMExperiment (batch) instead
execute() None#

Execute placeholder unsupervised streaming experiment.

Returns:

Not implemented.

Return type:

None