energy_fault_detector.config
Configuration classes.
- class Config(config_filename=None, config_dict=None)[source]
Bases:
BaseConfigConfiguration class. Either config_filename or config_dict must be provided. Reads a yaml file with the anomaly detection configuration and sets corresponding settings.
- property arcana_params: Dict[str, Any]
Get the ARCANA parameters.
- property data_clipping: bool
Whether to clip training data.
- property data_clipping_params: Dict[str, Any]
Data clipping parameters.
- property data_preprocessor_steps: List[Dict[str, Any]]
Get the data preprocessor steps.
- property data_split_params: Dict[str, Any]
DataSplitter or train_test_split parameters.
- property dtype
Data type, float32 by default.
- property fit_threshold_on_val: bool
Whether to fit threshold on validation data only.
- property max_criticality: int | None
Max criticality value.
- property protect_conditional_features: bool
Whether to protect conditional features from being dropped by preprocessing.
- property root_cause_analysis: bool
Whether to run ARCANA.
- generate_quickstart_config(output_path=None, *, max_nan_frac=0.05, min_unique_value_count=2, max_col_zero_frac=1.0, angle_columns=None, counter_columns=None, imputer_strategy='mean', scaler='standard', early_stopping=False, validation_split=0.2, threshold_quantile=0.99, batch_size=128, code_size=20, epochs=10, layers=None, learning_rate=0.001)[source]
Generate a minimal, valid configuration for EnergyFaultDetector.
This function returns a Config object that can directly be used in the EnergyFaultDetector. Optionally writes the configuration to YAML if an output path is supplied.
Example
from energy_fault_detector import FaultDetector from energy_fault_detector.config import generate_quickstart_config config = generate_quickstart_config() fault_detector = FaultDetector(config=config)
- Parameters:
output_path (
Union[str,Path,None]) – YAML output path; set None to skip writing. Default: Nonemax_nan_frac (
float) – Max fraction of missing values per column for selection. Default: 0.05min_unique_value_count (
int) – Minimal unique values required to keep a column. Default: 2max_col_zero_frac (
float) – Max fraction of zeros allowed in a column. Default: 1.0angle_columns (
Optional[List[str]]) – Optional columns to transform as angles (sin/cos). Default: Nonecounter_columns (
Optional[List[str]]) – Optional counter columns to convert to differences. Default: Noneimputer_strategy (
str) – Strategy for SimpleImputer (“mean”, “median”, etc.). Default: meanscaler (
str) – Scaler selection (“standard” or “minmax”; common aliases allowed). Default: standardearly_stopping (
bool) – Enable early stopping in the autoencoder training. Default: Falsevalidation_split (
float) – Fraction for validation in sklearn splitter (0 < val < 1).threshold_quantile (
float) – Quantile for the “quantile” threshold selector. Default: 0.99batch_size (
int) – Autoencoder batch size. Default: 128code_size (
int) – Bottleneck code size. Default: 20epochs (
int) – Number of training epochs. Default: 10layers (
Optional[List[int]]) – Autoencoder layer sizes; defaults to [200, 100, 50] if None. For small datasets (<20 features), consider smaller layers like [20, 10, 5].learning_rate (
float) – Optimizer learning rate.
- Returns:
Configuration ready to use: FaultDetector(config).
- Return type:
- Raises:
ValueError – If early_stopping is True but validation_split is not in (0, 1).