一种挖掘微博话题趋势发起人的方法

文档序号:8543759阅读:2164来源:国知局
一种挖掘微博话题趋势发起人的方法
【技术领域】
[0001] 本发明属于数据挖掘领域,具体设及一种挖掘微博话题趋势发起人的方法。
【背景技术】
[0002] 随着社交媒体的不断发展,人们对于微博、微信等社交媒体的使用越来越广泛,社 交网络结构的作用也越来越重要,基于社交网络结构,信息的传播更迅速,波及范围更广。 人们基于某一话题或事件在社交媒体中进行讨论,针对话题或事件的讨论,会产生大量文 本数据,通过对该海量数据的分析使人们了解社交网络中该事件的主要内容W及讨论趋势 变化。
[0003] 而某些人物的参与,对话题趋势的变化W及事件的推动起到关键作用,对于该些 关键人物的微博昵称和UID信息的提取,能为社交媒体舆情监控提供重要线索;所W,挖掘 话题的趋势发起人成为当前的一个研究热点。

【发明内容】

[0004] 本发明的目的是为了深入了解对微博中某话题信息传播产生重要影响的人物,构 建了一种挖掘微博话题趋势发起人的方法,基于某个话题事件,利用参与微博话题讨论人 数的时间变化图提取话题事件趋势,然后结合微博文本内容和传播广度,对其中趋势的制 造者和趋势的推动者进行提取。具体包括如下步骤:
[0005] 步骤一、针对某一话题微博,W天为时间粒度,构建参与该话题讨论的微博数量的 时间趋势图;
[0006] 时间趋势图中W时间为横轴,单位为天;W当天的微博发布量为纵轴。
[0007] 步骤二、获取时间趋势图中的波峰点;
[000引步骤201、将时间趋势图中所有离散点组成数组tc,将数组tc中的所有极大值点 降序排列,前Ni个点构成第一极大值点数组X1;
[0009] 时间趋势图中,包括起始点和终止点,同时大于等于前后两点的点为极大值 点,将数组tc中的所有极大值点降序排列的前Ni个点加入极大值点数组Xi中,形成
[0010] 步骤202、在极大值点数组Xi中,筛选连续的波峰点,得到第二极大值点数组X2。
[0011] 判断极大值点数组Xi中的元素X。对应的微博发布量是否与xw中的微博发布量 相同,如果相同,将X。从数组X1中删除,n依次取1~N1,将数组Xi中所有元素判断完毕, 得到极大值点数组乂:2={'、'<2...兩1...而':}。
[0012] 步骤203、筛选掉数组X2中小于差值平均值并且在相邻的前后各点中不是值最大 的点,将剩下的点组成第S极大值点数组Xs。
[0013] 步骤a、对数组tc中离散点分组,获取各组中屯、点Ct与同组最小值差值的平均值 mean_vs;
[0014] 在数组tc中w第t个点Ct为中心选取相邻的前后各k个点,共化+1个点为一组 进行分组,计算每组数组中屯、点Ct与该组最小值的差值为VSt,依次选取t为1~N,构成该 组中屯、点与最小值的差值集合;VS= {vSi,VS2,. . .,vSjJ,计算该差值集合的平均值mean_ VSo
[001引步骤b、将数组X2中各极大值点与平均值mean_vs比较,依次标记数组X2中各极 大值点的第一属性fm;
[0016] 数组X2中极大值点Xm在数组tc中对应的离散点c'-与平均值mean_vs比较,
[0017] 如果标记点Xm第一属性fm= 0,否则第一属性fm= 1。
[001引步骤C、将点与其在数组tc中相邻前后各点比较,依次标记数组X2中极大值点 第二属性gm;
[0019] 将离散点与其在数组tc中相邻的前后各k个点进行比较,判断是否为最大 值,如果是,标记点X。的第二属性gm= 1,否则第二属性gm= 0。
[0020] 步骤t依次筛选数组X2中极大值点Xm的属性,当第一属性fm= 0且第二属性gm =0时,则将点Xm从数组X2中移除;数组X洛过移除操作后形成第立极大值点数组X3。
[0021] 步骤204、删除数组X3中差距较小的相邻极大值点,组成波峰点数组X4;
[0022] 对于数组X3中的各极大值进行如下处理;设数组X; = ..Jv,中极 大值点Xj.对应的点f',与数组tc中S相邻的前后各k个点中最小值作差,得到的差 值为tSi,i= 1,2,...;所有差值组成数组TS。对TS中点tSi降序排列后形成数组 xrs },点ntSi对应的极大值点为 。
[0023] 循环取ntSi为"bpWs],…,巧,针对每一个ntSi,依次判断ntSi对应的极大值点^乂 之后的相邻极大值点^/,*,,"^.4。,-,'3如是否存在数组《3中,并且相邻极大值点^^.1,'^/,。,-,^./',、, 对应的微博发布量是否小于极大值点X,.i对应的微博发布量,如果是,依次将极大值点 -.Y,,",...,'Y,V3筛掉,否贝1J保留'Y,'w'了,…,…,,剩下的极大值点组成最终的波峰点数组 与=-I。
[0024] 步骤S、获取时间趋势图中的波谷点;
[00巧]步骤301、将时间趋势图中所有离散点组成数组tc,将数组tc中的所有极小值点 升序排列,前Ml个点构成第一极小值点数组Y1;
[0026] 时间趋势图中,包括起始点和终止点,同时小于等于前后两点的点为极小值 点,将数组tc中的所有极小值点升序排列的前Ml个点加入极小值点数组Y冲,形成
[0027] 步骤302、在极小值点数组Y冲,筛选连续的波谷点,得到第二极小值点数组Y2。 [002引对于数组Y冲相邻的两个元素y。与y。_1,判断极小值点数组Y冲元素y。对应的 微博发布量是否与y"_i对应的微博发布量相同,如果相同,将y。从数组Yi中删除,n依次 取1~Ml,,否则,不进行删除操作;将数组Yi中所有元素判断完毕,得到第二极小值点数组
[0029] 步骤303、筛选掉数组Y2中大于等于平均值且在相邻的前后各点中不为最小值的 点,数组Y2中剩下的点组成第S极小值点数组Y3;
[0030] 步骤I、对数组tc中离散点分组,获取各组中屯、点Ct与同组最大值差值的平均值 me过打_师8 ;
[003。 在数组tc中W第t个点Ct为中心选取相邻的前后各k个点,共化+1个点为一 组进行分组,计算每组数组中屯、点ct与该组最大值的差值为WSt,依次选取t为1~N,构成 该组中屯、点与最大值的差值集合;WS= {wsi,WS,,. . .,wsJ,长度为N;计算该差值集合的平 均值mean_ws。
[00础步骤II、将数组Y2中极小值点与平均值mean_ws比较,依次标记数组Y2中各极小 值点的第一属性fm;
[003引数组Y2中极小值点ym在数组tc中对应的离散点G'。与平均值mean_ws比较,
[0034] 如果…标记点y。第一属性fm= 1,否则第一属性fm= 0。
[0035] 步骤III、将点ft,与其在数组tc中相邻前后各点比较,依次标记数组Y2中极小值 点第二属性gm;
[0036] 进一步将离散点C,。与其在数组tc中相邻的前后各k个点进行比较,判断是否为 最小值,如果是,标记点y。的第二属性gm= 1,否则第二属性gm= 0。
[0037] 步骤IV、依次筛选数组Y2中的极小值点ym的属性,当fm= 0且gm= 0时,则将点 y。从数组Y2中移除;数组Y2经过移除操作后形成第S极小值点数组Y3。
[003引步骤304、删除数组Ys中差距较小的相邻极小值点,组成波谷点数组Y4;
[0039] 对于数组Ys中的各极小值进行如下处理:设数组K ,..的/,}中极 小值点y,对应的点f*,,将与数组tc相邻的前后各k个点中最大值作差,得到差 值为kSi,i= 1,2,...;所有差值组成数组KS。将KS中点kSi升序排列后形成数组
[0040] 点nkSi对应的极小值点。
[00川循环取nkSi为"/巧,"紅2,..."崎,...,"吟、/,,针对每一个nkSi,依次判断对应的极小 值点y,,之后的相邻极小值点J'/w,…,是否在同一数组Ys中,并且相邻极小值点 yz.iJy;。,对应的微博发布量是否大于极小值点y;,对应的微博发布量,如果是,依次将 极小值点y,-,…而。筛掉,否则保留°剩下的极小值点组成最终的波峰点 数组 ^4 =[)'1,知..私..打/,}。
[0042] 步骤四、根据波峰点数组X4和波谷点数组Y4,选用第一个波谷点到第一个波峰点 之间作为趋势的时间范围。
[0043] 步骤五、在波峰点与波谷点确定的趋势时间范围内,进行微博关键词的提取;
[0044] 微博关键词的提取是指对高频词进行提取。
[0045] 步骤501、对波峰点和波谷点确定的趋势时间范围内,对微博数据集进行文本分 词;
[0046] 步骤502、剔除文本分词中的低频词和超高频词;
[0047] 步骤503、对剩下的文本分词根据词频进行降序排列,获取高频词作为微博关键 词。
[004引步骤六、根据关键词,对微博内容相关度排序,提取趋势制造者;
[0049] 趋势制造者即为波谷波峰确定的时间范围早期参与话题讨论,并且发表内容对趋 势后续讨论产生
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1