We consider online $k$-means clustering where each new point is assigned to the nearest cluster center, after which the algorithm may update its centers. The loss incurred is the sum of squared distances from new points to their assigned cluster centers. The goal over a data stream $X$ is to achieve loss that is a constant factor of $L(X, OPT_k)$, the best possible loss using $k$ fixed points in hindsight. We propose a data parameter, $\Lambda(X)$, such that for any algorithm maintaining $O(k\text{poly}(\log n))$ centers at time $n$, there exists a data stream $X$ for which a loss of $\Omega(\Lambda(X))$ is inevitable. We then give a randomized algorithm that achieves clustering loss $O(\Lambda(X) + L(X, OPT_k))$. Our algorithm uses $O(k\text{poly}(\log n))$ memory and maintains $O(k\text{poly}(\log n))$ cluster centers. Our algorithm also enjoys a running time of $O(k\text{poly}(\log n))$ and is the first algorithm to achieve polynomial space and time complexity in this setting. It also is the first to have provable guarantees without making any assumptions on the input data.
翻译:我们考虑将每个新点分配到最近的集群中心时, 算法可以更新其中心。 所造成的损失是从新点到指定集集中心的平方距离总和。 数据流美元X$的目标是实现一个恒定因数$( X, Obta_k) 的损失, 也就是使用后视中固定点的美元( X) 最可能的损失。 我们提出一个数据参数, $\Lambda( X) 美元。 我们的算法使用一个数据参数, $( k\ text{poly} (\log n) 美元, 任何维持美元( ktext{poly} (\log n) 中心的算法, 美元时值为美元( ktext{ poly} 中心), 有数据流美元X$( lax), 其损失是不可避免的。 我们的随机算法, 将美元(\\ lambda( X, + L( X, ) ltem_k) $。 我们的算法也使用$( ktext{ pro) laimal) maxal lax 和neximal max max max max 。