Skip to main content
QUICK REVIEW

[论文解读] k-Means for Streaming and Distributed Big Sparse Data

Artem Barger, Dan Feldman|arXiv (Cornell University)|Nov 29, 2015
Sparse and Compressive Sensing Techniques参考文献 19被引用 5
一句话总结

本论文提出了首个用于在 $\mathbb{R}^d$ 中对稀疏大数据计算可证明的 $(k,\varepsilon)$-coreset 的确定性流式处理与分布式算法,其中每个向量具有 $O(1)$ 个非零条目且 $d \geq n$。coreset 大小为 $k^{O(1)}$,与 $n$ 和 $d$ 无关,从而实现对数级内存与通信开销的高效 $k$-均值聚类,优于以往方法(这些方法或随 $d$ 增长,或通过降维破坏稀疏性)。

ABSTRACT

We provide the first streaming algorithm for computing a provable approximation to the $k$-means of sparse Big data. Here, sparse Big Data is a set of $n$ vectors in $\mathbb{R}^d$, where each vector has $O(1)$ non-zeroes entries, and $d\geq n$. E.g., adjacency matrix of a graph, web-links, social network, document-terms, or image-features matrices. Our streaming algorithm stores at most $\log n\cdot k^{O(1)}$ input points in memory. If the stream is distributed among $M$ machines, the running time reduces by a factor of $M$, while communicating a total of $M\cdot k^{O(1)}$ (sparse) input points between the machines. % Our main technical result is a deterministic algorithm for computing a sparse $(k,ε)$-coreset, which is a weighted subset of $k^{O(1)}$ input points that approximates the sum of squared distances from the $n$ input points to every $k$ centers, up to $(1\pmε)$ factor, for any given constant $ε>0$. This is the first such coreset of size independent of both $d$ and $n$. Existing algorithms use coresets of size at least polynomial in $d$, or project the input points on a subspace which diminishes their sparsity, thus require memory and communication $Ω(d)=Ω(n)$ even for $k=2$. Experimental results real public datasets shows that our algorithm boost the performance of such given heuristics even in the off-line setting. Open code is provided for reproducibility.

研究动机与目标

  • 解决在 $d \geq n$ 的稀疏大数据上执行 $k$-均值聚类的挑战,其中传统降维技术会破坏稀疏性。
  • 设计一种流式与分布式算法,在保持 $k$-均值近似质量的同时,使内存与通信开销与 $d$ 和 $n$ 无关。
  • 构建一个大小为 $k^{O(1)}$ 的确定性稀疏 $(k,\varepsilon)$-coreset,其能将任意 $k$ 个中心的平方距离和近似到 $1\pm\varepsilon$ 以内。
  • 在流式处理、分布式计算和 GPU 加速环境中实现高效的 $k$-均值计算,同时不牺牲稀疏性或近似保证。
  • 通过实验验证,coreset 构造可显著提升现有启发式算法(如 Lloyd 算法)在离线与流式处理场景下的性能。

提出的方法

  • 该算法通过在流式或分布式数据集上构建确定性的合并-归约树,构造稀疏 $(k,\varepsilon)$-coreset,保持 $O(\log n \cdot k^{O(1)})$ 的内存使用量。
  • 它将数据分块处理,为每台机器或每个流段计算局部 coresets,并通过二叉树结构递归合并,同时保持 coresets 的保证。
  • coreset 构造基于局部方差与到候选中心的距离进行加权采样,确保对所有可能的 $k$-中心配置均保持近似。
  • 该方法支持稀疏输入表示(例如,按行存储的索引与值对),在整个计算过程中保持稀疏性。
  • 通过仅在 $M$ 台机器之间传输 $M \cdot k^{O(1)}$ 个稀疏点,实现分布式计算,使运行时间减少 $M$ 倍。
  • 该算法可通过依赖向量加法与距离计算等简单、可并行化操作,兼容 GPU 加速。

实验结果

研究问题

  • RQ1能否在流式或分布式设置下,为稀疏大数据构造一个大小与 $d$ 和 $n$ 无关的确定性 coresets?
  • RQ2该 coresets 是否能在 $d \geq n$ 的情况下,将任意 $k$ 个中心的平方距离和近似到 $1\pm\varepsilon$ 因子内?
  • RQ3该 coresets 是否能显著提升现有 $k$-均值启发式算法(如 Lloyd 算法)在离线与流式处理场景下的性能?
  • RQ4在分布式环境中,内存与通信开销如何随数据规模与机器数量变化?
  • RQ5coresets 构造在不同数据分布与稀疏模式下是否稳定且具有鲁棒性?

主要发现

  • 所提出的算法构造了一个大小为 $k^{O(1)}$ 的稀疏 $(k,\varepsilon)$-coreset,与 $n$ 和 $d$ 无关,这是首个针对稀疏大数据且具有可证明保证的此类 coresets。
  • 该算法在流式模式下实现 $O(\log n \cdot k^{O(1)})$ 的内存使用,在分布式模式下实现 $O(M \cdot k^{O(1)})$ 的通信开销,两者均与 $d$ 无关。
  • 实验结果表明,与均匀采样和非均匀采样相比,coreset 构造在误差方面表现显著更优,所有测试数据集与 $k$ 值下均表现出更低且更稳定的误差。
  • 该算法在 coresets 尺寸较小时即展现出极低的初始误差,并随尺寸增加稳步改善,而基线方法则从较高误差开始,仅在样本量极大时才收敛至较低误差。
  • 实验中误差分布紧密聚集在中位数附近,表明具有高稳定性和低方差,尤其在流式模型中表现显著。
  • 流式构造过程中的内存使用量随数据点数量对数增长,与二叉合并-归约树结构一致,振荡现象对应于树层级的更新。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。