社交媒体用户行为分析方法研究第二章
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第二章 用户行为分析相关基础
2.1 社交网络中的用户行为
在线社交媒体服务是典型的以用户为中心的计算(Human Centered Computing, HCC),用户是在线社交网络服务的主体。在线社交媒体网络的基础是用户间相互建立的关系,用户以实名或者非实名的方式自主构建社交关系网络服务。因此对用户的行为进行分析具有重大的研究价值。
社交媒体用户行为是指社交媒体的用户在综合评估内在的自身感情需求、外在的社会影响以及社交技术等多方面因素的基础上做出的使用社交网络服务的意愿,以及因此引起的各种使用关系和活动的总和,是在线社交网络研究的重要内容。从广义上来说,社交网络中的用户行为可以分成三类:用户采纳与持续使用行为、用户个体使用行为和用户群体互动行为。
社交媒体用户采纳行为是指用户在亲身试用基础上和(或)在外在环境的影响下对社交媒体的正式接受和使用。而用户在较长一段时间内对社交媒体保持一定频率的使用称为社交媒体用户持续使用行为,它主要用于体现社交媒体用户的忠诚度。对于社交媒体运营商而言,用户的采纳行为只是其迈向成功的第一步,而大量用户的持续使用行为才是决定成功的关键。因此影响在线社交媒体的用户持续使用行为的因素,成为近年来研究的重点;
社交媒体用户个体使用行为可进一步细分为一般使用行为、内容创建行为及内容消费行为三个子类。使用行为指用户在社交媒体上不涉及具体文本内容的基本活动集合,例如用户在线时长规律等;内容创建行为(User-Generated Content, UGC)指用户积成为信息的制作者、发布者和传播者,即用户自身深度参与到在线社交媒体中;内容消费行为指用户消费他人创建的内容,以满足娱乐学习等需求,其中该消费行为可分为主动和被动两种方式;
用户群体互动行为是社交活动最核心的部分,也是信息有效传播的关键。用户群体互动行为涉及互动的关系选择、互动内容的选择以及互动行为的时间特性三个方面。关系选择指,根据已有的群体互动中历史交互记录,定性或定量地分析用户间的关系强度,依据关系强度选择互动对象。群体互动时对参与讨论、传播的内容选择,,主要受到同质性因素、互惠性因素以及外部因素的影响。同质性是指具有相似兴趣爱好的用户选择彼此发布的信息内容进行互动,即所谓的“物以类聚,人以群分”。互惠性是指用户在社交媒体上出于礼貌或习惯,选择其他用户发布的信息内容进行互动,也就是通常所说的“投桃报李”。内容曝光次数等则属于外部因素。社交媒体群体在互动过程中的时间特征由群体
互动的时间规律体现,其研究内容主要集中于分析行为发生的时间间隔分布,如用户登录社交网站的时间间隔、用户的发帖时间间隔等。研究方法主要是通过对大规模在线社交数据集的挖掘,进一步发现用户间的互动时间规律。
本文主要以Twitter平台的用户作为研究对象。Twitter是社交媒体中给用户提供的功能比较全面的一个平台,用户行为多样,并且该平台也提供了API(Application Programming Interface,应用程序编程接口)接口,以方便研究者们抓取和采集数据进行更深一步探究。用户行为分析
2.1.1 定向用户识别
推特被不同的人以不同的目的使用。例如,新闻媒体使用推特向大众推送实时的新闻报道,一些特定的组织会使用推特发布通知给该组织的成员。与此同时,推特也可以被用于与朋友交流、参与某个感兴趣的话题进行讨论等目的。
基于推文面向对象的不同,可以将发推文的用户分为两类:一类被称为定向用户,特征是他们的账号将发送推文给某个特定的目标群体,例如@ACMHT这个账号,它发布的推文都是与ACM HyperText Conference相关的,只有对该领域感兴趣的人才会去关注该账号,接收到该账号发布的推文;一类被称为非定向用户,他们的账号发布推文是面向全体用户的,而不是某个特定的领域,例如上文提到的普通新闻媒体,@Everyday_News,该账号发布每日最新的新闻,没有明确的主题,也没有明确的受众。
为了将推特用户分类为定向用户和非定向用户,Hikaru等提出了异常一致性的概念,用于衡量一个用户的推文受众相对于普通的大众推特用户而言有多特殊。所谓异常一致性,指的是一个集合所具有的元素的属性,相对于全集而言罕见的程度。例如图2-1表示的是集合A具有10个以圆圈表示的集合元素,其中灰色表示具有某种属性a,而白色圆圈表示该元素具有另一种属性b。如果在全集中,属性a十分稀有,那么集合A具有的异常一致性分数就会比较大。因为集合A的元素,很多都具有属性a。
图2-1 高异常一致性集合案例1
另外,并不是说一个集合所包含的元素没有某种属性占绝大多数,就不具有较高的异常一致性分数。如图2-2所展示的是另一个同样具有10个元素的集合B。可以看出,B包含5个用灰色表示属性a的元素,和5个用白色表示属性b的元素。虽然该集合没有哪一种属性占据上风,但是如果相对于全集而言属性a和b都是比较稀有的属性,那么从宏观上看B包含的元素都具有比较罕见的属性,因此B也是一个具有较高异常一致性分数的集合。
图2-2 高异常一致性集合案例2
在社交网络中,一个个用户就可以视为一个个集合,集合的元素就是该用
户的粉丝。这样就利用关注关系将用户串联起来了。因为根据文献[7]提供的数据,约70%的用户关注超过80%的关注者,而约80%的用户会拥有80%的朋友关注他们,这表明“关注”这一行为具有着复杂的互惠性和同质性:一方面,“关注”关系是如此随意,以至于每个推特用户都可能只是随机的关注了另外一个用户,而被关注的用户也只是出于礼貌而进行相互关注。另一方面,情况可能恰恰相反,即“关注”关系是用户之间相似性的有力指标。换句话说,推特用户关注另一个用户是因为他对该用户在推特中发布的推文的主题感兴趣,而该用户会相互关注是因为他发现他们有对某个主题有相似的兴趣。这种现象称为“同质性”,并且已经在许多社交网络中观察到。这种基于话题的同质性,正是异常一致性的理论基础。
2.1.2 用户影响力分析
在社交媒体上的用户相互连接,构成社交网络。社交网络中的用户的行为、观点和情感受总是会受到社交网络中其他用户的影响,这种影响就是用户的影响力。用户影响力是复杂且非线性的,有多种表现形式,并且其潜在机制目前尚不清楚。但是这种影响力所带来的影响总是可以实际观测到的。如图2-3所示,中心的圆圈是我们给定的被观测用户v,该用户的朋友用黑色圆圈表示,其他用户用灰色圆圈表示。假如该用户的朋友购买了某项产品或者参与了某个话题的讨论,那么受此影响的用户v是否会购买同样的产品或者参与同样的话题的讨论?通过这种用户行为可以来评估用户的影响力大小。
图2-3 用户影响力示意图
在正式分析用户影响力之前,首先给出下文需要使用到的定义与假设:
2.1.2.1 基本定义
r跳邻居和r跳中心网络:假设使用图 表示一个静态社交网络,其中,V表示图中的点,也就是社交网络中的用户,而 表示用户之间的连接关系。那么对于给定用户v,其r跳邻居 被定义为:
(2-1)
其中, 表示在图G中用户u和v之间的最短跳数。用户u的r跳中心网络被定义为基于 的 的子图。
社交行为:社交网络中的用户社交行为被定义为用户的发送推文、转发推文的行为。对于每个时间戳时刻t,对于给定的用户u,定义社交行为为 。其中当 时表示用户u在时刻t进行了社交行为,当 表示用户u在时刻t没有进行社交行为。
2.1.2.2 问题描述
根据上述定义,我们引入影响力局部性假设。这相当于一种封闭世界的假设:用户的社会决策和行为仅受网络内近邻的影响,而假定外部影响不存在。事实上,在一个真实的社交媒体中,一个用户不仅会受到该网络内其他用户,尤其是 跳邻居用户的影响,还会受到包括现实世界在
内的多种外部条件的影响,但是根据文献[28]的实验, 跳邻居的影响可以达到总影响的85%-95%,因此提出这种假设不会影响最终实验效果。
基于以上定义和假设,本文提出所要探究的问题:给定 和 ,用户影响力预测的目标是在经过某一时间间隔 之后,求出用户u在时间 时进行了社交行为的概率,即:
(2-2)
因此,假如有N个用户实例,每个用户实例构成一个三元组 ,其中v表示用户,a表示用户的社交行为,t表示一个时刻。对于这样一个由用户实例表示的三元组 ,也能采集到该用户的r跳中心社交网络图 、该用户的r跳邻居的社交行为 和经过的时间间隔 ,因此可以将用户的影响力预测问题转化为一个机器学习中的二分类问题,进而可以视为一个通过调整下式的负概率对数来使得整体最小的求最值的优化问题:
(2-3)
另外,在本文所研究的用户影响力预测问题中,时间间隔 并不是一个极短的时间,这个时间窗口通常为1小时、12小时或者24小时。
2.2 用户分类技术
本文所研究的组织账号识别问题属于账号分类问题。账号分类是指依据账号的某些特征或者某些属性将未知类别的账号归类到已知类别体系中的过程。账号分类其实就是一个映射过程,系统通过分析数据库中同类样本的相似性或不同类样本的差异性,总结出分类准则和判别公式,通过生成的类别判别规则,对未知类别账号进行类别判定,识别出账号所属的类别。
账号分类通常采取有监督的机器学习来进行分类。在机器学习中,分类是有监督的学习的一种方式,指的是通过采集已知分类标签的样本数据,对分类器进行训练,再对待分类数据进行分类操作的过程。有监督学习指存在大量已标记的样本数据,将样本数据进行分类或回归等操作,预测样本数据的标签,并用已标记的标签对预测标签进行校正的学习过程;而无监督学习中的样本数据都是没有标签的,仅凭数据之间的关系等特征来对所有样本数据进行聚类等操作,划分为多个不同的子集。在本文账户分类算法的实现中,会用到以下几种经典的机器学习算法,在此将对其进行详细阐述。
2.2.1 随机森林
在机器学习理论中,随机森林(RandomForest,RF)指的是一个包含多个决策树的分类器,该分类器最早由Leo Breiman和Adele Cutler提出。随机森林分类是组合分类模型,由很多决策树分类模型组成的,每个决策树分类模型都有一票投票权来选择最优的分类结果。随机森林分类的基本思想主要有三个步骤,首先,从原始训练集中利用bootstrap抽样抽取k个样本,每个样本的样本容量都与原始训练集相同;接着,分别对k个样本建立k个决策树模型
,得到k种分类结果;最后,根据k种分类结果对每个记录进行投票表决,以此决定其最终分类。
随机森林除了可以用来进行分类外,还可以用来评估特征的重要度。而对随机森林的衡量特征重要度量主要是依靠袋外样本误差(Out of Bag error,OOB error),单独训练每个分类模型时会有一部分样本不参与训练,这些样本就被称为袋外样本,用袋外样本作为测试集可以获取该模型的泛化误差。对于每个特征,我们可以计算删除这个特征前后所引起的袋外样本误差变化衡量这个特征的重要度,袋外样本误差变化越大,这个特征越重要,袋外样本误差变化越小,这个特征越不重要。随机森林还可以很好地处理样本数据中出现缺失值的情况,通常情况下,如果数据样本出现了缺失值,随机森林会采取如下的处理方式:如果缺失值是离散型数据,用样本集数据的众数填充,如果缺失值是连续型数据,用样本集数据的中位数填充,将所有数据样本进行模型训练,再用与缺失值样本所属类别相同的数据样本的众数或中位数替换之前的填充数据,以相同方式处理4到6次,就可以获得不错的填充效果。构造随机森林的步骤是:
(1)假如有N个样本,则有放回的随机选择N个样本(每次随机选择一个样本,然后返回并且继续选择)。被选择的N个样本用来训练一个出决策树,作为决策树根节点处的样本;
(2)假设每个样本有M个属性,在决策树的每个节点需要分裂时,则随机地从这M个属性中选取出m个属性,并且需要满足条件m << M。然后从这m个属性中采用某种方法(比如说信息增益)来挑选出1个属性作为该节点的分裂属性;
(3)决策树形成过程中每个节点都要按照步骤2来分裂(因为如果下一次该节点选出来的那个属性是刚刚其父节点分裂时用过的属性,则该节点已经达到了叶子节点,其实无须继续分裂了)。一直到不能够再分裂为止。必须注意的是整个决策树形成过程中没有进行剪枝;
(4)按照步骤(1)~(3)建立大量的决策树,这样就构成了随机森林了。
图2- 4 随机森林投票流程图
由于随机森林采用的是集成学习的方式,因此一般具有极好的分类效果,准确性很高。通过引入样本随机抽样和特征随机抽样两种随机性,使得随机森林很难发生过拟合,并且还使其具有很好的稳定性。同时,高维度的数据就既不需要做特征选择,也无需做训练集的规范化处理。随机森林对数据类型没有要求,无论是离散型数据还是连续型数据都能进行处理。而且随机森林很容易实现并行处理。因此,随机森林经常是众多分类模型中的最佳选择。
2.2.2 SVM
SVM指的是支持向量机