{'fraction_non_alphanumeric': 0.027387640449438203, 'fraction_numerical': 0.0014044943820224719, 'mean_word_length': 5.3053097345132745, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Kernel-Based Clustering with Automatic Cluster Number Selection

Kernel k-means is one of the most well-known kernel-based clustering methods for discovering nonlinearly separable clusters. However, like its original counterpart k-means, kernel k-means has two inherent drawbacks: (1) it is easily trapped into degenerate local minima when the prototypes of clusters are ill-initialized, and (2) the actual number of clusters has to be provided in advance. Although some algorithms have been proposed to handle the first problem, there is still a lack of methods for automatically estimating the number of clusters in kernel space. In this paper, inspired by the on-line learning framework and the rival penalization mechanism, we propose a novel kernel-based clustering method with automatic cluster number selection (KeCans for short). In KeCans, prototypes are represented by a prototype descriptor, which is a real-valued matrix with each row representing a prototype. The prototype descriptor is allocated with more than the actual number of rows in initialization. Rival penalization is utilized in competition process to eliminate the redundant rows. Experimental results demonstrate the effectiveness of the proposed method in revealing the real number of clusters in kernel space. And compared with the state-of-the-art kernel-based clustering algorithms, the proposed method achieves comparable clustering results.