Next Article in Journal
Deep Directional Network for Object Tracking
Previous Article in Journal
Towards the Verbal Decision Analysis Paradigm for Implementable Prioritization of Software Requirements
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Understanding and Enhancement of Internal Clustering Validation Indexes for Categorical Data

Donlinks School of Economics and Management, University of Science and Technology Beijing, Beijing 100083, China
*
Author to whom correspondence should be addressed.
Algorithms 2018, 11(11), 177; https://doi.org/10.3390/a11110177
Submission received: 16 September 2018 / Revised: 29 October 2018 / Accepted: 29 October 2018 / Published: 4 November 2018

Abstract

:
Clustering is one of the main tasks of machine learning. Internal clustering validation indexes (CVIs) are used to measure the quality of several clustered partitions to determine the local optimal clustering results in an unsupervised manner, and can act as the objective function of clustering algorithms. In this paper, we first studied several well-known internal CVIs for categorical data clustering, and proved the ineffectiveness of evaluating the partitions of different numbers of clusters without any inter-cluster separation measures or assumptions; the accurateness of separation, along with its coordination with the intra-cluster compactness measures, can notably affect performance. Then, aiming to enhance the internal clustering validation measurement, we proposed a new internal CVI—clustering utility based on the averaged information gain of isolating each cluster (CUBAGE)—which measures both the compactness and the separation of the partition. The experimental results supported our findings with regard to the existing internal CVIs, and showed that the proposed CUBAGE outperforms other internal CVIs with or without a pre-known number of clusters.

Graphical Abstract

1. Introduction

Clustering analysis is the unsupervised process of partitioning a group of data objects into clusters, with the objective to grouping objects of high similarity into the same cluster, while separating dissimilar objects into different clusters. Clustering is a main task of data analysis, and it has been studied extensively in the fields of data mining and machine learning [1,2]. Clustering techniques can be roughly distinguished as hard and soft clustering, this study is limited to the hard clustering analysis, in which each object belongs to one and only one cluster.
The results of clustering—partitions—vary with parameter settings, clustering methods, and the criteria of similarity (or dissimilarity) [3]. The mechanisms of the clustering method, such as random initialization, can cause inconsistencies in clustering results as well. How do we determine the final result from multiple possible partitions? As shown in Figure 1, the standard solution is to conduct several clustering processes with different schemes respectively, then select the partition of the highest quality [1,4,5]. The key is to define and measure the ‘quality of partitions’ by clustering validation indexes (CVIs) in the third step in Figure 1.
By whether to use external information, we can summarize the CVIs into two categories, i.e., external and internal CVIs. External CVIs use external information to evaluate the quality of the clustering results. For instance, if the prior knowledge, such as the true partition (or the partition designated by experts) exists, external CVIs can be used to evaluate the conformity of the clustered partition and the prior partition [6,7,8]. Such prior knowledge is absent in the unsupervised scenario, which makes the external CVIs inapplicable.
On the other hand, Internal CVIs require no such prior knowledge, and have extensive practical applications in information retrieval, text and image analysis, biological engineering, and other domains of data mining [9,10,11,12,13,14,15,16]. The quality of clustering results is usually inspected internally from two aspects—the intra-cluster compactness, and the inter-cluster separation (also known as isolation) [5,17,18,19,20,21,22,23]. The compactness reflects the degree of similarity of the objects in the same cluster, while the separation reflects how the objects in one cluster are dissimilar to others.
Meanwhile, the internal CVIs for numerical data, such as the Dunn index [24], the I index [25], the Silhouette index [26], and the Calinski-Harabasz index [27], use intuitive geometric information to evaluate the partitions, which makes them unsuitable for categorical data clustering. Considering the increasing amount of categorical data in practical applications and the challenging issues that have not been adequately addressed in the literature, further research on internal CVIs for categorical data is in need [9,14,15,28,29].
Therefore, in this paper, we limit our scope to provide insight and enhancement of the internal CVIs for categorical data:
  • Do internal CVIs for categorical data show monotonicity with respect to the number of clusters? One should avoid the monotonicity in validation measurement to prevent the bias towards partitions with more clusters, which would leave the performance of the evaluation to the boundary of the number of clusters in the candidate partitions.
  • Do internal CVIs for categorical data which use no separation measures really ignore the separation? A partition of good compactness is not necessarily a good partition, since the objects in one cluster may be similar to the objects in other clusters as well. Some internal CVIs for categorical data use no separation measures based on the attribute distribution between clusters, and have been proven to be effective when the number of clusters is constant in reference [9]. However, if the impact of separation on the clustering validation is ignored, the compactness measure alone may not be effective in evaluating partitions of different sizes due to the first issue.
  • What can we offer to enhance performance? After research on the above issues, we wish to offer an alternative internal CVI that has improved performance on categorical data clustering validation measurement.
To better understand the internal CVIs for categorical data, we investigate five well-known internal CVIs for categorical data clustering validation evaluation, i.e., the information entropy function (E) [30], the k-modes objective function (F) [31], the category utility function (CU) [32], the objective function of clustering with slope (Cloper) [33], and the objective function of categorical data clustering with subjective factors (R) [34]. We attempt to reveal the nature of the five internal CVIs by investigating the compactness measures and the separation measures, and discuss whether assumptions of separation exist and can be substituted for the separation measures. Meanwhile, we theoretically analyze whether the compactness measures for categorical data show monotonicity in certain circumstances, and the role of separation measures (assumptions) in neutralizing the monotonicity.
Then, to enhance the internal measurement, we propose a new internal CVI that has improved performance, namely, the clustering utility based on the averaged information gain of isolating each cluster (CUBAGE). CUBAGE uses the proposed averaged information gain of isolating each cluster (AGE) to measure the separation, and the reciprocal entropy of the dataset conditioned on the partition to measure the compactness.
The paper is organized into six sections. Section 2 is the related work. Section 3 provides in-depth analysis and discussions of five CVIs on the first two issues. In Section 4, we present the proposed internal CVI. Section 5 presents our experimental results and detailed discussion. Finally, we state our conclusions in Section 6.

2. Related Work

In this section, we first clarify our notations throughout this paper, then introduce some widely-used internal CVIs for categorical data. Additionally, we provide a brief comparison of internal and external CVIs.

2.1. Notations

Unless stated otherwise, we used the following notations in this paper. U = {X1, …, Xn} is a set of n objects, each object is described by the same m independent attributes A1, …, Am. The value of attribute Aj (j = 1, …, m) can be taken only from domain D(Aj) = {aj(1), , aj(dj)}, where dj is the number of possible values of the attribute. p(aj(i)) is the probability of attribute Aj taking the value aj(i) (i = 1, …, dj).
C ≠ Φ is a set of objects (or, a cluster), a partition P = {C1, …, Ck} is the clustering result of U into k clusters, with the property that C1C2 ∪ … ∪ Ck = U, and ClCl’ = Φ (ll’; l, l’ = 1, …, k). For any given Cl, the conditional probability of attribute Aj taking value aj(i) in cluster Cl is p(aj(i)|Cl). D(Aj|Cl) is the domain of attribute Aj in cluster Cl, obviously, D(Aj|Cl) ⊆ D(Aj).

2.2. Internal Clustering Validation Indexes

