xb | R Documentation |
Computes the Xie-Beni (Xie & Beni, 1991) index to validate the result of a fuzzy and/or possibilistic clustering analysis.
xb(x, u, v, m, t=NULL, eta, tidx="f")
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 |
v |
a numeric data frame or matrix containing the cluster prototypes. It should be specified if |
t |
a numeric data frame or matrix containing the cluster prototypes. It should be specified if |
m |
a number specifying the fuzzy exponent. It should be specified if |
eta |
a number specifying the typicality exponent. It should be specified if |
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. |
Xie-Beni index (XB) is a fuzzy validity criterion based on a validity function which identifies compact and separate fuzzy c-partitions without assumptions as to the number of substructures inherent in the data (Xie & Beni, 1991). Therefore it is also called the compactness and separation validity function. The index is first representative of its category with its successors. The formula of XB index is:
I_{XB}=\frac{∑\limits_{i=1}^n ∑\limits_{j=1}^k u_{ij}^m \; d_{ij}^2}{n \; \Big(\min\limits_{j\neq l}(||\vec{v_j} - \vec{v}_l||^2)\Big)}
Since the smaller values of the index indicate the compact and well-separated clusters, the optimal clustering is obtained at the minimum value of I_{XB}.
xb |
XB index value if |
xb.e |
extended XB index value if |
xb.g |
generalized XB index value if |
Zeynel Cebeci
Xie, X.L. & Beni, G. (1991). A validity measure for fuzzy clustering, IEEE Transactions on Pattern Analysis and Machine Intelligence, 13(8):841-847. <doi:10.1109/34.85677>
allindexes
,
apd
,
cl
,
cs
,
cwb
,
fhv
,
fs
,
kpbm
,
kwon
,
mcd
,
mpc
,
pbm
,
pc
,
pe
,
sc
,
si
,
tss
,
ws
# Load the dataset iris and use the first four feature columns data(iris) x <- iris[,1:4] # Run FCM algorithm in the package ppclust res.fcm <- ppclust::fcm(x, centers=3) # Compute the XB index using res.fcm, which is a ppclust object idx <- xb(res.fcm) print(idx) # Compute the XB index using X, U and V matrices idx <- xb(res.fcm$x, res.fcm$u, res.fcm$v) print(idx) # Run UPFCM algorithm in the package ppclust res.upfc <- ppclust::upfc(x, centers=3) # Compute the generalized XB index using res.upfc, which is a ppclust object idx <- xb(res.upfc, tidx="g") print(idx)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.