  Determining the number of clusters in a dataset is a fundamental issue in
data clustering. Many methods have been proposed to solve the problem of
selecting the number of clusters, considering it to be a problem with regard to
model selection. This paper proposes a greedy algorithm that automatically
selects a suitable number of clusters based on a probability distribution model
framework. The algorithm includes two components. First, a generalization of
Kohonen's self-organizing map (SOM), which has nodes linked to a probability
distribution model, and which enables the algorithm to search for the winner
based on the likelihood of each node, is introduced. Second, the proposed
method uses a graph structure and a neighbor defined by the length of the
shortest path between nodes, in contrast to Kohonen's SOM in which the nodes
are fixed in the Euclidean space. This implementation makes it possible to
update its graph structure by cutting links to weakly connected nodes to avoid
unnecessary node deletion. The weakness of a node connection is measured using
the Kullback--Leibler divergence and the redundancy of a node is measured by
the minimum description length (MDL). This updating step makes it easy to
determine the suitable number of clusters. Compared with existing methods, our
proposed method is computationally efficient and can accurately select the
number of clusters and perform clustering.
