gemseo.mlearning.regression.algos.fce module#

Functional chaos expansion model.

class FCERegressor(data, settings_model=None, **settings)[source]#

Bases: BaseFCERegressor

Functional chaos expansion model.

Given a training dataset whose input samples are generated from OpenTURNS probability distributions, this regression algorithm can use any linear model fitting algorithm, including sparse techniques, to fit a functional chaos expansion (FCE) model of the form

\[y = \sum_{i\in\mathcal{I}\subset\mathbb{N}^d} w_i\Psi_i(x)\]

where \(\Psi_i(x)=\prod_{j=1}^d\psi_{i,j}(x_j)\) and \(\mathbb{E}[\Psi_i(x)\Psi_j(x)]=\delta_{ij}\) with \(\delta\) the Kronecker delta.

Initialize self. See help(type(self)) for accurate signature.

Parameters:
  • data (IODataset) -- The training dataset whose input space data.misc["input_space"] is expected to be a ParameterSpace defining the random input variables as OTDistribution objects.

  • settings_model (FCERegressor_Settings | None) -- The machine learning algorithm settings as a Pydantic model. If None, use **settings.

  • **settings (Any) -- The machine learning algorithm settings. These arguments are ignored when settings_model is not None.

Raises:

ValueError -- When learn_jacobian_data or use_special_jacobian_data is True but the training dataset does not contain Jacobian data.

Settings#

alias of FCERegressor_Settings

LIBRARY: ClassVar[str] = 'GEMSEO'#

The name of the library of the wrapped machine learning algorithm.

SHORT_ALGO_NAME: ClassVar[str] = 'FCE'#

The short name of the machine learning algorithm, often an acronym.

Typically used for composite names, e.g. f"{algo.SHORT_ALGO_NAME}_{dataset.name}" or f"{algo.SHORT_ALGO_NAME}_{discipline.name}".