gemseo / problems / scalable / data_driven

Show inherited members

factory module

Scalable model factory

This module contains the ScalableModelFactory which is a factory to create a ScalableModel from its class name by means of the ScalableModelFactory.create() method. It is also possible to get a list of available scalable models (see ScalableModelFactory.scalable_models method) and to check is a type of scalable model is available (see ScalableModelFactory.is_available() method)

class gemseo.problems.scalable.data_driven.factory.ScalableModelFactory[source]

Bases: BaseFactory

This factory instantiates a class:.ScalableModel from its class name.

The class can be internal to GEMSEO or located in an external module whose path is provided to the constructor.

Return type:

BaseFactory

create(model_name, data, sizes=None, **parameters)[source]

Create a scalable model.

Parameters:
  • model_name (str) – name of the scalable model (its class name)

  • data (Dataset) – learning dataset.

  • sizes (dict) – sizes of input and output variables. If None, use the original sizes. Default: None.

  • parameters – model parameters

  • class_name – The name of the class.

  • **options – The arguments to be passed to the class constructor.

Returns:

model_name scalable model

Returns:

The instance of the class.

Raises:

TypeError – If the class cannot be instantiated.

failed_imports: dict[str, str]

The class names bound to the import errors.

property scalable_models: list[str]

Lists the available classes for scalable models.

Returns:

the list of classes names.

Return type:

list(str)