LinkBasedClustering: Link-based cluster ensembles

View source: R/linkbased.r

LinkBasedClusteringR Documentation

Link-based cluster ensembles

Description

Link-based cluster ensembles combine multiple base clusterings into a single, refined similarity matrix by exploiting the link structure between clusters of the ensemble. Three refinement schemes are available: Connected-Triple-Based Similarity ("cts"), SimRank-Based Similarity ("srs") and Approximate SimRank-Based Similarity ("asrs"). The refined object-by-object similarity matrix is turned into a dissimilarity matrix on which a final agglomerative hierarchical clustering is performed.

Usage

LinkBasedClustering(
  List,
  type = c("data", "dist", "clust"),
  distmeasure = c("tanimoto", "tanimoto"),
  normalize = c(FALSE, FALSE),
  method = c(NULL, NULL),
  clust = "agnes",
  linkage = c("flexible", "flexible"),
  alpha = 0.625,
  nrclusters = c(7, 7),
  gap = FALSE,
  maxK = 15,
  linkBasedMethod = c("cts", "srs", "asrs"),
  decayfactor = 0.8,
  niter = 5,
  linkBasedLinkage = "ward",
  waitingtime = 300,
  file_number = 0,
  executable = FALSE
)

Arguments

List

A list of data matrices, distance matrices or clustering results. It is assumed the rows are corresponding with the objects.

type

Indicates whether the provided matrices in "List" are either data matrices, distance matrices or clustering results obtained from the data. Should be one of "data", "dist" or "clust".

distmeasure

A vector of the distance measures to be used on each data matrix. Should be one of "tanimoto", "euclidean", "jaccard", "hamming". Defaults to c("tanimoto","tanimoto").

normalize

Logical. Indicates whether to normalize the distance matrices or not, defaults to c(FALSE, FALSE) for two data sets. This is recommended if different distance types are used. More details on normalization in Normalization.

method

A method of normalization. Should be one of "Quantile", "Fisher-Yates", "standardize","Range" or any of the first letters of these names. Default is c(NULL,NULL) for two data sets.

clust

Choice of clustering function (character). Defaults to "agnes".

linkage

Choice of inter group dissimilarity (character) for each data set. Defaults to c("flexible", "flexible") for two data sets.

alpha

The parameter alpha to be used in the "flexible" linkage of the agnes function. Defaults to 0.625 and is only used if the linkage is set to "flexible".

nrclusters

A vector with the number of clusters to cut each base dendrogram into. If NULL and gap=FALSE, the function stops.

gap

Logical. Whether to use the gap statistic to determine the number of clusters per data set. Defaults to FALSE.

maxK

The maximal number of clusters to consider when gap=TRUE.

linkBasedMethod

The link-based refinement scheme. One of "cts", "srs" or "asrs". Defaults to "cts".

decayfactor

The decay (confidence) factor used by the refinement scheme. Defaults to 0.8.

niter

The number of iterations for the SimRank-based scheme ("srs"). Defaults to 5.

linkBasedLinkage

The linkage used in the final agglomerative clustering of the refined similarity matrix. Defaults to "ward".

waitingtime

Retained for backward compatibility with the external executable / MATLAB workflow; ignored by the pure-R schemes.

file_number

Retained for backward compatibility with the external executable / MATLAB workflow; ignored by the pure-R schemes.

executable

Logical. If TRUE, the refined similarity matrix is computed by an external executable / MATLAB. The "cts" and "srs" schemes are pure R and work without an executable. The "asrs" scheme is only available through the external executable; if executable=FALSE it stops with an informative message.

Details

Each base clustering of the ensemble is represented as a hard partition. The clusters of all partitions form the vertices of a weighted graph; the link weights between clusters are derived from shared objects. The refined object-by-object similarity is obtained by propagating these cluster-to-cluster links ("cts", "srs", "asrs"). See Iam-On et al. (2010).

Value

The returned value is a list of two elements:

DistM

The resulting (refined) distance matrix

Clust

The resulting hierarchical clustering

The value has class 'LinkBased'.

References

Iam-On, N., Boongoen, T., Garrett, S. and Price, C. (2010). Link-based cluster ensembles for the combination of multiple clusterings. IEEE Transactions on Knowledge and Data Engineering, 23(12), 1839-1853.

Examples

## Not run: 
data(mosaic_toy)
L <- mosaic_toy$List
res <- LinkBasedClustering(List = L, type = "data",
  distmeasure = c("euclidean", "euclidean"), normalize = c(FALSE, FALSE),
  linkBasedMethod = "cts", decayfactor = 0.8, niter = 5,
  linkBasedLinkage = "ward", nrclusters = c(3, 3))

## End(Not run)

MosaiClusteR documentation built on Oct. 25, 2026, 1:08 a.m.