Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache spark 火花图形框架-标签传播与强连接组件_Apache Spark_Graphframes - Fatal编程技术网

Apache spark 火花图形框架-标签传播与强连接组件

Apache spark 火花图形框架-标签传播与强连接组件,apache-spark,graphframes,Apache Spark,Graphframes,在标准示例中: 当在图形上直观地查看强连接组件时,它们在计算上似乎是合理的 因此,我对检测“社区”的标签传播感到惊讶 我错过了什么?[A,D,E]从数据来看,我认为这也是一个社区,结果也会相似。我尝试了更多的循环。标签传播似乎是“集群”的近亲。您在这里发现的是一种称为标签振荡的已知现象,它发生在标签同步更新且(子)图具有二部结构(或星形图)时。这两个社区将无休止地交换他们的标签,LPA将永远不会自行终止 t处的标签: t+1处的标签: t+2处的标签: 。。。等等 正如您已经提

在标准示例中:

  • 当在图形上直观地查看强连接组件时,它们在计算上似乎是合理的

  • 因此,我对检测“社区”的标签传播感到惊讶


我错过了什么?[A,D,E]从数据来看,我认为这也是一个社区,结果也会相似。我尝试了更多的循环。标签传播似乎是“集群”的近亲。

您在这里发现的是一种称为标签振荡的已知现象,它发生在标签同步更新且(子)图具有二部结构(或星形图)时。这两个社区将无休止地交换他们的标签,LPA将永远不会自行终止

t处的标签:

t+1处的标签:

t+2处的标签:

。。。等等

正如您已经提到的,这并不是我们期望的社区检测算法,因为社区中没有边缘。但这仍然是一种快速算法,对于非二部结构可以提供良好的结果。提出了一种使用异步更新的快速替代方案。但这还没有在图形框架中实现。Graphframes调用LPA(查看代码)的graphX实现,该实现使用同步的Pregel(查看代码)

除了二部结构的LPA问题外,SCC和LPA之间还有一个一般性的区别:

  • SCC社区:社区中的每个节点都知道(有一个边缘)社区中的所有其他节点
  • LPA社区:对于社区的每个节点,都有一条路径 社区中的(边序列)到社区中的所有其他节点 社区