http://www.36dsj.com/archives/36545

1      概述

不同于传统互联网媒体,微博作为社交媒体最大的优势在于引入了非对等的用户关系,这种用户关系仅令传播更加高效。如果将微博中的用户视作节点,用户之间的关系视作节点之间的边,那么这些节点和边将构成一个社交的网络拓扑结构,或称作社交图谱,如图1所示。微博中的信息从社交图谱中的某个节点发出,并通过边来传播。

图1 微博中的社交图谱

但是信息在这个网络中的流动并不是无差别的,信息的起始点(信息的生产者),信息流动中所经历的节点(信息的传播者),节点之间关系的强弱(传播者相对生产者的亲密程度),以及这些节点构成的关系圈……都是影响信息流动广度和深度的重要因素。

构建用户关系模型,就是针对图1这种关系网络中的节点(代表了用户)、边(代表了关系和方向)、关系圈(代表了由关系聚合而成的群体)进行分析,全面地描述和刻画社交媒体的关系网络。

2      微博用户关系模型

2.1     量化节点的传播能力:传播力

从信息传播的角度看,当信息沿着边流经不同节点的时候,由于有些用户产生或传播的内容能够影响到更多的用户(如图1中比较大的节点),而有些用户的影响范围则非常有限(如图1中比较小的节点),那么他们给信息带来的“传播收益”(信息传播的广度与深度)也不一样。微博中采用传播力来量化这种重要程度。

传播力的计算基于一个基本假设:传播力沿着信息传播的路径反向传递。如图2所示。通俗解释是,传播力越高的用户在传播一条微博的时候,传递给上一级用户的传播力也越高;一个用户发出的微博被越多传播力高的用户转发,他的传播力也会越高。就像我们的身边总有那么几个大嘴巴,什么事情经他们一絮叨就会路人皆知,如果某天有件不露脸的事让他给散发出去了,你也随之出名了一样。

图2 信息传播路径(实线)&传播力传递方向(虚线)

这个假设与PageRank的思路是相似的。那么,需要做的就是收集一定量的微博的转发记录,构建传播力传递图,图中的节点是用户,边的方向代表了传播力的传递方向(微博传播路径反方向),边上的权重代表源用户(传递的起始用户)到目标用户(传递的接收用户)的传播力的分配比例,如图3所示。给定用户的初始传播力值,通过多轮迭代(传递),直到传播力值稳定。

图3 传播力传递图

2.2     计算关系边强度:亲密度

微博本身只通过方向性来区分关系边,也就是说任意u1、u2两个用户之间的关系存在三种情况“u1关注u2”“u2关注u1”“u1,u2互粉”。但相同类型的关系(例如“u1关注u2”和“u1关注u3”)存在强弱的区别,如果将方向性作为关系边的定性描述,关系强度则可以视作关系边的定量描述。 我们管关系边的强度称之为“亲密度”,由于关系边是存在方向性的,亲密度是一个用户对另一个用户的关注程度,衡量该有向边的强度。

能够反应亲密度的互动行为都可以被纳入到亲密度计算中,在微博中包括评论行为、转发行为、赞行为、提及(@)行为等。简单来说,这些行为在亲密度评价中都具有一定的权重,当用户u1关注了用户u2,u1对u2的这些行为越多越频繁,那么u1对u2的亲密度越高。

此外,还考虑两个因素:用户之间的关系类型以及用户本身的互动频率。首先,通常认为互粉关系的亲密度要比单向关注关系的亲密度高;其次,有些用户本身比较活跃,乐于互动(转、评、赞),那么体现出来他跟其他用户的互动行为较多,并不能说明他跟这些用户非常亲密,而有些沉默寡言的用户,虽然与其他用户互动少,但是体现出来的亲密度却更可靠。

2.3     关系协同:粉丝相似度 & 关注相似度

协同实际上利用了群体的智慧,无需关心item的属性,仅仅通过user对item的“评价”(购买、点击、评分都量化成一种评价值)来推测user之间或item之间的相似。

如果将一个用户对另一个用户的关注也视作一种“评价”,利用用户之间的关注构建关系矩阵,则很容易仿照协同过滤的方式来计算两个用户的相似性。如图4所示,矩阵中每行对应一个用户ur,每列对应一个被关注用户uc,当ur关注了uc的时候,对应的元素取值为1,该矩阵是N*N阶的。事实上,行代表了对应用户的关注列表,列代表了对应用户的粉丝列表。

图4 用户关系矩阵

当按行进行向量的相似性计算的时候,能得到用户的关注相似性(类似于User based CF);按列进行向量的相似性计算,能得到用户的粉丝相似性(类似于Item based CF)。此外,还可以用亲密度代替图4中元素的取值,相当于考虑了用户对关注用户的不同评价。

2.4     推导关系的延伸:二度关系

六度关系理论肯定了人和人之间的普遍联系,那么对于社交媒体中的用户关系,也可以突破直接的一度关系来进行延伸。如图5所示,用户u1(红色边框)与用户u2(绿色边框)和u3(蓝色边框)之间没有直接关系,但是分别存在一系列的桥梁用户,使得u1和u2以及u1和u3之间存在间接的二度关系(如图5中的绿色虚线)。

