pykoop.ClusterCenters

class ClusterCenters(estimator=None)

Bases: Centers

Centers generated from a clustering algorithm.

Also supports taking centers from the means of a Gaussian mixture model.

Inspired by center generation approach used in [DTK20].

Parameters:

estimator (BaseEstimator | None) –

centers_

Centers, shape (n_centers, n_features).

Type:

np.ndarray

n_centers_

Number of centers generated.

Type:

int

n_features_in_

Number of features input.

Type:

int

estimator_

Fit clustering estimator or Gaussian mixture model.

Type:

sklearn.base.BaseEstimator

Examples

Generate centers using K-means clustering

>>> kmeans = pykoop.ClusterCenters(sklearn.cluster.KMeans(n_clusters=3))
>>> kmeans.fit(X_msd[:, 1:])  # Remove episode feature
ClusterCenters(estimator=KMeans(n_clusters=3))
>>> kmeans.centers_
array([...])
__init__(estimator=None)

Instantiate ClusterCenters.

Parameters:

estimator (Optional[sklearn.base.BaseEstimator]) –

Clustering estimator or Gaussian mixture model. Must provide cluster_centers_ or means_ once fit. Possible algorithms include

The number of centers generated is controlled by the chosen estimator. If a random seed is desired, it must be set in the chosen estimator. Defaults to sklearn.cluster.KMeans.

Return type:

None

Methods

__init__([estimator])

Instantiate ClusterCenters.

fit(X[, y])

Generate centers from data.

get_metadata_routing()

Get metadata routing of this object.

get_params([deep])

Get parameters for this estimator.

set_params(**params)

Set the parameters of this estimator.

fit(X, y=None)

Generate centers from data.

Parameters:
  • X (np.ndarray) – Data matrix.

  • y (Optional[np.ndarray]) – Ignored.

Returns:

Instance of itself.

Return type:

Centers

Raises:

ValueError – If any of the constructor parameters are incorrect.

get_metadata_routing()

Get metadata routing of this object.

Please check User Guide on how the routing mechanism works.

Returns:

routing – A MetadataRequest encapsulating routing information.

Return type:

MetadataRequest

get_params(deep=True)

Get parameters for this estimator.

Parameters:

deep (bool, default=True) – If True, will return the parameters for this estimator and contained subobjects that are estimators.

Returns:

params – Parameter names mapped to their values.

Return type:

dict

set_params(**params)

Set the parameters of this estimator.

The method works on simple estimators as well as on nested objects (such as Pipeline). The latter have parameters of the form <component>__<parameter> so that it’s possible to update each component of a nested object.

Parameters:

**params (dict) – Estimator parameters.

Returns:

self – Estimator instance.

Return type:

estimator instance