From 34c83ee1d1e1ea233c951431b20dc2c9eb0ff085 Mon Sep 17 00:00:00 2001 From: VK-notebook <119884857+PvtKaefsky@users.noreply.github.com> Date: Tue, 14 May 2024 11:15:47 +0300 Subject: [PATCH 1/7] Update default params based on tuning search space --- .../data/default_operation_params.json | 422 +++++++++++------- 1 file changed, 269 insertions(+), 153 deletions(-) diff --git a/fedot_ind/core/repository/data/default_operation_params.json b/fedot_ind/core/repository/data/default_operation_params.json index 1df469e80..5d6b5d340 100644 --- a/fedot_ind/core/repository/data/default_operation_params.json +++ b/fedot_ind/core/repository/data/default_operation_params.json @@ -1,79 +1,198 @@ { + "eigen_basis": { + "sv_selector": "median", + "window_size": 25, + "stride": 5, + "rank_regularization": "hard_thresholding" + }, + "wavelet_basis": { + "n_components": 2, + "wavelet": "mexh" + }, + "fourier_basis": { + "spectrum_type": "smoothed", + "threshold": 20000 + }, + "topological_extractor": { + "n_jobs": 2, + "window_size_as_share": 0.33, + "max_homology_dimension": 1, + "metric": "euclidean", + "window_size": 25, + "stride": 5 + }, + "quantile_extractor": { + "window_mode": false, + "var_threshold": 0.01, + "stride": 5, + "window_size": 24 + }, + "riemann_extractor": { + "n_filter": 4, + "estimator": "scm", + "tangent_metric": "riemann", + "SPD_metric": "riemann" + }, + "recurrence_extractor": { + "window_mode": true, + "min_signal_ratio": 0.5, + "max_signal_ratio": 0.75, + "image_mode": false, + "window_size": 20, + "stride": 5, + "rec_metric": "euclidean" + }, + "signal_extractor": { + "n_components": 6, + "wavelet": "mexh" + }, + "channel_filtration": { + "shrink": 1e-5, + "distance": "euclidean", + "centroid_metric": "euclidean", + "selection_strategy": "pairwise" + }, + "minirocket_extractor": { + "num_features": 10000 + }, + "chronos_extractor": { + "num_features": 10000 + }, + "patch_tst_model": { + "epochs": 100, + "batch_size": 32, + "activation": "relu" + }, + "omniscale_model": { + "epochs": 100, + "batch_size": 32, + "activation": "softmax" + }, + "inception_model": { + "epochs": 100, + "batch_size": 32, + "activation": "softmax" + }, + "resnet_model": { + "epochs": 100, + "batch_size": 32, + "activation": "softmax" + }, + "ssa_forecaster": { + "window_size_method": "hac", + "history_lookback": 30 + }, + "kmeans": { + "n_clusters": 4 + }, + "adareg": { + "learning_rate": 0.1, + "loss": "square" + }, + "gbr": { + "loss": "quantile", + "learning_rate": 0.1, + "max_depth": 5, + "min_samples_split": 10, + "min_samples_leaf": 10, + "subsample": 0.5, + "max_features": 0.9, + "alpha": 0.85 + }, + "logit": { + "C": 1, + "penalty": "l2", + "solver": "liblinear" + }, "rf": { "criterion":"gini", - "max_features":0.9, - "min_samples_split":5, - "min_samples_leaf":5, - "bootstrap":false + "max_features": 0.9, + "min_samples_split": 5, + "min_samples_leaf": 5, + "bootstrap": false }, - "mlp":{ - "max_iter":300, - "activation":"relu", - "solver":"adam" + "ridge": { + "alpha": 1.0 + }, + "lasso": { + "alpha": 1.0 }, "rfr": { - "max_features":0.9, - "min_samples_split":5, - "min_samples_leaf":5, - "bootstrap":false + "max_features": 0.9, + "min_samples_split": 5, + "min_samples_leaf": 5, + "bootstrap": false + }, + "xgbreg": { + "max_depth": 5, + "learning_rate": 0.1, + "subsample": 0.5, + "min_child_weight": 10 }, "xgboost": { "n_estimators": 500, - "learning_rate": 0.1, "max_depth": 5, + "learning_rate": 0.1, + "subsample": 0.5, + "min_weight_fraction_leaf": 0.25, + "min_samples_leaf": 0.5, + "min_samples_split": 0.5, "random_state": 42 }, - "catboost": { - "allow_writing_files": false, - "verbose": false + "svr": { + "C": 1.0, + "epsilon": 0.1, + "tol": 1e-3, + "loss": "squared_epsilon_insensitive" }, - "catboostreg": { - "allow_writing_files": false, - "verbose": false + "dtreg": { + "max_depth": 5, + "min_samples_split": 10, + "min_samples_leaf": 10 }, - "lgbm": { - "num_leaves": 32, - "colsample_bytree": 0.8, - "subsample": 0.8, - "subsample_freq": 10, - "learning_rate": 0.03, - "n_estimators": 100 + "treg": { + "max_features": 0.5, + "min_samples_split": 10, + "min_samples_leaf": 10, + "bootstrap": false }, - "lgbmreg": { - "num_leaves": 32, - "colsample_bytree": 0.8, - "subsample": 0.8, - "subsample_freq": 10, - "learning_rate": 0.03, - "n_estimators": 100 + "dt": { + "max_depth": 5, + "min_samples_split": 10, + "min_samples_leaf": 10 }, - "lagged": { - "window_size": 10 + "knnreg": { + "n_neighbors": 5, + "weights": "uniform", + "p": 1 }, - "diff_filter": { - "window_size": 3, - "poly_degree": 2, - "order": 1 + "knn": { + "n_neighbors": 5, + "weights": "uniform", + "p": 1 }, - "cut": { - "cut_part": 0.5 + "arima": { + "p": 2, + "d": 0, + "q": 2 }, - "sparse_lagged": { - "window_size": 10, - "n_components": 0.5, - "sparse_transform": true, - "use_svd": false + "stl_arima": { + "p": 2, + "d": 0, + "q": 2, + "period": 30 + }, + "mlp": { + "activation": "relu", + "max_iter": 300, + "learning_rate": "constant", + "solver": "adam" }, "ar": { "lag_1": 7, "lag_2": 12, "trend": "c" }, - "arima": { - "p": 2, - "d": 0, - "q": 2 - }, "ets": { "error": "add", "trend": null, @@ -81,25 +200,10 @@ "damped_trend": false, "seasonal_periods": 7 }, - "polyfit": { - "degree": 2 - }, "glm": { "family": "gaussian", "link": "identity" }, - "ransac_lin_reg": { - "min_samples": 0.4, - "residual_threshold": 10, - "max_trials": 100, - "max_skips": 1000 - }, - "ransac_non_lin_reg": { - "min_samples": 0.4, - "residual_threshold": 10, - "max_trials": 100, - "max_skips": 1000 - }, "cgru": { "hidden_size": 200, "learning_rate": 0.001, @@ -112,38 +216,84 @@ "optimizer": "adamw", "loss": "mse" }, - "h2o_regr": { - "timeout": 20, - "seed": 42, - "max_models": 3 + "pca": { + "svd_solver": "full", + "n_components": 0.7 }, - "h2o_class": { - "timeout": 20, - "seed": 42, - "max_models": 3 + "kernel_pca": { + "n_components": null, + "kernel": "rbf" }, - "tpot_class": { - "timeout": 2, - "generations": 3, - "population_size": 3 + "lagged": { + "window_size": 10 }, - "tpot_regr": { - "timeout": 2, - "generations": 3, - "population_size": 3 + "sparse_lagged": { + "window_size": 10, + "n_components": 0.5, + "use_svd": false, + "sparse_transform": true + }, + "smoothing": { + "window_size": 10 + }, + "gaussian_filter": { + "sigma": 2 + }, + "diff_filter": { + "poly_degree": 2, + "order": 1, + "window_size": 3 + }, + "cut": { + "cut_part": 0.5 + }, + "lgbm": { + "n_estimators": 100, + "class_weight": null, + "num_leaves": 32, + "learning_rate": 0.03, + "colsample_bytree": 0.8, + "subsample": 0.8, + "reg_alpha": 0.1, + "reg_lambda": 0.1, + "subsample_freq": 10 + }, + "lgbmreg": { + "n_estimators": 100, + "num_leaves": 32, + "learning_rate": 0.03, + "colsample_bytree": 0.8, + "subsample": 0.8, + "reg_alpha": 0.1, + "reg_lambda": 0.1, + "subsample_freq": 10 + }, + "catboost": { + "allow_writing_files": false, + "verbose": false, + "max_depth": 5, + "learning_rate": 0.1, + "min_data_in_leaf": 3, + "border_count": 32, + "l2_leaf_reg": 1 + }, + "catboostreg": { + "allow_writing_files": false, + "verbose": false, + "max_depth": 5, + "learning_rate": 0.1, + "min_data_in_leaf": 3, + "border_count": 32, + "l2_leaf_reg": 1 }, "resample": { "balance": "expand_minority", "replace": false, "balance_ratio": 1 }, - "pca": { - "svd_solver": "full", - "n_components": 0.7 - }, - "kernel_pca": { - "n_components": null, - "kernel": "rbf" + "lda": { + "solver": "svd", + "shrinkage": 0.5 }, "ts_naive_average": { "part_for_averaging": 1.0 @@ -158,49 +308,43 @@ "min_df": 0.1, "max_df": 0.9 }, - "fast_ica": { - "whiten": "unit-variance" + "polyfit": { + "degree": 2 }, - "eigen_basis": { - "window_size": 25, - "sv_selector": "median", - "rank_regularization": "hard_thresholding" + "ransac_lin_reg": { + "min_samples": 0.4, + "residual_threshold": 10, + "max_trials": 100, + "max_skips": 1000 }, - "channel_filtration": { - "distance": "euclidean", - "shrink": 1e-5, - "centroid_metric": "euclidean", - "selection_strategy": "pairwise" + "ransac_non_lin_reg": { + "min_samples": 0.4, + "residual_threshold": 10, + "max_trials": 100, + "max_skips": 1000 }, - "wavelet_basis": { - "wavelet": "mexh", - "n_components": 2 + "h2o_regr": { + "timeout": 20, + "seed": 42, + "max_models": 3 }, - "fourier_basis": { - "spectrum_type": "smoothed", - "threshold": 20000 + "h2o_class": { + "timeout": 20, + "seed": 42, + "max_models": 3 }, - "quantile_extractor": { - "window_size": 0, - "window_mode": false, - "var_threshold": 0.01 + "tpot_class": { + "timeout": 2, + "generations": 3, + "population_size": 3 }, - "riemann_extractor": { - "n_filter": 4, - "estimator": "scm", - "tangent_metric": "riemann", - "SPD_metric": "riemann" + "tpot_regr": { + "timeout": 2, + "generations": 3, + "population_size": 3 }, - "recurrence_extractor": { - "window_size": 20, - "window_mode": true, - "min_signal_ratio": 0.5, - "max_signal_ratio": 0.75, - "rec_metric": "euclidean", - "image_mode": false}, - "ssa_forecaster": { - "window_size_method": "hac", - "history_lookback": 30 + "fast_ica": { + "whiten": "unit-variance" }, "fedot_cls": { "timeout": 10, @@ -210,40 +354,12 @@ "timeout": 10, "with_tuning": true }, - "minirocket_extractor": { - "num_features": 10000 - }, - "chronos_extractor": { - "num_features": 10000 - }, - "inception_model": { - "epochs": 100, - "batch_size": 32 - }, - "omniscale_model": { - "epochs": 100, - "batch_size": 32 - }, "tst_model": { "epochs": 100, "batch_size": 32 }, - "resnet_model": { - "epochs": 100, - "batch_size": 32 - }, "xcm_model": { "epochs": 100, "batch_size": 32 - }, - "patch_tst_model": { - "epochs": 100, - "batch_size": 32 - }, - "topological_extractor": { - "n_jobs": 2, - "window_size_as_share": 0.33, - "max_homology_dimension": 1, - "metric": "euclidean" } } \ No newline at end of file From ceb30cda6d87e410c3ad4a7e1964df420a407b15 Mon Sep 17 00:00:00 2001 From: VK-notebook <119884857+PvtKaefsky@users.noreply.github.com> Date: Tue, 14 May 2024 16:53:57 +0300 Subject: [PATCH 2/7] Fix params based on PR comments --- .../core/models/manifold/riemann_embeding.py | 36 +++++++++---------- .../models/recurrence/reccurence_extractor.py | 3 +- .../data/default_operation_params.json | 11 +----- fedot_ind/core/tuning/search_space.py | 15 ++------ 4 files changed, 22 insertions(+), 43 deletions(-) diff --git a/fedot_ind/core/models/manifold/riemann_embeding.py b/fedot_ind/core/models/manifold/riemann_embeding.py index f3f1c8347..b640ad277 100644 --- a/fedot_ind/core/models/manifold/riemann_embeding.py +++ b/fedot_ind/core/models/manifold/riemann_embeding.py @@ -17,7 +17,7 @@ class RiemannExtractor(BaseExtractor): Attributes: estimator (str): estimator for covariance matrix, 'corr', 'cov', 'lwf', 'mcd', 'hub' - distance_metric (str): metric for tangent space, 'riemann', 'logeuclid', 'euclid' + tangent_metric (str): metric for tangent space, 'riemann', 'logeuclid', 'euclid' Example: To use this class you need to import it and call needed methods:: @@ -47,38 +47,38 @@ def __init__(self, params: Optional[OperationParameters] = None): self.n_filter = params.get('nfilter', 2) self.estimator = params.get('estimator', 'scm') - self.covariance_metric = params.get('SPD_metric', 'riemann') - self.distance_metric = params.get('tangent_metric', 'riemann') + self.spd_metric = params.get('SPD_metric', 'riemann') + self.tangent_metric = params.get('tangent_metric', 'riemann') self.extraction_strategy = params.get( 'extraction_strategy ', 'ensemble') - self.covariance_transformer = params.get('SPD_space', None) - self.tangent_projector = params.get('tangent_space', None) - if np.any([self.covariance_transformer, self.tangent_projector]) is None: + self.spd_space = params.get('SPD_space', None) + self.tangent_space = params.get('tangent_space', None) + if np.any([self.spd_space, self.tangent_space]) is None: self._init_spaces() self.fit_stage = True self.extraction_func = extraction_dict[self.extraction_strategy] self.logging_params.update({ 'estimator': self.estimator, - 'tangent_space_metric': self.distance_metric, - 'SPD_space_metric': self.covariance_metric}) + 'tangent_space_metric': self.tangent_metric, + 'SPD_space_metric': self.spd_metric}) def _init_spaces(self): - self.covariance_transformer = Covariances(estimator='scm') - self.tangent_projector = TangentSpace(metric=self.distance_metric) + self.spd_space = Covariances(estimator='scm') + self.tangent_space = TangentSpace(metric=self.tangent_metric) self.shrinkage = Shrinkage() def extract_riemann_features(self, input_data: InputData) -> InputData: if not self.fit_stage: - SPD = self.covariance_transformer.transform(input_data.features) + SPD = self.spd_space.transform(input_data.features) SPD = self.shrinkage.transform(SPD) - ref_point = self.tangent_projector.transform(SPD) + ref_point = self.tangent_space.transform(SPD) else: - SPD = self.covariance_transformer.fit_transform( + SPD = self.spd_space.fit_transform( input_data.features, input_data.target) SPD = self.shrinkage.fit_transform(SPD) - ref_point = self.tangent_projector.fit_transform(SPD) + ref_point = self.tangent_space.fit_transform(SPD) self.fit_stage = False self.classes_ = np.unique(input_data.target) return ref_point @@ -86,19 +86,19 @@ def extract_riemann_features(self, input_data: InputData) -> InputData: def extract_centroid_distance(self, input_data: InputData): input_data.target = input_data.target.astype(int) if self.fit_stage: - SPD = self.covariance_transformer.fit_transform( + SPD = self.spd_space.fit_transform( input_data.features, input_data.target) SPD = self.shrinkage.transform(SPD) else: - SPD = self.covariance_transformer.transform(input_data.features) + SPD = self.spd_space.transform(input_data.features) SPD = self.shrinkage.fit_transform(SPD) self.covmeans_ = [mean_covariance(SPD[np.array(input_data.target == ll).flatten()], - metric=self.covariance_metric) for ll in self.classes_] + metric=self.spd_metric) for ll in self.classes_] n_centroids = len(self.covmeans_) - dist = [distance(SPD, self.covmeans_[m], self.distance_metric) + dist = [distance(SPD, self.covmeans_[m], self.tangent_metric) for m in range(n_centroids)] dist = np.concatenate(dist, axis=1) feature_matrix = softmax(-dist ** 2) diff --git a/fedot_ind/core/models/recurrence/reccurence_extractor.py b/fedot_ind/core/models/recurrence/reccurence_extractor.py index 1cc1acb6e..52275eaaa 100644 --- a/fedot_ind/core/models/recurrence/reccurence_extractor.py +++ b/fedot_ind/core/models/recurrence/reccurence_extractor.py @@ -45,9 +45,8 @@ def __init__(self, params: Optional[OperationParameters] = None): super().__init__(params) self.window_size = params.get('window_size', 0) self.stride = params.get('stride', 1) - self.rec_metric = params.get('rec_metric', 'cosine') + self.rec_metric = params.get('rec_metric', 'cosine') # TODO add threshold for other metrics self.image_mode = params.get('image_mode', False) - self.rec_metric = 'cosine' # TODO add threshold for other metrics self.transformer = TSTransformer self.extractor = RecurrenceFeatureExtractor diff --git a/fedot_ind/core/repository/data/default_operation_params.json b/fedot_ind/core/repository/data/default_operation_params.json index 5d6b5d340..95bec3b75 100644 --- a/fedot_ind/core/repository/data/default_operation_params.json +++ b/fedot_ind/core/repository/data/default_operation_params.json @@ -10,7 +10,6 @@ "wavelet": "mexh" }, "fourier_basis": { - "spectrum_type": "smoothed", "threshold": 20000 }, "topological_extractor": { @@ -22,10 +21,8 @@ "stride": 5 }, "quantile_extractor": { - "window_mode": false, - "var_threshold": 0.01, "stride": 5, - "window_size": 24 + "window_size": 0 }, "riemann_extractor": { "n_filter": 4, @@ -46,12 +43,6 @@ "n_components": 6, "wavelet": "mexh" }, - "channel_filtration": { - "shrink": 1e-5, - "distance": "euclidean", - "centroid_metric": "euclidean", - "selection_strategy": "pairwise" - }, "minirocket_extractor": { "num_features": 10000 }, diff --git a/fedot_ind/core/tuning/search_space.py b/fedot_ind/core/tuning/search_space.py index f87a1e186..17d9a9d68 100644 --- a/fedot_ind/core/tuning/search_space.py +++ b/fedot_ind/core/tuning/search_space.py @@ -42,23 +42,12 @@ 'recurrence_extractor': {'window_size': {'hyperopt-dist': hp.choice, 'sampling-scope': [[x for x in range(5, 50, 5)]]}, 'stride': {'hyperopt-dist': hp.choice, 'sampling-scope': [[x for x in range(1, 10, 1)]]}, - # 'rec_metric': (hp.choice, [['chebyshev', 'cosine', 'euclidean', 'mahalanobis']]) - }, + # 'rec_metric': (hp.choice, [['chebyshev', 'cosine', 'euclidean', 'mahalanobis']]), + 'image_mode': {'hyperopt-dist': hp.choice, 'sampling-scope': [[True, False]]}}, 'signal_extractor': {'n_components': {'hyperopt-dist': hp.uniformint, 'sampling-scope': [2, 10]}, 'wavelet': {'hyperopt-dist': hp.choice, 'sampling-scope': [['mexh', 'morl', 'db5', 'sym5']]}}, - 'channel_filtration': - {'distance': {'hyperopt-dist': hp.choice, - 'sampling-scope': [['manhattan', 'euclidean', 'chebyshev']]}, - 'centroid_metric': {'hyperopt-dist': hp.choice, - 'sampling-scope': [['manhattan', 'euclidean', 'chebyshev']]}, - 'sample_metric': {'hyperopt-dist': hp.choice, - 'sampling-scope': [list(DISTANCE_METRICS.keys())]}, - - 'selection_strategy': {'hyperopt-dist': hp.choice, - 'sampling-scope': [['sum', 'pairwise']]} - }, 'minirocket_extractor': {'num_features': {'hyperopt-dist': hp.choice, 'sampling-scope': [[x for x in range(5000, 20000, 1000)]]}}, From 4a04ddce3e639e85f6ba408026fa7b9af2e6c7d5 Mon Sep 17 00:00:00 2001 From: VK-notebook <119884857+PvtKaefsky@users.noreply.github.com> Date: Tue, 14 May 2024 17:10:14 +0300 Subject: [PATCH 3/7] Fix pep8 errors --- .../models/recurrence/reccurence_extractor.py | 4 +- fedot_ind/core/tuning/search_space.py | 140 ++++++------------ 2 files changed, 51 insertions(+), 93 deletions(-) diff --git a/fedot_ind/core/models/recurrence/reccurence_extractor.py b/fedot_ind/core/models/recurrence/reccurence_extractor.py index 52275eaaa..d8a1a0b42 100644 --- a/fedot_ind/core/models/recurrence/reccurence_extractor.py +++ b/fedot_ind/core/models/recurrence/reccurence_extractor.py @@ -5,7 +5,7 @@ from fedot.core.operations.operation_parameters import OperationParameters from fedot.core.repository.dataset_types import DataTypesEnum -from fedot_ind.core.metrics.metrics_implementation import * +#from fedot_ind.core.metrics.metrics_implementation import * from fedot_ind.core.models.base_extractor import BaseExtractor from fedot_ind.core.models.recurrence.sequences import RecurrenceFeatureExtractor from fedot_ind.core.operation.transformation.data.hankel import HankelMatrix @@ -45,7 +45,7 @@ def __init__(self, params: Optional[OperationParameters] = None): super().__init__(params) self.window_size = params.get('window_size', 0) self.stride = params.get('stride', 1) - self.rec_metric = params.get('rec_metric', 'cosine') # TODO add threshold for other metrics + self.rec_metric = params.get('rec_metric', 'cosine') # TODO add threshold for other metrics self.image_mode = params.get('image_mode', False) self.transformer = TSTransformer self.extractor = RecurrenceFeatureExtractor diff --git a/fedot_ind/core/tuning/search_space.py b/fedot_ind/core/tuning/search_space.py index 17d9a9d68..44b8e20bc 100644 --- a/fedot_ind/core/tuning/search_space.py +++ b/fedot_ind/core/tuning/search_space.py @@ -2,7 +2,7 @@ from hyperopt import hp -from fedot_ind.core.repository.constanst_repository import DISTANCE_METRICS +#from fedot_ind.core.repository.constanst_repository import DISTANCE_METRICS NESTED_PARAMS_LABEL = 'nested_label' @@ -83,12 +83,12 @@ def get_industrial_search_space(self): - parameters_per_operation = {'kmeans': { - 'n_clusters': { - 'hyperopt-dist': hp.uniformint, - 'sampling-scope': [2, 7], - 'type': 'discrete'} - }, + parameters_per_operation = { + 'kmeans': { + 'n_clusters': { + 'hyperopt-dist': hp.uniformint, + 'sampling-scope': [2, 7], + 'type': 'discrete'}}, 'adareg': { 'learning_rate': { 'hyperopt-dist': hp.loguniform, @@ -97,8 +97,7 @@ def get_industrial_search_space(self): 'loss': { 'hyperopt-dist': hp.choice, 'sampling-scope': [["linear", "square", "exponential"]], - 'type': 'categorical'} - }, + 'type': 'categorical'}}, 'gbr': { 'loss': { 'hyperopt-dist': hp.choice, @@ -131,8 +130,7 @@ def get_industrial_search_space(self): 'alpha': { 'hyperopt-dist': hp.uniform, 'sampling-scope': [0.75, 0.99], - 'type': 'continuous'} - }, + 'type': 'continuous'}}, 'logit': { 'C': { 'hyperopt-dist': hp.uniform, @@ -147,8 +145,7 @@ def get_industrial_search_space(self): 'solver': { 'hyperopt-dist': hp.choice, 'sampling-scope': [['liblinear']], - 'type': 'categorical'} - }, + 'type': 'categorical'}}, 'rf': { 'criterion': { 'hyperopt-dist': hp.choice, @@ -169,20 +166,17 @@ def get_industrial_search_space(self): 'bootstrap': { 'hyperopt-dist': hp.choice, 'sampling-scope': [[True, False]], - 'type': 'categorical'} - }, + 'type': 'categorical'}}, 'ridge': { 'alpha': { 'hyperopt-dist': hp.uniform, 'sampling-scope': [0.01, 10.0], - 'type': 'continuous'} - }, + 'type': 'continuous'}}, 'lasso': { 'alpha': { 'hyperopt-dist': hp.uniform, 'sampling-scope': [0.01, 10.0], - 'type': 'continuous'} - }, + 'type': 'continuous'}}, 'rfr': { 'max_features': { 'hyperopt-dist': hp.uniform, @@ -199,8 +193,7 @@ def get_industrial_search_space(self): 'bootstrap': { 'hyperopt-dist': hp.choice, 'sampling-scope': [[True, False]], - 'type': 'categorical'} - }, + 'type': 'categorical'}}, 'xgbreg': { 'max_depth': { 'hyperopt-dist': hp.uniformint, @@ -217,8 +210,7 @@ def get_industrial_search_space(self): 'min_child_weight': { 'hyperopt-dist': hp.uniformint, 'sampling-scope': [1, 21], - 'type': 'discrete'}, - }, + 'type': 'discrete'},}, 'xgboost': { 'n_estimators': { 'hyperopt-dist': hp.uniformint, @@ -247,8 +239,7 @@ def get_industrial_search_space(self): 'min_samples_split': { 'hyperopt-dist': hp.uniform, 'sampling-scope': [0.0, 1.0], - 'type': 'continuous'} - }, + 'type': 'continuous'}}, 'svr': { 'C': { 'hyperopt-dist': hp.uniform, @@ -265,8 +256,7 @@ def get_industrial_search_space(self): 'loss': { 'hyperopt-dist': hp.choice, 'sampling-scope': [["epsilon_insensitive", "squared_epsilon_insensitive"]], - 'type': 'categorical'} - }, + 'type': 'categorical'}}, 'dtreg': { 'max_depth': { 'hyperopt-dist': hp.uniformint, @@ -279,8 +269,7 @@ def get_industrial_search_space(self): 'min_samples_leaf': { 'hyperopt-dist': hp.uniformint, 'sampling-scope': [1, 21], - 'type': 'discrete'} - }, + 'type': 'discrete'}}, 'treg': { 'max_features': { 'hyperopt-dist': hp.uniform, @@ -297,8 +286,7 @@ def get_industrial_search_space(self): 'bootstrap': { 'hyperopt-dist': hp.choice, 'sampling-scope': [[True, False]], - 'type': 'categorical'} - }, + 'type': 'categorical'}}, 'dt': { 'max_depth': { 'hyperopt-dist': hp.uniformint, @@ -311,8 +299,7 @@ def get_industrial_search_space(self): 'min_samples_leaf': { 'hyperopt-dist': hp.uniformint, 'sampling-scope': [1, 21], - 'type': 'discrete'} - }, + 'type': 'discrete'}}, 'knnreg': { 'n_neighbors': { 'hyperopt-dist': hp.uniformint, @@ -325,8 +312,7 @@ def get_industrial_search_space(self): 'p': { 'hyperopt-dist': hp.choice, 'sampling-scope': [[1, 2]], - 'type': 'categorical'} - }, + 'type': 'categorical'}}, 'knn': { 'n_neighbors': { 'hyperopt-dist': hp.uniformint, @@ -339,8 +325,7 @@ def get_industrial_search_space(self): 'p': { 'hyperopt-dist': hp.choice, 'sampling-scope': [[1, 2]], - 'type': 'categorical'} - }, + 'type': 'categorical'}}, 'arima': { 'p': { 'hyperopt-dist': hp.uniformint, @@ -353,8 +338,7 @@ def get_industrial_search_space(self): 'q': { 'hyperopt-dist': hp.uniformint, 'sampling-scope': [1, 5], - 'type': 'discrete'} - }, + 'type': 'discrete'}}, 'stl_arima': { 'p': { 'hyperopt-dist': hp.uniformint, @@ -371,8 +355,7 @@ def get_industrial_search_space(self): 'period': { 'hyperopt-dist': hp.uniformint, 'sampling-scope': [1, 365], - 'type': 'discrete'} - }, + 'type': 'discrete'}}, 'mlp': { 'hidden_layer_sizes': { 'hyperopt-dist': hp.choice, @@ -387,8 +370,7 @@ def get_industrial_search_space(self): 'type': 'discrete'}, 'learning_rate': {'hyperopt-dist': hp.choice, 'sampling-scope': [['constant', 'adaptive']], - 'type': 'categorical'} - }, + 'type': 'categorical'}}, 'ar': { 'lag_1': { 'hyperopt-dist': hp.uniform, @@ -397,13 +379,11 @@ def get_industrial_search_space(self): 'lag_2': { 'hyperopt-dist': hp.uniform, 'sampling-scope': [2, 800], - 'type': 'continuous'} - , + 'type': 'continuous'}, 'trend': { 'hyperopt-dist': hp.choice, 'sampling-scope': [['n', 'c', 't', 'ct']], - 'type': 'categorical'} - }, + 'type': 'categorical'}}, 'ets': { 'error': { 'hyperopt-dist': hp.choice, @@ -424,8 +404,7 @@ def get_industrial_search_space(self): 'seasonal_periods': { 'hyperopt-dist': hp.uniform, 'sampling-scope': [1, 100], - 'type': 'continuous'} - }, + 'type': 'continuous'}}, 'glm': { NESTED_PARAMS_LABEL: { 'hyperopt-dist': hp.choice, @@ -449,8 +428,7 @@ def get_industrial_search_space(self): } ]], - 'type': 'categorical'} - }, + 'type': 'categorical'}}, 'cgru': { 'hidden_size': { 'hyperopt-dist': hp.uniform, @@ -491,8 +469,7 @@ def get_industrial_search_space(self): 'loss': { 'hyperopt-dist': hp.choice, 'sampling-scope': [['mae', 'mse']], - 'type': 'categorical'}, - }, + 'type': 'categorical'},}, 'topological_extractor': { 'window_size_as_share': { 'hyperopt-dist': hp.uniform, @@ -507,14 +484,12 @@ def get_industrial_search_space(self): 'metric': { 'hyperopt-dist': hp.choice, 'sampling-scope': [['euclidean', 'manhattan', 'cosine']], - 'type': 'categorical'} - }, + 'type': 'categorical'}}, 'pca': { 'n_components': { 'hyperopt-dist': hp.uniform, 'sampling-scope': [0.1, 0.99], - 'type': 'continuous'} - }, + 'type': 'continuous'}}, 'kernel_pca': { 'n_components': { 'hyperopt-dist': hp.uniformint, @@ -523,14 +498,12 @@ def get_industrial_search_space(self): 'kernel': { 'hyperopt-dist': hp.choice, 'sampling-scope': [['linear', 'poly', 'rbf', 'sigmoid', 'cosine', 'precomputed']], - 'type': 'categorical'} - }, + 'type': 'categorical'}}, 'lagged': { 'window_size': { 'hyperopt-dist': hp.uniformint, 'sampling-scope': [5, 500], - 'type': 'discrete'} - }, + 'type': 'discrete'}}, 'sparse_lagged': { 'window_size': { 'hyperopt-dist': hp.uniformint, @@ -543,20 +516,17 @@ def get_industrial_search_space(self): 'use_svd': { 'hyperopt-dist': hp.choice, 'sampling-scope': [[True, False]], - 'type': 'categorical'} - }, + 'type': 'categorical'}}, 'smoothing': { 'window_size': { 'hyperopt-dist': hp.uniformint, 'sampling-scope': [2, 20], - 'type': 'discrete'} - }, + 'type': 'discrete'}}, 'gaussian_filter': { 'sigma': { 'hyperopt-dist': hp.uniform, 'sampling-scope': [1, 5], - 'type': 'continuous'} - }, + 'type': 'continuous'}}, 'diff_filter': { 'poly_degree': { 'hyperopt-dist': hp.uniformint, @@ -569,14 +539,12 @@ def get_industrial_search_space(self): 'window_size': { 'hyperopt-dist': hp.uniform, 'sampling-scope': [3, 20], - 'type': 'continuous'} - }, + 'type': 'continuous'}}, 'cut': { 'cut_part': { 'hyperopt-dist': hp.uniform, 'sampling-scope': [0, 0.9], - 'type': 'continuous'} - }, + 'type': 'continuous'}}, 'lgbm': { 'class_weight': { 'hyperopt-dist': hp.choice, @@ -605,8 +573,7 @@ def get_industrial_search_space(self): 'reg_lambda': { 'hyperopt-dist': hp.loguniform, 'sampling-scope': [1e-8, 10], - 'type': 'continuous'} - }, + 'type': 'continuous'}}, 'lgbmreg': { 'num_leaves': { 'hyperopt-dist': hp.uniformint, @@ -631,8 +598,7 @@ def get_industrial_search_space(self): 'reg_lambda': { 'hyperopt-dist': hp.loguniform, 'sampling-scope': [1e-8, 10], - 'type': 'continuous'} - }, + 'type': 'continuous'}}, 'catboost': { 'max_depth': { 'hyperopt-dist': hp.uniformint, @@ -653,8 +619,7 @@ def get_industrial_search_space(self): 'l2_leaf_reg': { 'hyperopt-dist': hp.loguniform, 'sampling-scope': [1e-8, 10], - 'type': 'continuous'} - }, + 'type': 'continuous'}}, 'catboostreg': { 'max_depth': { 'hyperopt-dist': hp.uniformint, @@ -675,8 +640,7 @@ def get_industrial_search_space(self): 'l2_leaf_reg': { 'hyperopt-dist': hp.loguniform, 'sampling-scope': [1e-8, 10], - 'type': 'continuous'} - }, + 'type': 'continuous'}}, 'resample': { 'balance': { 'hyperopt-dist': hp.choice, @@ -689,8 +653,7 @@ def get_industrial_search_space(self): 'balance_ratio': { 'hyperopt-dist': hp.uniform, 'sampling-scope': [0.3, 1], - 'type': 'continuous'} - }, + 'type': 'continuous'}}, 'lda': { 'solver': { 'hyperopt-dist': hp.choice, @@ -699,27 +662,23 @@ def get_industrial_search_space(self): 'shrinkage': { 'hyperopt-dist': hp.uniform, 'sampling-scope': [0.1, 0.9], - 'type': 'continuous'} - }, + 'type': 'continuous'}}, 'ts_naive_average': { 'part_for_averaging': { 'hyperopt-dist': hp.uniform, 'sampling-scope': [0.1, 1], - 'type': 'continuous'} - }, + 'type': 'continuous'}}, 'locf': { 'part_for_repeat': { 'hyperopt-dist': hp.uniform, 'sampling-scope': [0.01, 0.5], - 'type': 'continuous'} - }, + 'type': 'continuous'}}, 'word2vec_pretrained': { 'model_name': { 'hyperopt-dist': hp.choice, 'sampling-scope': [['glove-twitter-25', 'glove-twitter-50', 'glove-wiki-gigaword-100', 'word2vec-ruscorpora-300']], - 'type': 'categorical'} - }, + 'type': 'categorical'}}, 'tfidf': { 'ngram_range': { 'hyperopt-dist': hp.choice, @@ -732,8 +691,7 @@ def get_industrial_search_space(self): 'max_df': { 'hyperopt-dist': hp.uniform, 'sampling-scope': [0.9, 0.99], - 'type': 'continuous'} - }, + 'type': 'continuous'}}, } for key in industrial_search_space: parameters_per_operation[key] = industrial_search_space[key] From 6fd8b518bdff3c39526779082973e43c8f89b8dc Mon Sep 17 00:00:00 2001 From: VK-notebook <119884857+PvtKaefsky@users.noreply.github.com> Date: Thu, 16 May 2024 15:00:40 +0300 Subject: [PATCH 4/7] Fix params --- .../data/default_operation_params.json | 56 +++++++++++-------- fedot_ind/core/tuning/search_space.py | 23 +++++--- 2 files changed, 49 insertions(+), 30 deletions(-) diff --git a/fedot_ind/core/repository/data/default_operation_params.json b/fedot_ind/core/repository/data/default_operation_params.json index 95bec3b75..0cf85149e 100644 --- a/fedot_ind/core/repository/data/default_operation_params.json +++ b/fedot_ind/core/repository/data/default_operation_params.json @@ -1,19 +1,20 @@ { "eigen_basis": { - "sv_selector": "median", - "window_size": 25, + "window_size": 20, "stride": 5, - "rank_regularization": "hard_thresholding" + "rank_regularization": "hard_thresholding", + "low_rank_approximation": true, + "tensor_approximation": false }, "wavelet_basis": { "n_components": 2, "wavelet": "mexh" }, "fourier_basis": { - "threshold": 20000 + "threshold": 20000, + "approximation": "smooth" }, "topological_extractor": { - "n_jobs": 2, "window_size_as_share": 0.33, "max_homology_dimension": 1, "metric": "euclidean", @@ -21,27 +22,21 @@ "stride": 5 }, "quantile_extractor": { - "stride": 5, + "stride": 1, "window_size": 0 }, "riemann_extractor": { - "n_filter": 4, "estimator": "scm", "tangent_metric": "riemann", - "SPD_metric": "riemann" + "SPD_metric": "riemann", + "n_filter": 2, + "extraction_strategy": "ensemble" }, "recurrence_extractor": { - "window_mode": true, - "min_signal_ratio": 0.5, - "max_signal_ratio": 0.75, - "image_mode": false, - "window_size": 20, - "stride": 5, - "rec_metric": "euclidean" - }, - "signal_extractor": { - "n_components": 6, - "wavelet": "mexh" + "window_size": 0, + "stride": 1, + "rec_metric": "cosine", + "image_mode": false }, "minirocket_extractor": { "num_features": 10000 @@ -49,25 +44,40 @@ "chronos_extractor": { "num_features": 10000 }, + "channel_filtration": { + "distance": "euclidean", + "shrink": 1e-5, + "centroid_metric": "euclidean", + "selection_strategy": "sum" + }, "patch_tst_model": { "epochs": 100, "batch_size": 32, - "activation": "relu" + "activation": "ReLU", + "learning_rate": 0.001, + "use_amp": false, + "forecast_length": null, + "patch_len": null, + "ouput_attention": false, + "forecast_mode": "out_of_sample" }, "omniscale_model": { "epochs": 100, "batch_size": 32, - "activation": "softmax" + "activation": "Softmax", + "num_classes": 1 }, "inception_model": { "epochs": 100, "batch_size": 32, - "activation": "softmax" + "activation": "Softmax", + "num_classes": 1 }, "resnet_model": { "epochs": 100, "batch_size": 32, - "activation": "softmax" + "activation": "Softmax", + "model_name": "ResNet18" }, "ssa_forecaster": { "window_size_method": "hac", diff --git a/fedot_ind/core/tuning/search_space.py b/fedot_ind/core/tuning/search_space.py index 44b8e20bc..be2af88a1 100644 --- a/fedot_ind/core/tuning/search_space.py +++ b/fedot_ind/core/tuning/search_space.py @@ -2,7 +2,7 @@ from hyperopt import hp -#from fedot_ind.core.repository.constanst_repository import DISTANCE_METRICS +from fedot_ind.core.repository.constanst_repository import DISTANCE_METRICS NESTED_PARAMS_LABEL = 'nested_label' @@ -11,7 +11,9 @@ {'window_size': {'hyperopt-dist': hp.choice, 'sampling-scope': [[x for x in range(5, 50, 5)]]}, 'stride': {'hyperopt-dist': hp.choice, 'sampling-scope': [[x for x in range(1, 10, 1)]]}, 'rank_regularization': {'hyperopt-dist': hp.choice, 'sampling-scope': [ - ['hard_thresholding', 'explained_dispersion']]}}, + ['hard_thresholding', 'explained_dispersion']]}, + 'low_rank_approximation': {'hyperopt-dist': hp.choice, 'sampling-scope': [[True, False]]}, + 'tensor_approximation': {'hyperopt-dist': hp.choice, 'sampling-scope': [[True, False]]}}, 'wavelet_basis': {'n_components': {'hyperopt-dist': hp.uniformint, 'sampling-scope': [2, 10]}, 'wavelet': {'hyperopt-dist': hp.choice, @@ -42,18 +44,25 @@ 'recurrence_extractor': {'window_size': {'hyperopt-dist': hp.choice, 'sampling-scope': [[x for x in range(5, 50, 5)]]}, 'stride': {'hyperopt-dist': hp.choice, 'sampling-scope': [[x for x in range(1, 10, 1)]]}, - # 'rec_metric': (hp.choice, [['chebyshev', 'cosine', 'euclidean', 'mahalanobis']]), + 'rec_metric': (hp.choice, [['cosine', 'euclidean']]), 'image_mode': {'hyperopt-dist': hp.choice, 'sampling-scope': [[True, False]]}}, - 'signal_extractor': - {'n_components': {'hyperopt-dist': hp.uniformint, 'sampling-scope': [2, 10]}, - 'wavelet': {'hyperopt-dist': hp.choice, - 'sampling-scope': [['mexh', 'morl', 'db5', 'sym5']]}}, 'minirocket_extractor': {'num_features': {'hyperopt-dist': hp.choice, 'sampling-scope': [[x for x in range(5000, 20000, 1000)]]}}, 'chronos_extractor': {'num_features': {'hyperopt-dist': hp.choice, 'sampling-scope': [[x for x in range(5000, 20000, 1000)]]}}, + 'channel_filtration': + {'distance': {'hyperopt-dist': hp.choice, + 'sampling-scope': [['manhattan', 'euclidean', 'chebyshev']]}, + 'centroid_metric': {'hyperopt-dist': hp.choice, + 'sampling-scope': [['manhattan', 'euclidean', 'chebyshev']]}, + 'sample_metric': {'hyperopt-dist': hp.choice, + 'sampling-scope': [list(DISTANCE_METRICS.keys())]}, + + 'selection_strategy': {'hyperopt-dist': hp.choice, + 'sampling-scope': [['sum', 'pairwise']]} + }, 'patch_tst_model': {'epochs': {'hyperopt-dist': hp.choice, 'sampling-scope': [[x for x in range(10, 100, 10)]]}, 'batch_size': {'hyperopt-dist': hp.choice, 'sampling-scope': [[x for x in range(8, 64, 6)]]}, From ad6632c57e82e0c87b884dd9461837d9ada45176 Mon Sep 17 00:00:00 2001 From: VK-notebook <119884857+PvtKaefsky@users.noreply.github.com> Date: Thu, 16 May 2024 15:23:54 +0300 Subject: [PATCH 5/7] Fix params --- fedot_ind/core/tuning/search_space.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/fedot_ind/core/tuning/search_space.py b/fedot_ind/core/tuning/search_space.py index be2af88a1..5339b0946 100644 --- a/fedot_ind/core/tuning/search_space.py +++ b/fedot_ind/core/tuning/search_space.py @@ -12,8 +12,8 @@ 'stride': {'hyperopt-dist': hp.choice, 'sampling-scope': [[x for x in range(1, 10, 1)]]}, 'rank_regularization': {'hyperopt-dist': hp.choice, 'sampling-scope': [ ['hard_thresholding', 'explained_dispersion']]}, - 'low_rank_approximation': {'hyperopt-dist': hp.choice, 'sampling-scope': [[True, False]]}, - 'tensor_approximation': {'hyperopt-dist': hp.choice, 'sampling-scope': [[True, False]]}}, + # 'tensor_approximation': {'hyperopt-dist': hp.choice, 'sampling-scope': [[True, False]]}, + 'low_rank_approximation': {'hyperopt-dist': hp.choice, 'sampling-scope': [[True, False]]}}, 'wavelet_basis': {'n_components': {'hyperopt-dist': hp.uniformint, 'sampling-scope': [2, 10]}, 'wavelet': {'hyperopt-dist': hp.choice, @@ -25,8 +25,8 @@ {'window_size': {'hyperopt-dist': hp.choice, 'sampling-scope': [[x for x in range(5, 50, 5)]]}, 'stride': {'hyperopt-dist': hp.choice, 'sampling-scope': [[x for x in range(1, 10, 1)]]}}, 'quantile_extractor': - {'stride': {'hyperopt-dist': hp.choice, 'sampling-scope': [[x for x in range(1, 10, 1)]]}, - 'window_size': {'hyperopt-dist': hp.choice, 'sampling-scope': [[x for x in range(0, 50, 3)]]}}, + {'window_size': {'hyperopt-dist': hp.choice, 'sampling-scope': [[x for x in range(5, 50, 5)]]}, + 'stride': {'hyperopt-dist': hp.choice, 'sampling-scope': [[x for x in range(1, 10, 1)]]}}, 'riemann_extractor': {'estimator': {'hyperopt-dist': hp.choice, 'sampling-scope': [['corr', 'cov', 'lwf', 'mcd', 'hub']]}, @@ -219,7 +219,7 @@ def get_industrial_search_space(self): 'min_child_weight': { 'hyperopt-dist': hp.uniformint, 'sampling-scope': [1, 21], - 'type': 'discrete'},}, + 'type': 'discrete'}}, 'xgboost': { 'n_estimators': { 'hyperopt-dist': hp.uniformint, @@ -478,7 +478,7 @@ def get_industrial_search_space(self): 'loss': { 'hyperopt-dist': hp.choice, 'sampling-scope': [['mae', 'mse']], - 'type': 'categorical'},}, + 'type': 'categorical'}}, 'topological_extractor': { 'window_size_as_share': { 'hyperopt-dist': hp.uniform, From d2ed79a14dbddd97b63fbc2ee09c80abbc5aa6d5 Mon Sep 17 00:00:00 2001 From: technocreep Date: Fri, 17 May 2024 13:29:26 +0200 Subject: [PATCH 6/7] minor update for riemann, fourier and corresponding params --- fedot_ind/core/models/manifold/riemann_embeding.py | 4 +--- fedot_ind/core/operation/transformation/basis/fourier.py | 2 +- .../core/repository/data/default_operation_params.json | 6 +----- fedot_ind/core/tuning/search_space.py | 5 +---- 4 files changed, 4 insertions(+), 13 deletions(-) diff --git a/fedot_ind/core/models/manifold/riemann_embeding.py b/fedot_ind/core/models/manifold/riemann_embeding.py index b640ad277..b3c6fc1f2 100644 --- a/fedot_ind/core/models/manifold/riemann_embeding.py +++ b/fedot_ind/core/models/manifold/riemann_embeding.py @@ -45,12 +45,10 @@ def __init__(self, params: Optional[OperationParameters] = None): 'tangent': self.extract_riemann_features, 'ensemble': self._ensemble_features} - self.n_filter = params.get('nfilter', 2) self.estimator = params.get('estimator', 'scm') self.spd_metric = params.get('SPD_metric', 'riemann') self.tangent_metric = params.get('tangent_metric', 'riemann') - self.extraction_strategy = params.get( - 'extraction_strategy ', 'ensemble') + self.extraction_strategy = 'ensemble' self.spd_space = params.get('SPD_space', None) self.tangent_space = params.get('tangent_space', None) diff --git a/fedot_ind/core/operation/transformation/basis/fourier.py b/fedot_ind/core/operation/transformation/basis/fourier.py index 229c6bf9e..389b667ea 100644 --- a/fedot_ind/core/operation/transformation/basis/fourier.py +++ b/fedot_ind/core/operation/transformation/basis/fourier.py @@ -25,7 +25,7 @@ def __repr__(self): def __init__(self, params: Optional[OperationParameters] = None): super().__init__(params) self.threshold = params.get('threshold') - self.approximation = params.get('approximation', 'smooth') + self.approximation = 'smooth' self.basis = None self.logging_params.update({'threshold': self.threshold}) diff --git a/fedot_ind/core/repository/data/default_operation_params.json b/fedot_ind/core/repository/data/default_operation_params.json index 0cf85149e..4290efaf5 100644 --- a/fedot_ind/core/repository/data/default_operation_params.json +++ b/fedot_ind/core/repository/data/default_operation_params.json @@ -1,7 +1,6 @@ { "eigen_basis": { "window_size": 20, - "stride": 5, "rank_regularization": "hard_thresholding", "low_rank_approximation": true, "tensor_approximation": false @@ -11,8 +10,7 @@ "wavelet": "mexh" }, "fourier_basis": { - "threshold": 20000, - "approximation": "smooth" + "threshold": 20000 }, "topological_extractor": { "window_size_as_share": 0.33, @@ -29,8 +27,6 @@ "estimator": "scm", "tangent_metric": "riemann", "SPD_metric": "riemann", - "n_filter": 2, - "extraction_strategy": "ensemble" }, "recurrence_extractor": { "window_size": 0, diff --git a/fedot_ind/core/tuning/search_space.py b/fedot_ind/core/tuning/search_space.py index 5339b0946..158804fa3 100644 --- a/fedot_ind/core/tuning/search_space.py +++ b/fedot_ind/core/tuning/search_space.py @@ -9,10 +9,9 @@ industrial_search_space = { 'eigen_basis': {'window_size': {'hyperopt-dist': hp.choice, 'sampling-scope': [[x for x in range(5, 50, 5)]]}, - 'stride': {'hyperopt-dist': hp.choice, 'sampling-scope': [[x for x in range(1, 10, 1)]]}, + # 'stride': {'hyperopt-dist': hp.choice, 'sampling-scope': [[x for x in range(1, 10, 1)]]}, 'rank_regularization': {'hyperopt-dist': hp.choice, 'sampling-scope': [ ['hard_thresholding', 'explained_dispersion']]}, - # 'tensor_approximation': {'hyperopt-dist': hp.choice, 'sampling-scope': [[True, False]]}, 'low_rank_approximation': {'hyperopt-dist': hp.choice, 'sampling-scope': [[True, False]]}}, 'wavelet_basis': {'n_components': {'hyperopt-dist': hp.uniformint, 'sampling-scope': [2, 10]}, @@ -36,8 +35,6 @@ 'riemann' ]]}, 'SPD_metric': {'hyperopt-dist': hp.choice, 'sampling-scope': [[ - # 'ale', - # 'alm', 'euclid', 'identity', 'logeuclid', 'riemann']]}}, From 7b05369b0a94d7975f513a6ee934fdadfcb3ea43 Mon Sep 17 00:00:00 2001 From: technocreep Date: Fri, 17 May 2024 13:36:08 +0200 Subject: [PATCH 7/7] minor fix --- fedot_ind/core/repository/data/default_operation_params.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fedot_ind/core/repository/data/default_operation_params.json b/fedot_ind/core/repository/data/default_operation_params.json index 4290efaf5..2757abaf2 100644 --- a/fedot_ind/core/repository/data/default_operation_params.json +++ b/fedot_ind/core/repository/data/default_operation_params.json @@ -26,7 +26,7 @@ "riemann_extractor": { "estimator": "scm", "tangent_metric": "riemann", - "SPD_metric": "riemann", + "SPD_metric": "riemann" }, "recurrence_extractor": { "window_size": 0,