Google Pregel论文中半聚类公式的意义何在?

时间:2012-07-02 12:42:50

标签: algorithm cluster-analysis graph-theory clique

Google Pregel paper中提到了半聚类算法。半群的得分使用以下公式计算

enter image description here

其中

Ic是所有内部边缘的权重之和 Bc是所有边界边缘的权重之和 Vc是半群中的顶点数和
fb是边界边缘得分因子(用户定义在0和1之间)

该算法非常直接,但我无法理解上述公式是如何到达的。请注意,分母是Vc顶点数之间可能存在的边数。

有人可以解释一下吗?

2 个答案:

答案 0 :(得分:9)

如果您考虑要捕捉的数量,那么得分是有意义的。

这里要解决的问题是弄清楚将图的顶点放入半群的最佳方法是什么(只是一组顶点,其中每个顶点可以在多个半群中)具有半群总数的上限。因此,找到“最佳”方法的一种方法是将分数分配给任何潜在的半群(换句话说,分配给任意任意一组顶点)。然后问题变成了最大化总分。

因此,半群集旨在捕获图表中的派系。例如,在社交图中,半群可能是高中篮球队的成员。

因此,更多的内部边缘等同于“更好”的半群。这解释了分子中的I_c。类似地,你想要有很少的边界边,因为如果有很多边界边,那么这意味着可能有一个更好的半群包含你正在检查的那个。这给出了分子中的-f_b * B_cf_b只是一个缩放因子,因此您可以调整分配边界边缘的惩罚。

分母也是一种缩放因子。它用于标准化半群集分数,以便小群集不会被较大群集完全控制。一个极端的例子是,如果你考虑世界上每个人的半群体。显然,没有边界边缘和大量内部边缘,但毫无疑问,它是一个不如高中篮球队那么有用的半群体。

答案 1 :(得分:1)

派系有关。

V_c *(V_c - 1)是大小为V_c的集团中的边数。

因此,如果您对组I_c中的所有边取总和,则这是适当的规范化以获得算术平均值。

即。 I_c /(V_c *(V_c - 1))是集团内的平均权重

现在-f_B * B_c术语是传出边缘的惩罚。恕我直言,它应该只用V_c来划分,但这是个人的品味,因为我假设预期的外围边缘与集团成员的数量一致,而不是平方。