图5 二度关系示意图

正如我们衡量了一度关系的强弱(亲密度),二度关系也存在强度衡量的问题。二度关系的强弱通常考虑两个方面的因素:桥梁的数量,u1与桥梁之间的亲密度,桥梁与u2、u3之间的亲密度。这三个因素都与二度关系的强度成正比。

2.5     关系聚合:关系圈

社交媒体中用户之间的关系和社会关系中存在着很大的相似性,无论是双向好友关系、单向关注关系还是不同亲密度的关系……那么社交媒体中是否也能够找到类似社会关系中的关系圈呢:关系圈圈定了一系列互相存在关联的人,这些人之间不一定两两认识,但是一定是存在某种紧密的关联,而圈外人与关系圈则不具备这种关联,此外一个人可以身处不同的关系圈。

对于微博用户,根据关系网络的拓扑结构进行关系圈的挖掘,实际上就是根据该网络的内部紧密程度进行划分(图切分),被划分到相同子网络(子图)内的节点之间存在着趋于一致的关系,这种图切分通常分三步进行。

Step 1: 发现极大团

所谓极大团(Maximal Clique),就是图里面的子图,其中所有的节点之间两两存在着关系边。是一种极强的约束,通过遍历关系拓扑图,得到这种关系最紧密的用户群体。如图6所示,是微博关系拓扑中双向好友关系构成的一个极大团示例,在这个极大团里面,任何一个用户都与其他用户之间存在着双向好友关系。

图6 双向好友关系的极大团

Step 2:关系圈扩展

社会关系中的社交圈的约束并不像极大团这么强,同处一个社交圈的人不一定互相认识,也可能只是由于某些中间人导致他们存在一定的关联。因此,在极大团的基础上,还需要对关系圈进行扩展。扩展中需要指定一个标准来判定某个用户是否能够被划分到某特定的关系圈:向某个关系圈引入一个新节点后,该关系圈内部的紧密程度增加带来的收益要大于关系圈之间关联性增加带来的损失。

如图7所示,橙色关系边和红色关系边及其节点构成了两个极大团C1和C2(存在同一个用户同时属于C1和C2的情况)。如果将一个新用户u(图7底部有红色边框的用户)加入C1代表的关系圈,那么由于u与C1存在着关联(如图7中的绿色边),会增加改变C1的内部紧密性(内部边的条数);但同时由于u与C2也存在关联(如图7中的蓝色边),那么也会提高C1和C2之间的关联程度(增加了C1和C2之间边条数)。

图7 一个用户同时属于两个极大团

通过定义一个与关系圈内部紧密程度正相关,关系圈之间关联程度负相关的评价函数,关系圈每扩展一个用户都通过该函数是否增加来进行判断就可以了。扩展可以进行多轮。

Step 3:关系圈合并

最后,对于扩展结果中趋同的关系圈进行合并,当两个关系圈存在很大交集的时候将它们合并到一起。合并过程同样需要遵循评价函数提升的原则。

3      小结

微博中存在着一张关系大网,有的地方紧密,有的地方稀疏;用户存在于这张大网之中,与有些邻居亲密,与另一些却很疏远;信息在网格间游走,时而健步如飞,时而停滞不前……这可能是微博关系网络的真实写照。

用户的关系模型,就是从不同的角度去反应这种真实的情况:“传播力”体现了用户个体对信息传播的影响;“亲密度”体现了两个用户之间关系远近对信息传播的影响;“粉丝相似度”和“关注相似度”是从整个网络中去寻找具有相同认同感和被认同感的用户;“二度关系”是对直接的一度关系的扩展和延伸;“关系圈”则是从关系网络结构本身出发去寻找关联紧密的群体。这种划分和构建是逐步深入的,也符合平台业务发展和技术演进的规律。以上针对微博关系网络不同角度的刻画,是在社交媒体最基本的非对等关系模型基础上,结合了用户行为而产生的,对关系网络的刻画会更加细致和全面。

