一种微博流行趋势预测方法、装置及系统与流程

文档序号:11806994阅读:263来源:国知局
一种微博流行趋势预测方法、装置及系统与流程
本发明涉及社交网络中的网络数据分析,尤其涉及一种微博流行趋势预测方法、装置及系统。

背景技术:
微博是一种基于用户关系进行信息分享、传播以及获取的平台,其作为Web2.0时代的一种新的社交媒体出现并以摧枯拉朽之势迅猛发展。微博通常以140字左右的文字来更新信息,并实现即时分享。微博系统具有发布的简单性、便捷性,信息的时效性、丰富性,以及信息传播的交互性、裂变性等一系列的特点。微博系统内容发布的简单性、便捷性,加之微博预警系统的裂变式传播的特点,与微博系统庞大的用户群体结合,使得微博平台成为一种全新的信息渠道。对于个人用户来讲,微博系统是一个很好的信息分享与获取的平台;对于企业用户来讲,微博系统是一个营销以及与用户互动的平台;而对于政府等部门,微博系统是一个热点信息监控平台。微博系统虽然蕴含着巨大的价值,但是要挖掘和利用这些价值,必须有方法发现一些有趣、或者有价值的微博信息来吸引平台用户的注意力,必须有方法预测哪些微博内容会在将来成为热门信息,从而节省用户寻找和浏览信息的时间或者使用户能更早、更快地对一些问题进行处理。微博流行趋势预测可以解决以上问题,通过微博流行趋势预测可以提前预知将来会成为热门的微博信息,从而根据需要对微博信息作相应的处理。当前,针对微博流行趋势预测的研究主要有两类:一类是根据用户账号的一些特征(比如粉丝数、关注数、用户是否认证等),以及微博内容的一些属性(如内容中是否包含图片、内容长度等)进行预测,但是这种预测方法并不理想,预测某条微博的流行度效果可能会比较差,有可能预测出来的一个用户发布的所有微博的流行度都是一样的,从而导致不准确的问题;还有一类是根据某条微博的转发用户之间的连接关系来进行预测,但由于这种方式需要获取和计算的数据量太大,因而只能离线进行。综上所述,目前缺少一种能够在保证预测准确性的同时还可以实时在线进行处理的预测微博流行趋势的方法。

