Coverage for addmo/s1_data_tuning_auto/config/data_tuning_auto_config.py: 100%
21 statements
« prev ^ index » next coverage.py v7.4.4, created at 2025-08-31 13:05 +0000
« prev ^ index » next coverage.py v7.4.4, created at 2025-08-31 13:05 +0000
1import os
2from pydantic import BaseModel, Field, PrivateAttr
3from addmo.util.load_save_utils import root_dir
5class DataTuningAutoSetup(BaseModel):
6 # Global Variables
7 name_of_raw_data: str = Field(
8 "test_raw_data",
9 description="Set name of the folder where the experiments shall be saved.",
10 )
11 name_of_tuning: str = Field(
12 "data_tuning_experiment_auto", description="Set name of the experiments series."
13 )
14 abs_path_to_data: str = Field(
15 os.path.join(root_dir(),'addmo_examples','raw_input_data','InputData.xlsx'),
16 description="Path to the file that has the system_data.",
17 )
18 name_of_target: str = Field(
19 "FreshAir Temperature", description="Name of the target variable."
20 )
22 # FeatureConstruction Variables
23 create_differences: bool = Field(
24 False,
25 description="Feature difference creation (building the derivative of the features).",
26 )
27 create_manual_target_lag: bool = Field(
28 True, description="Manual construction of target lags."
29 )
30 target_lag: list[int] = Field([1, 2], description="Array of lags for the target.")
32 minimum_target_lag: int = Field(
33 1, description="Minimal target lag which shall be considered."
34 )
35 create_manual_feature_lags: bool = Field(
36 False, description="Manual construction of feature lags."
37 )
38 feature_lags: dict[str, list[int]] = Field(
39 {"FreshAir Temperature": [1, 2], "Total active power": [1, 2]},
40 description="Feature_lags in format {var_name: [lags]}",
41 )
42 # FeatureSelection Variables
43 manual_feature_selection: bool = Field(
44 False, description="Manual selection of Features by their Column name."
45 )
46 selected_features: list[str] = Field(
47 ["FreshAir Temperature", "Total active power"],
48 description="Variable names of the features to keep.",
49 )
51 sequential_direction: str = Field(
52 "forward",
53 description="'forward' or 'backward' direction for sequential feature selection.",
54 )
56 filter_recursive_by_count: bool = Field(
57 False,
58 description="Enable recursive feature elimination."
59 )
60 recursive_embedded_number_features_to_select: int = Field(
61 18,
62 description="Number of features to select in recursive feature elimination."
63 )
64 filter_recursive_by_score: bool = Field(
65 False,
66 description="Enable wrapper sequential feature selection."
67 )
68 min_increase_for_wrapper: float = Field(
69 0.01,
70 description="Minimum performance gain for wrapper-based feature selection."
71 )