行走在网格之间:微博用户关系模型相关推荐

  1. HBase项目之谷粒微博:创建命名空间,微博内容表,用户关系表,微博收件箱表,发布微博内容,添加关注用户,移除(取关)用户,获取关注的人的微博内容,HBase实战项目

    Hbase实战之谷粒微博 1 需求分析 1) 微博内容的浏览,数据库表设计 2) 用户社交体现:关注用户,取关用户 3) 拉取关注的人的微博内容 2 代码实现 2.1 代码设计总览: 1) 创建命名空 ...

  2. 计算机系统层次模型,中常用的数据模型层次模型网格模型关系模型

    定义: 分层数据模型是使用树状结构组织数据的数据模型. 满足以下两个条件的基本层次关系集是层次模型 1. 只有一个节点,没有父节点,该节点称为根节点 2. 除根节点外,只有一个父节点 实际上,分层数据 ...

  3. sequelize模型关联_Node.js Sequelize 模型(表)之间的关联及关系模型的操作

    Sequelize模型之间存在关联关系,这些关系代表了数据库中对应表之间的主/外键关系.基于模型关系可以实现关联表之间的连接查询.更新.删除等操作.本文将通过一个示例,介绍模型的定义,创建模型关联关系 ...

  4. 关系模型中的三类完整性约束:实体完整性、参照完整性和用户定义完整性

    数据完整性 要想了解这三类完整性约束首先要了解什么是数据完整性.数据完整性是指数据库中存储的数据是有意义的或正确的,和现实世界相符.关系模型中三类完整性约束: – 实体完整性(Entity Integ ...

  5. 【解释】对用户透明=对用户隐蔽:关系模型的存取路径对用户透明

    在计算机中,从某个角度看不到的特性称该特性是透明的.这个意义上的"透明"与社会生活中的透明含义恰好相反,例如计算机组织对程序员是透明的,就是说计算机组织对程序员来说是看不到的,也不 ...

  6. 实体 联系 模型mysql_实体关系模型和关系模型之间有什么区别?

    你有倒退. ER模型中的关系是显式定义的,而在关系模型中则是隐式的. 否.每个关系模型(RM)数据库基表和查询结果都代表一个应用程序关系.实体关系建模(E-RM)模式只是一种组织(但使用不足和指定不足 ...

  7. R语言使用glm构建logistic回归模型,构建多个协变量和分组变量之间的关系模型进行倾向性评分计算、估计(Propensity score)、预测倾向性评分并可视化不同分组倾向性评分的分布

    R语言使用glm构建logistic回归模型,构建多个协变量和分组变量之间的关系模型进行倾向性评分计算.估计(Propensity score).预测倾向性评分并可视化不同分组倾向性评分的分布 目录

  8. R语言使用glm构建logistic回归模型,构建多个协变量和分组变量之间的关系模型进行倾向性评分计算、使用predict函数预测倾向性评分并将结果整合到dataframe中

    R语言使用glm构建logistic回归模型,构建多个协变量和分组变量之间的关系模型进行倾向性评分计算.估计(Propensity score).使用predict函数预测倾向性评分并将结果整合到da ...

  9. R语言使用glm构建logistic回归模型,构建多个协变量和分组变量之间的关系模型进行倾向性评分计算、估计(Propensity score)

    R语言使用glm构建logistic回归模型,构建多个协变量和分组变量之间的关系模型进行倾向性评分计算.估计(Propensity score) 目录

  10. 用户金字塔模型详解及在实际运营工作中的意义

    我这次分享的主题是讲用户金字塔,这个主题我大概是国内最早提出的. 我觉得这个概念比较实际一些,对大家平时的工作有帮助,所以今天我会讲的比较细一些. 关于我的个人经历(简述) 前面我先讲一下我的个人经历 ...

最新文章

  1. Learn OpenGL (九):基础光照
  2. ios app上架App Store需要多少费用?
  3. 【数字信号处理】线性时不变系统 LTI “ 输入 “ 与 “ 输出 “ 之间的关系 ( 线性卷积计算方法列举 | 线性卷积计算案例一 | 根据 线性卷积 定义直接计算 卷积 )
  4. 数字通信介绍(5)什么是MIMO?
  5. 我的Android进阶之旅------Android Gusture 手势识别小案例
  6. 美国纽约的一个摄像头!刷新即现奇迹!
  7. java数据库视频教程下载,【No147】最新oracle11g DBA 开发和应用数据库视频教程下载...
  8. 设置文字多行显示溢出显示省略号
  9. 质量体系审核中的10大常见场景,你遇到了几个?
  10. 彻底解决zend studio 下 assignment in condition警告
  11. roll() java_Java Calendar roll()用法及代码示例
  12. 百度SEO快克工具包 1.5.0 官方版
  13. 数组的操作与方法的操作 0303 2101
  14. 计算机组成原理华中科技大学秦磊华,计算机组成原理(华科)chap1
  15. 【目标检测】基于帧差法+Vibe算法实现车辆行人检测matlab源码
  16. 坦白说查看教程 Python
  17. STM32G030C8T6读写flash
  18. C++中cout的基础语法与换行符endl的用法
  19. flareghost(闪烁和光晕测试)
  20. 中国荫罩对准器市场深度研究分析报告

热门文章

  1. iOS之Swift实现二维码扫描
  2. python 异常 exception_关于Python中异常(Exception)的汇总
  3. 闭环系统零、极点位置对时间响应性能指标的影响
  4. 安装win7时,出现“windows无法安装到这个磁盘,选中的磁盘采用GPT分区形式”的处理方式
  5. CorelDRAW教程大全集
  6. aspcms修改数据报错问题
  7. 优秀的程序员真的不写注释吗?
  8. 如何视频录制电脑里播放的视频
  9. 【windows7 bluescreen蓝屏的解决方法】
  10. 文件夹的菜单栏和地址栏不见了