1. The information entropy function (E).
The information entropy of a random variable indicates the information and uncertainty that the variable has [35]. Considering attribute A as a random categorical variable, the entropy H(A) is defined as follows:
H ( A ) = i d p ( a ( i ) ) log ( p ( a ( i ) ) ) .
Given a set of independent variables V = {A1, …, Am}, the entropy H(V) is:
H ( V ) = j m H ( A j ) = j m i d j p ( a j ( i ) ) log ( p ( a j ( i ) ) ) .
A lower H(V) indicates less uncertainty of V.
Given a partition P = {C1, …, Ck}, the entropy of V conditioned on P, i.e., H(V|P), is considered as the ‘whole entropy of the partition’ [30]:
E ( P ) = H ( V | P ) = j = 1 m l = 1 k p ( C l ) i = 1 d j p ( a j ( i ) | C l ) log ( p ( a j ( i ) | C l ) ) = j = 1 m l = 1 k i = 1 d j p ( a j ( i ) , C l ) log ( p ( a j ( i ) | C l ) ) ,
where p(aj(i)|Cl) is the conditional probability of the value aj(i), given cluster Cl. Notice that the probability of Cl is p(Cl) = |Cl|/n.
E(P) attempts to represent the total entropy of the partition, which can be construed as the degree of disorder, by summing the weighted entropy of each cluster. To minimize the function E(P) is to find a partition in which the values of attributes describing the objects in the same clusters are centralized, which indicates that the objects are more similar in each cluster.
2. The k-modes objective function (F).
Similar to the k-means clustering algorithm [36], k-modes compares each object in the same cluster with the cluster center, and sums the dissimilarities [31]. Since it is improper to take the means of categorical values as the cluster center, k-modes use the modes of values of each attribute. The dissimilarity between the object and the center is defined as:
d ( X l i , Z l ) = j = 1 m δ ( x l i j , z l j ) ,
where Xli is the ith object in cluster Cl, xlij is the value of attribute Aj describing object Xi, Zl is the center of cluster Cl, zlj is the value of attribute Aj describing center Zl, and:
δ ( x l i j , z l j ) = { 1 , x l i j = z l j , 0 , x l i j z l j .
Therefore, the k-modes objective function is:
F ( P ) = l = 1 k d c l u s t e r ( C l ) = l = 1 k i = 1 | C l | d ( X l i , Z l ) .
where dcluster(Cl) is the sum of the dissimilarity between each object in cluster Cl and its center:
d c l u s t e r ( C l ) = i = 1 | C l | d ( X l i , Z l ) = | C l | j = 1 m [ ( 1 max i = 1 d j p ( a j ( i ) | C l ) ] .
F(P) describes the overall dissimilarities between objects and centers; a lower F(P) indicates that partition P has a higher quality.
3. The category utility function (CU).
For the objects in the same cluster, CU measures the possibility of these objects taking the same attribute values [32]:
C U ( P ) = l = 1 k p ( C l ) j = 1 m i = 1 d j [ p ( a j ( i ) | C l ) 2 p ( a j ( i ) ) 2 ] = l = 1 k p ( C l ) j = 1 m i = 1 d j [ p ( a j ( i ) | C l ) 2 ] l = 1 k j = 1 m i = 1 d j p ( a j ( i ) ) 2 .
This process attempts to maximize both the probability that two objects in the same category have attribute values in common by p(aj(i)|Cl)2, and the probability that objects from different categories have different attribute values by −p(aj(i))2. However, the last term −p(aj(i))2 is invariable when the dataset is given. Therefore:
C U ( P ) = l = 1 k p ( C l ) j = 1 m i = 1 d j [ p ( a j ( i ) | C l ) 2 ] C o n s t a n t ,
where C is a constant. This means that the CU only measures how similar the objects in the same cluster are.
The authors of references [37,38] further averaged the values of the CU(P) measure over clusters, i.e., they used CU(P)/k instead of CU(P) to compare the partitions of different size. In this paper, we refer to the modified function as CU1/k(P).
4. The CLOPE objective function (Cloper)
CLOPE is an efficient clustering algorithm for large scaled datasets, and the basic idea of its criterion function is simple and straightforward [33,39]. CLOPE first defined the size and the width of cluster Cl:
S i z e ( C l ) = j = 1 m i = 1 d j O c c ( a j ( i ) , C l ) ,
W i d t h ( C l ) = j = 1 m | D ( A j | C l ) | ,
where Occ(aj(i)|Cl) is the number of occurrences of value aj(i) in cluster Cl:
O c c ( a j ( i ) , C l ) = | C l | × p ( a j ( i ) | C l ) .
Then, the objective is to maximize the following function:
C l o p e ( P ) = l = 1 k p ( C l ) S i z e ( C l ) W i d t h ( C l ) r ,
where r is the parametric power.
Moreover, as we can show that Size(Cl) = m|Cl|, for the consistency of expression, we rewrite the function as:
C l o p e ( P ) = m n l = 1 k p ( C l ) 2 [ j = 1 m | D ( A j | C l ) | ] r .
In this paper, we refer to the function using the parameter of r as Cloper(P).
5. The CDCS objective function (R).
The CVIs above only used the intra-cluster information to measure the partition. CDCS use both intra-cluster similarity and inter-cluster similarity, which are [34]:
i n t r a ( P ) = 1 m l = 1 k p ( C l ) j = 1 m [ max i = 1 d j p ( a j ( i ) | C l ) ] 3 ,
i n t e r ( P ) = 1 n × ( k 1 ) t = 1 k 1 s = 1 k S i m ( C t , C s ) 1 m | C t C s | ,
where Sim(Ct, Cs) is the similarity score between two clusters Ct and Cs:
S i m ( C t , C s ) = j = 1 m { i = 1 d j min [ p ( a j ( i ) | c t ) , p ( a j ( i ) | c s ) ] + ε } ,
and where ε is a small value preventing Sim(Ct, Cs) = 0.
The objective of CDCS is to maximize the ratio of intra(P) to inter(P). Partitions that have both higher intra-cluster similarity and lower inter-cluster similarity will receive better scores:
R a t i o ( P ) = i n t r a ( P ) i n t e r ( P ) .
We refer to this function as R(P) in this paper.

2.3. Comparison of Internal and External Clustering Validation Indexes

Internal CVIs use only internal information to identify commonalities in the data and react based on the presence or absence of such commonalities, to measure the quality of the clustering result [2,9,17,23]. The internal information includes, but is not limited to, the attribute value distribution, similarities of objects or clusters, and the partition size, which are quantities and features inherited from the dataset and the clustering process.
The avoidance of requiring external information makes internal CVIs applicable to the unsupervised scenarios, and can act as the objective functions of the clustering process. For instance, internal CVIs are used as objective functions of COOLCAT clustering [30], k-modes clustering [31], CLOPE clustering [33], and CDCS clustering [34].
External CVIs use external information. In the literature, there are two types of overall expression of the external information: (1) Explicitly expressed as ‘true partition’, ‘class labels’, ‘data division’, and ‘pre-specified/pre-known structure’ [1,4,5,23,40,41,42,43,44,45,46,47,48]; (2) used vague expression, such as ‘prior knowledge’ and ‘ground truth’ [17,49,50]. In the literature adopted the first type of expression, the usage of external CVIs was representatively described as in References [5]:
‘Based on the external criteria we can work in two different ways. Firstly, we can evaluate the resulting clustering structure C, by comparing it to an independent partition of the data P built according to our intuition about the clustering structure of the data set. Secondly, we can compare the proximity matrix P to the partition P.’
The external CVIs used in the references that adopted the second type of expression also required the pre-known partition, although the universal requirement was not explicitly stated. Therefore, the applications of typical external CVIs are quite limited to the scenarios where the true or designated partitions can be compared with, for instance, choosing the optimal clustering algorithm on a specific dataset.
In the experimental section, we use external CVIs as the evaluation metrics to examine the performance of internal CVIs.

3. Understanding of Internal Clustering Validation Indexes

In this section, we theoretically analyzed the effectiveness of the clustering validity evaluation of the five internal CVIs mentioned above, i.e., the entropy function (E), the k-modes objective function (F), the CLOPE objective function (Cloper), the averaged category utility function (CU1/k), and the CDCS objective function (R). We pointed out the compactness measure and the separation measures (assumptions) of them. We also analyzed the ineffectiveness of using compactness alone in clustering validation measurement.

3.1. Generalization and an Example

To better understand the composition of the CVIs, we first generalized them into Table 1. The compactness cores use intra-cluster information to measure the compactness of each cluster based on the consensus that the attribute values in a compact cluster should be concentrated. As shown in Table 1, all five CVIs can evolve the compactness measure with different cores.
We addressed our concerns about the effectiveness of these CIVs with an example. Table 2 is an example of a dataset and five partitions of it. We evaluated these five partitions with E, F, Clope1~3, CU1/k, and R, respectively; the results are shown in Table 3, the optimal scores of each CVI are bolded.
In Table 3, the bolded values are the optimal values measured by each index. As we can see, the opinions of different CVIs did not agree, and as the number of clusters increased, the values of E, F, Clope1, and R, monotonically decreased. Generally, if the valuation outcome tended to change with the number of clusters monotonically, the evaluation methods may not be suited for comparing partitions of different cluster numbers, since they will bias towards choosing the partition of less or more clusters. We start our discussion on the effectiveness of E and F—the CVIs showed monotonicity, and only use compactness measures.

3.2. Analysis of Indexes E and F

The indexes E and F use compactness measures only, and average the compactness by a weight that was linear to the cluster size p(Cl). We can show that the values of index E and F are monotonic to the number of clusters when clustering hierarchically:
Theorem 1.
Given dataset U, described by a set of independent attributes V = {A1, …, Am}, P1 and P2 are two partitions of U. If P1 = {C1, …, Ck} and P2 = {C1, …, Ck-1, Cs1, …, Cst}, where Ck = Cs1 ∪ Cs2 ∪ …∪ Cst, Csl ≠ Φ, and Csl ∩ Csl’ = Φ (l ≠ l’; l, l’ = 1, …, t), then E(P1) ≥ E(P2), and the equality holds if and only if p(V|Cs1) = p(V|Cs2) = … = p(V|Cst).
Proof of Theorem 1.
According to Equations (2) and (3), we know that:
{ E ( P 1 ) = j = 1 m l = 1 k 1 p ( C l ) i = 1 d j p ( a j ( i ) | C l ) log ( p ( a j ( i ) | C l ) ) j = 1 m p ( C k ) i = 1 d j p ( a j ( i ) | C k ) log ( p ( a j ( i ) | C k ) ) , E ( P 2 ) = j = 1 m l = 1 k 1 p ( C l ) i = 1 d j p ( a j ( i ) | C l ) log ( p ( a j ( i ) | C l ) ) j = 1 m l = 1 t p ( C s l ) i = 1 d j p ( a j ( i ) | C s l ) log ( p ( a j ( i ) | C s l ) ) .
Then:
E ( P 1 ) E ( P 2 ) = j = 1 m [ l = 1 t p ( C s l ) i = 1 d j p ( a j ( i ) | C s l ) log ( p ( a j ( i ) | C s l ) ) p ( C k ) i = 1 d j p ( a j ( i ) | C k ) log ( p ( a j ( i ) | C k ) ) ] .
Therefore, the necessary and sufficient condition of E(P1) ≥ E(P2) is:
j = 1 m p ( C k ) i = 1 d j p ( a j ( i ) | C k ) log ( p ( a j ( i ) | C k ) ) j = 1 m l = 1 t p ( C s l ) p ( C k ) i = 1 d j p ( a j ( i ) | C s l ) log ( p ( a j ( i ) | C s l ) ) ,
Since Cs1Cs2 ∪ … ∪ Cst = Ck, Csl ≠ Φ, and CslCsl’ = Φ (ll’; l, l’ = 1, …, t), we can show that:
l = 1 t p ( C s l ) p ( C k ) = l = 1 t p ( C s l | C k ) = 1 , l = 1 , ... , t .
Meanwhile, due to Bayes’ theorem, we can establish that:
l = 1 t p ( C s l ) p ( C k ) p ( a j ( i ) | C s l ) = l = 1 t p ( C s l ) p ( C k ) p ( a j ( i ) ) p ( C s l | a j ( i ) ) p ( C s l ) = l = 1 t 1 p ( C k ) p ( a j ( i ) ) p ( C s l | a j ( i ) ) = p ( C k | a j ( i ) ) p ( C k ) p ( a j ( i ) ) = p ( a j ( i ) | C k ) , i = 1 , ... , d j , j = 1 , ... , m
Since the attributes are independent, and we know that H(X) is a concave function, we can prove Inequality (20) to be true by Jensen’s inequality [51].
Also, H(X) is not linear. Due to Jensen’s inequality, the equality holds if and only if p(aj(i)|Cs1) = p(aj(i)|Cs2) = … = p(aj(i)|Cst) (j = 1, …, m; i = 1, …, dj), which is p(V|Cs1) = p(V|Cs2) = … = p(V|Cst). □
Theorem 2.
If the conditions are the same as in Theorem 1, then F(P1) ≥ F(P2), and the equality holds if and only if z1j = z2j = … = ztj (j = 1, …, m), where zlj is the mode of the values of attribute Aj in cluster Csl (l = 1, …, t).
Proof of Theorem 2.
Similar to the proof of Theorem 1, we can show that:
F ( P 1 ) F ( P 2 ) = d c l u s t e r ( C k ) l = 1 t d c l u s t e r ( C s l ) = j = 1 m i = 1 | C k | δ ( x k i j , z k j ) l = 1 t j = 1 m i = 1 | C s l | δ ( x l i j , z l j ) .
Since Cs1Cs2 ∪ … ∪ Cst = Ck, Csl ≠ Φ, and CslCsl’ = Φ (ll’; l, l’ = 1, …, t), to any attribute Aj, the occurrence of value aj(i) in cluster Ck is equal to the sum of the occurrence of the same value in cluster Cs1 to Cst:
O c c ( a j ( i ) , C k ) = l = 1 t O c c ( a j ( i ) , C s l ) , j = 1 , , m , i = 1 , ... , d j .
Meanwhile, we can rewrite the dissimilarity of any cluster Cq of dataset U as:
d c l u s t e r ( C q ) = j m [ | C q | O c c ( z q j , C q ) ] .
Applying Equation (25) to Equation (23) yields:
F ( P 1 ) F ( P 2 ) = j m [ | C k | O c c ( z k j , C k ) ] l = 1 t j m [ | C s l | O c c ( z l j , C s l ) ] .
By the definition of mode, we know that:
O c c ( z l j , C s l ) O c c ( z k j , C s l ) ,   j = 1 , , m ,   l = 1 , ... , t .
Then:
l = 1 t j m [ | C s l | O c c ( z l j , C s l ) ] l = 1 t j m [ | C s l | O c c ( z k j , C s l ) ] .
Therefore:
F ( P 1 ) F ( P 2 ) j m [ | C k | O c c ( z k j , C k ) ] l = 1 t j m [ | C s l | O c c ( z k j , C s l ) ] .
By Equation (24), we can show that the right-hand part of Inequality (29) equals 0. Therefore, F(P1) ≥ F(P2), and the equality holds if and only if:
O c c ( z l j , C s l ) = O c c ( z k j , C s l ) ,   j = 1 , , m ,   l = 1 , ... , t .
Theorems 1 and 2 show that one cannot determine whether any clusters in the partition should be merged by E or F, since the evaluation results always suggest to divide. Even if the attribute distribution in the candidate clusters are equivalent (in which case they are generally regarded as the most similar clusters), the scores of whether to merge them would be in a tie. This most affects the hierarchical clustering, in which objects are clustered in either agglomerative or divisive manners, and the suggested layer of hierarchy by these CVIs would always be the layer with the most clusters, unless the layer with the second-most clusters has the same evaluation score.
We should point out that, in some researches, the separation coefficient 1/k of index CU1/k (which will be discussed shortly) was multiplied to the function E(P) directly, which would aggravate the monotonicity, since 1/k is also a monotonically decreasing function with respect to the partition size. Therefore, we will not discuss such a method in this paper.

3.3. Analysis of Indexes CU1/k, Cloper, and R

Besides the compactness measure, indexes CU1/k, Cloper, and R use separation measures or assumptions as well. CU1/k(P) is the averaged compactness over k clusters weighted by p(Cl), and CU1/k(P) is the further averaged CU(P). The role of the multiplicand 1/k is a crude overfitting control, and can be regarded as the assumed separation coefficient with respect to the number of clusters. We can show that the compactness measure in CU1/k(P) also shows monotonicity in the previous scenario:
Theorem 3.
If the conditions are the same as in Theorem 1, then CU(P1) ≤ CU(P2), and the equality holds if and only if p(V|Cs1) = p(V|Cs2) = … = p(V|Cst).
Proof of Theorem 3.
Similar to the proof of Theorem 1, we can show that:
C U ( P 1 ) C U ( P 2 ) = j = 1 m [ p ( C k ) i = 1 d j p ( a j ( i ) | C k ) 2 l = 1 t p ( C s l ) i = 1 d j p ( a j ( i ) | C s l ) 2 ) ] .
Ck ≠ Φ, so we can rewrite Equation (31) as:
C U ( P 1 ) C U ( P 2 ) p ( C k ) = j = 1 m [ i = 1 d j p ( a j ( i ) | C k ) 2 l = 1 t p ( C s l ) p ( C k ) i = 1 d j p ( a j ( i ) | C s l ) 2 ) ] .
Therefore, the necessary and sufficient condition of CU(P1) ≤ CU(P2) is:
p ( a j ( i ) | C k ) 2 l = 1 t p ( C s l ) p ( C k ) p ( a j ( i ) | C s l ) 2 ,   i = 1 , ... , d j ,   j = 1 , ... , m .
We know that y = x2 is a convex, and not a linear function. Therefore, Inequality (33) is true, due to Jensen’s inequality with Equations (21) and (22) in the proof of Theorem 1, and the equality holds if and only if p(V|Cs1) = p(V|Cs2) = … = p(V|Cst). □
Therefore, using the category utility function to evaluate partitions of different size without the separation coefficient 1/k is questionable. However, the act of multiplying the compactness with such a coefficient is based on the assumption that the separation of the partition is negatively correlated with the partition size. Such an assumption ignores the attribute value distribution between clusters, and may generate a new bias to the partitions of fewer clusters, since 1/k would be dominant to the result when the change in compactness is relatively gradual.
The compactness core of Cloper(P) is also monotonic. However, different to other indexes, Cloper(P) uses the quadratic weight p(Cl)2 instead of p(Cl) to average the compactness. In consequence, the partitions in which the objects are more concentrated in fewer clusters would score better with Cloper(P), which is also an assumption of separation for adjusting the evaluation results. Like the separation coefficient 1/k of CU1/k(P), such an assumption is irrelevant to the differences in attribute values between clusters. If we remove the assumption, i.e., we use p(Cl) instead of p(Cl)2, the averaged compactness would also be monotonic to the partition size in the previous scenario:
Theorem 4.
If the conditions are the same as in Theorem 1, and we have the compactness measure as followed:
G ( P ) = n m l = 1 k p ( C l ) [ j = 1 m | D ( A j | C l ) | ] r ,
where r is a parameter greater than zero, then G(P1) ≤ G(P2), and the equality holds if and only if D(Aj|Ck) = D(Aj|Cs1) = D(Aj|Cs2) =… = D(Aj|Cst), (j = 1, …, m).
Proof of Theorem 4.
Similar to the proof of Theorem 1, we can show that:
G ( P 1 ) G ( P 2 ) n m = j = 1 m [ p ( C k ) | D ( A j | C k ) | r l = 1 t p ( C s l ) | D ( A j | C s l ) | r ] ,
Since Cs1Cs2 ∪ … ∪ Cst = Ck, Csl ≠ Φ, and CslCsl’ = Φ (ll’; l, l’ = 1, …, t), to any attribute Aj:
{ p ( C k ) = l = 1 t p ( C s l ) , | D ( A j | C k ) | r | D ( A j | C s l ) | r , r > 0 , j = 1 , ... m , l = 1 , ... t .
Therefore, the value of Equation (35) is not greater than zero, the equality holds if and only if |D(Aj|Ck)| = |D(Aj|Cs1)| = |D(Aj|Cs2)| = = |D(Aj|Cst)|, (j = 1, …, m), which is equal to D(Aj|Ck) = D(Aj|Cs1) = D(Aj|Cs2) = = D(Aj|Cst), (j = 1, …, m).
To look more deeply, the essential effect of parameter r in Cloper(P) is the subjectively adjusted trade-off between compactness and separation (assumption). The compactness would be less important in the evaluation as the value of r decreases, and it would be entirely ignored when r = 0 (although it is avoided). As a result, in Table 3, Clope2(P) and Clope3(P) choose the partition with more clusters, due to the effect of compactness, and Clope1(P) chooses the partition of least clusters, due to the effect of the separation assumption. Therefore, setting r is actually setting the preference for compactness or separation, and could be unfounded in the unsupervised scenario.
The compactness measure of index R is also monotonic to the partition size, since maximizing the compactness of R(P) can be easily proven to be equivalent to minimizing the function F(P). The separation measure of R(P) evaluates the inter-cluster similarity Sim(Ct, Cs) pairwise. The compactness and the separation of R(P) only considers the most and least common values, respectively, which might lower the sensitivity to the value distribution. We will test and discuss the effectiveness of such methods in the experimental section.

4. Internal Clustering Validation Index: CUBAGE

As discussed previously, the CVIs cannot effectively evaluate the partitions of different sizes if the separation measures or assumptions are absent, and the crude separation assumptions without respect to the attribute values are rather questionable.
In this section, we first proposed a new method to measure the inter-cluster separation. Then, we present our algorithm to internally measure the clustering validation, namely, the clustering utility based on the averaged information gain of isolating each cluster (CUBAGE).

4.1. Inter-Cluster Separation Measure: AGE

Our measure of inter-cluster separation—averaged information gain of isolating each cluster, henceforth AGE—was based on the idea of information gain in information theory. Before presenting AGE, we will review the concept of information gain.
The mutual information is a measure of the shared information of two discrete variables X and Y [52]:
I ( X ; Y ) = H ( X ) H ( X | Y ) = y Y x X p ( x , y ) log ( p ( x , y ) p ( x ) p ( y ) ) .
In machine learning, the mutual information I(X; Y) is the expected information gain; that is, the reduction in the entropy of X that is achieved by learning the state of Y [53]. In general terms, the expected information gain is the change in entropy from a prior state (X) to a state that takes some information (X|Y):
I G ( X , Y ) = H ( X ) H ( X | Y ) .
Given a partition P = {Cl} (l = 1, …, k) of dataset U, which is described by V = {A1, …, Am}, we define the information gain of separating cluster Cl from other clusters as:
G E ( C l ) = H ( V ) H ( V | P l ) ,
where Pl= {Cl, UCl} is the partition that separates Cl from other clusters, and UCl is the complementary set of Cl.
GE(Cl) is the information gain of V from the unpartitioned state to the state where the objects are divided into Cl and UCl; in other words, the degree of certainty that we can gain by separating the objects in Cl from other objects. Therefore, GE(Cl) equals the dissimilarity between Cl and other clusters (UCl); a higher value of GE(Cl) indicates that more separation is achieved by separating Cl with other clusters.
As Figure 2 illustrates, we average the value of GE over all the scenarios of isolating each cluster to measure the overall separation:
A G E ( P ) = 1 k l k G E ( C l ) = 1 k l k [ H ( V ) H ( V | P l ) ] .
Explicitly, AGE(P) is calculated as:
A G E ( P ) = 1 k l k [ H ( V ) p ( C l ) H ( V C l ) p ( U C l ) H ( V U C l ) ] ,
where V C l is the set of attributes describing the objects in Cl, V U C l is the set of attributes describing other objects, and:
{ H ( V ) = j = 1 m i = 1 d j p ( a j ( i ) ) log ( p ( a j ( i ) ) ) , H ( V C l ) = j = 1 m i = 1 d j p ( a j ( i ) | C l ) log ( p ( a j ( i ) | C l ) ) , H ( V U C l ) = j = 1 m i = 1 d j p ( a j ( i ) | U C l ) log ( p ( a j ( i ) | U C l ) ) .

4.2. Upper and Lower Bounds of AGE

By the property of information gain, the lower bound of AGE(P) is zero:
A G E ( P ) 0 .
We will discuss the upper bound respectively:
1. When the number of clusters k ≤ 2:
A G E ( P ) = 1 k l k [ H ( V ) E ( P l ) ] = H ( V ) E ( P ) , k 2 .
This indicates that for a given dataset, maximizing AGE(P) is equivalent to minimizing E(P) when the size of the partition is no greater than 2. This is because that the whole partition is affirmatory when one of the clusters is learned. Moreover, when the objects are not separated at all, i.e., k = 1, the value of AGE(P) is 0;
2. When the number of clusters k > 2, due to Theorem 1, we can establish that:
A G E ( P ) = 1 k l k [ H ( V ) E ( P l ) ] 1 k l k [ H ( V ) E ( P ) ] = H ( V ) E ( P ) , k > 2 .
The equality of Inequality (45) holds if and only if the attribute value distributions in each cluster are all the same, under which circumstances the value of E(P) would be equal to H(V); therefore, AGE(P) = 0.
To sum up, the upper bound of AGE(P) is H(V) − E(P) and the lower bound is 0. The value of the upper bound becomes equal with the lower bound 0 when the objects are not separated at all, or the attribute value distributions in each cluster are all the same; this means that the AGE(P) yields the minimum possible value when the objects are least separated.

4.3. CUBAGE Index

Our internal clustering validation index, CUBAGE, uses AGE(P) as the inter-cluster separation measure, and uses the reciprocal of the conditional entropy, E(P)−1, as the intra-cluster compactness:
C U B A G E ( P ) = S e p ( P ) * C o m ( P ) = A G E ( P ) E ( P ) 1 .
This index takes a form of the product of the separation and the compactness. A higher value of CUBAGE(P) indicates a better clustering result. As shown in Table 4, neither AGE(P) nor CUBAGE(P) showed monotonicity with respect to the partition size.
Additionally, when the size of the partition is no greater than 2, we can establish the following by Equations (44) and (46):
C U B A G E ( P ) = 1 k l k [ H ( V ) E ( P l ) ] E ( P ) = H ( V ) E ( P ) E ( P ) = H ( V ) E ( P ) 1 , k 2 .
Equation (47) is actually the information gain ratio of the partition. This means that for a given dataset, maximizing CUBAGE(P) is equivalent to minimizing E(P) when the number of clusters is no greater than 2, since the term H(V) is a constant to the dataset.
Given a partition P, the value of CUBAGE(P) can be calculated, as shown in Figure 3. Algorithms 1 and 2 are the pseudocode of CUBAGE.
Algorithm 1 Clustering Utility based on Entropy (CUBAGE)
Input: dataset with n objects: U = (Xi); label of a partition with k clusters;
Output: CUBAGE value of the partition;
Called Function: entropy calculation function: Entropy(objects);
Begin:
1.  Calculate the entropy of the whole dataset, save as HU: HU = Entropy(U);
2.  For each cluster Cl:
3.    Calculate the entropy of objects in Cl, save in vector H:H(l) = Entropy(Cl);
4.    Calculate the entropy of objects in UCl, save in vector HC:HC(l) = Entropy(UCl);
5.  End for;
6.  Generate weight vector: W = 1/n·[|C1|, | C2|, …, | Cl|];
7.  Calculate the dot product E = W·H;
8.  Calculate AGE = HU − 1/k·[E + (1 − WHC];
Return:
9.  CUBAGE = AGE/E;
The time complexity of CUBAGE(P) is O(kmn), where k is the number of clusters, m is the number of attributes, and n is the total number of objects. Note that there is no extra time cost for computing the compactness E−1(P), since the weighted entropy of each cluster is already calculated during computing the separation AGE(P). The time cost could be lower if the data is sparse. Furthermore, one can easily apply parallel or distributed computing to CUBAGE(P) by the objects or the attributes to reduce the computing time. Therefore, such time complexity makes CUBAGE(P) scalable to large datasets.
Algorithm 2 Entropy calculation function
Input: a set of x objects;
Output: Entropy of objects in a single set;
Begin:
1.  For each attribute Aj:
2.    Calculate the entropy of the attribute by Equation (1), save in vector HA;
3.  End for;
Return:
4.  Entropy = sum(HA);

5. Experiments and Discussion

In this section, we present the results of the comparative experiments to evaluate the effectiveness of CUBAGE, along with the five internal CVIs mentioned above. We used −F(P) and −E(P) instead of F(P) and E(P) to unify the objectives, and maximized each function to search for the local optimal partition.

5.1. Experimental Methods

We tested the CVIs on eight datasets from the UCI (University of California, Irvine) Machine Learning Repository (http://archive.ics.uci.edu/mL/index.php), as shown in Table 5; records with missing values are removed. To compare the quality of the partitions chosen by the internal CVIs, we used two external CVIs as the benchmark evaluation criteria, respectively:
  • The adjusted Rand index (ARI)—the corrected-for-chance version of the Rand index—is based on the numbers of objects in common (or not) between the pre-defined classes and the produced clusters [6]. Given two partitions P = {C1, …, Ck} and P’ = {C’1, …, C’k’} ARI is defined as:
    ARI = i j ( n i j 2 ) [ i ( b i 2 ) j ( d j 2 ) ] / ( n 2 ) 1 2 [ i ( b i 2 ) + j ( d j 2 ) ] [ i ( b i 2 ) j ( d j 2 ) ] / ( n 2 ) ,
    where nij is the number of common objects in Ci and C’j, nij = | CiC’j|, b i = j n i j , d j = i n i j .
In a specific dataset, a partition that is more similar to the pre-defined classes would score higher values in ARI. Note that ARI may take negative values.
  • The normalized mutual information (NMI) calculates the mutual information of two partitions, and normalizes it with the sum of their entropy [16]:
    NMI = 2 i = 1 k j = 1 k n i j n log n i j n b i d j i = 1 k b i n log b i n j = 1 k d j n log d j n   .
In a specific dataset, a higher value of NMI indicates that the partition is more proximal to the pre-defined classes.
For example, in one measurement of several partitions, partitions P1 and P2 scores best in internal CVIs IV1 and IV2, respectively. EV is an external CVI, if EV(P1) > EV(P2), we can establish that partition P1 is more proximal to the pre-defined classes than partition P2 in the opinion of EV. Therefore, IV1 performs better than IV2 in this example.
We first compare the NMI values of the partitions selected by each internal CVIs to find out which internal CVI can select the better partition, i.e., performs better in the opinion of NMI. Then we use ARI to evaluate the internal CVIs in the same manner.
On each dataset, we used the classical agglomerative hierarchical clustering and the k-modes clustering to produce the partitions, and both clustering methods applied the same cluster dissimilarity that was defined in F. The experimental procedures are shown in Figure 4 and Figure 5.
  • The agglomerative hierarchical clustering is a ‘bottom-up’ approach; each object is treated as an individual cluster in the beginning. When moving up the hierarchy, pairs of clusters are merged progressively if the dissimilarity of their union is lower than the other pairs in the same layer, until all objects are merged into one cluster eventually. The layers in the hierarchy are different partitions of the dataset. From the generated partitions with the number of clusters ranging from 2–10, we selected one ‘optimal’ partition by each internal CVI, then compared the external CVI values (NMI and ARI, respectively) of the selected partitions.
  • The k-modes clustering is a partitioning approach that is similar to the more famous k-means clustering. It starts with k randomly-generated cluster centers (seeds), and each object is assigned to the most appropriate cluster if the dissimilarity of their union is the lowest. In the next iteration, the centers of the clusters are updated by the attribute modes, and the objects are reassigned in the previous manner. The iteration ends if the value of the objective function F stabilizes. The clustering results are inconsistent over different seeds, even if the number of clusters k is fixed. To test the performances when the number of clusters is unknown, we used the internal CVIs to search for the optimal partition from all the partitions produced by k-modes with k ranging from 2–10 (each value of k is conducted 100 times, therefore 900 candidate partitions generated). We further repeated the process 100 times and compared the average external CVI values (ARI and NMI, respectively) of the partitions selected by each internal CVI. Additionally, we tested the internal CVIs with k set to the pre-defined number of clusters to examine the performance when the number of clusters is determined.

5.2. Results of the Hierarchical Clustering Validation Evaluation

The NMI and ARI scores of the partitions chosen by each internal CVI in the hierarchical clustering are shown in Table 6 and Table 7; the bracketed figures are the performance ranks over indexes. In general, the indexes CUBAGE and CU1/k performed the best when evaluating the layers of the hierarchical clustering. The results of indexes −F and −E were worse than other indexes in both NMI and ARI. Figure 6 illustrates the changing of validation scores over the layers of the hierarchy; as we can see, the indexes CUBAGE and CU1/k matched the benchmark evaluation criteria the best.

5.3. Results of the k-Modes Clustering Validation Evaluation

The NMI and ARI scores of the partitions chosen by each internal CVI in the k-modes clustering are shown in Table 8, Table 9, Table 10 and Table 11.
When k was not determined (Table 8 and Table 9), CUBAGE outperformed the other indexes on most of the datasets, and CU1/k came second. When k was determined (Table 10 and Table 11), CUBAGE still outperformed others, and indexes −E and −F advanced in performance.

5.4. Discussion

We can see from the overall results that none of the internal CVIs consistently outperformed all of the other CVIs in either of the benchmark evaluation criteria over the eight datasets. This is because that the datasets are of different structures, and that the benchmark criteria NMI and ARI do not always agree with each other, especially when the quality of the partition is relatively low (see Figure 6c,e,f). However, we can observe that index CUBAGE had better overall performance compared to others, from the perspectives of both the average scores and the averaged ranks. A detailed discussion follows:
Index E—the internal CVI without separation measure or assumption—performed well in the k-modes clustering when k was set to the actual number of classes. In the hierarchical clustering experiments, as we proved above, the value of E showed monotonicity with respect to the number of clusters, and the performance decreased notably. A similar performance drop appeared in the k-modes clustering when k was unknown.
Indexes F and R had lower sensitivities to the value distribution, since they only consider the most and/or the least common values in the cluster. The performances of these CVIs were below average in the experiments. The performance drop of F appeared when the number of clusters was unknown, similar to index E. As the compactness measure of F and R are equivalent, by comparing the trends in the hierarchical clustering experiments (Figure 6), we can observe that the compactness measure of R had little effect on the partition evaluation, and the role of the separation was dominant.
Index CU1/k uses 1/k as the separation coefficient without respect to the value distribution between clusters. In the k-modes clustering experiments, the performance of CU1/k dropped on most of the occasions when the number of clusters changed from known to unknown, as shown in Figure 7. This indicates that the separation assumption is not universally suitable, although it corrected the monotonicity of the compactness core.
The performance of the index Cloper is highly dependent on the parameter r. As we discussed, the effect of compactness drops as r decreases. In the hierarchical clustering experiments, the value of Clope1(P) monotonically decreased as the number of clusters increased under the effect of the separation measure. For the same reason, in the k-modes clustering, Clope1(P) was outperformed by Clope2(P) and Clope3(P). However, Clope2(P) and Clope3(P) outperformed each other on different datasets, which indicates that setting r appropriately to compromise the compactness and the separation is difficult. Additionally, the performance drop of Cloper when the number of clusters changed from known to unknown, as shown in Figure 7, indicates that the separation assumption of index Cloper is not suitable for most datasets as well.
Such a performance drop happened least with our internal CVI—CUBAGE. The separation measure AGE showed advantageous applicability to the datasets and clustering methods, and coordinated well with the compactness measure E−1. When the number of clusters was unknown, CUBAGE had improved performance compared to index E for introducing inter-cluster information. When the number was pre-known, the partitions chosen by E were identical to those chosen by CUBAGE on the datasets Voting, Breast, and Mushroom (datasets with two classes), which agreed with Equation (47); CUBAGE performed better than E on other datasets when k is fixed as well, which indicates that the separation measure AGE not only contributes to the performance of evaluating partitions of different sizes, it also has a positive impact when evaluating the partitions of the same size. For comparison, R was outperformed by its equivalent compactness measure F when k was fixed, and the separation coefficient of CU1/k had no impact on the performance, since 1/k is a constant under such circumstances. As a result, CUBAGE performed better than other internal CVIs in general in the conducted experiments.

6. Conclusions and Future Work

This paper studies internal clustering validation measures for categorical data. We analyzed the compactness and separation measures or assumptions of five well-known internal CVIs, and proposed a new index—CUBAGE.
Analysis results showed that the indexes without separation measures based on the attribute distribution do not necessarily ignore the impact of separation, since some indexes (i.e., CU1/k and Cloper) adjusted the evaluation results by the separation assumptions with respect to the partition size or the object distribution, although the assumptions may be crude and not universally suitable.
The compactness cores of the indexes are all monotonic with respect to the number of clusters in the hierarchical clustering, which makes them biased toward partitions with more clusters. The separation measures or assumptions corrected such biases by their preferences for the concentrated partitions. Therefore, the coordination of separation and compactness affects the evaluation considerably. For instance, as discussed, the role of parameter r is to adjust the importance of the compactness and the separation of the index Cloper, which influenced the effectiveness.
The proposed internal CVI—CUBAGE—is based on a new separation measure that uses the averaged information gain of isolating each cluster to measure the overall separation of the partition. Theoretical analysis showed that this separation measure scores the minimum possible value when the objects are least separated. Meanwhile, CUBAGE uses the reciprocal entropy of the dataset conditioned on the partition—which is also the reciprocal of index E—to measure the whole compactness. As the product of the separation and compactness measures, CUBAGE showed better performance in the experiments than other indexes, which indicates that the separation and the compactness measures are accurate, and that they coordinate well on most datasets.
In the future, we will investigate the internal CVIs in an extended range to provide systematic studies on the relation of within-cluster compactness and intracluster-separation. Secondly, the performance on evaluating the partitions of different characteristic patterns can be studied. Additionally, we will analyze the possibility of using CUBAGE as the objective function in the clustering process from the aspects, such as convergence speed.

Supplementary Materials

The following are available online at https://www.mdpi.com/1999-4893/11/11/177/s1.

Author Contributions

M.Y. and X.G. conceived and designed the research, M.Y. performed the experiments, M.Y. and X.G. wrote and edited the paper.

Funding

This research was funded by the National Natural Science Foundation of China (No. 71272161).

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Xu, R.; Ii, D.C.W. Survey of clustering algorithms. IEEE Trans. Neural Netw. 2005, 16, 645–678. [Google Scholar] [CrossRef] [PubMed]
  2. Jain, A.K.; Dubes, R.C. Algorithms for clustering data. Technometrics 1988, 32, 227–229. [Google Scholar]
  3. Cornuéjols, A.; Wemmert, C.; Gançarski, P.; Bennani, Y. Collaborative Clustering: Why, When, What and How. Inf. Fusion 2017, 39. [Google Scholar] [CrossRef]
  4. Handl, J.; Knowles, J.; Kell, D.B. Computational cluster validation in post-genomic data analysis. Bioinformatics 2005, 21, 3201–3212. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  5. Halkidi, M.; Batistakis, Y.; Vazirgiannis, M. On Clustering Validation Techniques. J. Intell. Inf. Syst. 2001, 17, 107–145. [Google Scholar] [CrossRef]
  6. Rand, W.M. Objective Criteria for the Evaluation of Clustering Methods. Publ. Am. Stat. Assoc. 1971, 66, 846–850. [Google Scholar] [CrossRef] [Green Version]
  7. Vinh, N.X.; Epps, J.; Bailey, J. Information theoretic measures for clusterings comparison: Is a correction for chance necessary? In Proceedings of the International Conference on Machine Learning, Montreal, QC, Canada, 14–18 June 2009; pp. 1073–1080. [Google Scholar]
  8. Rijsbergen, C.J.V. Information Retrieval; Butterworth-Heinemann: Oxford, UK, 1979; p. 777. [Google Scholar]
  9. Bai, L.; Liang, J. Cluster validity functions for categorical data: A solution-space perspective. Data Min. Knowl. Discov. 2015, 29, 1560–1597. [Google Scholar] [CrossRef]
  10. Li, H.; Zhang, S.; Ding, X.; Zhang, C.; Dale, P. Performance evaluation of cluster validity indices (CVIs) on Multi/Hyperspectral remote sensing datasets. Remote Sens. 2016, 8, 295. [Google Scholar] [CrossRef] [Green Version]
  11. Harimurti, R.; Yamasari, Y.; Ekohariadi; Munoto; Asto, B.I.G.P. Predicting student’s psychomotor domain on the vocational senior high school using linear regression. In Proceedings of the 2018 International Conference on Information and Communications Technology (ICOIACT), Yogyakarta, Indonesia, 6–8 March 2018; pp. 448–453. [Google Scholar]
  12. Luna-Romera, J.M.; García-Gutiérrez, J.; Martínez-Ballesteros, M.; Santos, J.C.R. An approach to validity indices for clustering techniques in Big Data. Prog. Artific. Intell. 2018, 7, 81–94. [Google Scholar] [CrossRef]
  13. Rizzoli, P.; Loder, E.; Joshi, S. Validity of Cluster Diagnosis in an Electronic Health Record. Headache 2016, 56, 1132–1136. [Google Scholar] [CrossRef] [PubMed]
  14. Aggarwal, C.C.; Procopiuc, C.; Yu, P.S. Finding localized associations in market basket data. IEEE Trans. Knowl. Data Eng. 2002, 14, 51–62. [Google Scholar] [CrossRef] [Green Version]
  15. Barbará, D.; Jajodia, S. Applications of Data Mining in Computer Security; Kluwer Academic Publishers: Boston, MA, USA, 2002. [Google Scholar]
  16. Yang, Y. An Evaluation of Statistical Approaches to Text Categorization. Inf. Retr. 1999, 1, 69–90. [Google Scholar] [CrossRef]
  17. Liu, Y.; Li, Z.; Xiong, H.; Gao, X.; Wu, J.; Wu, S. Understanding and enhancement of internal clustering validation measures. IEEE Trans. Cybern. 2013, 43, 982–994. [Google Scholar] [PubMed]
  18. Kremer, H.; Kranen, P.; Jansen, T.; Seidl, T.; Bifet, A.; Holmes, G.; Pfahringer, B. An effective evaluation measure for clustering on evolving data streams. In Proceedings of the ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, San Diego, CA, USA, 21–24 August 2011; pp. 868–876. [Google Scholar]
  19. Song, M.; Zhang, L. Comparison of Cluster Representations from Partial Second- to Full Fourth-Order Cross Moments for Data Stream Clustering. In Proceedings of the Eighth IEEE International Conference on Data Mining, Pisa, Italy, 15–19 December 2009; pp. 560–569. [Google Scholar]
  20. Xiong, H.; Wu, J.; Chen, J. K-means clustering versus validation measures: A data distribution perspective. IEEE Trans. Syst. Man Cybern. Part B Cybern. 2009, 39, 318–331. [Google Scholar] [CrossRef] [PubMed]
  21. Brun, M.; Chao, S.; Hua, J.; Lowey, J.; Carroll, B.; Suh, E.; Dougherty, E.R. Model-based evaluation of clustering validation measures. Pattern Recognit. 2007, 40, 807–824. [Google Scholar] [CrossRef] [Green Version]
  22. Tan, P.N.; Steinbach, M.; Kumar, V. Introduction to Data Mining, 1st ed.; Addison-Wesley Longman Publishing Co., Inc.: Boston, MA, USA, 2005; pp. 86–103. [Google Scholar]
  23. Halkidi, M.; Batistakis, Y.; Vazirgiannis, M. Cluster validity methods: Part I. ACM SIGMOD Rec. 2002, 31, 40–45. [Google Scholar] [CrossRef]
  24. Zhang, G.X.; Pan, L.Q. A Survey of Membrane Computing as a New Branch of Natural Computing. Chin. J. Comput. 2010, 33, 208–214. [Google Scholar] [CrossRef]
  25. Busi, N. Using well-structured transition systems to decide divergence for catalytic P systems. Theor. Comput. Sci. 2007, 372, 125–135. [Google Scholar] [CrossRef]
  26. An Approximate Algorithm for NP-Complete Optimization Problems Exploiting P-systems. Available online: http://bioinfo.uib.es/~recerca/BUM/nishida.pdf (accessed on 10 November 2004).
  27. Maulik, U.; Bandyopadhyay, S. Performance Evaluation of Some Clustering Algorithms and Validity Indices; IEEE Computer Society: Washington, WA, USA, 2002; pp. 1650–1654. [Google Scholar]
  28. Pal, N.R.; Bezdek, J.C. On cluster validity for the fuzzy c-means model. IEEE Trans. Fuzzy Syst. 2002, 3, 370–379. [Google Scholar] [CrossRef]
  29. Lei, Y.; Bezdek, J.C.; Romano, S.; Vinh, N.X.; Chan, J.; Bailey, J. Ground truth bias in external cluster validity indices. Pattern Recognit. 2017, 65, 58–70. [Google Scholar] [CrossRef] [Green Version]
  30. Barbará, D.; Li, Y.; Couto, J. COOLCAT: An entropy-based algorithm for categorical clustering. In Proceedings of the Eleventh International Conference on Information and Knowledge Management, McLean, VA, USA, 4–9 November 2002; pp. 582–589. [Google Scholar]
  31. Huang, Z. A Fast Clustering Algorithm to Cluster Very Large Categorical Data Sets in Data Mining. Res. Issues Data Min. Knowl. Discov. 1997, 1–8. [Google Scholar]
  32. Gluck, M. Information, Uncertainty and the Utility of Categories. In Proceedings of the Seventh Annual Conference on Cognitive Science Society, Irvine, CA, USA, 15–17 August 1985; pp. 283–287. [Google Scholar]
  33. Yang, Y.; Guan, X.; You, J. CLOPE:a fast and effective clustering algorithm for transactional data. In Proceedings of the Eighth ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, Edmonton, AB, Canada, 23–25 July 2002; pp. 682–687. [Google Scholar]
  34. Chang, C.H.; Ding, Z.K. Categorical Data Visualization and Clustering Using Subjective Factors. Data Knowl. Eng. 2005, 53, 243–262. [Google Scholar] [CrossRef]
  35. Shannon, C.E. A mathematical theory of communication. Bell Labs Tech. J. 1948, 27, 379–423. [Google Scholar] [CrossRef]
  36. Macqueen, J. Some Methods for Classification and Analysis of MultiVariate Observations. In Proceedings of the Berkeley Symposium on Mathematical Statistics and Probability, Berkeley, CA, USA, 21 June–18 July 1965; pp. 281–297. [Google Scholar]
  37. Fisher, D.H. Knowledge acquisition via incremental conceptual clustering. Mach. Learn. 1987, 2, 139–172. [Google Scholar] [CrossRef] [Green Version]
  38. Witten, I.; Frank, E.; Hall, M.; Hall, M. Data Mining: Practical Machine Learning Tools and Techniques, Third Edition (The Morgan Kaufmann Series in Data Management Systems). ACM SIGMOD Rec. 2011, 31, 76–77. [Google Scholar] [CrossRef]
  39. Li, Y.; Le, J.; Wang, M. Improving CLOPE’s profit value and stability with an optimized agglomerative approach. Algorithms 2015, 8, 380–394. [Google Scholar] [CrossRef]
  40. Campo, D.N.; Stegmayer, G.; Milone, D.H. A new index for clustering validation with overlapped clusters. Expert Syst. Appl. 2016, 64, 549–556. [Google Scholar] [CrossRef]
  41. Dziopa, T. Clustering Validity Indices Evaluation with Regard to Semantic Homogeneity. In Proceedings of the 2016 Federated Conference on Computer Science and Information Systems, Gdansk, Poland, 11–14 September 2016; pp. 3–9. [Google Scholar]
  42. Oszust, M.; Kostka, M. Evaluation of Subspace Clustering Using Internal Validity Measures. Adv. Electr. Comput. Eng. 2015, 15, 141–146. [Google Scholar] [CrossRef]
  43. Desgraupes, B. Clustering Indices; University of Paris Ouest-Lab Modal’X: Nanterre, France, 2013; p. 34. [Google Scholar]
  44. Baarsch, J.; Celebi, M.E. Investigation of internal validity measures for K-means clustering. In Proceedings of the International Multiconference of Engineers and Computer Scientists, HongKong, China, 14–16 March 2012; pp. 14–16. [Google Scholar]
  45. Zhao, Q. Cluster Validity in Clustering Methods; University of Eastern Finland: Kuopio, Finland, 2012. [Google Scholar]
  46. Rendon, E.; Abundez, I.; Arizmendi, A.; Quiroz, E.M. Internal versus external cluster validation indexes. Int. J. Comput. Commun. 2011, 5, 27–34. [Google Scholar]
  47. Ingaramo, D.; Pinto, D.; Rosso, P.; Errecalde, M. Evaluation of internal validity measures in short-text corpora. In Proceedings of the International Conference on Intelligent Text Processing and Computational Linguistics, Haifa, Israel, 17–23 February 2008; pp. 555–567. [Google Scholar]
  48. Halkidi, M.; Vazirgiannis, M. Clustering validity assessment: Finding the optimal partitioning of a data set. In Proceedings of the 2001 IEEE International Conference on Data Mining, San Jose, CA, USA, 29 November–2 December 2001; pp. 187–194. [Google Scholar]
  49. Jiang, D.; Tang, C.; Zhang, A. Cluster analysis for gene expression data: A survey. IEEE Trans. Knowl. Data Eng. 2004, 16, 1370–1386. [Google Scholar] [CrossRef]
  50. Wu, J.; Chen, J.; Xiong, H.; Xie, M. External validation measures for K-means clustering: A data distribution perspective. Expert Syst. Appl. 2009, 36, 6050–6061. [Google Scholar] [CrossRef]
  51. Jensen, J.L.W.V. Sur les fonctions convexes et les inégalités entre les valeurs moyennes. Acta Math. 1906, 30, 175–193. [Google Scholar] [CrossRef]
  52. Cover, T.M.; Thomas, J.A. Elements of Information Theory; Wiley: New York, NY, USA, 1991; pp. 155–183. [Google Scholar]
  53. Quinlan, J.R. Induction of Decision Trees. Mach. Learn. 1986, 1, 81–106. [Google Scholar] [CrossRef]
Figure 1. Clustering procedure consists of four steps with a feedback pathway.
Figure 1. Clustering procedure consists of four steps with a feedback pathway.
Algorithms 11 00177 g001
Figure 2. This figure illustrates how the information gain of separating each clusters GEl are calculated and averaged to represent the whole separation of the partition. In the figure, HU is the entropy of unpartitioned dataset U (n objects), Hl is the entropy of cluster l (nl objects), and Hrest is the entropy of the rest of the objects.
Figure 2. This figure illustrates how the information gain of separating each clusters GEl are calculated and averaged to represent the whole separation of the partition. In the figure, HU is the entropy of unpartitioned dataset U (n objects), Hl is the entropy of cluster l (nl objects), and Hrest is the entropy of the rest of the objects.
Algorithms 11 00177 g002
Figure 3. Flowchart of CUBAGE.
Figure 3. Flowchart of CUBAGE.
Algorithms 11 00177 g003
Figure 4. Procedures of the hierarchical and k-modes clustering validation experiments.
Figure 4. Procedures of the hierarchical and k-modes clustering validation experiments.
Algorithms 11 00177 g004
Figure 5. Determining the external index value of the partition selected by an internal index, where IV and EV are the values of the internal and the external index, respectively.
Figure 5. Determining the external index value of the partition selected by an internal index, where IV and EV are the values of the internal and the external index, respectively.
Algorithms 11 00177 g005
Figure 6. The validation scores of each layer of the hierarchy on different datasets. On axis OX are the layers, i.e., partitions of different size; on axis OY are the values of the validation (quality) of each partition measured by different CVIs. Note that the values of Cloper(P) with the parameter r = 1~3 have been normalized for convenience of comparison.
Figure 6. The validation scores of each layer of the hierarchy on different datasets. On axis OX are the layers, i.e., partitions of different size; on axis OY are the values of the validation (quality) of each partition measured by different CVIs. Note that the values of Cloper(P) with the parameter r = 1~3 have been normalized for convenience of comparison.
Algorithms 11 00177 g006aAlgorithms 11 00177 g006b
Figure 7. The number of incidences of increased, equivalent, and decreased performances in both NMI and ARI when the number of clusters changes from pre-known to unknown in the k-modes clustering.
Figure 7. The number of incidences of increased, equivalent, and decreased performances in both NMI and ARI when the number of clusters changes from pre-known to unknown in the k-modes clustering.
Algorithms 11 00177 g007
Table 1. Summary of the aforementioned clustering validation indexes (CVIs).
Table 1. Summary of the aforementioned clustering validation indexes (CVIs).
CVICompactness Core Average   Compactness   ( C o m ¯ ) Objective
E(P) j = 1 m i = 1 d j p ( a j ( i ) | C l ) log ( p ( a j ( i ) | C l ) ) l = 1 k p ( C l ) C o r e M i n i m i z e C o m ¯
F(P) j = 1 m [ ( 1 max i = 1 d j p ( a j ( i ) | C l ) ] l = 1 k p ( C l ) C o r e M i n i m i z e n C o m ¯ *
Cloper(P) [ j = 1 m | D ( A j | C l ) | ] r l = 1 k p ( C l ) 2 C o r e M a x i m i z e n m C o m ¯ *
CU1/k(P) j = 1 m i = 1 d j p ( a j ( i ) | C l ) 2 C o n s t a n t l = 1 k p ( C l ) C o r e M a x i m i z e k 1 C o m ¯
R(P) j = 1 m [ max i = 1 d j p ( a j ( i ) | C l ) ] 3 l = 1 k p ( C l ) C o r e M a x i m i z e m 1 C o m ¯ i n t e r ( P ) 1 *
* Note that the number attributes m and the number of objects n are invariable to any partition.
Table 2. Example of a dataset with five partitions. The number of clusters is 2, 3, 4, 5, and 6, respectively.
Table 2. Example of a dataset with five partitions. The number of clusters is 2, 3, 4, 5, and 6, respectively.
ObjectA1A2A3Partition 1Partition 2Partition 3Partition 4Partition 5
X1adh11111
X2aei11111
X3afh11122
X4bgh12233
X5bgh12234
X6bfh12345
X7cdj23456
Table 3. Evaluation results of the partitions in Table 2.
Table 3. Evaluation results of the partitions in Table 2.
CVIPartition 1Partition 2Partition 3Partition 4Partition 5
E(P) *2.1201.0160.7440.3960.396
F(P) *84322
Clope1(P)2.0711.7501.5001.3431.057
Clope2(P)0.2890.3960.3930.4020.307
Clope3(P)0.0460.0940.1130.1250.093
CU1/k(P)0.2550.3760.3300.3020.252
R(P)47.35329.32120.65214.8448.019
* To optimize E and F is to minimize them, while other functions are to be maximized.
Table 4. The AGE (averaged information gain of isolating each cluster) and CUBAGE (clustering utility based on AGE) outcomes of the partitions in Table 2.
Table 4. The AGE (averaged information gain of isolating each cluster) and CUBAGE (clustering utility based on AGE) outcomes of the partitions in Table 2.
CVIPartition 1Partition 2Partition 3Partition 4Partition 5
AGE1.0321.1910.9120.7690.601
CUBAGE0.4871.1721.2261.9411.518
Table 5. Datasets from UCI.
Table 5. Datasets from UCI.
DatasetObjectsAttributesClassesObject Distribution
Voting435162168, 267
Breast Cancer Wisconsin (Original)68392444, 239
Mushroom56442222156, 3488
Soybean (Small)4735410, 10, 10, 17
Car Evaluation1728641210, 384, 69, 65
Heart Disease (Cleveland)29713554, 35, 35, 13, 160
Dermatology358346111, 60, 71, 48, 48, 20
Zoo10116741, 20, 5, 13, 4, 8, 10
Table 6. Normalized mutual information (NMI) values of the hierarchical partitions chosen from layers 2–10 by each internal CVI.
Table 6. Normalized mutual information (NMI) values of the hierarchical partitions chosen from layers 2–10 by each internal CVI.
DatasetCUBAGEFECU1/kClope1Clope2Clope3R
Voting(1) 0.489(7) 0.292(7) 0.292(1) 0.489(1) 0.489(1) 0.489(1) 0.489(6) 0.396
Breast(1) 0.704(7) 0.337(7) 0.337(1) 0.704(1) 0.704(1) 0.704(1) 0.704(6) 0.609
Mushroom(5) 0.362(6) 0.339(6) 0.339(3) 0.368(8) 0.256(1) 0.412(1) 0.412(3) 0.368
Soybean(1) 1(4) 0.745(4) 0.745(1) 1(6) 0.669(6) 0.669(3) 0.878(6) 0.669
Car(4) 0.031(1) 0.053(1) 0.053(3) 0.05(4) 0.031(4) 0.031(4) 0.031(4) 0.031
Heart(1) 0.216(5) 0.167(5) 0.167(1) 0.216(1) 0.216(5) 0.167(5) 0.167(1) 0.216
Dermatology(1) 0.687(4) 0.597(4) 0.597(1) 0.687(6) 0.473(6) 0.473(1) 0.687(6) 0.473
Zoo(1) 0.85(2) 0.764(2) 0.764(4) 0.741(5) 0.522(5) 0.522(5) 0.522(5) 0.522
Average NMI *0.5420.4120.4120.5320.420.4330.4860.411
Average Rank *1.8754.54.51.87543.6252.6254.625
* Averaged over datasets (average values of each column).
Table 7. Adjusted Rand index (ARI) values of the hierarchical partitions chosen from layers 2–10 by each internal CVI.
Table 7. Adjusted Rand index (ARI) values of the hierarchical partitions chosen from layers 2–10 by each internal CVI.
DatasetCUBAGEFECU1/kClope1Clope2Clope3R
Voting(1) 0.557(7) 0.142(7) 0.142(1) 0.557(1) 0.557(1) 0.557(1) 0.557(6) 0.337
Breast(1) 0.808(7) 0.18(7) 0.18(1) 0.808(1) 0.808(1) 0.808(1) 0.808(6) 0.72
Mushroom(5) 0.288(7) 0.161(7) 0.161(1) 0.375(6) 0.286(3) 0.318(3) 0.318(1) 0.375
Soybean(1) 1(7) 0.431(7) 0.431(1) 1(4) 0.501(4) 0.501(3) 0.781(4) 0.501
Car(1) 0.066(7) −0.002(7) −0.002(6) 0.008(1) 0.066(1) 0.066(1) 0.066(1) 0.066
Heart(1) 0.289(5) 0.061(5) 0.061(1) 0.289(1) 0.289(5) 0.061(5) 0.061(1) 0.289
Dermatology(1) 0.563(4) 0.359(4) 0.359(1) 0.563(6) 0.33(6) 0.33(1) 0.563(6) 0.33
Zoo(1) 0.872(3) 0.522(3) 0.522(2) 0.715(5) 0.42(5) 0.42(5) 0.42(5) 0.42
Average ARI *0.5550.2320.2320.5390.4070.3830.4470.38
Average Rank *1.55.8755.8751.753.1253.252.53.75
* Averaged over datasets (average values of each column).
Table 8. Average NMI values of the chosen k-modes partitions over 100 runs (k ranging from 2–10).
Table 8. Average NMI values of the chosen k-modes partitions over 100 runs (k ranging from 2–10).
DatasetCUBAGEFECU1/kClope1Clope2Clope3R
Voting(1) 0.443(8) 0.312(7) 0.324(1) 0.443(3) 0.418(3) 0.418(3) 0.418(6) 0.397
Breast(1) 0.674(6) 0.363(7) 0.358(1) 0.674(8) 0.016(4) 0.48(5) 0.407(3) 0.491
Mushroom(1) 0.458(5) 0.368(4) 0.391(3) 0.394(8) 0.196(2) 0.434(6) 0.365(7) 0.291
Soybean(1) 0.838(4) 0.746(3) 0.752(1) 0.838(8) 0.492(6) 0.553(6) 0.553(5) 0.572
Car(5) 0.05(2) 0.065(1) 0.072(3) 0.058(6) 0.026(6) 0.026(6) 0.026(4) 0.054
Heart(1) 0.206(3) 0.175(4) 0.171(2) 0.205(8) 0.039(7) 0.165(6) 0.165(5) 0.167
Dermatology(1) 0.704(4) 0.647(3) 0.684(1) 0.704(8) 0.313(6) 0.362(5) 0.456(7) 0.321
Zoo(2) 0.808(3) 0.795(4) 0.783(5) 0.579(8) 0.479(7) 0.481(1) 0.823(6) 0.572
Average NMI *0.5220.4340.4420.4870.2470.3650.4020.358
Average Rank *1.6254.3754.1252.1257.1255.1254.755.375
* Averaged over datasets (average values of each column).
Table 9. Average ARI values of the chosen k-modes partitions over 100 runs (k ranging from 2–10).
Table 9. Average ARI values of the chosen k-modes partitions over 100 runs (k ranging from 2–10).
DatasetCUBAGEFECU1/kClope1Clope2Clope3R
Voting(1) 0.53(8) 0.174(7) 0.191(1) 0.53(3) 0.503(3) 0.503(3) 0.503(6) 0.428
Breast(1) 0.787(6) 0.217(7) 0.195(1) 0.787(8) −0.001(4) 0.551(5) 0.337(3) 0.639
Mushroom(1) 0.489(7) 0.187(6) 0.228(3) 0.319(8) 0.155(2) 0.447(5) 0.268(4) 0.309
Soybean(1) 0.654(4) 0.442(3) 0.461(1) 0.654(8) 0.26(6) 0.297(6) 0.297(5) 0.352
Car(2) 0.023(4) 0.017(3) 0.021(1) 0.025(6) −0.001(6) −0.001(6) −0.001(5) 0.014
Heart(2) 0.199(4) 0.092(5) 0.079(3) 0.19(6) 0.065(8) 0.055(7) 0.065(1) 0.263
Dermatology(1) 0.552(3) 0.493(4) 0.487(1) 0.552(7) 0.136(6) 0.159(5) 0.21(8) 0.119
Zoo(1) 0.817(3) 0.573(4) 0.544(5) 0.448(7) 0.342(8) 0.341(2) 0.769(6) 0.411
Average ARI *0.5060.2740.2760.4380.1830.2940.3060.317
Average Rank *1.254.8754.87526.6255.3754.8754.75
* Averaged over datasets (average values of each column).
Table 10. Average NMI values of the chosen k-modes partitions over 100 runs (k fixed to the actual number of classes).
Table 10. Average NMI values of the chosen k-modes partitions over 100 runs (k fixed to the actual number of classes).
DatasetCUBAGEFECU1/kClope1Clope2Clope3R
Voting(1) 0.443(5) 0.436(1) 0.443(1) 0.443(6) 0.376(6) 0.376(6) 0.376(4) 0.439
Breast(1) 0.674(4) 0.635(1) 0.674(1) 0.674(8) 0.015(7) 0.022(6) 0.434(5) 0.445
Mushroom(1) 0.458(5) 0.451(1) 0.458(1) 0.458(8) 0.037(1) 0.458(6) 0.435(7) 0.136
Soybean(1) 1(4) 0.977(1) 1(1) 1(7) 0.675(6) 0.692(5) 0.791(8) 0.672
Car(4) 0.048(1) 0.057(3) 0.05(2) 0.055(7) 0.038(8) 0.037(6) 0.042(5) 0.048
Heart(2) 0.181(3) 0.18(7) 0.171(5) 0.175(4) 0.177(8) 0.167(6) 0.173(1) 0.187
Dermatology(3) 0.742(4) 0.633(1) 0.744(2) 0.742(7) 0.505(6) 0.548(5) 0.582(8) 0.495
Zoo(1) 0.852(4) 0.818(3) 0.836(2) 0.838(5) 0.811(7) 0.804(6) 0.809(8) 0.781
Average NMI *0.550.5230.5470.5480.3290.3880.4550.4
Average Rank *1.753.752.251.8756.56.1255.755.75
* Averaged over datasets (average values of each column).
Table 11. Average ARI values of the chosen k-modes partitions over 100 runs (k fixed to the actual number of classes).
Table 11. Average ARI values of the chosen k-modes partitions over 100 runs (k fixed to the actual number of classes).
DatasetCUBAGEFECU1/kClope1Clope2Clope3R
Voting(1) 0.53(5) 0.511(1) 0.53(1) 0.53(6) 0.451(6) 0.451(6) 0.451(4) 0.53
Breast(1) 0.787(4) 0.738(1) 0.787(1) 0.787(7) 0.008(8) 0.001(6) 0.488(5) 0.513
Mushroom(1) 0.489(5) 0.486(1) 0.489(1) 0.489(8) −0.015(1) 0.489(6) 0.465(7) 0.023
Soybean(1) 1(4) 0.97(1) 1(1) 1(7) 0.474(6) 0.489(5) 0.598(8) 0.469
Car(1) 0.036(4) 0.03(2) 0.034(3) 0.032(8) 0.006(7) 0.009(5) 0.022(6) 0.012
Heart(3) 0.134(7) 0.107(5) 0.123(6) 0.119(2) 0.22(4) 0.124(8) 0.104(1) 0.277
Dermatology(1) 0.654(4) 0.52(2) 0.63(3) 0.621(7) 0.26(6) 0.298(5) 0.343(8) 0.236
Zoo(3) 0.774(8) 0.662(6) 0.713(7) 0.709(2) 0.797(5) 0.751(4) 0.757(1) 0.807
Average ARI *0.5510.5030.5380.5360.2750.3260.4030.358
Average Rank *1.55.1252.3752.8755.8755.3755.6255
* Averaged over datasets (average values of each column).

Share and Cite

MDPI and ACS Style

Gao, X.; Yang, M. Understanding and Enhancement of Internal Clustering Validation Indexes for Categorical Data. Algorithms 2018, 11, 177. https://doi.org/10.3390/a11110177

AMA Style

Gao X, Yang M. Understanding and Enhancement of Internal Clustering Validation Indexes for Categorical Data. Algorithms. 2018; 11(11):177. https://doi.org/10.3390/a11110177

Chicago/Turabian Style

Gao, Xuedong, and Minghan Yang. 2018. "Understanding and Enhancement of Internal Clustering Validation Indexes for Categorical Data" Algorithms 11, no. 11: 177. https://doi.org/10.3390/a11110177

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop