htmd.clustering.kcenters module#

class htmd.clustering.kcenters.KCenter(n_clusters)#

Bases: BaseEstimator, ClusterMixin, TransformerMixin

Class to perform KCenter clustering of a given data set.

KCenter randomly picks one point from the data, which is now the center of the first cluster. All points are put into the first cluster. In general the furthest point from its center is chosen to be the new center. All points which are closer to the new center than the old one are assigned to the new cluster. This continues until K clusters have been created.

Parameters:

n_clusters (int) – Desired number of clusters.

Examples

>>> cluster = KCenter(n_clusters=200)
>>> cluster.fit(data)
cluster_centers_#

List with the points which are the centers of the clusters.

Type:

list

centerFrames#

List of indices of center points in the data array.

Type:

list

labels_#

List with the cluster index of each frame.

Type:

list

clusterSize#

List with the number of frames in each cluster.

Type:

list

distance#

List with the distance of each frame from the nearest center.

Type:

list

fit(data)#

Compute the cluster centers of the data.

Parameters:

data (ndarray) – A 2D array of data. Columns are features and rows are data examples.

set_fit_request(*, data: bool | None | str = '$UNCHANGED$') KCenter#

Configure whether metadata should be requested to be passed to the fit method.

Note that this method is only relevant when this estimator is used as a sub-estimator within a meta-estimator and metadata routing is enabled with enable_metadata_routing=True (see sklearn.set_config()). Please check the User Guide on how the routing mechanism works.

The options for each parameter are:

  • True: metadata is requested, and passed to fit if provided. The request is ignored if metadata is not provided.

  • False: metadata is not requested and the meta-estimator will not pass it to fit.

  • None: metadata is not requested, and the meta-estimator will raise an error if the user provides it.

  • str: metadata should be passed to the meta-estimator with this given alias instead of the original name.

The default (sklearn.utils.metadata_routing.UNCHANGED) retains the existing request. This allows you to change the request for some parameters and not others.

Added in version 1.3.

Parameters:

data (str, True, False, or None, default=sklearn.utils.metadata_routing.UNCHANGED) – Metadata routing for data parameter in fit.

Returns:

self – The updated object.

Return type:

object