Skip to content

Commit d05b51d

Browse files
committed
Code review fixes
1 parent 10d1be4 commit d05b51d

File tree

7 files changed

+12
-13
lines changed

7 files changed

+12
-13
lines changed

examples/advanced/customization/image_classification_with_custom_models.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717
from fedot.core.pipelines.node import PipelineNode
1818
from fedot.core.pipelines.pipeline import Pipeline
1919
from fedot.core.pipelines.pipeline_composer_requirements import PipelineComposerRequirements
20-
from fedot.core.pipelines.tuning.hyperparams import ParametersChanger
2120
from fedot.core.pipelines.tuning.search_space import PipelineSearchSpace
2221
from fedot.core.pipelines.tuning.tuner_builder import TunerBuilder
2322
from fedot.core.repository.metrics_repository import ClassificationMetricsEnum, ComplexityMetricsEnum
@@ -113,7 +112,7 @@ def run_image_classification_automl(train_dataset: tuple,
113112
pop_size = 5
114113

115114
# search space for hyper-parametric mutation
116-
ParametersChanger.custom_search_space = custom_search_space
115+
PipelineSearchSpace.pre_defined_custom_search_space = custom_search_space
117116

118117
params = GPAlgorithmParameters(
119118
selection_types=[SelectionTypesEnum.spea2],

examples/advanced/customization/implementations/cnn_impls.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -135,9 +135,9 @@ def fit(self, train_data):
135135
self.model = cnn_model_dict[self.params.get('architecture_type')](input_shape=train_data.features.shape[1:4],
136136
num_classes=len(self.classes))
137137

138-
# self.model = fit_cnn(train_data=train_data, model=self.model, epochs=self.params.get('epochs'),
139-
# batch_size=self.params.get('batch_size'),
140-
# optimizer_params=self.params.get('optimizer_parameters'), logger=self.params.get('log'))
138+
self.model = fit_cnn(train_data=train_data, model=self.model, epochs=self.params.get('epochs'),
139+
batch_size=self.params.get('batch_size'),
140+
optimizer_params=self.params.get('optimizer_parameters'), logger=self.params.get('log'))
141141
return self.model
142142

143143
def predict(self, input_data):

fedot/core/pipelines/pipeline_advisor.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ def propose_change(self, node: OptNode, possible_operations: List[str]) -> List[
4545
candidates = set.intersection({'lagged', 'sparse_lagged'}, set(possible_operations))
4646

4747
if 'cnn' in operation_id:
48-
candidates = [c for c in candidates if 'cnn' in candidates]
48+
candidates = [cand for cand in candidates if 'cnn' in cand]
4949

5050
if operation_id in candidates:
5151
# the change to the same node is not meaningful

fedot/core/pipelines/tuning/hyperparams.py

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,10 @@
1111
class ParametersChanger:
1212
"""
1313
Class for the hyperparameters changing in the operation
14-
1514
:param operation_name: name of operation to get hyperparameters for
1615
:param current_params: current parameters value
1716
"""
1817

19-
custom_search_space = None
20-
2118
def __init__(self, operation_name, current_params):
2219
self.operation_name = operation_name
2320
self.current_params = current_params
@@ -28,7 +25,7 @@ def get_new_operation_params(self):
2825

2926
# Get available parameters for operation
3027
params_list = \
31-
PipelineSearchSpace(ParametersChanger.custom_search_space).get_parameters_for_operation(self.operation_name)
28+
PipelineSearchSpace().get_parameters_for_operation(self.operation_name)
3229

3330
if not params_list:
3431
params_dict = None

fedot/core/pipelines/tuning/search_space.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,17 +9,20 @@
99

1010
class PipelineSearchSpace(SearchSpace):
1111
"""
12-
Class for extracting searching space
12+
Class for extracting searching space for hyperparameters of pipeline
1313
1414
:param custom_search_space: dictionary of dictionaries of tuples (hyperopt expression (e.g. hp.choice), *params)
1515
for applying custom hyperparameters search space
1616
:param replace_default_search_space: whether replace default dictionary (False) or append it (True)
1717
"""
1818

19+
pre_defined_custom_search_space = None # workaround to modify search space globally
20+
1921
def __init__(self,
2022
custom_search_space: Optional[OperationParametersMapping] = None,
2123
replace_default_search_space: bool = False):
22-
self.custom_search_space = custom_search_space
24+
self.custom_search_space = custom_search_space if PipelineSearchSpace.pre_defined_custom_search_space is None \
25+
else PipelineSearchSpace.pre_defined_custom_search_space
2326
self.replace_default_search_space = replace_default_search_space
2427
parameters_per_operation = self.get_parameters_dict()
2528
super().__init__(parameters_per_operation)

test/unit/tasks/test_classification.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
from sklearn.datasets import load_iris, make_classification
55
from sklearn.metrics import roc_auc_score as roc_auc
66

7-
from examples.simple.classification.image_classifcation_problem import run_image_classification_problem
7+
from examples.simple.classification.image_classification_problem import run_image_classification_problem
88
from fedot.core.data.data import InputData
99
from fedot.core.data.data_split import train_test_data_setup
1010
from fedot.core.data.supplementary_data import SupplementaryData

0 commit comments

Comments
 (0)