Unsupervised learning#

This module contains the base class for the unsupervised machine learning algorithms.

The unsupervised module implements the concept of unsupervised machine learning models, where the data has no notion of input or output.

This concept is implemented through the BaseMLUnsupervisedAlgo class, which inherits from the BaseMLAlgo class.

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

Unsupervised machine learning algorithm.

Inheriting classes shall overload the BaseMLUnsupervisedAlgo._fit() method.

Parameters:
  • data (Dataset) -- The learning dataset.

  • settings_model (BaseMLAlgoSettings | 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 both the variable and the group it belongs to have a transformer.

Settings

alias of BaseMLUnsupervisedAlgoSettings

SHORT_ALGO_NAME: ClassVar[str] = 'BaseMLUnsupervisedAlgo'

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}".

input_names: list[str]

The names of the variables.