当前位置: 首页 > 知识库问答 >
问题:

如何在jgrapht中找到最近的邻居

慕云
2023-03-14

我正在尝试使用jgraph T解决一个链接预测问题。我正在根据两个节点的邻居计算两个节点之间的相似性。每个节点都有一些属性。计算变得太多了,因为一些节点有大约700个邻居,而我有4500个这样的节点。我有谁对的700K边,我计算相似性。

现在,我不想使用节点的所有邻居,我只想使用每个节点的k个最近邻居来计算一对节点之间的相似度。我可以根据边共享的两个节点的属性数,或节点之间长度为n的最短路径数等,在图中的所有边上添加一些权重。

有谁能告诉我在jGraphT有没有找到最近邻居的选择?

共有1个答案

云俊名
2023-03-14

JGraphT的ClosestFirstIterator可能就是您想要的:

  • k迭代器的第一个顶点应该是最近的。
  • 迭代器也可以使用限制半径参数来构造。
 类似资料:
  • 问题内容: 我有一个充满二维数据的数据库-地图上的点。每个记录都有一个几何类型的字段。我需要做的就是将一个点传递给存储过程,该存储过程返回 k个 最近的点(k也将传递给sproc,但这很容易)。我在http://blogs.msdn.com/isaac/archive/2008/10/23/nearest- neighbors.aspx上 找到了一个查询,该查询可以获取最近的单个邻居,但是我不知道

  • 校验者: @DataMonk2017 @Veyron C @舞空 翻译者: @那伊抹微笑 sklearn.neighbors 提供了 neighbors-based (基于邻居的) 无监督学习以及监督学习方法的功能。 无监督的最近邻是许多其它学习方法的基础,尤其是 manifold learning (流行学习) 和 spectral clustering (谱聚类)。 neighbors-bas

  • 我在计算最近的邻居。为此,我需要传递一个参数来限制与邻居的最大距离。比如半径1000米内最近的邻居是哪些? 我做了以下工作: 我用以下数据创建了我的表: 之后,我执行了以下查询: 第一个问题,巴西的SRID是4326吗?4269是什么? 第二个问题,通过执行以下SQL 这不会返回任何结果。据我所知,这个SQL将进一步指出最大距离的半径,对吗? 如果你把1000个结果放在100000000,我的所有

  • 我有一个巨大的表(大约4000万行),称为nearest_spot,表示行(以linestring格式)和它们所到的最近点(大约有1500个不同的点,存储在另一个表中)。最近的_点表如下所示: 其中data_id为主键,spot_id是spot表主键的外键,spot_name是spot名称(我知道冗余不好但我不允许修改数据库)和link_geom是行坐标。 数据库位于PostgreSQL 10.6

  • 问题内容: 我想知道是否有可能找到一个最接近的元素的元素 ,是不是 在那里。 例如,如果我们具有[1,3,6,7]值,并且正在寻找最接近4的元素,则它应返回3,因为3是数组中的最大数字,小于4。 我希望这是有道理的,因为英语不是我的母语。 问题答案: 如果数组已排序,则可以在以下位置进行修改的二进制搜索: