本帖最后由 今天 于 2022-4-14 17:59 编辑

请问在Jupyter Notebook中用Python做加权度中心性的算法有样例吗,networkx有这种方法吗?求助

  • Weighted Degree Centrality: the number of interactions you participate in.
  • 加权度中心性:您参与的互动次数。
举报 使用道具
| 回复

共 3 个关于本帖的回复 最后回复于 2022-4-15 16:06

Fuller 管理员 发表于 2022-4-14 18:48:38 | 显示全部楼层
你说的加权度,有没有详细的描述?你想解决什么问题?把应用的场景描述一下。

在一个图上面,两个节点相连的边上面有权重,那么,我认为一定是个有向图,要区分进和出,不然就没有研究的意义了。

比如,有一个社群,这是一个买卖社群,大家互通有无,A向C购买,也可能向D销售;又如,一个话题传播网络,A从B那里听了一个话题,有可能A会传播给C。

在这样一个网络上,站在某个节点上,比如,A,可以只考虑出方向,如果A出方向到C、E、G,总共有3条边,那么对他们的权重要做一个归一化处理,让三个总和是1。这样就为A构成了一个概率分布向量。也就是A听到一个话题以后,分别有多大概率传播给C、E、G,而且总概率是1,也就是说他肯定会传播出去的,如果他不传播,就没有研究的意义了,要把他剔除。

把每个节点(可能代表一个人)向其他节点传播的可能性都处理成一个概率分布向量,每个这样的向量中的所有元素加在一起得到1。

把所有这些向量作为列向量并排放在一起,组成一个矩阵。这就是一个概率转移矩阵。

当出现一个话题,一开始传播给了这个社群中的几个人,经过一定时间传播以后,就能知道每个人有多大概率知道这个话题。而且,无论一开始传播给了哪几个人,最后每个人知道这个话题的概率是一样的。也就是说,这是一个稳定系统,就像一个生态系统,老虎吃鸡,鸡吃虫,最后稳定了。

这就是一个典型的动态系统,经过发展,最后稳定到一个状态。这个状态是这个动态系统的特征。如果这个动态系统用上面构造的矩阵来表示,那么这个状态就是这个矩阵的最显著的那个特征向量。

用特征向量中心度计算方法就可以算。有一个专门的notebook可以使用
举报 使用道具
今天 新手上路 发表于 2022-4-15 12:13:39 | 显示全部楼层
好的,我明白了,我还想问一下咱们有一篇文章是说明Pagerank,第二种图传播方法计算不出,总是报错 module 'scipy.sparse' has no attribute 'coo_array',如何解决

在Jupyter Notebook中用Python做PageRank算法计算(https://www.gooseeker.com/doc/article-640-1.html)
举报 使用道具
Fuller 管理员 发表于 2022-4-15 16:06:31 | 显示全部楼层
今天 发表于 2022-4-15 12:13
好的,我明白了,我还想问一下咱们有一篇文章是说明Pagerank,第二种图传播方法计算不出,总是报错 module ' ...

我检查了这个notebook,没有看到使用scipy,是这个notebook吗?
举报 使用道具
您需要登录后才可以回帖 登录 | 立即注册

精彩推荐

  • Gephi社会网络分析-马蜂窝游记文本分词并同
  • Gephi社会网络分析-基于马蜂窝游记文本以词
  • 知乎话题文本根据词语间距筛选后生成共词矩
  • 马蜂窝游记文本分词后以词语间距为筛选条件
  • 学习使用apriori算法挖掘关联关系

热门用户

GMT+8, 2024-3-29 03:51