A Parallel Algorithm for (3 + ε)-Approximate Correlation Clustering
Grouping together similar elements in datasets is a common task in data mining and machine learning. In this paper, we study parallel algorithms for correlation clustering, where each pair of items are labeled either similar or dissimilar. The task is to partition the elements and the objective is to minimize disagreements, that is, the number of dissimilar elements grouped together and similar elements grouped separately. Our main contribution is a parallel algorithm that achieves a (3 + ε)-approximation to the minimum number of disagreements. Our algorithm follows the design of the PIVOT algorithm by Ailon, Charikar and Newman [JACM'08] that obtains a 3-approximation in the centralized setting. Our approach effectively reduces the problem to running several instances of correlation clustering on graphs with small maximum degree and hence, a small amount of edges. This reduction makes our technique applicable on several models of massive graph processing, such as Massively Parallel Computing (MPC) and graph streaming. For the linear memory models, such as the linear memory MPC and streaming, our approach yields O(1) time algorithms, where the runtime is independent of ε. In the low-space regime of MPC with strictly sublinear in n memory per machine, we obtain an O(log 1/ε·polyloglog n)-round algorithm.
READ FULL TEXT