Wittgenstein's Family Resemblance Clustering Algorithm
Golbahar Amanpour, Benyamin Ghojogh
TL;DR
This work introduces Wittgenstein's Family Resemblance (WFR) clustering, a graph-based unsupervised method that defines clusters as connected components in a thresholded resemblance graph built from neighboring data points. By leveraging multiple resemblance functions—including log-based, cosine, and kernel-based scores—and an optional kernel variant (kernel WFR), the approach accommodates nonlinear cluster structures without pre-specifying the number of clusters. Training centers on building a sparse kNN graph, computing and normalizing pairwise resemblances, and extracting connected components, while testing assigns labels based on nearest-neighbor resemblance and can detect outliers. The paper analyzes the time/space complexities, demonstrates competitive performance on nonlinear benchmarks, and discusses extensions such as weighted resemblance graphs to further enhance clustering flexibility and accuracy.
Abstract
This paper, introducing a novel method in philomatics, draws on Wittgenstein's concept of family resemblance from analytic philosophy to develop a clustering algorithm for machine learning. According to Wittgenstein's Philosophical Investigations (1953), family resemblance holds that members of a concept or category are connected by overlapping similarities rather than a single defining property. Consequently, a family of entities forms a chain of items sharing overlapping traits. This philosophical idea naturally lends itself to a graph-based approach in machine learning. Accordingly, we propose the Wittgenstein's Family Resemblance (WFR) clustering algorithm and its kernel variant, kernel WFR. This algorithm computes resemblance scores between neighboring data instances, and after thresholding these scores, a resemblance graph is constructed. The connected components of this graph define the resulting clusters. Simulations on benchmark datasets demonstrate that WFR is an effective nonlinear clustering algorithm that does not require prior knowledge of the number of clusters or assumptions about their shapes.
