CN107590558A - 一种基于多层集成学习的微博转发预测方法 - Google Patents
一种基于多层集成学习的微博转发预测方法 Download PDFInfo
- Publication number
- CN107590558A CN107590558A CN201710783927.0A CN201710783927A CN107590558A CN 107590558 A CN107590558 A CN 107590558A CN 201710783927 A CN201710783927 A CN 201710783927A CN 107590558 A CN107590558 A CN 107590558A
- Authority
- CN
- China
- Prior art keywords
- microblogging
- forwarding
- microblog
- prediction
- microblog users
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Abstract
本发明一种基于多层集成学习的微博转发预测方法,属于社会网络分析和网络舆情监控领域。包括如下步骤:构建微博数据集;微博数据预处理;提取微博用户的个人特征和社交特征;提取微博用户的微博内容特征;采用基于贝叶斯的方法进行微博转发预测;采用基于支持向量机的方法进行微博转发预测;采用基于逻辑回归的方法进行微博转发预测;采用基于随机森林的方法进行微博转发预测;采用基于集成学习的方法进行微博转发预测。本发明提高了微博转发预测性能,在社会媒体处理、意见挖掘、信息安全等领域具有广阔的应用前景。
Description
技术领域
本发明涉及一种基于多层集成学习的微博转发预测方法,属于社会网络分析和网络舆情监控领域。
背景技术
微博转发预测包括微博转发预测特征提取和微博转发预测两个关键问题。微博转发预测特征包括微博内容特征和微博用户特征。主要的微博转发预测方法包括基于贝叶斯、随机森林、逻辑回归、BP神经网络(Back Propagation Neural Network)以及协同过滤的方法等。
谢婧等在文献《社交网络中的用户转发行为预测》(上海交通大学学报,2013)中,以新浪微博为处理对象,设计了一种基于微博主题和用户特征的微博转发行为预测方法。该预测方法首先根据待预测微博转发的用户的微博内容与转发用户的微博内容的相关度,预测用户对给定主题的微博是否会转发;然后根据用户性别和粉丝数等用户特征,采用贝叶斯模型预测用户对微博的转发概率;最后,根据这两种算法的预测结果,预测用户对给定主题的微博是否会转发。
曹玖新等在文献《新浪微博网信息传播分析与预测》(计算机学报,2014)中,分析了影响用户转发行为的各种因素,构建了用户属性、社交关系和微博内容特征,采用朴素贝叶斯、贝叶斯网络和逻辑回归三种分类方法来预测用户的微博转发行为。
现有微博转发预测方法存在受限于单个分类方法性能的问题,因此,迫切需要一种微博转发预测方法,以提供高性能的微博转发预测服务。
发明内容
本发明的目的是针对现有微博转发预测方法存在受限于单个分类方法性能的问题,提出一种基于多层集成学习的微博转发预测方法。
本发明的核心思想为:本发明共采用十二种基分类器进行微博转发预测。具体地说,第一层集成学习融合基于用户个人特征的贝叶斯模型的预测方法、基于用户社交特征的贝叶斯模型的预测方法、基于内容特征的贝叶斯模型的预测方法,形成基于贝叶斯模型的微博预测方法;融合基于用户个人特征的支持向量机模型的预测方法、基于用户社交特征的支持向量机模型的预测方法、基于内容特征的支持向量机模型的预测方法,形成基于支持向量机模型的微博预测方法;融合基于用户个人特征的逻辑回归模型的预测方法、基于用户社交特征的逻辑回归模型的预测方法、基于内容特征的逻辑回归模型的预测方法,形成基于逻辑回归模型的微博预测方法;融合基于用户个人特征的随机森林模型的预测方法、基于用户社交特征的随机森林模型的预测方法、基于内容特征的随机森林模型的预测方法,形成基于随机森林模型的微博预测方法;第二层集成学习融合基于贝叶斯模型的微博预测方法、基于支持向量机模型的微博预测方法、基于逻辑回归模型的微博预测方法和基于随机森林模型的微博预测方法,形成基于集成学习的微博转发预测方法,即通过多层集成学习模型来提高微博转发预测性能。
本发明的目的是通过以下技术方案实现的。
本发明一种基于多层集成学习的微博转发预测方法所基于的一种基于多层集成学习的微博转发预测系统,简称微博转发预测系统,包括信息采集模块、信息预处理模块、用户特征提取模块、微博内容特征提取模块、基于贝叶斯的微博转发预测模块、基于支持向量机的微博转发预测模块、基于逻辑回归的微博转发预测模块、基于随机森林的微博转发预测模块,以及基于集成学习的微博转发预测模块;
微博转发预测系统中各模块的连接关系为:
信息采集模块与信息预处理模块、用户特征提取模块、微博内容特征提取模块相连;信息预处理模块与用户特征提取模块和微博内容特征提取模块相连;用户特征提取模块与基于贝叶斯的微博转发预测模块、基于支持向量机的微博转发预测模块、基于逻辑回归的微博转发预测模块相连、基于随机森林的微博转发预测模块相连;微博内容特征提取模块与基于贝叶斯的微博转发预测模块、基于支持向量机的微博转发预测模块、基于逻辑回归的微博转发预测模块相连、基于随机森林的微博转发预测模块相连;基于贝叶斯的微博转发预测模块与基于集成学习的微博转发预测模块相连;基于支持向量机的微博转发预测模块与基于集成学习的微博转发预测模块相连;基于逻辑回归的微博转发预测模块与基于集成学习的微博转发预测模块相连;基于随机森林的微博转发预测模块与基于集成学习的微博转发预测模块相连;
所述信息采集模块用于采集微博网页,获取微博信息和微博用户信息,并将此两类信息保存到本地数据库;其中,微博网页可以是新浪微博网页;
所述信息预处理模块用于对所述信息采集模块采集的微博网页进行预处理,包括正文提取和对正文进行分词;
所述用户特征提取模块用于对所述信息采集模块获取的微博信息和微博用户信息以及所述信息预处理模块获得的微博正文分词结果,提取微博用户的个人特征和社交特征;
所述微博内容特征提取模块用于对所述信息采集模块获取的微博信息以及所述信息预处理模块获得的微博正文分词结果,提取微博的内容特征;
所述基于贝叶斯的微博转发预测模块用于对所述用户特征提取模块和所述微博内容特征提取获得的特征,采用贝叶斯方法进行微博转发预测;
所述基于支持向量机的微博转发预测模块用于对所述用户特征提取模块和所述微博内容特征提取获得的特征,采用支持向量机方法进行微博转发预测;
所述基于逻辑回归的微博转发预测模块用于对所述用户特征提取模块和所述微博内容特征提取获得的特征,采用逻辑回归方法进行微博转发预测;
所述基于随机森林的微博转发预测模块用于对所述用户特征提取模块和所述微博内容特征提取获得的特征,采用随机森林方法进行微博转发预测;
所述基于集成学习的微博转发预测模块用于对所述基于贝叶斯的微博转发预测模块、所述基于支持向量机的微博转发预测模块、所述基于逻辑回归的微博转发预测模块、所述基于随机森林的微博转发预测模块进行集成学习。
一种基于多层集成学习的微博转发预测方法,包括如下步骤:
步骤1:信息采集模块采集微博网页,获取微博信息和微博用户信息,并将其保存到本地数据库;
其中,微博网页可以是新浪微博网页;
步骤1具体包括如下步骤:
步骤1.1:把种子微博用户的微博ID输入信息采集模块;
其中,种子微博用户是根据用户需求选择的微博用户;
步骤1.2:信息采集模块爬取种子微博用户的微博信息、粉丝列表、关注者列表以及种子微博用户信息,保存到本地数据库;
其中,种子微博用户信息包括性别、注册日期、粉丝数、关注数、发微博数、是否认证;每条微博信息包括微博正文、转发数、评论数、表态数;
步骤1.3:信息采集模块再将种子微博用户的粉丝列表放入爬取队列中,采集爬取队列中粉丝作为微博用户的微博信息、粉丝列表、关注者列表以及微博用户信息,保存到本地数据库;
微博信息包括微博正文、转发数、评论数、表态数。微博用户信息包括性别、注册日期、粉丝数、关注数、发微博数、是否认证;
步骤2:信息预处理模块对微博网页进行预处理;
其中,信息预处理模块对微博网页进行预处理,包括正文提取以及对提取的正文进行分词处理;
步骤3:用户特征提取模块提取步骤1.1中种子微博用户和步骤1.3中微博用户的个人特征和社交特征;
其中,微博用户个人特征包括性别、粉丝数、关注数、发微博数、是否认证和注册天数;
微博用户社交特征包括:微博用户影响力、微博用户与预测微博转发者的亲密度、微博用户与预测微博转发者的兴趣相似度;
其中,微博用户影响力采用谷歌的Pagerank算法来计算;
微博用户x与预测微博转发者y的亲密度的计算方法为:预测微博转发者y转发微博用户x的微博数量与预测微博转发者y转发微博的总数量之比;
微博用户x与预测微博转发者y的兴趣相似度的计算方法为:
步骤3.1:对微博用户x和预测微博转发者y的微博文本进行分词;
步骤3.2:计算词语的词频-逆文档频率(Term Frequency-Inverse DocumentFrequency,TF-IDF)值,构建微博用户x的特征向量v1,预测微博转发者y的特征向量v2;
步骤3.3:计算特征向量v1和特征向量v2的余弦相似度,作为微博用户x与预测微博转发者y的兴趣相似度;
步骤4:微博内容特征提取模块提取步骤1.1中种子微博用户和步骤1.3中微博用户的微博内容特征;
其中,微博内容特征包括微博正文长度、转发数、评论数、表态数、微博正文与预测微博转发者的兴趣相似度;
其中,微博正文长度、转发数、评论数、表态数通过信息采集模块提取;
微博正文与预测微博转发者的兴趣相似度的计算方法为:
步骤4.1:对微博正文t和预测微博转发者y的微博文本进行分词;
步骤4.2:计算词语的词频-逆文档频率TF-IDF值,构建微博正文t的特征向量v3,微博预测转发者y的特征向量v4;
步骤4.3:计算特征向量v3和特征向量v4的余弦相似度,作为微博正文t与微博预测转发者y的兴趣相似度;
步骤5:基于贝叶斯的微博转发预测模块采用基于贝叶斯模型的方法进行微博转发预测;
设微博内容特征集合F1={f11,f12,f13,f14,f15},f11表示微博正文长度,f12表示转发数,f13表示评论数,f14表示表态数,f15表示微博正文与微博预测转发者的兴趣相似度;个人特征集合F2={f21,f22,f23,f24,f25,f26},f21表示性别、f22表示粉丝数、f23表示关注数、f24表示发微博数、f25表示是否认证、f26表示注册天数;社交特征集合F3={f31,f32,f32},f31表示用户影响力、f32表示微博用户与微博预测转发者的亲密度、f33表示微博用户与微博预测转发者的兴趣相似度;微博转发预测的特征集为F1、F2和F3的并集;
步骤5.1:基于贝叶斯的微博转发预测模块根据微博内容特征采用贝叶斯方法进行微博转发预测;
步骤5.1.1:根据微博用户转发微博集合和未转发微博集合计算出公式(1)和公式(2)所示的概率:
P(fc=v|e1) (1)
P(fc=v|e2) (2)
其中,e1表示转发行为,e2表示未转发行为,fc表示根据步骤5中微博内容特征集合F1构建的微博用户的微博内容特征的特征向量,v表示特征向量值;P(fc=v|e1)表示当微博用户转发微博时,fc等于v的概率值,P(fc=v|e2)表示微博用户不转发微博时,fc等于v的概率值;
步骤5.1.2:计算概率P11和P12,如公式(3)和(4)所示,其中P(e1)表示微博被转发的概率,P(e2)表示微博未被转发的概率。P(e1)和P(e2)为本地数据库中转发微博和不转发微博各自所占的比例;
P11=P(e1)P(fc=v|e1) (3)
P12=P(e2)P(fc=v|e2) (4)
步骤5.1.3:若P11大于P12,则微博用户转发微博的概率较大;若P11小于P12,则微博用户转发微博的概率较小;
步骤5.2:基于贝叶斯的微博转发预测模块根据微博用户个人特征采用贝叶斯方法进行微博转发预测;
步骤5.2.1:根据微博用户转发微博集合和未转发微博集合计算公式(5)和公式(6)所示的概率,其中u1表示活跃用户,u2表示未活跃用户,fp表示根据步骤5中个人特征集合F2构建的微博用户个人特征的特征向量,w表示特征向量值;P(fp=w|u1)表示当微博用户为活跃用户时,fp等于w的概率值,P(fp=w|u2)表示微博用户为不活跃用户时,fp等于w的概率值;
P(fp=w|u1) (5)
P(fp=w|u2) (6)
活跃用户的定义为:设一个微博用户转发微博数为m,原创微博数为n,当m大于等于2n时,则定义微博用户为活跃用户,否则为不活跃用户;
步骤5.2.2:计算概率P21和P22,如公式(7)和(8)所示,其中P(u1)表示用户为活跃用户的概率,P(u2)表示用户为未活跃用户的概率。P(u1)和P(u2)为本地数据库中活跃用户和不活跃用户各自所占的比例;
P21=P(u1)P(fp=w|u1) (7)
P22=P(u2)P(fp=w|u2) (8)
步骤5.2.3:若P21大于P22,则微博用户会转发微博的概率较大;若P21小于P22,则微博用户转发微博的概率较小;
步骤5.3:基于贝叶斯的微博转发预测模块根据微博用户社交特征采用贝叶斯方法进行微博转发预测;
步骤5.3.1:根据微博用户转发微博集合和未转发微博集合计算公式(9)和公式(10)所示的概率,其中u1表示活跃用户,u2表示未活跃用户,fs表示根据步骤5中社交特征集合F3构建的微博用户社交特征的特征向量,t表示特征向量值;P(fs=t|u1)表示当微博用户为活跃用户时,fs等于t的概率值,P(fs=t|u2)表示微博用户为不活跃用户时,fs等于t的概率值;
P(fs=t|u1) (9)
P(fs=t|u2) (10)
步骤5.3.2:计算概率P31和P32,如公式(11)和(12)所示,其中P(u1)表示用户为活跃用户的概率,P(u2)表示用户为未活跃用户的概率;
P31=P(u1)P(fs=t|u1) (11)
P32=P(u2)P(fs=t|u2) (12)
步骤5.3.3:若P31大于P32,则微博用户会转发微博的概率较大;若P31小于P32,则微博用户转发微博的概率较小;
根据步骤5.1、5.2和5.3的预测结果,通过集成学习方法获得基于贝叶斯方法的微博转发预测结果r1,预测结果r1的计算方法如公式(13)所示,其中a1,a2,a3,a4,a5,a6为自定义参数;若r大于阈值,则判定微博被微博用户转发;
r1=a1 P11+a2 P12+a3 P21+a4 P22+a5 P31+a6 P32 (13)
步骤6:基于支持向量机的微博转发预测模块采用支持向量机的方法进行微博转发预测;
步骤6.1:构建训练微博数据和测试微博数据,将微博用户x已经转发给待预测微博转发者y的微博作为训练微博数据,将待预测的微博作为测试数据;其次,提取训练微博数据和测试微博数据的分类特征,分类特征包括微博用户的个人特征和社交特征、微博的内容特征;
步骤6.2:基于微博用户个人特征采用支持向量机来判别待预测微博是否会被转发,分类类别包括转发和未转发两类。基于微博用户社交特征采用支持向量机来预测微博是否会被转发,基于微博内容特征采用支持向量机来判别待预测微博是否会被转发;
步骤6.3:对步骤6.2中基于微博用户个人特征的支持向量机预测方法、基于微博社交特征的支持向量机预测方法、基于微博内容特征的支持向量机预测方法的预测结果进行融合;
具体地说,对于微博w,设基于微博用户个人特征的支持向量机方法的预测结果为r21,基于微博用户社交特征的支持向量机方法的预测结果为r22,基于微博内容特征的支持向量机方法的预测结果为r23,基于支持向量机方法的微博转发预测结果r2的计算方法如公式(14)所示,其中b1,b2,b3为自定义参数。若r2大于阈值,则判定微博被微博用户转发;
r2=b1 r21+b2 r22+b3 r23 (14)
步骤7:基于逻辑回归的微博转发预测模块采用逻辑回归的方法进行微博转发预测;
步骤7.1:根据步骤6构建的训练微博数据和测试微博数据,以及提取的训练微博数据和测试微博数据的分类特征,基于微博用户个人特征采用逻辑回归来判别待预测微博是否会被转发,基于微博用户社交特征采用逻辑回归来判别待预测微博是否会被转发,基于微博内容特征采用逻辑回归来判别待预测微博是否会被转发;
步骤7.2:对步骤7.1中基于微博用户个人特征的逻辑回归方法、基于微博社交特征的逻辑回归方法、基于微博内容特征的逻辑回归方法的预测结果进行融合;
具体地说,对于微博w,设基于微博用户个人特征的逻辑回归方法的预测结果为r31,基于微博用户社交特征的逻辑回归方法的预测结果为r32,基于微博内容特征的逻辑回归方法的预测结果为r33,基于逻辑回归方法的微博转发预测结果r3的计算方法如公式(15)所示,其中c1,c2,c3为自定义参数。若r3大于阈值,则判定微博被微博用户转发;
r3=c1 r31+c2 r32+c3 r33 (15)
步骤8:基于随机森林的微博转发预测模块采用随机森林的方法进行微博转发预测;
步骤8.1:根据步骤6构建的训练微博数据和测试微博数据,以及提取的训练微博数据和测试微博数据的分类特征,基于微博用户个人特征采用随机森林来判别待预测微博是否会被转发,基于微博用户社交特征采用随机森林来判别待预测微博是否会被转发,基于微博内容特征采用随机森林来判别待预测微博是否会被转发;
步骤8.2:对步骤8.1中基于微博用户个人特征的随机森林方法、基于微博社交特征的随机森林方法、基于微博内容特征的随机森林方法的预测结果进行融合;
具体地说,对于微博w,设基于微博用户个人特征的随机森林方法的预测结果为r41,基于微博用户社交特征的随机森林方法的预测结果为r42,基于微博内容特征的随机森林方法的预测结果为r43,基于随机森林方法的微博转发预测结果r4的计算方法如公式(16)所示,其中d1,d2,d3为自定义参数。若r4大于阈值,则判定微博被微博用户转发;
r4=d1 r41+d2 r42+d3 r43 (16)
步骤9:基于集成学习的微博转发预测模块采用基于集成学习的方法进行微博转发预测;
基于集成学习的微博转发预测方法旨在于融合基于贝叶斯分类器的微博转发预测结果、基于支持向量机分类器的微博转发预测结果、基于逻辑回归分类器的微博转发预测结果,以及基于随机森林分类器的微博转发预测结果;
具体地说,对于微博w,基于贝叶斯方法的微博转发预测结果r1,基于支持向量机方法的微博转发预测结果r2,基于逻辑回归方法的微博转发预测结果r3,基于随机森林方法的微博转发预测结果r4,基于集成学习方法的微博转发预测结果r5的计算方法如公式(17)所示,其中α,β,γ,δ为自定义参数;若r5大于阈值,则判定微博被微博用户转发;
r5=αr1+βr2+γr3+δr4 (17)
至此,从步骤1到步骤9,完成了一种基于多层集成学习的微博转发预测方法。
有益效果
本发明一种基于多层集成学习的微博转发预测方法,与现有的微博转发预测方法相比,具有如下有益效果:
(1)本发明的多层集成学习方法,发挥了十二种基分类器的优点,利用了微博用户个人特征、微博用户社交特征和微博内容特征这三种类型特征的特点。这十二种基分类器包括基于用户个人特征的贝叶斯模型的预测方法、基于用户社交特征的贝叶斯模型的预测方法、基于内容特征的贝叶斯模型的预测方法、基于用户个人特征的支持向量机模型的预测方法、基于用户社交特征的支持向量机模型的预测方法、基于内容特征的支持向量机模型的预测方法、基于用户个人特征的逻辑回归模型的预测方法、基于用户社交特征的逻辑回归模型的预测方法、基于内容特征的逻辑回归模型的预测方法、基于用户个人特征的随机森林模型的预测方法、基于用户社交特征的随机森林模型的预测方法,以及基于内容特征的随机森林模型的预测方法。
与现有微博转发预测方法相比,区别在于采用了两层集成学习机制。通过多层集成学习模型对十二种基分类器的特点和不足进行互补,从而提高微博转发预测的性能;
(2)本发明基于多层集成学习的微博转发预测方法采用多层集成学习模型,每种基分类器具有独立性,能够支撑微博转发预测系统中多种基分类器的不同集成机制;
(3)本发明基于多层集成学习的微博转发预测方法能够应用于不用数据来源的微博转发预测,能够动态更新微博内容特征、微博用户的个人特征和社交特征,与现有方法相比,本微博转发预测系统的移植性和健壮性更强;
(4)针对现有微博转发预测方法的性能依赖于单个分类器性能的问题,提出一种基于多层集成学习的微博转发预测方法,能够提高微博转发预测的性能;
(5)在社会媒体处理、意见挖掘、信息安全等领域具有广阔的应用前景。
附图说明
图1为本发明一种基于多层集成学习的微博转发预测方法及实施例1中的流程示意图;
图2为本发明一种基于多层集成学习的微博转发预测方法实施例2中一种微博转发预测系统的组成结构示意图。
具体实施方式
下面结合实施例对本发明方法的优选实施方式进行详细说明。
实施例1
本实施例叙述了采用本发明所述的一种基于多层集成学习的微博转发预测方法基于新浪微博的处理流程,如图1所示。
从图1可以看出,具体包括如下步骤:
步骤1):信息采集模块采集新浪微博网页;
具体到本实施例为:获取微博信息和微博用户信息,并将其保存到本地数据库;
其中,微博网页可以是新浪微博网页;
步骤1)具体包括如下步骤:
步骤1).1:把种子微博用户的微博ID输入信息采集模块;
其中,种子微博用户是根据用户需求选择的微博用户。
步骤1).2:信息采集模块爬取种子微博用户的微博信息、粉丝列表、关注者列表以及种子微博用户信息,保存到本地数据库;
其中,种子微博用户信息包括性别、注册日期、粉丝数、关注数、发微博数、是否认证。每条微博信息包括微博正文、转发数、评论数、表态数。
步骤1).3:信息采集模块再将种子微博用户的粉丝列表放入爬取队列中,采集爬取队列中粉丝作为微博用户的微博信息、粉丝列表、关注者列表以及微博用户信息,保存到本地数据库;
微博信息包括微博正文、转发数、评论数、表态数。微博用户信息包括性别、注册日期、粉丝数、关注数、发微博数、是否认证。
步骤2):微博网页预处理,具体到本实施例:信息预处理模块对微博网页进行预处理;
其中,信息预处理模块对微博网页进行预处理,包括正文提取以及对提取的正文进行分词处理。
步骤3):提取微博用户个人特征和社交特征;具体到本实施例是采用用户特征提取模块进行提取,提取步骤1).1中种子微博用户和步骤1).3中微博用户的个人特征和社交特征;
其中,微博用户个人特征包括性别、粉丝数、关注数、发微博数、是否认证和注册天数。
例如,某微博用户的个人特征为性别男、粉丝数291、关注数477、发微博数1645、未认证,以及注册天数1365。
微博用户社交特征包括:微博用户影响力、微博用户与预测微博转发者的亲密度、微博用户与预测微博转发者的兴趣相似度。
其中,微博用户影响力采用谷歌的Pagerank算法来计算;
微博用户x与预测微博转发者y的亲密度的计算方法为:预测微博转发者y转发微博用户x的微博数量与预测微博转发者y转发微博的总数量之比。
微博用户x与预测微博转发者y的兴趣相似度的计算方法为:
步骤3).1:对微博用户x和预测微博转发者y的微博文本进行分词;
步骤3).2:计算词语的词频-逆文档频率(Term Frequency-Inverse DocumentFrequency,TF-IDF)值,构建微博用户x的特征向量v1,预测微博转发者y的特征向量v2;
步骤3).3:计算特征向量v1和特征向量v2的余弦相似度,作为微博用户x与预测微博转发者y的兴趣相似度;
例如,某微博用户的社交特征为用户影响力0.584897,微博用户与微博预测转发者的亲密度3,微博用户x与微博预测转发者y的兴趣相似度0.00015。
步骤4):提取微博内容特征,具体到本实施例中,微博内容特征提取模块提取步骤1).1中种子微博用户和步骤1).3中微博用户的微博内容特征;
其中,微博内容特征包括微博正文长度、转发数、评论数、表态数、微博正文与预测微博转发者的兴趣相似度。
其中,微博正文长度、转发数、评论数、表态数通过信息采集模块提取;
微博正文与预测微博转发者的兴趣相似度的计算方法为:
步骤4).1:对微博正文t和预测微博转发者y的微博文本进行分词;
步骤4).2:计算词语的词频-逆文档频率TF-IDF值,构建微博正文t的特征向量v3,微博预测转发者y的特征向量v4;
步骤4).3:计算特征向量v3和特征向量v4的余弦相似度,作为微博正文t与微博预测转发者y的兴趣相似度;
例如,微博内容特征为微博正文长度38,转发数1,评论数2,表态数0,微博内容与微博预测转发者的兴趣相似度0.5557。
步骤5):基于贝叶斯方法进行微博转发预测;具体到本实施例为:基于贝叶斯的微博转发预测模块采用基于贝叶斯模型的方法进行微博转发预测;
设微博内容特征集合F1={f11,f12,f13,f14,f15},f11表示微博正文长度,f12表示转发数,f13表示评论数,f14表示表态数,f15表示微博正文与微博预测转发者的兴趣相似度;个人特征集合F2={f21,f22,f23,f24,f25,f26},f21表示性别、f22表示粉丝数、f23表示关注数、f24表示发微博数、f25表示是否认证、f26表示注册天数。社交特征集合F3={f31,f32,f32},f31表示用户影响力、f32表示微博用户与微博预测转发者的亲密度、f33表示微博用户与微博预测转发者的兴趣相似度。微博转发预测的特征集为F1、F2和F3的并集;
步骤5).1:基于贝叶斯的微博转发预测模块根据微博内容特征采用贝叶斯方法进行微博转发预测;
步骤5).1.1:根据微博用户转发微博集合和未转发微博集合计算出公式(1)和公式(2)所示的概率:
P(fc=v|e1) (1)
P(fc=v|e2) (2)
其中,e1表示转发行为,e2表示未转发行为,fc表示根据步骤5中微博内容特征集合F1构建的微博用户的微博内容特征的特征向量,v表示特征向量值;P(fc=v|e1)表示当微博用户转发微博时,fc等于v的概率值,P(fc=v|e2)表示微博用户不转发微博时,fc等于v的概率值。
步骤5).1.2:计算概率P11和P12,如公式(3)和(4)所示,其中P(e1)表示微博被转发的概率,P(e2)表示微博未被转发的概率。P(e1)和P(e2)为本地数据库中转发微博和不转发微博各自所占的比例。
P11=P(e1)P(fc=v|e1) (3)
P12=P(e2)P(fc=v|e2) (4)
步骤5).1.3:若P11大于P12,则微博用户转发微博的概率较大;若P11小于P12,则微博用户转发微博的概率较小;
步骤5).2:基于贝叶斯的微博转发预测模块根据微博用户个人特征采用贝叶斯方法进行微博转发预测;
步骤5).2.1:根据微博用户转发微博集合和未转发微博集合计算公式(5)和公式(6)所示的概率,其中u1表示活跃用户,u2表示未活跃用户,fp表示根据步骤5中个人特征集合F2构建的微博用户个人特征的特征向量,w表示特征向量值,P(fp=w|u1)表示当微博用户为活跃用户时,fp等于w的概率值;P(fp=w|u2)表示微博用户为不活跃用户时,fp等于w的概率值;
P(fp=w|u1) (5)
P(fp=w|u2) (6)
活跃用户的定义为:设一个微博用户转发微博数为m,原创微博数为n,当m大于等于2n时,则定义微博用户为活跃用户,否则为不活跃用户。
步骤5).2.2:计算概率P21和P22,如公式(7)和(8)所示,其中P(u1)表示用户为活跃用户的概率,P(u2)表示用户为未活跃用户的概率。P(u1)和P(u2)为为本地数据库中活跃用户和不活跃用户各自所占的比例。
P21=P(u1)P(fp=w|u1) (7)
P22=P(u2)P(fp=w|u2) (8)
步骤5).2.3:若P21大于P22,则微博用户会转发微博的概率较大;若P21小于P22,则微博用户转发微博的概率较小;
步骤5).3:基于贝叶斯的微博转发预测模块根据微博用户社交特征采用贝叶斯方法进行微博转发预测;
步骤5).3.1:根据微博用户转发微博集合和未转发微博集合计算公式(9)和公式(10)所示的概率,其中u1表示活跃用户,u2表示未活跃用户,fs表示根据步骤5中社交特征集合F3构建的微博用户社交特征的特征向量,t表示特征向量值;P(fs=t|u1)表示当微博用户为活跃用户时,fs等于t的概率值,P(fs=t|u2)表示微博用户为不活跃用户时,fs等于t的概率值;
P(fs=t|u1) (9)
P(fs=t|u2) (10)
步骤5).3.2:计算概率P31和P32,如公式(11)和(12)所示,其中P(u1)表示用户为活跃用户的概率,P(u2)表示用户为未活跃用户的概率;
P31=P(u1)P(fs=t|u1) (11)
P32=P(u2)P(fs=t|u2) (12)
步骤5).3.3:若P31大于P32,则微博用户会转发微博的概率较大;若P31小于P32,则微博用户转发微博的概率较小。
根据步骤5).1、5).2和5).3的预测结果,通过集成学习方法获得基于贝叶斯方法的微博转发预测结果r1,预测结果r1的计算方法如公式(13)所示,其中a1,a2,a3,a4,a5,a6为自定义参数。若r大于阈值,则判定微博被微博用户转发。
r1=a1 P11+a2 P12+a3 P21+a4 P22+a5 P31+a6 P32 (13)
步骤6):基于支持向量机方法进行微博转发预测;具体到本实施例中,微博转发预测模块采用支持向量机的方法进行微博转发预测;
步骤6).1:构建训练微博数据和测试微博数据,将微博用户x已经转发给待预测微博转发者y的微博作为训练微博数据,将待预测的微博作为测试数据。其次,提取训练微博数据和测试微博数据的分类特征,分类特征包括微博用户的个人特征和社交特征、微博的内容特征;
步骤6).2:基于微博用户个人特征采用支持向量机来判别待预测微博是否会被转发,分类类别包括转发和未转发两类。基于微博用户社交特征采用支持向量机来预测微博是否会被转发,基于微博内容特征采用支持向量机来判别待预测微博是否会被转发;
步骤6).3:对步骤6).2中基于微博用户个人特征的支持向量机预测方法、基于微博社交特征的支持向量机预测方法、基于微博内容特征的支持向量机预测方法的预测结果进行融合;
具体地说,对于微博w,设基于微博用户个人特征的支持向量机方法的预测结果为r21,基于微博用户社交特征的支持向量机方法的预测结果为r22,基于微博内容特征的支持向量机方法的预测结果为r23,基于支持向量机方法的微博转发预测结果r2的计算方法如公式(14)所示,其中b1,b2,b3为自定义参数。若r2大于阈值,则判定微博被微博用户转发。
r2=b1 r21+b2 r22+b3 r23 (14)
步骤7):基于决策树方法进行微博转发预测,具体到本实施例为:基于逻辑回归的微博转发预测模块采用逻辑回归的方法进行微博转发预测;
步骤7).1:根据步骤6)构建的训练微博数据和测试微博数据,以及提取的训练微博数据和测试微博数据的分类特征,基于微博用户个人特征采用逻辑回归来判别待预测微博是否会被转发,基于微博用户社交特征采用逻辑回归来判别待预测微博是否会被转发,基于微博内容特征采用逻辑回归来判别待预测微博是否会被转发;
步骤7).2:对步骤7).1中基于微博用户个人特征的逻辑回归方法、基于微博社交特征的逻辑回归方法、基于微博内容特征的逻辑回归方法的预测结果进行融合。
具体地说,对于微博w,设基于微博用户个人特征的逻辑回归方法的预测结果为r31,基于微博用户社交特征的逻辑回归方法的预测结果为r32,基于微博内容特征的逻辑回归方法的预测结果为r33,基于逻辑回归方法的微博转发预测结果r3的计算方法如公式(15)所示,其中c1,c2,c3为自定义参数。若r3大于阈值,则判定微博被微博用户转发;
r3=c1 r31+c2 r32+c3 r33 (15)
步骤8):基于随机森林方法进行微博转发预测,具体到本实施例为基于随机森林的微博转发预测模块采用随机森林的方法进行微博转发预测。
步骤8).1:根据步骤6)构建的训练微博数据和测试微博数据,以及提取的训练微博数据和测试微博数据的分类特征,基于微博用户个人特征采用随机森林来判别待预测微博是否会被转发,基于微博用户社交特征采用随机森林来判别待预测微博是否会被转发,基于微博内容特征采用随机森林来判别待预测微博是否会被转发;
步骤8).2:对步骤8).1中基于微博用户个人特征的随机森林方法、基于微博社交特征的随机森林方法、基于微博内容特征的随机森林方法的预测结果进行融合。
具体地说,对于微博w,设基于微博用户个人特征的随机森林方法的预测结果为r41,基于微博用户社交特征的随机森林方法的预测结果为r42,基于微博内容特征的随机森林方法的预测结果为r43,基于随机森林方法的微博转发预测结果r4的计算方法如公式(16)所示,其中d1,d2,d3为自定义参数。若r4大于阈值,则判定微博被微博用户转发;
r4=d1 r41+d2 r42+d3 r43 (16)
步骤9):基于集成学习方法进行微博转发预测,具体到本实施例是基于集成学习的微博转发预测模块采用基于集成学习的方法进行微博转发预测。
基于集成学习的微博转发预测方法旨在于融合基于贝叶斯分类器的微博转发预测结果、基于支持向量机分类器的微博转发预测结果、基于逻辑回归分类器的微博转发预测结果,以及基于随机森林分类器的微博转发预测结果。
具体地说,对于微博w,基于贝叶斯方法的微博转发预测结果r1,基于支持向量机方法的微博转发预测结果r2,基于逻辑回归方法的微博转发预测结果r3,基于随机森林方法的微博转发预测结果r4,基于集成学习方法的微博转发预测结果r5的计算方法如公式(17)所示,其中α,β,γ,δ为自定义参数;若r5大于阈值,则判定微博被微博用户转发;
r5=αr1+βr2+γr3+δr4 (17)
至此,从步骤1)到步骤9),完成了一种基于多层集成学习的微博转发预测方法。
实施例2
本实施例为基于新浪微博,采用本发明所述方法构建的一种基于多层集成学习的微博转发预测系统,如图2所示。
从图2可以看出一种基于多层集成学习的微博转发预测系统包括信息采集模块、信息预处理模块、用户特征提取模块、微博内容特征提取模块、基于贝叶斯的微博转发预测模块、基于支持向量机的微博转发预测模块、基于逻辑回归的微博转发预测模块、基于随机森林的微博转发预测模块,以及基于集成学习的微博转发预测模块;
微博转发预测系统中各模块的连接关系为:
信息采集模块与信息预处理模块、用户特征提取模块、微博内容特征提取模块相连;信息预处理模块与用户特征提取模块和微博内容特征提取模块相连;用户特征提取模块与基于贝叶斯的微博转发预测模块、基于支持向量机的微博转发预测模块、基于逻辑回归的微博转发预测模块相连、基于随机森林的微博转发预测模块相连;微博内容特征提取模块与基于贝叶斯的微博转发预测模块、基于支持向量机的微博转发预测模块、基于逻辑回归的微博转发预测模块相连、基于随机森林的微博转发预测模块相连;基于贝叶斯的微博转发预测模块与基于集成学习的微博转发预测模块相连;基于支持向量机的微博转发预测模块与基于集成学习的微博转发预测模块相连;基于逻辑回归的微博转发预测模块与基于集成学习的微博转发预测模块相连;基于随机森林的微博转发预测模块与基于集成学习的微博转发预测模块相连;
所述信息采集模块用于采集微博网页,获取微博信息和微博用户信息,并将此两类信息保存到本地数据库;其中,微博网页可以是新浪微博网页;
所述信息预处理模块用于对所述信息采集模块采集的微博网页进行预处理,包括正文提取和对正文进行分词;
所述用户特征提取模块用于对所述信息采集模块获取的微博信息和微博用户信息以及所述信息预处理模块获得的微博正文分词结果,提取微博用户的个人特征和社交特征;
所述微博内容特征提取模块用于对所述信息采集模块获取的微博信息以及所述信息预处理模块获得的微博正文分词结果,提取微博的内容特征;
所述基于贝叶斯的微博转发预测模块用于对所述用户特征提取模块和所述微博内容特征提取获得的特征,采用贝叶斯方法进行微博转发预测;
所述基于支持向量机的微博转发预测模块用于对所述用户特征提取模块和所述微博内容特征提取获得的特征,采用支持向量机方法进行微博转发预测;
所述基于逻辑回归的微博转发预测模块用于对所述用户特征提取模块和所述微博内容特征提取获得的特征,采用逻辑回归方法进行微博转发预测;
所述基于随机森林的微博转发预测模块用于对所述用户特征提取模块和所述微博内容特征提取获得的特征,采用随机森林方法进行微博转发预测;
所述基于集成学习的微博转发预测模块用于对所述基于贝叶斯的微博转发预测模块、所述基于支持向量机的微博转发预测模块、所述基于逻辑回归的微博转发预测模块、所述基于随机森林的微博转发预测模块进行集成学习。
为说明本发明的微博转发预测效果,本实验是在同等条件下,以相同的训练集和测试集分别采用五种方法进行比较。第一种方法是基于贝叶斯模型的微博转发预测方法,第二种方法是基于支持向量机模型的微博转发预测方法,第三种方法是基于逻辑回归模型的微博转发预测方法,第四种方法是基于随机森林模型的微博转发预测方法,第五种方法是本发明的基于多层集成学习的微博转发预测方法。采用的评测指标为精度(Accuracy),计算公式为:
其中,N1为被正确预测的微博转发和不转发行为的数量,N2为被错误预测的微博转发和不转发行为的数量。
微博转发预测结果的效果为:采用基于贝叶斯模型的微博转发预测方法的精度为约71.86%,采用基于支持向量机模型的微博转发预测方法的精度为约80.24%,采用基于逻辑回归模型的微博转发预测方法的精度为约71.86%,采用基于随机森林模型的微博转发预测方法的精度为约77.84%,采用本发明方法的精度为约82.04%。通过实验表明了本发明提出的基于多层集成学习的微博转发预测方法的有效性。
以上所述为本发明的较佳实施例而已,本发明不应该局限于该实施例和附图所公开的内容。凡是不脱离本发明所公开的精神下完成的等效或修改,都落入本发明保护的范围。
Claims (10)
1.一种基于多层集成学习的微博转发预测方法,其特征在于:共采用十二种基分类器进行微博转发预测;具体地说,第一层集成学习融合基于用户个人特征的贝叶斯模型的预测方法、基于用户社交特征的贝叶斯模型的预测方法、基于内容特征的贝叶斯模型的预测方法,形成基于贝叶斯模型的微博预测方法;融合基于用户个人特征的支持向量机模型的预测方法、基于用户社交特征的支持向量机模型的预测方法、基于内容特征的支持向量机模型的预测方法,形成基于支持向量机模型的微博预测方法;融合基于用户个人特征的逻辑回归模型的预测方法、基于用户社交特征的逻辑回归模型的预测方法、基于内容特征的逻辑回归模型的预测方法,形成基于逻辑回归模型的微博预测方法;融合基于用户个人特征的随机森林模型的预测方法、基于用户社交特征的随机森林模型的预测方法、基于内容特征的随机森林模型的预测方法,形成基于随机森林模型的微博预测方法;第二层集成学习融合基于贝叶斯模型的微博预测方法、基于支持向量机模型的微博预测方法、基于逻辑回归模型的微博预测方法和基于随机森林模型的微博预测方法,形成基于集成学习的微博转发预测方法,即通过多层集成学习模型来提高微博转发预测性能。
2.根据权利要求1所述的一种基于多层集成学习的微博转发预测方法所基于的一种基于多层集成学习的微博转发预测系统,简称微博转发预测系统,其特征在于:包括信息采集模块、信息预处理模块、用户特征提取模块、微博内容特征提取模块、基于贝叶斯的微博转发预测模块、基于支持向量机的微博转发预测模块、基于逻辑回归的微博转发预测模块、基于随机森林的微博转发预测模块,以及基于集成学习的微博转发预测模块;
微博转发预测系统中各模块的连接关系为:
信息采集模块与信息预处理模块、用户特征提取模块、微博内容特征提取模块相连;信息预处理模块与用户特征提取模块和微博内容特征提取模块相连;用户特征提取模块与基于贝叶斯的微博转发预测模块、基于支持向量机的微博转发预测模块、基于逻辑回归的微博转发预测模块相连、基于随机森林的微博转发预测模块相连;微博内容特征提取模块与基于贝叶斯的微博转发预测模块、基于支持向量机的微博转发预测模块、基于逻辑回归的微博转发预测模块相连、基于随机森林的微博转发预测模块相连;基于贝叶斯的微博转发预测模块与基于集成学习的微博转发预测模块相连;基于支持向量机的微博转发预测模块与基于集成学习的微博转发预测模块相连;基于逻辑回归的微博转发预测模块与基于集成学习的微博转发预测模块相连;基于随机森林的微博转发预测模块与基于集成学习的微博转发预测模块相连;
所述信息采集模块用于采集微博网页,获取微博信息和微博用户信息,并将此两类信息保存到本地数据库;其中,微博网页可以是新浪微博网页;
所述信息预处理模块用于对所述信息采集模块采集的微博网页进行预处理,包括正文提取和对正文进行分词;
所述用户特征提取模块用于对所述信息采集模块获取的微博信息和微博用户信息以及所述信息预处理模块获得的微博正文分词结果,提取微博用户的个人特征和社交特征;
所述微博内容特征提取模块用于对所述信息采集模块获取的微博信息以及所述信息预处理模块获得的微博正文分词结果,提取微博的内容特征;
所述基于贝叶斯的微博转发预测模块用于对所述用户特征提取模块和所述微博内容特征提取获得的特征,采用贝叶斯方法进行微博转发预测;
所述基于支持向量机的微博转发预测模块用于对所述用户特征提取模块和所述微博内容特征提取获得的特征,采用支持向量机方法进行微博转发预测;
所述基于逻辑回归的微博转发预测模块用于对所述用户特征提取模块和所述微博内容特征提取获得的特征,采用逻辑回归方法进行微博转发预测;
所述基于随机森林的微博转发预测模块用于对所述用户特征提取模块和所述微博内容特征提取获得的特征,采用随机森林方法进行微博转发预测;
所述基于集成学习的微博转发预测模块用于对所述基于贝叶斯的微博转发预测模块、所述基于支持向量机的微博转发预测模块、所述基于逻辑回归的微博转发预测模块、所述基于随机森林的微博转发预测模块进行集成学习。
3.根据权利要求1所述的一种基于多层集成学习的微博转发预测方法,其特征在于:包括如下步骤:
步骤1:信息采集模块采集微博网页,获取微博信息和微博用户信息,并将其保存到本地数据库;步骤1具体包括如下步骤:
步骤1.1:把种子微博用户的微博ID输入信息采集模块;
其中,种子微博用户是根据用户需求选择的微博用户;
步骤1.2:信息采集模块爬取种子微博用户的微博信息、粉丝列表、关注者列表以及种子微博用户信息,保存到本地数据库;
其中,种子微博用户信息包括性别、注册日期、粉丝数、关注数、发微博数、是否认证;每条微博信息包括微博正文、转发数、评论数、表态数;
步骤1.3:信息采集模块再将种子微博用户的粉丝列表放入爬取队列中,采集爬取队列中粉丝作为微博用户的微博信息、粉丝列表、关注者列表以及微博用户信息,保存到本地数据库;
微博信息包括微博正文、转发数、评论数、表态数。微博用户信息包括性别、注册日期、粉丝数、关注数、发微博数、是否认证;
步骤2:信息预处理模块对微博网页进行预处理;
步骤3:用户特征提取模块提取步骤1.1中种子微博用户和步骤1.3中微博用户的个人特征和社交特征;
步骤4:微博内容特征提取模块提取步骤1.1中种子微博用户和步骤1.3中微博用户的微博内容特征;
步骤5:基于贝叶斯的微博转发预测模块采用基于贝叶斯模型的方法进行微博转发预测;
步骤6:基于支持向量机的微博转发预测模块采用支持向量机的方法进行微博转发预测;
步骤7:基于逻辑回归的微博转发预测模块采用逻辑回归的方法进行微博转发预测;
步骤8:基于随机森林的微博转发预测模块采用随机森林的方法进行微博转发预测;
步骤9:基于集成学习的微博转发预测模块采用基于集成学习的方法进行微博转发预测;
至此,从步骤1到步骤9,完成了一种基于多层集成学习的微博转发预测方法。
4.根据权利要求3所述的一种基于多层集成学习的微博转发预测方法,其特征在于:步骤1中,微博网页可以是新浪微博网页;步骤2中,信息预处理模块对微博网页进行预处理,包括正文提取以及对提取的正文进行分词处理。
5.根据权利要求3所述的一种基于多层集成学习的微博转发预测方法,其特征在于:步骤3中,微博用户个人特征包括性别、粉丝数、关注数、发微博数、是否认证和注册天数;
微博用户社交特征包括:微博用户影响力、微博用户与预测微博转发者的亲密度、微博用户与预测微博转发者的兴趣相似度;
其中,微博用户影响力采用谷歌的Pagerank算法来计算;
微博用户x与预测微博转发者y的亲密度的计算方法为:预测微博转发者y转发微博用户x的微博数量与预测微博转发者y转发微博的总数量之比;
微博用户x与预测微博转发者y的兴趣相似度的计算方法为:
步骤3.1:对微博用户x和预测微博转发者y的微博文本进行分词;
步骤3.2:计算词语的词频-逆文档频率(Term Frequency-Inverse DocumentFrequency,TF-IDF)值,构建微博用户x的特征向量v1,预测微博转发者y的特征向量v2;
步骤3.3:计算特征向量v1和特征向量v2的余弦相似度,作为微博用户x与预测微博转发者y的兴趣相似度;
步骤4中,微博内容特征包括微博正文长度、转发数、评论数、表态数、微博正文与预测微博转发者的兴趣相似度;
其中,微博正文长度、转发数、评论数、表态数通过信息采集模块提取;
微博正文与预测微博转发者的兴趣相似度的计算方法为:
步骤4.1:对微博正文t和预测微博转发者y的所有微博文本进行分词;
步骤4.2:计算词语的词频-逆文档频率TF-IDF值,构建微博正文t的特征向量v3,微博预测转发者y的特征向量v4;
步骤4.3:计算特征向量v3和特征向量v4的余弦相似度,作为微博正文t与微博预测转发者y的兴趣相似度。
6.根据权利要求3所述的一种基于多层集成学习的微博转发预测方法,其特征在于:步骤5中,设微博内容特征集合F1={f11,f12,f13,f14,f15},f11表示微博正文长度,f12表示转发数,f13表示评论数,f14表示表态数,f15表示微博正文与微博预测转发者的兴趣相似度;个人特征集合F2={f21,f22,f23,f24,f25,f26},f21表示性别、f22表示粉丝数、f23表示关注数、f24表示发微博数、f25表示是否认证、f26表示注册天数;社交特征集合F3={f31,f32,f32},f31表示用户影响力、f32表示微博用户与微博预测转发者的亲密度、f33表示微博用户与微博预测转发者的兴趣相似度;微博转发预测的特征集为F1、F2和F3的并集;
步骤5.1:基于贝叶斯的微博转发预测模块根据微博内容特征采用贝叶斯方法进行微博转发预测;
步骤5.1.1:根据微博用户转发微博集合和未转发微博集合计算出公式(1)和公式(2)所示的概率:
P(fc=v|e1) (1)
P(fc=v|e2) (2)
其中,e1表示转发行为,e2表示未转发行为,fc表示根据步骤5中微博内容特征集合F1构建的微博用户的微博内容特征的特征向量,v表示特征向量值;P(fc=v|e1)表示当微博用户转发微博时,fc等于v的概率值,P(fc=v|e2)表示微博用户不转发微博时,fc等于v的概率值;
步骤5.1.2:计算概率P11和P12,如公式(3)和(4)所示,其中P(e1)表示微博被转发的概率,P(e2)表示微博未被转发的概率;P(e1)和P(e2)为本地数据库中转发微博和不转发微博各自所占的比例;
P11=P(e1)P(fc=v|e1) (3)
P12=P(e2)P(fc=v|e2) (4)
步骤5.1.3:若P11大于P12,则微博用户转发微博的概率较大;若P11小于P12,则微博用户转发微博的概率较小;
步骤5.2:基于贝叶斯的微博转发预测模块根据微博用户个人特征采用贝叶斯方法进行微博转发预测;
步骤5.2.1:根据微博用户转发微博集合和未转发微博集合计算公式(5)和公式(6)所示的概率,其中u1表示活跃用户,u2表示未活跃用户,fp表示根据步骤5中个人特征集合F2构建的微博用户个人特征的特征向量,w表示特征向量值;P(fp=w|u1)表示当微博用户为活跃用户时,fp等于w的概率值,P(fp=w|u2)表示微博用户为不活跃用户时,fp等于w的概率值;
P(fp=w|u1) (5)
P(fp=w|u2) (6)
活跃用户的定义为:设一个微博用户转发微博数为m,原创微博数为n,当m大于等于2n时,则定义微博用户为活跃用户,否则为不活跃用户;
步骤5.2.2:计算概率P21和P22,如公式(7)和(8)所示,其中P(u1)表示用户为活跃用户的概率,P(u2)表示用户为未活跃用户的概率;P(u1)和P(u2)为本地数据库中活跃用户和不活跃用户各自所占的比例;
P21=P(u1)P(fp=w|u1) (7)
P22=P(u2)P(fp=w|u2) (8)
步骤5.2.3:若P21大于P22,则微博用户会转发微博的概率较大;若P21小于P22,则微博用户转发微博的概率较小;
步骤5.3:基于贝叶斯的微博转发预测模块根据微博用户社交特征采用贝叶斯方法进行微博转发预测;
步骤5.3.1:根据微博用户转发微博集合和未转发微博集合计算公式(9)和公式(10)所示的概率,其中u1表示活跃用户,u2表示未活跃用户,fs表示根据步骤5中社交特征集合F3构建的微博用户社交特征的特征向量,t表示特征向量值;P(fs=t|u1)表示当微博用户为活跃用户时,fs等于t的概率值,P(fs=t|u2)表示微博用户为不活跃用户时,fs等于t的概率值;
P(fs=t|u1) (9)
P(fs=t|u2) (10)
步骤5.3.2:计算概率P31和P32,如公式(11)和(12)所示,其中P(u1)表示用户为活跃用户的概率,P(u2)表示用户为未活跃用户的概率;
P31=P(u1)P(fs=t|u1) (11)
P32=P(u2)P(fs=t|u2) (12)
步骤5.3.3:若P31大于P32,则微博用户会转发微博的概率较大;若P31小于P32,则微博用户转发微博的概率较小;
根据步骤5.1、5.2和5.3的预测结果,通过集成学习方法获得基于贝叶斯方法的微博转发预测结果r1,预测结果r1的计算方法如公式(13)所示,其中a1,a2,a3,a4,a5,a6为自定义参数;若r大于阈值,则判定微博被微博用户转发;
r1=a1P11+a2P12+a3P21+a4P22+a5P31+a6P32 (13)。
7.根据权利要求3所述的一种基于多层集成学习的微博转发预测方法,其特征在于:步骤6,具体为:
步骤6.1:构建训练微博数据和测试微博数据,将微博用户x已经转发给待预测微博转发者y的微博作为训练微博数据,将待预测的微博作为测试数据;其次,提取训练微博数据和测试微博数据的分类特征,分类特征包括微博用户的个人特征和社交特征、微博的内容特征;
步骤6.2:基于微博用户个人特征采用支持向量机来判别待预测微博是否会被转发,分类类别包括转发和未转发两类;基于微博用户社交特征采用支持向量机来预测微博是否会被转发,基于微博内容特征采用支持向量机来判别待预测微博是否会被转发;
步骤6.3:对步骤6.2中基于微博用户个人特征的支持向量机预测方法、基于微博社交特征的支持向量机预测方法、基于微博内容特征的支持向量机预测方法的预测结果进行融合;
具体地说,对于微博w,设基于微博用户个人特征的支持向量机方法的预测结果为r21,基于微博用户社交特征的支持向量机方法的预测结果为r22,基于微博内容特征的支持向量机方法的预测结果为r23,基于支持向量机方法的微博转发预测结果r2的计算方法如公式(14)所示,其中b1,b2,b3为自定义参数;若r2大于阈值,则判定微博被微博用户转发;
r2=b1r21+b2r22+b3r23 (14)。
8.根据权利要求3所述的一种基于多层集成学习的微博转发预测方法,其特征在于:步骤7,具体为:
步骤7.1:根据步骤6构建的训练微博数据和测试微博数据,以及提取的训练微博数据和测试微博数据的分类特征,基于微博用户个人特征采用逻辑回归来判别待预测微博是否会被转发,基于微博用户社交特征采用逻辑回归来判别待预测微博是否会被转发,基于微博内容特征采用逻辑回归来判别待预测微博是否会被转发;
步骤7.2:对步骤7.1中基于微博用户个人特征的逻辑回归方法、基于微博社交特征的逻辑回归方法、基于微博内容特征的逻辑回归方法的预测结果进行融合;
具体地说,对于微博w,设基于微博用户个人特征的逻辑回归方法的预测结果为r31,基于微博用户社交特征的逻辑回归方法的预测结果为r32,基于微博内容特征的逻辑回归方法的预测结果为r33,基于逻辑回归方法的微博转发预测结果r3的计算方法如公式(15)所示,其中c1,c2,c3为自定义参数;若r3大于阈值,则判定微博被微博用户转发;
r3=c1r31+c2r32+c3r33 (15)。
9.根据权利要求3所述的一种基于多层集成学习的微博转发预测方法,其特征在于:步骤8,具体为:
步骤8.1:根据步骤6构建的训练微博数据和测试微博数据,以及提取的训练微博数据和测试微博数据的分类特征,基于微博用户个人特征采用随机森林来判别待预测微博是否会被转发,基于微博用户社交特征采用随机森林来判别待预测微博是否会被转发,基于微博内容特征采用随机森林来判别待预测微博是否会被转发;
步骤8.2:对步骤8.1中基于微博用户个人特征的随机森林方法、基于微博社交特征的随机森林方法、基于微博内容特征的随机森林方法的预测结果进行融合;
具体地说,对于微博w,设基于微博用户个人特征的随机森林方法的预测结果为r41,基于微博用户社交特征的随机森林方法的预测结果为r42,基于微博内容特征的随机森林方法的预测结果为r43,基于随机森林方法的微博转发预测结果r4的计算方法如公式(16)所示,其中d1,d2,d3为自定义参数;若r4大于阈值,则判定微博被微博用户转发;
r4=d1r41+d2r42+d3r43 (16)。
10.根据权利要求3所述的一种基于多层集成学习的微博转发预测方法,其特征在于:步骤9基于集成学习的微博转发预测方法旨在于融合基于贝叶斯分类器的微博转发预测结果、基于支持向量机分类器的微博转发预测结果、基于逻辑回归分类器的微博转发预测结果,以及基于随机森林分类器的微博转发预测结果;
具体地说,对于微博w,基于贝叶斯方法的微博转发预测结果r1,基于支持向量机方法的微博转发预测结果r2,基于逻辑回归方法的微博转发预测结果r3,基于随机森林方法的微博转发预测结果r4,基于集成学习方法的微博转发预测结果r5的计算方法如公式(17)所示,其中α,β,γ,δ为自定义参数;若r5大于阈值,则判定微博被微博用户转发。
r5=αr1+βr2+γr3+δr4 (17)。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710132242 | 2017-03-07 | ||
CN201710132242X | 2017-03-07 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107590558A true CN107590558A (zh) | 2018-01-16 |
CN107590558B CN107590558B (zh) | 2020-12-08 |
Family
ID=61050952
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710783927.0A Active CN107590558B (zh) | 2017-03-07 | 2017-09-04 | 一种基于多层集成学习的微博转发预测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107590558B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108596205A (zh) * | 2018-03-20 | 2018-09-28 | 重庆邮电大学 | 基于地域相关因子与稀疏表示的微博转发行为预测方法 |
CN109325640A (zh) * | 2018-12-07 | 2019-02-12 | 中山大学 | 用户价值预测方法、装置、存储介质及设备 |
CN109344319A (zh) * | 2018-11-01 | 2019-02-15 | 中国搜索信息科技股份有限公司 | 一种基于集成学习的线上内容热度预测方法 |
CN110166275A (zh) * | 2018-05-22 | 2019-08-23 | 腾讯科技(深圳)有限公司 | 信息处理方法、装置及存储介质 |
CN111797197A (zh) * | 2020-06-04 | 2020-10-20 | 南京擎盾信息科技有限公司 | 舆情分析的方法及装置 |
CN113592058A (zh) * | 2021-07-05 | 2021-11-02 | 西安邮电大学 | 一种定量预测微博转发广度与深度的方法 |
CN116596143A (zh) * | 2023-05-19 | 2023-08-15 | 人民网股份有限公司 | 社交媒体行为预测方法、装置、计算设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104239539A (zh) * | 2013-09-22 | 2014-12-24 | 中科嘉速(北京)并行软件有限公司 | 一种基于多种信息融合的微博信息过滤方法 |
US20160321613A1 (en) * | 2015-04-30 | 2016-11-03 | Linkedln Corporation | Model generator for career path options |
-
2017
- 2017-09-04 CN CN201710783927.0A patent/CN107590558B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104239539A (zh) * | 2013-09-22 | 2014-12-24 | 中科嘉速(北京)并行软件有限公司 | 一种基于多种信息融合的微博信息过滤方法 |
US20160321613A1 (en) * | 2015-04-30 | 2016-11-03 | Linkedln Corporation | Model generator for career path options |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108596205A (zh) * | 2018-03-20 | 2018-09-28 | 重庆邮电大学 | 基于地域相关因子与稀疏表示的微博转发行为预测方法 |
CN108596205B (zh) * | 2018-03-20 | 2022-02-11 | 重庆邮电大学 | 基于地域相关因子与稀疏表示的微博转发行为预测方法 |
CN110166275A (zh) * | 2018-05-22 | 2019-08-23 | 腾讯科技(深圳)有限公司 | 信息处理方法、装置及存储介质 |
CN110166275B (zh) * | 2018-05-22 | 2021-06-11 | 腾讯科技(深圳)有限公司 | 信息处理方法、装置及存储介质 |
CN109344319A (zh) * | 2018-11-01 | 2019-02-15 | 中国搜索信息科技股份有限公司 | 一种基于集成学习的线上内容热度预测方法 |
CN109344319B (zh) * | 2018-11-01 | 2021-08-24 | 中国搜索信息科技股份有限公司 | 一种基于集成学习的线上内容热度预测方法 |
CN109325640A (zh) * | 2018-12-07 | 2019-02-12 | 中山大学 | 用户价值预测方法、装置、存储介质及设备 |
CN109325640B (zh) * | 2018-12-07 | 2022-04-26 | 中山大学 | 用户价值预测方法、装置、存储介质及设备 |
CN111797197A (zh) * | 2020-06-04 | 2020-10-20 | 南京擎盾信息科技有限公司 | 舆情分析的方法及装置 |
CN111797197B (zh) * | 2020-06-04 | 2021-03-26 | 南京擎盾信息科技有限公司 | 舆情分析的方法及装置 |
CN113592058A (zh) * | 2021-07-05 | 2021-11-02 | 西安邮电大学 | 一种定量预测微博转发广度与深度的方法 |
CN113592058B (zh) * | 2021-07-05 | 2024-03-12 | 西安邮电大学 | 一种定量预测微博转发广度与深度的方法 |
CN116596143A (zh) * | 2023-05-19 | 2023-08-15 | 人民网股份有限公司 | 社交媒体行为预测方法、装置、计算设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN107590558B (zh) | 2020-12-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107590558A (zh) | 一种基于多层集成学习的微博转发预测方法 | |
Motoyama et al. | I seek you: searching and matching individuals in social networks | |
Sun et al. | Ddgcn: Dual dynamic graph convolutional networks for rumor detection on social media | |
CN106940732A (zh) | 一种面向微博的疑似水军发现方法 | |
CN105005594B (zh) | 异常微博用户识别方法 | |
Zhang et al. | Encoding conversation context for neural keyphrase extraction from microblog posts | |
CN106296422A (zh) | 一种融合多算法的社交网络垃圾用户检测方法 | |
CN109829089A (zh) | 基于关联图谱的社交网络用户异常检测方法和系统 | |
Song et al. | Who are the spoilers in social media marketing? Incremental learning of latent semantics for social spam detection | |
Dhingra et al. | Spam analysis of big reviews dataset using Fuzzy Ranking Evaluation Algorithm and Hadoop | |
Barberá et al. | How to use social media data for political science research | |
CN107609103A (zh) | 一种基于推特的事件检测方法 | |
CN108199951A (zh) | 一种基于多算法融合模型的垃圾邮件过滤方法 | |
Yang et al. | Microblog sentiment analysis via embedding social contexts into an attentive LSTM | |
CN107305545A (zh) | 一种基于文本倾向性分析的网络意见领袖的识别方法 | |
CN105740382A (zh) | 一种对短评论文本进行方面分类方法 | |
CN113254652B (zh) | 一种基于超图注意力网络的社交媒体贴文真实性检测方法 | |
CN105869058B (zh) | 一种多层潜变量模型用户画像提取的方法 | |
Hao et al. | How do Mainland Chinese tourists perceive Hong Kong in turbulence? A deep learning approach to sentiment analytics | |
Permana et al. | Perception analysis of the Indonesian society on twitter social media on the increase in BPJS kesehatan contribution in the Covid 19 pandemic era | |
Mechti et al. | A decision system for computational authors profiling: From machine learning to deep learning | |
Hamed et al. | A review of fake news detection approaches: A critical analysis of relevant studies and highlighting key challenges associated with the dataset, feature representation, and data fusion | |
Yu et al. | Graph learning for fake review detection | |
Atoum | Detecting cyberbullying from tweets through machine learning techniques with sentiment analysis | |
Bi et al. | Microblog-HAN: A micro-blog rumor detection model based on heterogeneous graph attention network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |