将社交网络看成图

社交网络的基本概念:

  1. 社区(community):是指具有非同寻常的强连通性的节点子集,其中节点可以是构成网络的人或者其他实体。
  2. 局部性(locality):是指社交网络的节点和边趋向于聚为社区的这种性质。

社交网络的基本特点:

  1. 一大堆实体参与了网络的构成;
  2. 网络实体间至少存在一种关系,且关系要么存在要么不存在,关系也可以表示为度数,其中度数可为离散值和实数值;
  3. 对于社交网络有一个非随机性或局部性假设,其直观意义是关系倾向于聚团,即如果A与B和C都关联,那么B和C相互关联的概率会高于平均值。

社交图(social graph):将社交网络看成图,图的节点为实体,如果节点间存在刻画该网络的关系,则节点间有一条边。如果关系存在强弱之分,则每条边上还标识出关系的强弱程度。社交图可为无向图(eg:朋友图),也可为有向图(eg:粉丝关注图)。

K部图(k-partite graph):多类型节点构成的社交图。

社交网络图的聚类

对社交网络应用层次聚类:

  1. 将两个有边连接的节点聚成一类;
  2. 不在同一簇内节点间的边被随机(每条边代表的距离一样)选出,来合并这两个节点所属的簇;
  3. 重复第二步。

注:采用纯聚类算法永远不可能识别出重叠社区。可以降低发生错误概率的方法:

  1. 运行多次层次聚类算法,选择最具有紧致性(coherent)的聚类结果;
  2. 选择一个更负责的方式来计算多余一个节点的簇之间的距离。

中介度

一条边(a,b)的中介度(betweenness):节点对(x,y)的数目,其中(a,b)处于x和y的最短路径上。由于x和y之间可能存在多条最短路径,边(a,b)的贡献记为这些路径中通过边(a,b)的比例。高分意味着成绩差,如果边(a,b)的中介度高,则意味着它处于两个社区之间,即a和b不属于同一社区。

Girvan-Newman算法

该算法访问每个节点X一次,计算X到其他连接节点的最短路径数目。以下是算法步骤:

  1. 首先从节点X开始对图进行宽度优先搜索(BFS),每个节点的深度就是该节点到X的最短路径距离。
  2. 将每个接单用根节点到它的最短路径数目来标记,首先将根节点标记为1,然后从上往下,将每个节点Y标记为其所有父节点上的标记值之和。
  3. 对每一条边e,和对所有节点Y,计算Y到根节点X经过e的最短路径比例之和,这是一个自下而上对节点和边的求和过程。除去根节点之外的每个点都给个分值1,表示到该节点的最短路径。计算规则如下:
    1. 有向无环图(DAG,Directed Acyclic Graph)中的每个叶节点都赋予分值1;
    2. 每个非叶节点给的分值1加上从该节点到其下层节点的所有DAG边的分值之和;
    3. 从上层节点到下层节点Z的DAG边上的分值为Z的分值乘上从根节点到Z的最短路径中含e的比例。

将每个节点都作为根节点计算一遍之后,将每条边的分值求和。由于每条最短路径会重复发现两次,因此最后每条边的分值还要再除以2.

利用中介度来发现社区

  • 常见做法:是从一个包含全部边的中介度,不断去掉具有最高中介度的边,直到图分裂为合适数目的连通分量为止。
  • 存在的局限性:不可能把一个节点分配到两个社区中,这导致每个节点最终都分配到各自社区中。

