Repository

class fedot.core.repository.dataset_types.DataTypesEnum

Bases: fedot.core.utilities.data_structures.ComparableEnum

An enumeration.

table = 'feature_table'
ts = 'time_series'
multi_ts = 'multiple_time_series'
text = 'text'
image = 'image'

Operation Types

class fedot.core.repository.operation_types_repository.OperationMetaInfo(id: str, input_types: List[fedot.core.repository.dataset_types.DataTypesEnum], output_types: List[fedot.core.repository.dataset_types.DataTypesEnum], task_type: List[fedot.core.repository.tasks.TaskTypesEnum], supported_strategies: Any, allowed_positions: List[str], tags: Union[List[str], NoneType] = None, presets: Union[List[str], NoneType] = None)

Bases: object

Parameters
Return type

None

id: str = None
input_types: List[DataTypesEnum] = None
output_types: List[DataTypesEnum] = None
task_type: List[TaskTypesEnum] = None
supported_strategies: Any = None
allowed_positions: List[str] = None
tags: Optional[List[str]] = None
presets: Optional[List[str]] = None
current_strategy(task)

Method allows getting available processing strategies depending on the selected task

Parameters

task (fedot.core.repository.tasks.TaskTypesEnum) – machine learning task (e.g. regression and classification)

:return : supported strategies for task

fedot.core.repository.operation_types_repository.run_once(function)
class fedot.core.repository.operation_types_repository.OperationTypesRepository(operation_type='model')

Bases: object

Class for connecting models and data operations with json files with its descriptions and metadata

Parameters

operation_type (str) –

DEFAULT_MODEL_TAGS = ['linear', 'non_linear']
DEFAULT_DATA_OPERATION_TAGS = ['data_source', 'feature_scaling', 'imputation', 'feature_reduction', 'feature_engineering', 'encoding', 'filtering', 'feature_selection', 'ts_to_table', 'smoothing', 'ts_to_ts', 'text', 'decompose', 'imbalanced']
classmethod get_available_repositories()
classmethod init_automl_repository(*args, **kwargs)
classmethod init_default_repositories(*args, **kwargs)
classmethod assign_repo(operation_type, repo_file)
Parameters
  • operation_type (str) –

  • repo_file (str) –

static get_strategies_by_metadata(metadata)

Method allow obtain strategy instance by the metadata

Parameters

metadata (dict) – information about meta of the operation

Return supported_strategies

available strategies for current metadata

operation_info_by_id(operation_id)

Get operation by it’s name (id)

Parameters

operation_id (str) –

Return type

Optional[fedot.core.repository.operation_types_repository.OperationMetaInfo]

operations_with_tag(tags, is_full_match=False)
Parameters
  • tags (List[str]) –

  • is_full_match (bool) –

suitable_operation(task_type=None, data_type=None, tags=None, is_full_match=False, forbidden_tags=None, preset=None)

Method returns operations from repository for desired task and / or tags. Filtering method.

Parameters
property operations
get_first_suitable_operation_tag(operation, tags_to_find=None)

Finds the first suitable tag for the operation in the repository.

Parameters
  • operation (str) – name of the operation.

  • tags_to_find (Optional[List[str]]) – list of suitable tags.

Returns

first suitable tag or None.

Return type

Optional[str]

fedot.core.repository.operation_types_repository.get_opt_node_tag(opt_node, tags_model=None, tags_data=None, repos_tags=None)

Finds the first suitable tag for the OptNode across Fedot repositories.

Parameters
  • opt_node (Union[fedot.core.optimisers.graph.OptNode, str]) – OptNode or its name.

  • tags_model (Optional[List[str]]) – tags for OperationTypesRepository(‘model’) to map the history operations.

  • tags_data (Optional[List[str]]) – tags for OperationTypesRepository(‘data_operation’) to map the history operations.

  • repos_tags (Optional[Dict[OperationTypesRepository, List[str]]]) – dictionary mapping OperationTypesRepository with suitable tags. Can be used only if no tags_model and tags_data specified.

Returns

first suitable tag or None.

Return type

Optional[str]

fedot.core.repository.operation_types_repository.atomized_model_type()
fedot.core.repository.operation_types_repository.atomized_model_meta_tags()
fedot.core.repository.operation_types_repository.get_operations_for_task(task, mode='all', tags=None, forbidden_tags=None, preset=None)

