ncuth {PPCI} | R Documentation |
Minimum Normalised Cut Hyperplane
Description
Finds minimum normalised cut hyperplane(s) for clustering.
Usage
ncuth(X, v0, s, minsize, verb, labels, maxit, ftol)
Arguments
X |
a numeric matrix (num_data x num_dimensions); the dataset to be clustered. |
v0 |
(optional) initial projection direction(s). a matrix with ncol(X) rows. each column of v0 is used as an initialisation for projection pursuit. if omitted then a single initialisation is used; the first principal component. |
s |
(optional) positive numeric scaling parameter (sigma). if omitted then s = 100*eigen(cov(X))$values[1]^.5*nrow(X)^(-0.2). |
minsize |
(optional) the minimum cluster size allowable. if omitted then minsize = 1. |
verb |
(optional) verbosity level of optimisation procedure. verb==0 produces no output. verb==1 produces plots illustrating the progress of projection pursuit via plots of the projected data. verb==2 adds to these plots additional information about the progress. verb==3 creates a folder in working directory and stores all plots for verb==2. if omitted then verb==0. |
labels |
(optional) vector of class labels. not used in the actual clustering procedure. only used for illustrative purposes for values of verb>0. |
maxit |
(optional) maximum number of iterations in optimisation. if omitted then maxit=50. |
ftol |
(optional) tolerance level for convergence of optimisation, based on relative function value improvements. if omitted then ftol = 1e-8. |
Value
a named list with class ppci_hyperplane_solution with the following components
$cluster |
cluster assignment vector. |
$v |
the optimal projection vector. |
$b |
the value of b making H(v, b) the minimum normalised cut hyperplane. |
$fitted |
data projected into two dimensional subspace defined by $v and the principal component in the null space of $v. |
$data |
the input data matrix. |
$fval |
the normalised cut across H(v, b). |
$method |
=="NCutH". |
$params |
list of parameters used to find H(v, b). |
$alternatives |
an unnamed list. If more than one initilisation is considered, the alternatives to the best are stored in this field. |
References
Hofmeyr, D. (2016) Clustering by Minimum Cut Hyperplanes. IEEE Transactions on Pattern Analysis and Machine Intelligence, 39(8), 1547 – 1560.
Examples
## load breast cancer dataset
data(breastcancer)
## find minimum normalised cut hyperplane
sol <- ncuth(breastcancer$x)
## visualise the solution
plot(sol)
## evaluate the performance of the solution
success_ratio(sol$cluster, breastcancer$c)