fhv: Fuzzy Hyper Volume

View source: R/fhv.R

fhvR Documentation

Fuzzy Hyper Volume

Description

Computes the Fuzzy Hyper Volume (Gath & Geva, 1989) value for validating the result of a fuzzy and/or possibilistic cluster analysis.

Usage

fhv(x, u, v, m, t=NULL, eta, tidx="f")

Arguments

x

an object of class ‘ppclust’ containing the clustering results from a fuzzy clustering algorithm in the package ppclust. Alternatively, a numeric data frame or matrix containing the data set.

u

a numeric data frame or matrix containing the fuzzy membership values. It should be specified if x is not an object of ‘ppclust’.

v

a numeric data frame or matrix containing the cluster prototypes. It should be specified if x is not an object of ‘ppclust’.

t

a numeric data frame or matrix containing the cluster prototypes. It should be specified if x is not an object of ‘ppclust’ and the option e or g is assigned to tidx.

m

a number specifying the fuzzy exponent. It should be specified if x is not an object of ‘ppclust’.

eta

a number specifying the typicality exponent. It should be specified if x is not an object of ‘ppclust’ and tidx is either e or g.

tidx

a character specifying the type of index. The default is ‘f’ for fuzzy index. The other options are ‘e’ for extended and ‘g’ for generalized index.

Details

Fuzzy Hyper Volume proposed by (Gath & Geva, 1989) is calculated by summation of the determinants of the fuzzy covariance matrices of the clusters as follows:

I_{FHV}=∑\limits_{j=1}^k F_j

Where: F_j is the square root of the determinant of fuzzy covariance matrix of j-th cluster:

F_j=√{|\mathbf{S_j}|}

The fuzzy covariance matrix \mathbf{S_j} in the equation above is:

\mathbf{S_j} = \frac{∑\limits_{i=1}^n u_{ij}^m (\vec{x_i}-\vec{v_j})^T(\vec{x_i}-\vec{v_j})}{∑\limits_{i=1}^n u_{ij}^m}

Small values of I_{FHV} indicate the existence of compact clusters (Halkidi et al, 2002b). Thus the minimum I_{FHV} gives the optimal clustering.

Value

fhv

FHV value if tidx is ‘f’

fhv.e

extended FHV value if tidx is ‘e’

fhv.g

generalized FHV value if tidx is ‘g’

Author(s)

Zeynel Cebeci

References

Gath, I. & Geva, A. B. (1989). Unsupervised optimal fuzzy clustering. IEEE Transactions on Pattern Analysis and Machine Intelligence, 11(7):773-780. <doi:10.1109/34.192473>

Halkidi, M., Batistakis, Y. & Vazirgiannis, M. (2002b). Clustering validity checking methods: part II. ACM Sigmod Record, 31(3):19-27. <doi:10.1145/601858.601862>

See Also

allindexes, apd, cl, cs, cwb, fs, kpbm, kwon, mcd, mpc, pbm, pc, pe, sc, si, tss, ws, xb

Examples

# Load the dataset iris and use the first four feature columns 
data(iris)
x <- iris[,1:4]

# For 3 clusters, run FCM algorithm in the package ppclust 
res.fcm <- ppclust::fcm(x, centers=3)

# Compute the FHV using ppclust object
idx <- fhv(res.fcm)
print(idx)
 
# Compute the FHV using X,U and V matrices
idx <- fhv(res.fcm$x, res.fcm$u, res.fcm$v, m=2)
print(idx)

zcebeci/fcvalid documentation built on Oct. 4, 2022, 9:01 p.m.