Function returns aliases of operations.

Parameters
  • task (Optional[fedot.core.repository.tasks.Task]) – task to solve

  • mode

    mode to return operations The possible parameters are:

    ’all’ - return list with all operations ‘model’ - return only list with models ‘data_operation’ - return only list with data_operations

  • tags – tags for grabbing when filtering

  • forbidden_tags – tags for skipping when filtering

  • preset (str) – operations from this preset will be obtained

:return : list with operation aliases

fedot.core.repository.operation_types_repository.get_operation_type_from_id(operation_id)
fedot.core.repository.operation_types_repository.load_repository(repo_path)
Parameters

repo_path (str) –

Return type

dict

fedot.core.repository.operation_types_repository.create_repository_path(repository_name)
Parameters

repository_name (str) –

Return type

str

Quality metrics

class fedot.core.repository.quality_metrics_repository.MetricsEnum

Bases: fedot.core.utilities.data_structures.ComparableEnum

An enumeration.

class fedot.core.repository.quality_metrics_repository.QualityMetricsEnum

Bases: fedot.core.repository.quality_metrics_repository.MetricsEnum

An enumeration.

class fedot.core.repository.quality_metrics_repository.ComplexityMetricsEnum

Bases: fedot.core.repository.quality_metrics_repository.MetricsEnum

An enumeration.

node_num = 'node_number'
structural = 'structural'
computation_time = 'computation_time_in_seconds'
class fedot.core.repository.quality_metrics_repository.ClusteringMetricsEnum

Bases: fedot.core.repository.quality_metrics_repository.QualityMetricsEnum

An enumeration.

silhouette = 'silhouette'
class fedot.core.repository.quality_metrics_repository.ClassificationMetricsEnum

Bases: fedot.core.repository.quality_metrics_repository.QualityMetricsEnum

An enumeration.

ROCAUC = 'roc_auc'
precision = 'precision'
f1 = 'f1'
logloss = 'neg_log_loss'
ROCAUC_penalty = 'roc_auc_pen'
accuracy = 'accuracy'
class fedot.core.repository.quality_metrics_repository.RegressionMetricsEnum

Bases: fedot.core.repository.quality_metrics_repository.QualityMetricsEnum

An enumeration.

RMSE = 'rmse'
MSE = 'mse'
MSLE = 'neg_mean_squared_log_error'
MAPE = 'mape'
SMAPE = 'smape'
MAE = 'mae'
R2 = 'r2'
RMSE_penalty = 'rmse_pen'
class fedot.core.repository.quality_metrics_repository.MetricsRepository

Bases: object

metric_by_id(metric_id, default_callable=None)
Parameters
Return type

Callable[[G], numbers.Real]

metric_class_by_id(metric_id)
Parameters

metric_id (fedot.core.repository.quality_metrics_repository.MetricsEnum) –

Return type

fedot.core.composer.metrics.Metric

Tasks

class fedot.core.repository.tasks.TaskParams

Bases: object

Return type

None

class fedot.core.repository.tasks.TsForecastingParams(forecast_length: int)

Bases: fedot.core.repository.tasks.TaskParams

Parameters

forecast_length (int) –

Return type

None

forecast_length: int = None
class fedot.core.repository.tasks.TaskTypesEnum

Bases: fedot.core.utilities.data_structures.ComparableEnum

An enumeration.

classification = 'classification'
regression = 'regression'
ts_forecasting = 'ts_forecasting'
clustering = 'clustering'
class fedot.core.repository.tasks.Task(task_type: fedot.core.repository.tasks.TaskTypesEnum, task_params: Union[fedot.core.repository.tasks.TaskParams, NoneType] = None)

Bases: object

Parameters
Return type

None

task_type: TaskTypesEnum = None
task_params: Optional[fedot.core.repository.tasks.TaskParams] = None
fedot.core.repository.tasks.compatible_task_types(main_task_type)
Parameters

main_task_type (fedot.core.repository.tasks.TaskTypesEnum) –

Return type

List[fedot.core.repository.tasks.TaskTypesEnum]

fedot.core.repository.tasks.extract_task_param(task)
Parameters

task (fedot.core.repository.tasks.Task) –

Return type

Any