【问题标题】:Neo4j, Graph Data Science Library: Calculating betweenness returns negative valuesNeo4j,图形数据科学库:计算介数返回负值
【发布时间】:2020-06-30 02:02:31
【问题描述】:

在计算我的图表的中介中心性时,某些节点在使用“无向”作为关系方向时会收到负值。在带有 gds 1.2.2 的 Neo4j 4.0.6 中发生。但也在旧版本中。图形本身应该没问题,将其导出到 Gephi,然后计算中间因子返回所有正值。

这里是查询:

CALL gds.alpha.betweenness.stream({
    nodeProjection: 'poi',
    relationshipProjection: {
        similar: {
            type: 'similar',
            orientation: 'UNDIRECTED'
        }
    }
}) 
YIELD nodeId, centrality
RETURN gds.util.asNode(nodeId).OsmID AS id, centrality
ORDER BY centrality ASC

结果:Negative Values after betweenness calculation

使用的图表:graphml file (4MB)

此时我几乎没有想法,查询应该没问题,图表也应该没问题。任何帮助将不胜感激。

【问题讨论】:

    标签: neo4j graph-algorithm graph-data-science


    【解决方案1】:

    最近刚刚在 Graph Data Science 1.3 版中从 alpha 层提升到生产质量之间的中心性。目前只有1.3的预览版。 GDS 在GitHub 上可用。我已经测试了您的数据集,看起来新版本的问题不会持续存在。因此,目前,您可以使用 GDS 1.3 版本的预览版,也可以等待几天,直到 GA 版本可用。唯一改变的是输出语法,其中中心性已重命名为 score。

    CALL gds.betweenness.stream({
        nodeProjection: '*',
        relationshipProjection: {
            similar: {
                type: 'similar',
                orientation: 'UNDIRECTED'
            }
        }
    }) 
    YIELD nodeId, score
    RETURN gds.util.asNode(nodeId).OsmID AS id, score
    ORDER BY score ASC
    

    希望这会有所帮助。

    【讨论】:

    • 这实际上很有帮助。刚刚测试过,GDS 1.3 的中介性现在就像一个魅力。谢谢!
    猜你喜欢
    • 2021-04-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-22
    • 2013-01-29
    • 2015-11-13
    • 2019-05-07
    相关资源
    最近更新 更多