spectralClusteringNg: Spectral clustering

View source: R/codeSpectral.R

spectralClusteringNgR Documentation

Spectral clustering

Description

Perform spectral clustering thanks to a similarity matrix (according to Ng et al., 2002).

Usage

spectralClusteringNg(sim, K)

Arguments

sim

similarity matrix.

K

number of clusters.

Details

spectralClusteringNg returns a partition obtained by spectral clustering (according to Ng et al., 2002)

Value

The function returns a list containing:

label

vector of labels.

medoids

matrix of cluster centers in the space of the K first normalized eigenvectors.

id.med

vector containing the medoids indices.

x

matrix containing, in columns, the eigenvectors of the similarity matrix.

eigen.val

vector containing the eigenvalues of the similarity matrix.

cluster.info

some statistics on each cluster.

References

A. Ng, M. Jordan, Y. Weiss, On spectral clustering: Analysis and an algorithm, Neural Inf. Process. Systems NIPS14 (2002), pp. 849-856.

See Also

spectralClustering

Examples

dat <- rbind(matrix(rnorm(100, mean = 0, sd = 0.3), ncol = 2), 
           matrix(rnorm(100, mean = 2, sd = 0.3), ncol = 2), 
           matrix(rnorm(100, mean = 4, sd = 0.3), ncol = 2))

sim <- computeGaussianSimilarity(dat, 1)
res <- spectralClusteringNg(sim, K=3)

plot(dat[,1], dat[,2], type = "p", xlab = "x", ylab = "y", 
col = res$label, main = "Initial features space")
plot(res$x[,2], res$x[,3], type = "p", xlab = "2nd eigenvector", 
ylab = "3rd eigenvector", col = res$label, main = "Spectral embedding")

RclusTool documentation built on Aug. 29, 2022, 9:07 a.m.