加入收藏 | 设为首页 | 会员中心 | 我要投稿 惠州站长网 (https://www.0752zz.com.cn/)- 办公协同、云通信、物联设备、操作系统、高性能计算!
当前位置: 首页 > 建站 > 正文

PageRank、最小生成树:ML开发者应该了解的五种图算法

发布时间:2019-09-10 03:24:57 所属栏目:建站 来源:佚名
导读:副标题#e# 在互联世界中,用户不能被视为独立的实体。他们之间存在一定的关系,我们有时希望在构建机器学习模型时考虑到这些关系。 在关系数据库中,我们无法在不同的行(用户)之间利用这种关系,但在图数据库中,这样做非常简单。 在这篇文章中,我们将讨

现在我们面临另一个问题。假设我们在水管铺设公司或电线公司工作。我们需要使用最少的电线/管道来连接图中所有城市。我们如何做到这一点?

PageRank、最小生成树:ML开发者应该了解的五种图算法

左: 无向图; 右: 对应 MST

应用

  • 最小生成树在网络设计中有直接应用,包括计算机网络、电信网络、交通网络、供水网络和电网(最初是为它们发明的)。

  • MST 用于近似旅行商问题。

  • 聚类:首先构建 MST,然后使用类间距离和类内距离确定阈值,用于打破 MST 中某些边。

  • 图像分割:首先在图上构建 MST,其中像素是节点,像素之间的距离基于某种相似性度量(颜色、强度等)

代码

  1. # nx.minimum_spanning_tree(g) returns a instance of type graph 
  2. nx.draw_networkx(*nx.minimum_spanning_tree*(g)) 

PageRank、最小生成树:ML开发者应该了解的五种图算法

左: 无向图; 右: 对应 MST.

Pagerank

PageRank、最小生成树:ML开发者应该了解的五种图算法

上图为谷歌提供长期支持的页面排序算法(page sorting algorithm)。它根据输入和输出链接的数量和质量为页面打分。

应用

Pagerank 可用于任何我们想要估算网络节点重要性的地方。

  • 它已被用于查找影响力最高的论文;

  • 它已被 Google 用于网页排名;

  • 它可用于将推文-用户和推文排序为节点。如果用户 A 跟帖用户 B,则在用户之间创建链接;如果用户发推/转推,则在用户和推文之间建立链接;

  • 推荐引擎。

代码

在本次练习中,我们将使用 Facebook 数据。我们在 facebook 用户之间有一个边/链接文件。首先通过以下方法创建 Facebook 图:

  1. # reading the dataset 
  2. fb = nx.read_edgelist('../input/facebook-combined.txt', create_using = nx.Graph(), nodetype = int) 

(编辑:惠州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

推荐文章
    热点阅读