技术实现要素:
根据本发明的一个实施例,提供一种微博流行趋势预测方法,包括:步骤1)、获得微博用户群体行为特征描述,所述微博用户群体行为特征描述表征用户发布微博的行为特征以及微博转发和评论中用户的行为特征;步骤2)、根据微博发布后第1至i-1个时间间隔的转发和评论数量,以及所述微博用户群体行为特征描述,计算所述微博在发布后第i个时间间隔的转发和评论数量,其中i为大于1的正整数。在一个实施例中,步骤1)中获得微博用户群体行为特征描述包括:获得用户发布微博的行为特征描述矩阵和微博转发和评论中用户的行为特征描述矩阵;其中,用户发布微博的行为特征描述矩阵的第m行第n列元素表征在一个时间周期内第m个时间间隔的用户发布微博数量均值与第n个时间间隔的用户发布微博数量均值的比值;微博转发和评论中用户的行为特征描述矩阵的第m行第n列元素表征在微博发布后第m个时间间隔的用户转发和评论数量均值与第n个时间间隔的用户转发和评论数量均值的比值。在进一步的实施例中,所述时间周期为24小时。在一个实施例中,步骤2)中使用下式计算微博在发布后第i个时间间隔的转发和评论数量:其中,rt(j)表示微博在发布后第j个时间间隔的转发和评论数量;rw[i][j]表示所述微博转发和评论中用户的行为特征描述矩阵中第i行第j列的值;t[i]=(t0+i)modT,t0表示微博发布时所对应的在所述一个时间周期内的时间间隔,T表示所述时间周期的大小;tw[i][j]表示所述用户发布微博的行为特征描述矩阵中第i行第j列的值。在一个实施例中,步骤1)之前还包括:步骤0)、构建微博用户群体行为特征描述。在一个实施例中,步骤0)包括:构建用户发布微博的行为特征描述矩阵以及构建微博转发和评论中用户的行为特征描述矩阵。在一个实施例中,构建用户发布微博的行为特征描述矩阵包括:步骤a)、统计多个不重合的时间周期内每个时间间隔的用户发布微博数量;步骤b)、计算每个时间间隔对应于不同时间周期的用户发布微博数量的均值,得到一个时间周期内每个时间间隔的用户发布微博数量均值;步骤c)、构建矩阵,其行和列的个数为一个时间周期内时间间隔的个数,其第m行第n列对应的元素为一个时间周期内第m个时间间隔的用户发布微博数量均值与第n个时间间隔的用户发布微博数量均值的比值。在进一步的实施例中,步骤a)中所述多个不重合的时间周期为最近的多个连续时间周期。在一个实施例中,构建微博转发和评论中用户的行为特征描述矩阵包括:步骤A)、统计多个连续的时间周期内多条微博在发布后每个时间间隔的转发和评论数量;步骤B)、计算发布后每个时间间隔对应于不同微博的用户转发和评论数量的均值,得到微博发布后每个时间间隔的用户转发和评论数量均值;步骤C)、构建矩阵,其第m行第n列对应的元素为微博发布后第m个时间间隔的用户转发和评论数量均值与第n个时间间隔的用户转发和评论数量均值的比值。在进一步的实施例中,步骤A)中所述多条微博是转发数量或者评论数量不为0的多条微博。在一个实施例中,步骤2)之后还包括:步骤I)、设置正整数x=i;步骤II)、将所计算的微博在发布后第x个时间间隔的转发和评论数量,作为微博发布后第x个时间间隔的转发和评论数量;步骤III)、根据微博发布后第1至x个时间间隔的转发和评论数量,以及所述微博用户群体行为特征描述,计算所述微博在发布后第x+1个时间间隔的转发和评论数量,如果x+1<N,则将x设置为x+1,返回步骤II);其中N为大于i的正整数。在一个实施例中,所述方法还包括:步骤3)、计算所述微博发布后第1至i个时间间隔的总的转发和评论数量。根据本发明一个实施例,提供一种微博流行趋势排名方法,所述方法包括:根据上述微博流行趋势预测方法,对多条微博计算发布后第1至i个时间间隔的总的转发和评论数量;根据所计算的多条微博发布后的第1至i个时间间隔的总的转发和评论数量,对所述多条微博进行排名。根据本发明一个实施例,提供一种微博流行趋势预测装置,包括:用于获得微博用户群体行为特征描述的模块,其中所述微博用户群体行为特征描述表征用户发布微博的行为特征以及微博转发和评论中用户的行为特征;计算模块,用于根据微博发布后第1至i-1个时间间隔的转发和评论数量,以及所述微博用户群体行为特征描述,计算所述微博在发布后第i个时间间隔的转发和评论数量;其中i为大于1的正整数。在一个实施例中,用于获得微博用户群体行为特征描述的模块用于通过获得用户发布微博的行为特征描述矩阵和微博转发和评论中用户的行为特征描述矩阵来获得微博用户群体行为特征描述;其中,用户发布微博的行为特征描述矩阵的第m行第n列元素表征在一个时间周期内第m个时间间隔的用户发布微博数量均值与第n个时间间隔的用户发布微博数量均值的比值;微博转发和评论中用户的行为特征描述矩阵的第m行第n列元素表征在微博发布后第m个时间间隔的用户转发和评论数量均值与第n个时间间隔的用户转发和评论数量均值的比值。在进一步的实施例中,所述时间周期为24小时。在一个实施例中,所述计算模块使用下式计算微博在发布后第i个时间间隔的转发和评论数量:其中,rt(j)表示微博在发布后第j个时间间隔的转发和评论数量;rw[i][j]表示所述微博转发和评论中用户的行为特征描述矩阵中第i行第j列的值;t[i]=(t0+i)modT,t0表示微博发布时所对应的在所述一个时间周期内的时间间隔,T表示所述时间周期的大小;tw[i][j]表示所述用户发布微博的行为特征描述矩阵中第i行第j列的值。在一个实施例中,所述装置还包括微博用户群体行为特征描述与更新模块,用于构建微博用户群体行为特征描述。在一个实施例中,所述微博用户群体行为特征描述与更新模块用于通过构建用户发布微博的行为特征描述矩阵以及构建微博转发和评论中用户的行为特征描述矩阵来构建微博用户群体行为特征描述。在一个实施例中,所述微博用户群体行为特征描述与更新模块用于执行如下功能来构建用户发布微博的行为特征描述矩阵:统计多个不重合的时间周期内每个时间间隔的用户发布微博数量;计算每个时间间隔对应于不同时间周期的用户发布微博数量的均值,得到一个时间周期内每个时间间隔的用户发布微博数量均值;构建矩阵,其行和列的个数为一个时间周期内时间间隔的个数,其第m行第n列对应的元素为一个时间周期内第m个时间间隔的用户发布微博数量均值与第n个时间间隔的用户发布微博数量均值的比值。在进一步的实施例中,所述多个不重合的时间周期为最近的多个连续时间周期。在一个实施例中,所述微博用户群体行为特征描述与更新模块用于执行如下功能来构建微博转发和评论中用户的行为特征描述矩阵:统计多个连续的时间周期内多条微博在发布后每个时间间隔的转发和评论数量;计算发布后每个时间间隔对应于不同微博的用户转发和评论数量的均值,得到微博发布后每个时间间隔的用户转发和评论数量均值;构建矩阵,其第m行第n列对应的元素为微博发布后第m个时间间隔的用户转发和评论数量均值与第n个时间间隔的用户转发和评论数量均值的比值。在进一步的实施例中,所述多条微博是转发数量或者评论数量不为0的多条微博。在一个实施例中,所述计算模块还用于:将所计算的微博在发布后第i个时间间隔的转发和评论数量,作为微博发布后第i个时间间隔的转发和评论数量;依次计算所述微博在发布后第i个时间间隔后每个时间间隔的转发和评论数量,直到计算了所述微博在发布后第N个时间间隔的转发和评论数量;其中N为大于i的正整数。在一个实施例中,所述计算模块还用于计算所述微博发布后第1至i个时间间隔的总的转发和评论数量。在一个实施例中,所述装置还包括微博流行趋势更新与排名模块,用于对多条微博计算发布后第1至i个时间间隔的总的转发和评论数量;并且根据所计算的多条微博发布后的第1至i个时间间隔的总的转发和评论数量,对所述多条微博进行排名。根据本发明一个实施例,提供一种微博流行趋势预测系统,包括上述微博流行趋势预测装置。在一个实施例中,所述系统还包括配置文档模块,用于存储所述微博流行趋势预测系统的配置信息。在一个实施例中,所述系统还包括数据读取接口模块,用于读取所述微博用户群体行为特征描述与更新模块在构建微博用户群体行为特征描述时所需的数据以及所述计算模块在预测微博的转发和评论数量时所需的数据。在进一步的实施例中,所述系统还包括微博流行趋势预测逻辑控制单元,用于根据所述配置信息控制所述数据读取接口模块读取数据;控制所述计算模块预测微博的转发和评论数量;控制所述微博用户群体行为特征描述与更新模块构建微博用户群体行为特征描述;以及控制所述微博流行趋势更新与排名模块对多条微博进行排名。采用本发明可以达到如下的有益效果:本发明从时间维度出发,对用户群体行为特征进行描述,并且利用用户群体行为特征进行微博流行趋势预测。可以随着时间推移动态地调整用户群体行为特征,在保证微博流行趋势预测准确性以及效率的同时可以在线实时处理。附图说明图1是根据本发明一个实施例的微博流行趋势预测方法的流程图;图2是根据本发明一个实施例的构建微博用户群体行为特征描述矩阵的方法的流程图;图3是根据本发明一个实施例的更新微博用户群体行为特征描述矩阵的方法的流程图;图4是根据本发明一个实施例的微博流行趋势预测系统的运行环境示意图;图5是根据本发明一个实施例的微博流行趋势预测系统的框图;图6是根据本发明一个实施例的微博流行趋势预测系统中各模块的执行流程图;以及图7是采用本发明一个实施例的微博流行趋势预测方法所预测的微博流行趋势预测结果与真实的微博流行趋势的统计结果示意图。具体实施方式下面结合附图和具体实施方式对本发明加以说明。根据本发明的一个实施例,提供一种微博流行趋势预测方法。图1示出了该预测方法的一个实施例,包括以下步骤:步骤1000、开始。步骤1002、对要处理的微博赋予唯一标识。本发明可以使用各种标识方法来唯一地标识一条微博,从发布微博开始,可将该微博相关的信息对应到其唯一标识,以便统计这些信息。微博相关信息例如包括微博的发布时间、微博内容,以及发布后不同时间段(或称时间间隔)内的转发数量和评论数量等。步骤1004、根据设定的时间间隔和微博的唯一标识,统计初始阶段的各个时间间隔内该微博的转发和评论数量。在一个实施例中,初始阶段指微博从发布到当前时刻(即已知转发和评论数量)的这段时间,初始阶段可以由一个或多个时间间隔组成。例如,如果将时间间隔设定为1小时,在微博发布后10小时,可统计该微博分别在这十个时间间隔内的转发和评论数量。步骤1006、获取微博用户群体行为特征描述,构建微博用户群体行为特征描述矩阵。其中,微博用户群体行为特征描述可表征用户发布微博的行为特征以及微博转发和评论中用户的行为特征。可以将微博用户群体行为特征分为两个方面的特征:其一是微博平台中所有用户发布微博的行为特征,该特征可表征整个微博平台中用户的活跃程度;其二是每条微博的转发和评论中用户的群体行为特征,该特征可表征在一条微博生存周期中用户的活跃程度。在一个实施例中,上述微博用户群体行为特征描述可分别采用如表1和表2中所示的矩阵形式来分别描述微博平台中用户发布微博的行为特征以及微博转发和评论中用户的群体行为特征。表1表2通过对数据集的统计分析发现微博平台中用户群体发布微博的行为特征具有周期性且该周期为24小时,即每一天相同时段(例如每小时)的用户发布微博的行为相似(即每一天不同时刻的用户发布微博数量的变化趋势基本一致)。因此,在一个实施例中,可根据这种周期性来设定用户行为特征(即发布、转发和评论)统计的时间间隔(步骤1004)。例如在一个实施例中,如果时间间隔设定为1小时,则表1可以是24*24的矩阵。表1的第i行第j列的元素可表示在一个周期(例如24小时)内时间间隔i的用户发布微博数量均值与时间间隔j的用户发布微博数量均值的比值,由于时间间隔两两之间的相互关系是一定的,所以微博平台中用户发布微博的行为特征在表1所示的矩阵中具有对称性,互相对称的两个元素的乘积为1。应理解,表1描述了一个时间周期内微博平台中所有用户发布微博的行为特征,该时间周期可以有多种表示,例如可以是24小时、48小时等等。表2中第i行第j列的元素可表示单个微博在其发布后的时间间隔i的用户转发和评论数量均值与发布后的时间间隔j的用户转发和评论数量均值的比值。表2可以是大于24*24的矩阵(即大于表1的一个时间周期),且呈下三角矩阵,这是因为对于一条微博的转发和评论具有时间上的先后关系,即在时间间隔i时无法得知时间间隔i+1、i+2…的实际转发和评论数量。上文描述了微博用户群体行为特征描述的矩阵形式,而构建该微博用户群体行为特征描述矩阵的流程将在下文中详细描述。步骤1008、根据初始阶段的各个时间间隔内微博的转发和评论数量以及微博用户群体行为特征描述矩阵,预测将来某个时间所对应的微博转发和评论数量(某个时间间隔对应的某条微博的总的转发和评论数量)。在一个实施例中,要预测初始阶段后的时间间隔对应的某条微博的总的转发和评论数量,首先要预测微博在该时间间隔内的转发和评论数量,然后统计该微博从发布到该时间间隔的所有转发和评论数量。具体来说,可包括以下两步:一、根据给定的初始阶段的转发和评论数量预测微博将来某个时间间隔的转发和评论数量。具体来说,在该步骤中,可根据给定的微博前i-1个时间间隔的数据(转发和评论数量)来预测微博第i个时间间隔的转发和评论数。在进一步的实施例中,如果要根据前i-1个时间间隔的数据来预测第N(N>i)个时间间隔的转发和评论数量,则可以首先计算第i个时间间隔的转发和评论数,然后依次计算,直至计算第N个时间间隔的转发和评论数,计算微博在第i个时间间隔的转发和评论数量的公式如下所示:公式(1)中的参数说明如下:rt(i)表示微博在第i个时间间隔的转发和评论数量;tw[i][j]表示用户发布微博的行为特征描述矩阵(如表1所示)中第i行第j列的值;rw[i][j]对应微博转发和评论中用户的行为特征描述矩阵(如表2所示)中第i行第j列的值;t[i]代表微博转发和评论的第i个时间间隔所对应的用户发布微博的行为特征中对应的一个时间周期(如24小时)中的时间间隔,例如当时间间隔为1小时,那么rt[i]就代表微博发布后第i个周期也就是发布后第i个小时对应的转发和评论数量之和,t[i]代表微博发布后第i个小时对应的用户发布微博的行为特征所对应的时间间隔,例如用户8点发布某一微博,第2个小时的转发评论数为300,那么rt[2]=300,t[2]=8+2=10,对应一个时间周期(24小时)中的第10个时间周期。因此,t[i]可表示为t0+i,t0代表微博发布时所对应的在一个时间周期内的一个时间间隔。在一个实施例中,如果微博发布时所对应的在一个时间周期内的时间间隔加上i大于该时间周期T,则可将该值t0+i进行取模运算(t0+i)modT,得到最终的t[i]。第二步、将微博发布后各个时间间隔的转发和评论数量求和得到该微博发布后第i个时间间隔对应的总的转发和评论数量,如公式(2)所示:在公式(2)中,rts(i)代表一条微博在发布后的第i个时间间隔对应的转发和评论总数量,rt(i)就是公式(1)中在第i个时间间隔内微博的转发和评论数量。步骤1010、结束。应理解,上述步骤仅用于描述微博流行趋势预测方法的一个实施例,还可以调换例如步骤1004和步骤1006之间的顺序。在一个实施例中,有了微博流行趋势预测结果,即获得微博在将来某个时间间隔的转发和评论数量,然后用这个新的预测结果更新微博的流行趋势,按照预测得到的微博的转发和评论数量对各个微博的流行趋势进行排名。根据本发明的一个实施例,步骤1006中构建微博用户群体行为特征描述矩阵的过程如图2所示,包括以下步骤:步骤2000、开始。步骤2002、根据设定的时间周期以及时间间隔确定用于微博用户群体行为特征描述的数据集。如上所述,微博用户群体行为特征描述的时间间隔可以设定为1小时,时间周期设定为一天,则微博用户群体行为特征描述所使用的数据集可以是最新1个月中的微博相关数据。该相关数据包括:最新1个月中所有用户在每天每个时间间隔的微博发布数量,以及1个月中发布的每条微博在发布后每个时间间隔的转发和评论数量。在一个实施例中,可以仅统计最新1个月中的500条微博在其发布后每个时间间隔的转发和评论数量。步骤2004、对微博平台中用户发布微博的行为特征进行统计。在一个实施例中,其中所设定的时间周期为1天、时间间隔为1小时,且设定的数据集为最新一个月(30天)内的微博相关数据的集合。则可以对数据集中每天每小时的微博发布数量进行统计,得到30天中每天每小时的用户发布微博数量,然后对每一小时(即每一时间间隔)所对应的30个发布微博数量进行加和取均值,该均值作为该时间间隔对应的发布微博数量。步骤2006、对微博转发和评论中用户的行为特征进行统计。在一个实施例中,可首先在数据集中找出转发数量或者评论数量不为0的微博(在进一步的实施例中,可在这些微博中选择一些,例如500条),然后按照设定的时间间隔(1小时)以及数据集中的相关数据,对这些微博在发布后每小时的转发和评论数量进行统计,将这些微博在发布后每小时(每个时间间隔)内的转发和评论数量加和取均值作为微博发布后每个小时的转发和评论数量。在一个实施例中,可统计微博发布后一个或多个时间间隔的转发和评论数量。在进一步的实施例中,可统计发布后24个小时或者更多小时的转发和评论数量。步骤2008、根据步骤2004和步骤2006统计的结果获得微博用户群体行为特征描述矩阵,包括用户发布微博的行为特征描述矩阵和微博转发和评论中用户的行为特征描述矩阵,形式分别如上述表1和表2所示。其中,用户发布微博的行为特征描述矩阵中第i行第j列对应的值为一个时间周期内时间间隔i与时间间隔j对应的用户发布微博数量均值的比值。在时间周期设定为24小时且时间间隔设定为1小时的实施例中,该矩阵表示一天中某一小时相对另一小时的用户发布微博行为的活跃程度。例如,在微博平台上,一天之中早上9点用户发布微博的数量为500,而早上10点用户发布微博的数量为400,则用户发布微博的行为特征描述矩阵中,时间间隔9(对应9点)所在的行与时间间隔10(对应10点)所在的列对应的值为500/400=1.25。相应地,微博转发和评论中用户的行为特征描述矩阵中第i行第j列的值是在微博发布后的第i个时间间隔对应的转发和评论的数量均值与在微博发布后第j个时间间隔对应的转发和评论的数量均值的比值。在上述以一小时为统计时间间隔的实施例中,该矩阵表示一条微博发布后的各个小时相对于其他小时的用户转发和评论行为的活跃程度。例如,微博发布后第1小时的转发和评论数量为1000,而第2小时的转发和评论数量为500,则时间间隔1对应的行(如第一行)和时间间隔2对应的列(如第二列)的值为1000/500=2。步骤2010、结束。应理解,步骤2002-2008仅示例性地描述了构建微博用户群体行为特征描述矩阵的过程,其中两种矩阵的构建顺序可以是任意的,并不受上述实施例的限制。上述实施例给出了构建初始的微博用户群体行为特征描述的方法,由于微博用户群体行为特征会随着时间的推移而发生变化,例如,在一个时间周期内每一时间间隔的用户发布微博的数量会变化,并且一条微博发布后在不同时间间隔内的转发和评论数量也会发生变化。因此还需要在预测微博趋势前对微博用户群体行为特征描述进行更新,根据本发明的一个实施例,该更新的执行过程如图3所示,主要包括以下步骤:步骤3000、开始。步骤3002、获取新加入的数据集。类似于构建微博用户群体行为特征描述使用的数据集,该新加入的数据集包括最近一段时间的微博相关数据。构建微博用户群体行为特征时的数据集和新加入的数据集。步骤3004、判断用于构建微博用户群体行为特征描述的数据集是否达到设定的最大值:如果是则转步骤3006用新加入的数据替换原数据集中时间最早的一部分数据,否则转到步骤3008将新的数据集加入到用于构建微博用户群体行为特征描述的数据集中,从而得到新的数据集。步骤3010、根据该新的数据集,执行上文所述的、微博用户群体行为特征统计过程。包括对微博平台中用户发布微博的行为特征进行统计,以及对微博转发和评论中用户的行为特征进行统计。步骤3012、构建新的微博用户群体行为特征描述矩阵(上述两个矩阵)并更新。步骤3014、结束。根据本发明的一个实施例,还提供一种微博流行趋势预测系统,用于对微博的转发数和评论数进行预测。图4示出了该微博流行趋势预测系统的运行环境,包括互联网、微博平台,以及诸如PC机、便携电脑、手机等的终端。如图4所示,微博流行趋势预测系统需要与现有的微博平台通过互联网进行数据的交互。通过数据的读取,可以由微博流行趋势预测系统对微博的流行趋势进行预测,从而用户可以例如通过上述终端,经由互联网来查看微博流行趋势预测的结果。图5示出了微博流行趋势预测系统的一个实施例的框图。如图5所示,该系统主要包括:配置文档模块5001、数据读取接口模块5101、微博流行趋势预测逻辑控制单元5201、微博用户群体行为特征描述与更新模块5301、微博流行趋势预测模块5302,以及微博流行趋势更新与排名模块5303。以下分别对系统中的各个模块或单元进行详细描述。A.配置文档模块5001在一个实施例中,配置文档模块5001包括运行微博流行预测系统所需的一些配置信息,例如:读取的数据格式、微博用户群体行为特征描述所使用的数据集的大小或时间范围、微博用户群体行为特征描述的更新策略、微博用户群体行为特征统计使用的时间间隔(即微博用户群体行为描述的时间间隔)、微博流行趋势预测更新的时间段等。其中,读取的数据格式是指读取的数据包括哪些字段、字段的类型等。微博用户群体行为特征描述所使用的数据集的大小或时间范围是指:可以采用固定大小的数据集来进行微博用户群体行为特征描述,即采用最新的若干数据集;或者也可以采用固定时间范围内的数据集来进行用户群体行为特征描述,即采用最近的某个时间范围(例如1个月)的数据集。微博用户群体行为特征描述更新策略包括微博用户群体行为特征描述更新的时间间隔,以及用于微博用户群体行为特征描述的数据集的更新。在进一步的实施例中,如果用户群体行为特征描述使用的是固定大小的数据集,则把最新的数据加入微博用户群体行为特征描述数据集,如果数据集已达到最大值则替换时间最早的数据;如果使用固定时间范围的数据集,则将用户群体行为特征描述的数据集更新为最新时间范围的数据集。微博用户群体行为特征统计的时间间隔即进行微博用户群体行为特征描述时所使用的时间间隔。微博流行趋势预测更新的时间段是指每隔多长时间对预测出的微博转发数和评论数进行更新并且重新排名。B.数据读取接口模块5101数据读取接口模块5101主要负责数据的读取,按照配置的数据格式将数据读取到微博流行趋势预测系统中,供微博流行趋势预测逻辑控制单元调用。在一个实施例中,本系统中涉及到的数据主要包括微博信息和微博更新信息,即上述用于微博用户群体行为特征描述的数据集中的数据。在一个实施例中,微博信息可以包括微博在对应的微博平台的ID、微博的发布者的ID、微博的内容、微博的发布时间、微博的采集时间、微博的转发数量、评论数量等。表3示出了微博信息结构的一个实施例,其中UID(微博发布者唯一标识)可以是可选字段。表3字段名称字段类型是否可选字段说明IDString否微博唯一标识TextString否微博内容Created_TimeDate否微博发布时间Crawl_TimeDate否数据采集时间Repost_CountInt否采集时微博的转发次数Comment_CountInt否采集时微博评论次数UIDString是微博发布者唯一标识在一个实施例中,微博更新信息可以是在不同采集时间微博对应的转发数量和评论数量等信息,主要包括微博ID、更新时间、更新时间对应的转发数量、更新时间对应的评论数量等,微博更新信息中的微博ID与表1中的微博ID对应(即同一微博的微博ID不变),表4示出了微博更新信息结构的一个实施例。表4字段名称字段类型是否可选字段说明IDString否微博唯一标识Repost_CountInt否更新时微博的转发数Comment_CountInt否更新时微博的评论数Update_TimeDate否更新时间应理解,表3和表4仅示意性地示出了微博信息以及微博更新信息的结构,而这些信息也可以采用其他不同的结构进行表示,例如可以不包括“是否可选”信息。C.微博流行趋势预测逻辑控制单元5201微博流行趋势预测逻辑控制单元5201用于控制整个微博流行趋势预测系统的执行逻辑和流程。在一个实施例中,微博流行趋势预测逻辑控制单元5201用于提供控制如上文中结合图1-3描述的数据的读取、微博用户群体行为特征的描述与更新、微博转发和评论数的预测,以及微博流行趋势的更新与排名等功能。D.微博用户群体行为特征描述与更新模块5301微博用户群体行为特征描述与更新5301用于如上文中结合图2描述的,根据配置文档模块5001的配置信息,例如微博用户群体行为特征描述使用的时间周期、时间间隔、数据集的大小或时间范围,以及通过数据读取接口模块5101提供的微博信息或微博更新信息(例如用于微博用户群体行为特征的数据集),对微博用户群体行为特征进行描述,包括构建用户发布微博的行为特征描述矩阵以及构建微博转发和评论中用户的行为特征描述矩阵。由于微博用户的群体行为特征是动态变化的,随着时间的推移连同新的数据集的加入,该模块5301还用于如上文中结合图3描述的,完成微博用户群体行为特征的更新。E.微博流行趋势预测模块5302微博流行趋势预测模块5302用于执行本发明提供的微博流行趋势预测方法。如上文中结合图1-2所描述的,用于获得微博用户群体行为特征描述,并且根据微博用户群体行为特征描述,以及微博在初始阶段的转发和评论数量等信息,预测微博在将来某个时间的转发和评论数量。在一个实施例中,该模块可包括用于获得微博用户群体行为特征描述的模块,以及预测微博在将来某个时间的转发和评论数量的计算模块。F.微博流行趋势更新与排名模块5303微博流行趋势更新与排名模块5303用于如上文中结合图1所描述的,根据设定的更新时间,对微博流行趋势预测的结果进行更新并且重新排名。根据本发明一个实施例,上述微博用户群体行为特征描述与更新模块5301、微博流行趋势预测模块5302,以及微博流行趋势更新与排名模块5303可构成微博流行趋势预测装置,用于获得微博用户群体行为特征描述,并且根据微博发布后在初始阶段的转发和评论数量,以及该微博用户群体行为特征描述,计算微博在初始阶段之后的时间间隔的转发和评论数量。图6示出了上述微博流行趋势预测系统中各个模块的执行流程的一个实施例,主要包括以下步骤:步骤6000、开始。步骤6002、微博流行趋势预测逻辑控制单元5201读取配置文档模块5001,将一些变量按照读取的配置信息进行初始化,如数据读取格式、用户群体行为特征描述的时间间隔、用户群体行为更新策略、微博流行趋势预测更新的时间段等。步骤6004、微博流行趋势预测逻辑控制单元5201根据设定的数据格式从数据读取接口模块5101读取微博流行趋势预测所需的数据。步骤6006、微博流行趋势预测逻辑控制单元5201根据配置的微博流行趋势预测更新时间段判断当前是否已到微博流行趋势更新时间,如果到了更新时间则转步骤6008,否则转到步骤6022。步骤6008、微博流行趋势预测逻辑控制单元5201判断当前是否已有微博用户群体行为特征的描述(如上文中描述的两个矩阵),如果没有则执行步骤6020进行微博用户群体行为特征描述过程(包括构建用户发布微博的行为特征描述矩阵以及构建微博转发和评论中用户的行为特征描述矩阵);如果已有微博用户群体行为特征的描述则执行步骤6010。步骤6010、微博流行趋势预测模块5302执行微博流行趋势预测过程,即微博的转发和评论数量的预测。步骤6012、由微博流行趋势更新与排名模块5303根据微博流行趋势预测模块5302得到的微博流行趋势预测的结果对微博流行趋势进行更新和排名。步骤6014、由微博流行趋势预测逻辑控制单元5201判断是否需要对微博用户群体行为特征描述进行更新,如果需要更新则转到步骤6016,否则转步骤6018。步骤6016、由微博用户群体行为特征描述与更新模块5301对微博用户群体行为特征描述进行更新。步骤6018、由微博流行趋势预测逻辑控制单元5201判断当前系统是否运行结束,如果是则转步骤6032结束系统运行,否则转步骤6004,继续微博流行趋势预测的执行流程。步骤6020、由微博用户群体行为特征描述与更新模块5301进行微博用户群体行为特征描述过程。步骤6022、由微博流行趋势预测逻辑控制单元5201判断当前是否已有微博用户群体行为特征描述,如果没有则转步骤6024,否则转步骤6028。步骤6024、由微博流行趋势预测逻辑控制单元5201判断是否需要进行微博用户群体行为特征描述,如果需要则执行步骤6026,否则转步骤6018。步骤6026、由微博用户群体行为特征描述与更新模块5301依据系统当前的数据集对微博用户群体行为特征进行描述,然后转步骤6018。步骤6028、由微博流行趋势预测逻辑控制单元5201判断微博用户群体行为特征是否需要更新,如果是则转步骤6030,否则转步骤6018。步骤6030,由微博用户群体行为特征描述与更新模块5301根据设定的更新策略对微博用户群体行为特征描述进行更新,然后转步骤6018。为验证采用本发明进行微博流行趋势预测的准确性,发明人采用从2011年6月26开始的22天的数据集,对转发数量超过500的234条微博进行实验。根据给定初始阶段6个小时的转发和评论数量的数据,来预测第7个小时、第8个小时一直到第24个小时的转发数量。发明人将预测的结果与真实值的对比进行了统计,统计的结果如图7所示。图7中,横轴表示预测值与真实值的差值占真实值的比例,纵轴则表示对应的微博占总微博的比例,大部分微博的预测值的取值范围为1/2真实值到3/2真实值之间,比较理想。可见,采用本发明提供的微博流行趋势预测方法可以较准确地预测将来某个时刻微博的流行度。此外,发明人将本发明提供的微博流行趋势预测方法与现有技术中考虑连接密度以及考虑连接深度(包括用户间连接关系)的多个方法进行了对比,所使用的评价矩阵分别如公式(3)和公式(4)所示:其中,Pn和Rn分别是第n条微博的预测流行度和真实流行度。对比的结果如表5所示:表5RMSEMAE考虑链接密度0.630.45考虑传播深度0.610.43用户群体行为特征0.420.24其中,RMSE为均方根误差,MAE为平均绝对误差。可见,与现有技术相比,本发明提供的基于微博用户群体行为特征的预测方法显著地降低了预测的误差。同时使用本发明提供的预测方法不需要获取用户的关系数据、不需计算连接的密度信息,只需获取初始阶段内的转发和评价数量等数据,可以显著地提高运算速度,并且可以适应对微博大规模处理和实时在线处理的要求。应该注意到并理解,在不脱离后附的权利要求所要求的本发明的精神和范围的情况下,能够对上述详细描述的本发明做出各种修改和改进。因此,要求保护的技术方案的范围不受所给出的任何特定示范教导的限制。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1