使用 NetworkX 进行社交网络分析:简要介绍 了解 Facebook 和 LinkedIn 等公司如何从网络中获取洞察

Netflix 等流媒体平台如何推荐适合您晚上观看的完美电影?我们如何优化足球等运动中的球员位置?我们如何识别金融网络中的欺诈活动?我们如何预测 Tinder 等约会应用程序中的匹配情况?

所有这些挑战都有相同的解决方案:社交网络分析。

社交网络分析 (SNA) 是一个强大的数据科学领域,可以探索实体网络内复杂的关系,发现隐藏的模式并捕获见解。网络实体可以是一切:它们可以是 Instagram 等社交网络上的人、互联网上的网站,甚至是锦标赛网络中的运动队。

在下面的部分中,我将帮助您了解什么是数据科学中的网络,我将描述最常见的类型,并且我将实现几种算法以从网络中提取有价值的信息。

所有理论部分都将与实际例子相结合。您将找到几个Python 代码片段来熟悉NetworkX Python 库。

了解网络

网络,也称为图,是信息的特殊表示,由两个基本组件组成:节点和边。

节点是网络的构建块。它们代表网络内的各个实体。它们可以模仿各种各样的事物,例如社交网络中的人,以及生物网络中的基因。

相反,边表示节点之间的关系。它们可以定义两个人之间的交互、关联或依赖关系。边可以是有向的,这意味着它们表示的关系从一个节点到另一个节点。想象一下代表一个人向另一个人支付的有向边,了解货币兑换的方向确实是有益的。这种不对称性用箭头表示。

在NetworkX中,节点和边很容易表示如下:

import networkx as nx

# Create an instance of a graph
G = nx.Graph()

# Create an edge between two nodes. The nodes will be also created.
G.add_edge('A', 'B', weight=6)

上面的“Hello world”代码的结果是这个小而幼稚的网络:

image.png
还有 86% 的精彩内容
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
支付 ¥5.98 继续阅读

相关阅读更多精彩内容

友情链接更多精彩内容