社交网络图挖掘1--将社交网络看作图及其聚类相关推荐

  1. 社交网络图挖掘3--重叠社区的发现及Simrank

    重叠社区的发现 相关知识点 关系图模型 避免成员隶属关系的离散式变化 Simrank 带重启的随机游走 重叠社区的发现 相关知识点 社区的本质:一个实体有可能同时属于两个社区,任一社区内的边会十分密集 ...

  2. 社交网络图挖掘5--图的邻居性质

    有向图和邻居 图的直径 传递闭包和可达性 有向图和邻居 有向图(directed graph):是指一个包含节点集合和有向边集合的图,每条有向边写成u→vu\rightarrow v,其中uu为有向边 ...

  3. 社交网络图挖掘4--三角形计数问题

    计算一个随机图中的三角形数目期望值 由n个节点和m条边随机构成的图的中: 图中总共有(n3)=n3/6\bigl( \begin{smallmatrix} n \\ 3 \end{smallmatri ...

  4. 社交网络图挖掘2--社区的直接发现和图划分

    社区的直接发现 相关概念 利用完全二部图发现社区 图划分 图划分的好坏标准 归一化割 描述图的一些矩阵 社区的直接发现 通过寻找有很多连边的节点子集直接发现社区的技术. 相关概念 团(clique): ...

  5. 社交网络图中结点的“重要性”计算

    社交网络图中结点的"重要性"计算 // @author: Folivora Li // @copyright: Folivora Li/*10.[1] 社交网络图中结点的" ...

  6. 基于新闻数据的社交网络图数据分析实战

    图数据处理 在这一部分,实现了对数据文件进行按词性的分词,提取其中的实体并建立社交网络,对该社交网络进行基本的数据分析. 数据文件来源于人大新闻网的新闻内容,利用结巴分词对数据文件中的新闻标题和正文内 ...

  7. 用python画关系网络图-使用python画社交网络图实例代码

    在图书馆的检索系统中,关于图书的信息里面有一个是图书相关借阅关系图.跟这个社交网络图是一样的,反映了不同对象间的关联性. 利用python画社交网络图使用的库是 networkx,更多关于networ ...

  8. Python绘制节点是饼状图的社交网络图(Plot network with pie chart)

    目录 问题描述 问题拆解 数据准备 绘图思路 代码实现 总结 成图 network 性质 参考 问题描述 专业描述:想要绘制一幅社交网络图,并且每个节点上绘制一个饼状图. 大白话:韩韩(楼主)有一天突 ...

  9. 微博社交圈子挖掘所面临的困难

    我很喜欢<亮剑>这部电视剧,李云龙经常说:我们不能打了半天,不知道敌人是谁. 所以 ,这一篇文章,我简单分析一下,微博社交圈子挖掘目前遇到的问题是什么?不能分析了半天,只注重结果如何如何, ...

最新文章

  1. Ubuntu14.04上编译指定版本的protobuf源码操作步骤
  2. 原生js写三级联动 java_原生js三级联动的简单实现代码
  3. 网络基础知识-TCP/IP协议各层详解
  4. MaxCompute实践分析
  5. 最优化理论与方法(part2)--矩阵求逆和广义逆
  6. P1092虫食算-深度优先搜索+玄学剪枝
  7. 【Verilog】数据流建模传输问题:赋值传输有方向
  8. 查看grafana版本_使用 Prometheus 与 Grafana 为 Kubernetes 集群建立监控与警报机制
  9. 微软BI 之SSIS 系列 - 理解Data Flow Task 中的同步与异步, 阻塞,半阻塞和全阻塞以及Buffer 缓存概念...
  10. linux调度器(九)——调度器的配置参数
  11. Python 100例
  12. 轴承后缀ce和ca_轴承cc和ca与cde4有什么区别
  13. 微信小程序即时通讯(融云sdk)
  14. SXLib3D -- 一款高效的点云和网格交互处理平台
  15. 社区问答系统(CQA)简单概述
  16. Received empty response from Zabbix Agent at [agent]. Assuming that agent dropped connection because
  17. KILE无法软件仿真
  18. java生成excel表格
  19. 2021年最火的前端框架
  20. es6-generator抽奖

热门文章

  1. ArcGis License 启动失败
  2. 《iOS 6高级开发手册(第4版)》——1.11节秘诀:获取和使用设备姿势
  3. 【转载】mysql慢查询
  4. backgroundworker控件的使用(线程传值)
  5. 红包规则_“科普闯关100%夺红包”游戏规则升级了!速速来看!
  6. 计算机与智能化专业课程,人工智能专业课程有哪些 大学本科课程设置
  7. 综述|深度学习在SLAM定位与建图中的应用(近250篇参考文献)_3D视觉工坊的博客-CSDN博客
  8. @PropertySource读取外部配置文件中的k-v保存到运行的环境变量中,加载完微博的配置文件以后使用${}取配置文件中的键值
  9. 高昆仑大数定律 中心极限定理
  10. 2021 几何图机器学习大盘点 | 几何深度学习先驱 Michael Bronstein长文解读