Hierarchical agglomerative clustering (HAC) is a popular algorithm for clustering data, but despite its importance, no dynamic algorithms for HAC with good theoretical guarantees exist. In this paper, we study dynamic HAC on edge-weighted graphs. As single-linkage HAC reduces to computing a minimum spanning forest (MSF), our first result is to develop a parallel batch-dynamic algorithm for maintaining MSFs. On a batch of $k$ edge insertions or deletions, our batch-dynamic MSF algorithm runs in $O(k\log^6 n)$ expected amortized work and $O(\log^4 n)$ span with high probability. It is the first fully dynamic MSF algorithm handling batches of edge updates with polylogarithmic work per update and polylogarithmic span. Using MSF, we obtain a parallel batch-dynamic algorithm that can answer queries about single-linkage graph HAC clusters. Our second result is that dynamic graph HAC is significantly harder for other common linkage functions. Assuming the strong exponential time hypothesis, dynamic graph HAC requires $\Omega(n^{1-o(1)})$ work per update or query on a graph with $n$ vertices for complete linkage, weighted average linkage, and average linkage. For complete linkage and weighted average linkage, this bound still holds even for incremental or decremental algorithms and even if we allow $\operatorname{poly}(n)$-approximation. For average linkage, the bound weakens to $\Omega(n^{1/2 - o(1)})$ for incremental and decremental algorithms, and the bounds still hold if we allow $O(n^{o(1)})$-approximation.
翻译:高压组群( HAC) 是组群数据的流行算法, 但尽管它很重要, 但HAC没有具有良好的理论保障的动态算法 。 在本文中, 我们研究边缘加权图形中的动态 HAC 。 当单行连线 HAC 降低到最小的覆盖森林( MSF) 时, 我们的第一个结果就是开发一个平行的批量动态算法, 用于维护 MSF 。 在一组美元边端插入或删除中, 我们的批量动态 MSF 算法( $) 仍然以$( k\log_6 n) 进行预期的摊销工作, $( $( log_ 4 n) 跨度的动态算法 。 这是第一个完全动态的 MSF 算法, 处理每更新一次多面阵列工作( MSF) 的边端更新, 以计算一个最小端端控件, 批量动态的批量算法可以回答关于单端端图 HAC 的查询。 对于其它共同连接功能来说, 动态图表 HAC 仍然要更难得多 。 。 假设 强的指数 $( $ ) 美元 和 平级平流 平均的 美元 或平级链接需要 美元 美元 美元 平均的 或平级链接 。