Background:
K-means algorithm is implemented through two steps: initialization and
subsequent iterations. Initialization is to select the initial cluster center, while subsequent iterations
are to continuously change the cluster center until it won't change any more or the number of iterations
reaches its maximum. K-means algorithm is so sensitive to the cluster center selected during
initialization that the selection of a different initial cluster center will influence the algorithm performance.
Therefore, improving the initialization process has become an important means of
K-means performance improvement.
Methods:
This paper uses a new strategy to select the initial cluster center. It first calculates the minimum
and maximum values of the data in a certain index (For lower-dimensional data, such as twodimensional
data, features with larger variance, or the distance to the origin can be selected; for
higher-dimensional data, PCA can be used to select the principal component with the largest variance),
and then divides the range into equally-sized sub-ranges. Next adjust the sub-ranges based on
the data distribution so that each sub-range contains as much data as possible. Finally, the mean value
of the data in each sub-range is calculated and used as the initial clustering center.
Results:
The theoretical analysis shows that although the time complexity of the initialization process
is linear, the algorithm has the characteristics of the superlinear initialization method. This algorithm
is applied to two-dimensional GPS data analysis and high-dimensional network attack detection.
Experimental results show that this algorithm achieves high clustering performance and clustering
speed.
Conclusion:
This paper reduces the subsequent iterations of K-means algorithm without compromising
the clustering performance, which makes it suitable for large-scale data clustering. This algorithm
can not only be applied to low-dimensional data clustering, but also suitable for highdimensional
data.