This paper gives a k-means approximation algorithm that is efficient in the relational algorithms model. This is an algorithm that operates directly on a relational database without performing a join to convert it to a matrix whose rows represent the data points. The running time is potentially exponentially smaller than $N$, the number of data points to be clustered that the relational database represents. Few relational algorithms are known and this paper offers techniques for designing relational algorithms as well as characterizing their limitations. We show that given two data points as cluster centers, if we cluster points according to their closest centers, it is NP-Hard to approximate the number of points in the clusters on a general relational input. This is trivial for conventional data inputs and this result exemplifies that standard algorithmic techniques may not be directly applied when designing an efficient relational algorithm. This paper then introduces a new method that leverages rejection sampling and the $k$-means++ algorithm to construct an O(1)-approximate k-means solution.
翻译:本文给出了在关系算法模型中有效的k- means近似算法。 这是一个直接在关系数据库上运行的算法, 而没有执行连结, 将它转换成一个由行代表数据点的矩阵。 运行时间可能指数小于$, 数据点数可能比关系数据库所代表的数据点多。 关系算法鲜为人知, 本文提供设计关系算法的技术, 并描述其局限性。 我们显示, 给出了两个数据点作为群集中心, 如果我们根据最接近的中心分组点, 则在一般关系输入的组合点数上大约是 NP- Hard 。 这对常规数据输入来说微不足道, 而这个结果说明在设计有效的关系算法时, 标准算法可能无法直接应用。 本文随后引入了一种新的方法, 来利用拒绝采样和 $k$k$-pouns+g 算法来构建一个 O(1)- pappoint k means 解决方案 。