CN103179025B - 一种基于用户传播力的微博推送方法及装置 - Google Patents
一种基于用户传播力的微博推送方法及装置 Download PDFInfo
- Publication number
- CN103179025B CN103179025B CN201310090409.2A CN201310090409A CN103179025B CN 103179025 B CN103179025 B CN 103179025B CN 201310090409 A CN201310090409 A CN 201310090409A CN 103179025 B CN103179025 B CN 103179025B
- Authority
- CN
- China
- Prior art keywords
- user
- transmissibility
- microblogging
- depth
- degree
- 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.)
- Active
Links
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于用户传播力的微博推送方法及装置,用以解决现有技术中确定传播力的准确性较低,从而降低了推送微博的时效性以及浪费网络资源的问题。该方法服务器确定各用户之间的转发关系以及传播力传递比例,根据预设的传播力初始值、确定各用户之间的转发关系以及传播力传递比例,确定各用户的传播力,最后根据确定的各用户的传播力,预估待推送微博的热度,并据此推送待推送微博。通过上述方法确定的传播力不存在主观误差,也不会因“僵尸粉”的存在而降低确定传播力的准确性,因此可准确的确定出各用户的传播力,从而提高预估待推送微博的热度的准确性,进而根据预估的热度推送微博时可提高推送微博的时效性,也不会浪费网络资源。
Description
技术领域
本发明涉及网络技术领域,特别涉及一种基于用户传播力的微博推送方法及装置。
背景技术
微博是一种基于社交关系的高传播性信息平台。微博承载着待传播的信息,并且通过用户的转发行为进行传播。
具体的,一条微博由原创用户出发,首先被推送给了关注该原创用户的用户,这些用户接收到该微博后,可对该微博进行再次编辑并进行转发,转发后的微博将被推送给关注了这些用户的其他用户,如图1所示。
图1为现有技术中微博通过用户的转发行为进行传播的示意图,在图1中,每个空心圆代表一个用户,对于一条微博来说,用户u0是该微博的原创用户,用户u1和u2都关注了用户u0,因此该微博会传播到用户u1和u2。接下来,用户u1接收到该微博,并对该微博进行再次编辑后进行转发,则该微博会继续传播到关注用户u1的其他用户,类似的,用户u2转发该微博后,该微博也会继续传播到关注用户u2的其他用户。
显然,在微博的传播过程中,每个参与转发的用户对于微博传播所作出的促进程度并不相同。继续以图1为例,对于用户u1和u2来说,二者均参与了对微博的转发,但由于用户u1的粉丝(如果第一用户关注了第二用户,则第二用户称为第一用户的粉丝)数量较多,而用户u2的粉丝数量较少,因此,该微博经过用户u1的转发后,可传播给更多的其他用户,也即,用户u1相比于用户u2具有更高的微博传播促进程度。
在现有技术中,通常采用传播力来量化一个用户对微博传播的促进程度。具体方法包括如下三种:
一、根据用户级别确定一个用户的传播力,用户级别越高,则其传播力越高,反之越低;
二、根据用户的粉丝数量确定一个用户的传播力,用户的粉丝数量越多,则其传播力越高,反之越低;
三、结合上述第一种和第二种方法,同时根据用户级别和用户的粉丝数量确定用户的传播力。
但是,根据用户级别确定传播力的方法存在较大的主观误差,而根据用户级别确定传播力的方法也会由于“僵尸粉”(实际应用中由同一个用户所创建的多个微博账号,这些微博账号一般会关注同一个用户,也可能会互相关注,但这些微博账号几乎不转发微博,即使转发了微博也几乎不会被其他用户再次转发,这些微博账号也几乎不会被其他用户关注,“僵尸粉”也可称为“小号”)的存在而导致确定传播力的准确性较低。
由于微博目前已经成为反映社会热点舆情的重要载体之一,因此,一些特殊用户(如相关部门用户和企业用户等)均已经开始重视微博中反映的热点舆情,以根据热点舆情进行及时的应对(如,将病危婴儿送往医院的信息发布到微博上,该微博会被大量转发,以引起交管部门的关注,交管部门则及时采取为该婴儿所在的车辆进行开路等相应对策,以保证婴儿可以被及时的送到医院)。
为了使微博所反映的热点舆情能够被特殊用户更加及时的发现,服务器需要对每条微博的热度进行预估,以确定该微博是否为反映热点舆情的微博。当确定该微博的热度较高时,即使特殊用户未关注该微博的原创用户或转发用户,服务器仍可根据该微博的内容,自动将该微博推送给相应的特殊用户。
而服务器在预估一条微博的热度时,就是根据该微博的原创用户以及转发用户的传播力进行预估的,因此,服务器确定各用户传播力的准确性直接决定了服务器预估微博热度的准确性。
如果服务器确定各用户传播力的准确性较低,那么服务器就不能准确的预估微博的热度,而对于一条微博,如果对其热度预估的过低,则该微博将不能被及时的推送给相关部门或企业,其反应的热点舆情也就不能被及时的关注和处理,降低了微博推送的时效性,反之,如果对其热度预估的过高,也会将该本来不需要推送给相关部门或企业的微博推送出去,浪费了网络资源。
发明内容
本发明实施例提供一种基于用户传播力的微博推送方法及装置,用以解决现有技术中确定用户传播力的准确性较低而导致预估微博热度的准确性较低,从而降低了推送微博的时效性以及浪费网络资源的问题。
本发明实施例提供的一种基于用户传播力的微博推送方法,包括:
服务器根据保存的用户数据,确定各用户之间的转发关系;并
根据各用户之间转发微博的数量,确定各用户之间的传播力传递比例;以及
根据为各用户预设的传播力初始值、确定的各用户之间的转发关系以及各用户之间的传播力传递比例,确定各用户的传播力;
所述服务器根据确定的各用户的传播力,预估待推送微博的热度,并根据预估的热度推送所述待推送微博。
本发明实施例提供的一种基于用户传播力的微博推送装置,包括:
关系确定模块,用于根据保存的用户数据,确定各用户之间的转发关系;
比例确定模块,用于根据各用户之间转发微博的数量,确定各用户之间的传播力传递比例;
传播力确定模块,用于根据为各用户预设的传播力初始值、确定的各用户之间的转发关系以及各用户之间的传播力传递比例,确定各用户的传播力;
推送模块,用于根据确定的各用户的传播力,预估待推送微博的热度,并根据预估的热度推送所述待推送微博。
本发明实施例提供一种基于用户传播力的微博推送方法及装置,该方法服务器先确定各用户之间的转发关系,再确定各用户之间的传播力传递比例,根据预设的传播力初始值、确定各用户之间的转发关系以及传播力传递比例,确定各用户的传播力,最后根据确定的各用户的传播力,预估待推送微博的热度,并据此推送待推送微博。通过上述方法确定的各用户的传播力不存在主观误差,也不会因“僵尸粉”的存在而降低确定传播力的准确性,因此可准确的确定出各用户的传播力,从而提高预估待推送微博的热度的准确性,进而根据预估的热度推送微博时可提高推送微博的时效性,也不会浪费网络资源。
附图说明
图1为现有技术中微博通过用户的转发行为进行传播的示意图;
图2为本发明实施例提供的基于用户传播力的微博推送过程;
图3为本发明实施例提供的用户转发关系示意图;
图4为本发明实施例提供的基于图3的传播力传递示意图;
图5为本发明实施例提供的基于用户传播力的微博推送装置结构示意图。
具体实施方式
为了避免人为主观因素和“僵尸粉”对确定用户传播力的影响,本发明实施例提供的微博推送方法主要是基于下述的基本假设:
即,对于任意两个用户,以下将这两个用户称为第一用户和第二用户,如果第一用户转发了第二用户的微博,则第一用户会将其自身的一部分传播力传递给第二用户。也即,用户的传播力是具有传递性的。
继续以图1为例对上述基本假设进行说明,在图1中,用户u0发布的微博被用户u1转发,即,用户u0发布的微博会沿如图1中箭头所示的方向进行传播,但是对于用户u0和u1这两个用户来说,u0的微博一旦被u1所转发,那么后续该微博就会传播给u1的粉丝,也就是说,当u0的微博到达u1时,后续的传播将不再取决于u0的传播力,而取决于u1的传播力。
进而,u0的微博到达u1后,如果u0的传播力较高,u1的传播力较低,那么,该微博到达u1后,u1对该微博进行后续传播的促进程度反而降低了,相当于在u0到u1这个方向上,u1间接的拉低了u0的传播力;如果u0的传播力较低,u1的传播力较高,那么,该微博到达u1后,u1对该微博进行后续传播的促进程度将会提高,相当于在u0到u1这个方向上,u1提高了u0的传播力。无论u1是拉低了u0的传播力还是提高了u0的传播力,其实质上都是u1将自身的一部分传播力传递给了u0,因此,传播力是具有传递性的,而且其传递方向是与微博的传播方向相反的(如图1中微博的传播方向是u0到u1,而传播力的传播方向是u1到u0)。
基于上述基本假设,本发明实施例中在确定各用户的传播力时,首先要确定各用户之间的转发关系,再确定各用户之间的传播力传递比例,然后根据预设的传播力初始值、确定的转发关系和传播力传递比例确定各用户的传播力,最后根据确定的各用户的传播力,对待推送微博的热度进行预估,并据此推送该待推送微博。
下面结合附图对本发明优选的实施方式进行详细说明。
图2为本发明实施例提供的基于用户传播力的微博推送过程,具体包括以下步骤:
S201:服务器根据保存的用户数据,确定各用户之间的转发关系。
在本发明实施例中,服务器保存的用户数据中包括用户之间的关注关系数据以及转发行为数据,通过转发行为数据,服务器可确定各用户之间的转发关系。具体的,服务器可提取指定时间段(例如过去一个月)内的用户数据,并据此确定各用户之间的转发关系,其中,在对于任意两个用户,以下称为第一用户和第二用户,只要在该指定时间段内第一用户转发了第二用户的微博,即可确定第一用户对第二用户具有转发关系,相应的,只要在该指定时间段内第二用户转发了第一用户的微博,即可确定第二用户对第一用户具有转发关系。也即,在本发明实施例中,两个用户之间的转发关系是具有方向性的。
S202:根据各用户之间转发微博的数量,确定各用户之间的传播力传递比例。
在本发明实施例中,如果第一用户对第二用户具有转发关系,则基于上述基本假设,可知第一用户会将其自身的一部分传播力传递给第二用户,而第一用户传递给第二用户的传播力占第一用户自身传播力的比例,就是第一用户对第二用户的传播力传递比例,该传播力传递比例可根据第一用户转发第二用户的微博的数量,以及第一用户转发所有用户的微博的数量进行确定。具体的,可确定第一用户转发第二用户的微博的数量与第一用户转发所有用户的微博的数量的比值,作为第一用户对第二用户的传播力传递比例。如果第一用户对第二用户不具有转发关系,也即第一用户未转发过第二用户的微博,则可确定第一用户对第二用户的传播力传递比例为0。
类似的,两两用户之间均可通过上述方法确定传播力传递比例。
S203:根据为各用户预设的传播力初始值、确定的各用户之间的转发关系以及各用户之间的传播力传递比例,确定各用户的传播力。
在本发明实施例中,可预先将各用户的传播力初始值均设置为ε,其中ε是大于0的任意实数。服务器可根据该传播力初始值ε、各用户之间的转发关系和传播力传递比例进行迭代计算,每次迭代计算均可确定一次各用户的传播力中间值,直至满足终止迭代条件时,将最后一次确定的各用户的传播力中间值确定为各用户的传播力。
对于每一次迭代,可采用公式确定各用户的传播力中间值,其中,S(t)(k)表示第t次迭代确定的第k个用户的传播力中间值,t不小于1,n表示对第k个用户具有转发关系的第n个用户,S(t-1)(n)表示第t-1次迭代确定的第n个用户的传播力中间值,r(n,k)表示第n个用户对第k个用户的传播力传递比例,S(0)(n)=ε。
上述终止迭代条件可以是迭代次数t已经达到预设迭代次数,如,预设迭代次数为100,则采用上述方法,针对每个用户,每次迭代均可确定出该用户的一个传播力中间值,当迭代100次时,将第100次迭代确定的该用户的传播力中间值确定为该用户的传播力。
S204:服务器根据确定的各用户的传播力,预估待推送微博的热度,并根据预估的热度推送待推送微博。
确定了各用户的传播力后,服务器则可根据各用户的传播力,对待推送微博的热度进行预估,当预估的待推送微博的热度大于设定热度阈值时,则可确定该待推送微博反映的是热点舆情,可根据该待推送微博的内容,将该待推送微博推送给相应的用户。
在上述过程中,服务器根据各用户之间的转发关系确定各用户的传播力,并未引入人为主观因素,而且由于在实际应用中,极少有正常用户会对“僵尸粉”的微博进行转发,“僵尸粉”也极少会转发正常用户的微博,因此,正常用户几乎不会把自身的传播力传递被“僵尸粉”,迭代确定出的“僵尸粉”的传播力也就很低,拥有大量“僵尸粉”的用户的传播力也会较低,从而可以避免“僵尸粉”对确定用户传播力的影响,提高了确定用户传播力的准确性,服务器根据准确的传播力,即可准确的预估待推送微博的热度,进而对于反映热点舆情的待推送微博,可提高推送该待推送微博的时效性,对于未反映热点舆情的待推送微博,服务器也不会浪费网络资源将其推送出去。
在本发明实施例中,为了进一步提高确定用户传播力的准确性,以进一步提高推送微博的时效性、进一步节省网络资源,在如图2所示的步骤S201中,服务器确定的各用户之间的转发关系包括关注转发关系和非关注转发关系。具体的,服务器针对第一用户和第二用户,当确定第一用户关注了第二用户、且第一用户转发了第二用户的微博时,确定第一用户对第二用户具有关注转发关系,当确定第一用户未关注第二用户、且第一用户转发了第二用户的微博时,确定第一用户对第二用户具有非关注转发关系,当确定第一用户未转发第二用户的微博时,确定第一用户对第二用户不具有转发关系,其中,第一用户和第二用户是任意两个用户,如图3所示。
图3为本发明实施例提供的用户转发关系示意图,在图3中,用户u0的原创微博被用户u1和u4转发,用户u1转发的该微博又被用户u2转发,用户u2转发的微博又被用户u3转发,该微博的传播路径如图3中箭头所示。
对于用户u1,如果用户u1关注了用户u0,则由于u1转发了u0的微博,因此u1对u0具有关注转发关系。类似的,如果用户u4关注了用户u0,则u4对u0也具有关注转发关系。
对于用户u2,如果u2关注了u1,但并未关注u0,则u2对u0具有非关注转发关系,但u2对u1具有关注转发关系。类似的,如果用户u3也未关注u0,则u3对u0具有非关注转发关系。
确定上述关注转发关系和非关注转发关系的目的在于:后续将用户的传播力分为广度传播力和深度传播力两个维度进行确定。
下面详细说明关注转发关系、非关注转发关系、广度传播力和深度传播力的关系。
先说明两个概念:一次传播和二次传播。如果一条微博由原创用户开始传播一次而到达另一个用户,则将这种传播称为一次传播。如果一条微博由转发用户(非原创用户)传播一次而到达另一个用户,则将这种传播称为二次传播。如图3所示,原创用户为u0,则微博从u0传播到u1、从u0传播到u4均是一次传播,图3中以实线表示一次传播。微博从u1传播到u2,、从u2传播到u3均是二次传播,图3中以虚线表示二次传播。
由图3可以看出,对于一个微博来说,一次传播决定了该微博传播的广度,而二次传播决定了该微博传播的深度。
进一步的,在实际应用中,一次传播大多由关注转发所产生,二次传播大多由非关注转发所产生。如图3,对于关注了u0的用户u1和u4来说,u0发布了微博后,该微博会自动被服务器推送到u1和u4处,u1和u4看到该微博后则将其转发,而对于未关注u0的用户u2和u3来说,u0发布的微博并不会被服务器自动推送到u2和u3处,因此,一般来说,u2看到其关注的u1转发的该微博后,才转发该微博,u3看到其关注的u2转发的该微博后,才转发该微博。当然,也存在关注转发产生二次传播(假设u2同时关注了u0和u1,u1直接转发了u1的微博,但u2没有直接转发u0的微博,而是转发了u1所转发的u0的微博)和非关注转发产生一次传播(假设u1并未关注u0,而是通过搜索用户或微博等方式搜索到了u0的微博并对其直接进行转发)的情况,但为了方便计算,提高确定用户传播力的效率,本发明实施例不考虑这两种特殊情况,仅认为关注转发产生一次传播,非关注转发产生二次传播。
所以说,在本发明实施例中,对于第一用户和第二用户(第一用户和第二用户是任意两个用户),如果第一用户对第二用户具有关注转发关系,则第一用户对第二用户的微博所产生的是一次传播,决定了第二用户的微博传播的广度,因此,第一用户向第二用户传递的传播力是广度传播力。相反的,如果第一用户对第二用户具有非关注转发关系,则第一用户对第二用户的微博所产生的是二次传播,决定了第二用户的微博传播的深度,因此,第一用户向第二用户传递的传播力是深度传播力。
由此,在图2所示的步骤S202中,服务器确定各用户之间的传播力传递比例的方法包括:确定广度传播力传递比例和深度传播力传递比例。
广度传播力传递比例的确定方法具体为:服务器针对第一用户和第二用户,当确定第一用户对第二用户具有关注转发关系时,确定第一用户转发第二用户的微博的第一数量,确定第一用户转发所有满足第一指定条件的用户的微博的第二数量,确定第一数量与第二数量的比值,作为第一用户对第二用户的广度传播力传递比例,其中,针对任一待定用户,如果第一用户对该待定用户具有关注转发关系,则该待定用户为满足上述第一指定条件的用户。
深度传播力传递比例的确定方法具体为:服务器针对第一用户和第二用户,当确定第一用户对第二用户具有非关注转发关系时,确定第一用户转发第二用户的微博的第三数量,确定第一用户转发所有满足第二指定条件的用户的微博的第四数量,确定第三数量与第四数量的比值,作为第一用户对第二用户的深度传播力传递比例,其中,针对任一待定用户,如果第一用户对该待定用户具有非关注转发关系,则该待定用户为满足上述第二指定条件的用户。
当然,如果第一用户对第二用户不具有转发关系,则确定第一用户对第二用户的广度传播力传递比例和深度传播力传递比例均为0.
图4为本发明实施例提供的基于图3的传播力传递示意图,由于图3中共有u0~u4共5个用户,其中,u1、u4对u0具有关注转发关系,u2、u3对u0具有非关注转发关系,因此,在图4中,u1和u4将自身的广度传播力传递给u0(图4中以实线表示),u2和u3将自身的深度传播力传递给u0(图4中以虚线表示)。需要说明的是,图4中的箭头方向表示广度或深度传播力的传递方向,而并非是微博的传播方向,由于传播力的传递方向与微博的传播方向相反,因此,图4中u1~u4均指向u0,表示u1~u4均将自身的传播力(广度或深度传播力)传递给u0,也表示u1~u4均转发了u0的微博。
具体的,对于图4中的u0和u1,服务器可确定u1转发u0的微博的第一数量,以及u1的所有关注转发微博的第二数量(即,u1转发所有满足第一指定条件的用户的微博的第二数量),再将第一数量与第二数量的比值确定为u1对u0的广度传播力传递比例。类似的,可确定u4对u0的广度传播力传递比例。
对于图4中的u0和u2,服务器可确定u2转发u0的微博的第三数量,以及u2的所有非关注转发微博的第四数量(即,u2转发所有满足第二指定条件的用户的微博的第四数量),在将第三数量与第四数量的比值确定为u2对u0的深度传播力传递比例。类似的,可确定u3对u0的深度传播力传递比例。
相应的,采用上述方法确定了各用户之间的广度传播力传递比例和深度传播力传递比例之后,在确定各用户的传播力时,也要分别迭代确定各用户的广度传播力和深度传播力,再根据确定的广度传播力和深度传播力确定用户的传播力。
具体的,预设各用户的广度传播力初始值为ε,预设各用户的深度传播力初始值为ε,ε大于0,服务器采用公式确定各用户的广度传播力中间值,采用公式确定各用户的深度传播力中间值,直至满足终止迭代条件时,将最后一次对各用户确定的广度传播力中间值确定为各用户的广度传播力,将最后一次对各用户确定的深度传播力中间值确定为各用户的深度传播力。其中,k表示第k个用户,表示第t次迭代确定的该第k个用户的广度传播力中间值,i表示对该第k个用户具有关注转发关系的第i个用户,表示第t-1次迭代确定的该第i个用户的广度传播力中间值,w(i,k)表示该第i个用户对该第k个用户的广度传播力传递比例,表示第t次迭代确定的该第k个用户的深度传播力中间值,j表示对该第k个用户具有非关注转发关系的第j个用户,表示第t-1次迭代确定的该第j个用户的深度传播力中间值,d(j,k)表示该第j个用户对该第k个用户的深度传播力传递比例, 最后,服务器根据确定的各用户的广度传播力和深度传播力,确定各用户的传播力。
在上述确定用户的广度传播力和深度传播力的过程中,服务器判断是否满足终止迭代条件的方法包括以下两种:
第一种、服务器判断当前的迭代次数t是否已经达到预设迭代次数,如果达到,则确定满足终止迭代条件,此时终止迭代,将最后一次确定的各用户的广度传播力中间值和深度传播力中间值作为各用户的广度传播力和深度传播力,否则,确定不满足终止迭代条件,继续进行下一次迭代;
第二种、服务器每次确定各用户的广度传播力中间值和深度传播力中间值后,计算当前确定的各用户的广度传播力中间值与上一次确定的各用户的广度传播力中间值的广度标准差,计算当前确定的各用户的深度传播力中间值与上一次确定的各用户的深度传播力中间值的深度标准差,当确定该广度标准差与深度标准差的和值小于预设阈值时,确定满足终止条件,否则,确定不满足终止条件。
例如,服务器进行第t次迭代后,可采用公式计算当前确定的广度传播力中间值与上一次确定的广度传播力中间值的广度标准差diffw(t),采用公式计算当前确定的深度传播力中间值与上一次确定的深度传播力中间值的深度标准差diffd(t),再采用公式diff(t)=diffw(t)+diffd(t)计算广度标准差与深度标准差的和值,最后判断diff(t)是否小于预设阈值δ,若是,则确定满足终止迭代条件,否则,确定不满足终止迭代条件,继续进行下一次迭代。其中,M表示共有M个用户,k表示第k个用户,表示第t次迭代确定的该第k个用户的广度传播力中间值,表示第t-1次迭代确定的该第k个用户的广度传播力中间值,表示第t次迭代确定的该第k个用户的深度传播力中间值,表示第t-1次迭代确定的该第k个用户的深度传播力中间值,
上述两种判断是否满足终止迭代条件的方法可单独使用,也可结合使用。
继续以图4为例进行说明,对于u0来说,由于u1和u2只向其传递广度传播力,u2和u3只向其传递深度传播力,因此,对于第t次迭代,u0的广度传播力中间值即为 u0的深度传播力中间值即为 类似的,可确定其余的用户u1~u4在第t次迭代中的广度传播力中间值和深度传播力中间值。然后,服务器通过上述两种方法中的至少一种判断第t次迭代是否满足终止迭代条件。若满足,则将第t次迭代确定的u0的广度传播力中间值确定为u0的广度传播力,将第t次迭代确定的u0的深度传播力中间值确定为u0的深度传播力,对于u1~u4也以此类推,此处不再一一赘述。若不满足终止迭代条件,则继续进行下一次(即第t+1次)迭代,直至满足终止迭代条件为止。
进一步的,采用上述方法确定了各用户的广度传播力和深度传播力后,服务器可采用公式S(k)=log2[2+Sw(k)]×log2[2+Sd(k)]或S(k)=α×log2[2+Sw(k)]+(1-α)×log2[2+Sd(k)]确定各用户的传播力,其中,S(k)为第k个用户的传播力,Sw(k)为该第k个用户的广度传播力,Sd(k)为该第k个用户的深度传播力,α为不小于0且不大于1的任意实数。
由于用户的传播力还可作为评价用户质量的重要依据,因此,在评价用户质量时,可采用上述第一个公式(即,S(k)=log2[2+Sw(k)]×log2[2+Sd(k)])确定用户的传播力。而对于对待推送微博的热度进行预估,则可采用上述第二个公式(即,S(k)=α×log2[2+Sw(k)]+(1-α)×log2[2+Sd(k)])确定用户的传播力,α可根据需要进行设定。
以上是本发明实施例提供的基于用户传播力的微博推送方法,基于同样的发明思路,本发明实施例还提供一种基于用户传播力的微博推送装置,如图5所示。图5为本发明实施例提供的基于用户传播力的微博推送装置结构示意图,具体包括:
关系确定模块501,用于根据保存的用户数据,确定各用户之间的转发关系;
比例确定模块502,用于根据各用户之间转发微博的数量,确定各用户之间的传播力传递比例;
传播力确定模块503,用于根据为各用户预设的传播力初始值、确定的各用户之间的转发关系以及各用户之间的传播力传递比例,确定各用户的传播力;
推送模块504,用于根据确定的各用户的传播力,预估待推送微博的热度,并根据预估的热度推送所述待推送微博。
所述关系确定模块501具体用于,针对第一用户和第二用户,当确定所述第一用户关注了所述第二用户、且所述第一用户转发了所述第二用户的微博时,确定所述第一用户对所述第二用户具有关注转发关系,当确定所述第一用户未关注所述第二用户、且所述第一用户转发了所述第二用户的微博时,确定所述第一用户对所述第二用户具有非关注转发关系,当确定所述第一用户未转发第二用户的微博时,确定所述第一用户对所述第二用户不具有转发关系;其中,所述第一用户和所述第二用户是任意两个用户。
所述比例确定模块502具体用于,针对所述第一用户和所述第二用户,当确定所述第一用户对所述第二用户具有关注转发关系时,确定所述第一用户转发所述第二用户的微博的第一数量,确定所述第一用户转发所有满足第一指定条件的用户的微博的第二数量,确定所述第一数量与所述第二数量的比值,作为所述第一用户对所述第二用户的广度传播力传递比例,其中,针对任一待定用户,如果所述第一用户对该待定用户具有关注转发关系,则该待定用户为满足所述第一指定条件的用户;当确定所述第一用户对所述第二用户具有非关注转发关系时,确定所述第一用户转发所述第二用户的微博的第三数量,确定所述第一用户转发所有满足第二指定条件的用户的微博的第四数量,确定所述第三数量与所述第四数量的比值,作为所述第一用户对所述第二用户的深度传播力传递比例,其中,针对任一待定用户,如果所述第一用户对该待定用户具有非关注转发关系,则该待定用户为满足所述第二指定条件的用户;当确定所述第一用户对所述第二用户不具有转发关系时,确定所述第一用户对所述第二用户的广度传播力传递比例和深度传播力传递比例均为0。
所述传播力确定模块503具体用于,预设各用户的广度传播力初始值为ε,预设各用户的深度传播力初始值为ε,其中,ε大于0;采用公式确定各用户的广度传播力中间值,采用公式确定各用户的深度传播力中间值,直至满足终止迭代条件时,将最后一次对各用户确定的广度传播力中间值确定为各用户的广度传播力,将最后一次对各用户确定的深度传播力中间值确定为各用户的深度传播力;其中,k表示第k个用户,表示第t次迭代确定的所述第k个用户的广度传播力中间值,i表示对所述第k个用户具有关注转发关系的第i个用户,表示第t-1次迭代确定的所述第i个用户的广度传播力中间值,w(i,k)表示所述第i个用户对所述第k个用户的广度传播力传递比例,表示第t次迭代确定的所述第k个用户的深度传播力中间值,j表示对所述第k个用户具有非关注转发关系的第j个用户,表示第t-1次迭代确定的所述第j个用户的深度传播力中间值,d(j,k)表示所述第j个用户对所述第k个用户的深度传播力传递比例, 根据确定的各用户的广度传播力和深度传播力,确定各用户的传播力。
所述传播力确定模块503具体用于,当确定当前的迭代次数t已经达到预设迭代次数时,确定满足终止迭代条件;或者,每次确定各用户的广度传播力中间值和深度传播力中间值后,计算当前确定的各用户的广度传播力中间值与上一次确定的各用户的广度传播力中间值的广度标准差,计算当前确定的各用户的深度传播力中间值与上一次确定的各用户的深度传播力中间值的深度标准差,当确定所述广度标准差与所述深度标准差的和值小于预设阈值时,确定满足终止迭代条件。
所述传播力确定模块503具体用于,采用公式S(k)=log2[2+Sw(k)]×log2[2+Sd(k)]或S(k)=α×log2[2+Sw(k)]+(1-α)×log2[2+Sd(k)]确定各用户的传播力,其中,S(k)为第k个用户的传播力,Sw(k)为所述第k个用户的广度传播力,Sd(k)为所述第k个用户的深度传播力,α为不小于0且不大于1的任意实数。
具体的上述微博推送装置可以位于服务器中。
本发明实施例提供一种基于用户传播力的微博推送方法及装置,该方法服务器先确定各用户之间的转发关系,再确定各用户之间的传播力传递比例,根据预设的传播力初始值、确定各用户之间的转发关系以及传播力传递比例,确定各用户的传播力,最后根据确定的各用户的传播力,预估待推送微博的热度,并据此推送待推送微博。通过上述方法确定的各用户的传播力不存在主观误差,也不会因“僵尸粉”的存在而降低确定传播力的准确性,因此可准确的确定出各用户的传播力,从而提高预估待推送微博的热度的准确性,进而根据预估的热度推送微博时可提高推送微博的时效性,也不会浪费网络资源。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请实施例的精神和范围。这样,倘若本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (12)
1.一种基于用户传播力的微博推送方法,其特征在于,包括:
服务器根据保存的用户数据,确定各用户之间的转发关系;并
根据各用户之间转发微博的数量,确定各用户之间的传播力传递比例;其中,针对任意两用户中的第一用户和第二用户,若第一用户对第二用户具有转发关系,则第一用户和第二用户之间的传播力传递比例表示第一用户传递给第二用户的传播力占第一用户自身传播力的比例;以及
根据为各用户预设的传播力初始值、确定的各用户之间的转发关系以及各用户之间的传播力传递比例,确定各用户的传播力;
所述服务器根据确定的各用户的传播力,预估待推送微博的热度,并根据预估的热度推送所述待推送微博。
2.如权利要求1所述的方法,其特征在于,确定各用户之间的转发关系,具体包括:
所述服务器针对第一用户和第二用户,当确定所述第一用户关注了所述第二用户、且所述第一用户转发了所述第二用户的微博时,确定所述第一用户对所述第二用户具有关注转发关系,当确定所述第一用户未关注所述第二用户、且所述第一用户转发了所述第二用户的微博时,确定所述第一用户对所述第二用户具有非关注转发关系,当确定所述第一用户未转发第二用户的微博时,确定所述第一用户对所述第二用户不具有转发关系;其中,所述第一用户和所述第二用户是任意两个用户。
3.如权利要求2所述的方法,其特征在于,所述传播力传递比例包括:
广度传播力传递比例和深度传播力传递比例;
根据各用户之间转发微博的数量,确定各用户之间的传播力传递比例,具体包括:
所述服务器针对所述第一用户和所述第二用户,当确定所述第一用户对所述第二用户具有关注转发关系时,确定所述第一用户转发所述第二用户的微博的第一数量,确定所述第一用户转发所有满足第一指定条件的用户的微博的第二数量,确定所述第一数量与所述第二数量的比值,作为所述第一用户对所述第二用户的广度传播力传递比例,其中,针对任一待定用户,如果所述第一用户对该待定用户具有关注转发关系,则该待定用户为满足所述第一指定条件的用户;
当确定所述第一用户对所述第二用户具有非关注转发关系时,确定所述第一用户转发所述第二用户的微博的第三数量,确定所述第一用户转发所有满足第二指定条件的用户的微博的第四数量,确定所述第三数量与所述第四数量的比值,作为所述第一用户对所述第二用户的深度传播力传递比例,其中,针对任一待定用户,如果所述第一用户对该待定用户具有非关注转发关系,则该待定用户为满足所述第二指定条件的用户;
当确定所述第一用户对所述第二用户不具有转发关系时,确定所述第一用户对所述第二用户的广度传播力传递比例和深度传播力传递比例均为0。
4.如权利要求3所述的方法,其特征在于,根据为各用户预设的传播力初始值、确定的各用户之间的转发关系以及各用户之间的传播力传递比例,确定各用户的传播力,具体包括:
预设各用户的广度传播力初始值为ε,预设各用户的深度传播力初始值为ε,其中,ε大于0;
所述服务器采用公式确定各用户的广度传播力中间值,采用公式确定各用户的深度传播力中间值,直至满足终止迭代条件时,将最后一次对各用户确定的广度传播力中间值确定为各用户的广度传播力,将最后一次对各用户确定的深度传播力中间值确定为各用户的深度传播力;
其中,k表示第k个用户,表示第t次迭代确定的所述第k个用户的广度传播力中间值,i表示对所述第k个用户具有关注转发关系的第i个用户,表示第t-1次迭代确定的所述第i个用户的广度传播力中间值,w(i,k)表示所述第i个用户对所述第k个用户的广度传播力传递比例,表示第t次迭代确定的所述第k个用户的深度传播力中间值,j表示对所述第k个用户具有非关注转发关系的第j个用户,表示第t-1次迭代确定的所述第j个用户的深度传播力中间值,d(j,k)表示所述第j个用户对所述第k个用户的深度传播力传递比例,
所述服务器根据确定的各用户的广度传播力和深度传播力,确定各用户的传播力。
5.如权利要求4所述的方法,其特征在于,满足终止迭代条件,具体包括:
所述服务器确定当前的迭代次数t已经达到预设迭代次数时,确定满足终止迭代条件;或者
所述服务器每次确定各用户的广度传播力中间值和深度传播力中间值后,计算当前确定的各用户的广度传播力中间值与上一次确定的各用户的广度传播力中间值的广度标准差,计算当前确定的各用户的深度传播力中间值与上一次确定的各用户的深度传播力中间值的深度标准差,当确定所述广度标准差与所述深度标准差的和值小于预设阈值时,确定满足终止迭代条件。
6.如权利要求4所述的方法,其特征在于,所述服务器根据确定的各用户的广度传播力和深度传播力,确定各用户的传播力,具体包括:
所述服务器采用公式S(k)=log2[2+Sw(k)]×log2[2+Sd(k)]或S(k)=α×log2[2+Sw(k)]+(1-α)×log2[2+Sd(k)]确定各用户的传播力,其中,S(k)为第k个用户的传播力,Sw(k)为所述第k个用户的广度传播力,Sd(k)为所述第k个用户的深度传播力,α为不小于0且不大于1的任意实数。
7.一种基于用户传播力的微博推送装置,其特征在于,包括:
关系确定模块,用于根据保存的用户数据,确定各用户之间的转发关系;
比例确定模块,用于根据各用户之间转发微博的数量,确定各用户之间的传播力传递比例;其中,针对任意两用户中的第一用户和第二用户,若第一用户对第二用户具有转发关系,则第一用户和第二用户之间的传播力传递比例表示第一用户传递给第二用户的传播力占第一用户自身传播力的比例;
传播力确定模块,用于根据为各用户预设的传播力初始值、确定的各用户之间的转发关系以及各用户之间的传播力传递比例,确定各用户的传播力;
推送模块,用于根据确定的各用户的传播力,预估待推送微博的热度,并根据预估的热度推送所述待推送微博。
8.如权利要求7所述的装置,其特征在于,所述关系确定模块具体用于,针对第一用户和第二用户,当确定所述第一用户关注了所述第二用户、且所述第一用户转发了所述第二用户的微博时,确定所述第一用户对所述第二用户具有关注转发关系,当确定所述第一用户未关注所述第二用户、且所述第一用户转发了所述第二用户的微博时,确定所述第一用户对所述第二用户具有非关注转发关系,当确定所述第一用户未转发第二用户的微博时,确定所述第一用户对所述第二用户不具有转发关系;其中,所述第一用户和所述第二用户是任意两个用户。
9.如权利要求8所述的装置,其特征在于,所述比例确定模块具体用于,针对所述第一用户和所述第二用户,当确定所述第一用户对所述第二用户具有关注转发关系时,确定所述第一用户转发所述第二用户的微博的第一数量,确定所述第一用户转发所有满足第一指定条件的用户的微博的第二数量,确定所述第一数量与所述第二数量的比值,作为所述第一用户对所述第二用户的广度传播力传递比例,其中,针对任一待定用户,如果所述第一用户对该待定用户具有关注转发关系,则该待定用户为满足所述第一指定条件的用户;当确定所述第一用户对所述第二用户具有非关注转发关系时,确定所述第一用户转发所述第二用户的微博的第三数量,确定所述第一用户转发所有满足第二指定条件的用户的微博的第四数量,确定所述第三数量与所述第四数量的比值,作为所述第一用户对所述第二用户的深度传播力传递比例,其中,针对任一待定用户,如果所述第一用户对该待定用户具有非关注转发关系,则该待定用户为满足所述第二指定条件的用户;当确定所述第一用户对所述第二用户不具有转发关系时,确定所述第一用户对所述第二用户的广度传播力传递比例和深度传播力传递比例均为0。
10.如权利要求9所述的装置,其特征在于,所述传播力确定模块具体用于,预设各用户的广度传播力初始值为ε,预设各用户的深度传播力初始值为ε,其中,ε大于0;采用公式确定各用户的广度传播力中间值,采用公式确定各用户的深度传播力中间值,直至满足终止迭代条件时,将最后一次对各用户确定的广度传播力中间值确定为各用户的广度传播力,将最后一次对各用户确定的深度传播力中间值确定为各用户的深度传播力;其中,k表示第k个用户,表示第t次迭代确定的所述第k个用户的广度传播力中间值,i表示对所述第k个用户具有关注转发关系的第i个用户,表示第t-1次迭代确定的所述第i个用户的广度传播力中间值,w(i,k)表示所述第i个用户对所述第k个用户的广度传播力传递比例,表示第t次迭代确定的所述第k个用户的深度传播力中间值,j表示对所述第k个用户具有非关注转发关系的第j个用户,表示第t-1次迭代确定的所述第j个用户的深度传播力中间值,d(j,k)表示所述第j个用户对所述第k个用户的深度传播力传递比例,根据确定的各用户的广度传播力和深度传播力,确定各用户的传播力。
11.如权利要求10所述的装置,其特征在于,所述传播力确定模块具体用于,当确定当前的迭代次数t已经达到预设迭代次数时,确定满足终止迭代条件;或者,每次确定各用户的广度传播力中间值和深度传播力中间值后,计算当前确定的各用户的广度传播力中间值与上一次确定的各用户的广度传播力中间值的广度标准差,计算当前确定的各用户的深度传播力中间值与上一次确定的各用户的深度传播力中间值的深度标准差,当确定所述广度标准差与所述深度标准差的和值小于预设阈值时,确定满足终止迭代条件。
12.如权利要求10所述的装置,其特征在于,所述传播力确定模块具体用于,采用公式S(k)=log2[2+Sw(k)]×log2[2+Sd(k)]或S(k)=α×log2[2+Sw(k)]+(1-α)×log2[2+Sd(k)]确定各用户的传播力,其中,S(k)为第k个用户的传播力,Sw(k)为所述第k个用户的广度传播力,Sd(k)为所述第k个用户的深度传播力,α为不小于0且不大于1的任意实数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310090409.2A CN103179025B (zh) | 2013-03-20 | 2013-03-20 | 一种基于用户传播力的微博推送方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310090409.2A CN103179025B (zh) | 2013-03-20 | 2013-03-20 | 一种基于用户传播力的微博推送方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103179025A CN103179025A (zh) | 2013-06-26 |
CN103179025B true CN103179025B (zh) | 2016-05-11 |
Family
ID=48638656
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310090409.2A Active CN103179025B (zh) | 2013-03-20 | 2013-03-20 | 一种基于用户传播力的微博推送方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103179025B (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103345524B (zh) * | 2013-07-19 | 2017-03-22 | 中国地质大学(武汉) | 微博热点话题检测方法及系统 |
CN103825879A (zh) * | 2013-11-29 | 2014-05-28 | 中国科学院信息工程研究所 | 社交僵尸网络的检测方法及装置 |
CN104092598A (zh) * | 2014-07-03 | 2014-10-08 | 厦门欣欣信息有限公司 | 一种消息传播路径提取方法及其系统 |
CN104980480B (zh) * | 2014-09-15 | 2018-09-07 | 腾讯科技(北京)有限公司 | 数据信息分享方法及装置 |
CN105262794B (zh) * | 2015-09-17 | 2018-08-17 | 腾讯科技(深圳)有限公司 | 内容投放方法及装置 |
CN106599243A (zh) * | 2016-12-20 | 2017-04-26 | 西南石油大学 | 基于微博主题进行微博转发路径预测的方法和系统 |
CN108322316B (zh) * | 2017-01-17 | 2021-10-19 | 阿里巴巴(中国)有限公司 | 确定信息传播热度的方法、装置及计算设备 |
CN108810089B (zh) * | 2018-05-04 | 2021-07-30 | 微梦创科网络科技(中国)有限公司 | 一种信息推送方法、装置及存储介质 |
CN111090752A (zh) * | 2018-10-23 | 2020-05-01 | 深圳市加推科技有限公司 | 数据处理方法、装置和计算机可读存储介质 |
CN109617788A (zh) * | 2018-12-24 | 2019-04-12 | 北京字节跳动网络技术有限公司 | 信息推荐方法及装置 |
CN110545528B (zh) * | 2019-09-19 | 2021-12-10 | 白浩 | 融合多身份的社交方法、装置以及存储介质 |
CN110866192B (zh) * | 2019-11-13 | 2023-05-02 | 北京秒针人工智能科技有限公司 | 推广效率评价方法、推广方式确定方法及装置 |
CN113382088B (zh) * | 2021-07-27 | 2023-12-19 | 中国银行股份有限公司 | 手机银行消息推送方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4369104B2 (ja) * | 2002-10-07 | 2009-11-18 | みずほ情報総研株式会社 | コミュニティ形成支援システム、その端末、サーバ及びプログラム |
CN101795290A (zh) * | 2009-05-27 | 2010-08-04 | 深圳市朗科科技股份有限公司 | 网络内容推送的方法及装置 |
CN101802864A (zh) * | 2007-07-20 | 2010-08-11 | 惠普开发有限公司 | 信息传播分析系统、信息传播分析装置、信息传播分析方法及其程序 |
-
2013
- 2013-03-20 CN CN201310090409.2A patent/CN103179025B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4369104B2 (ja) * | 2002-10-07 | 2009-11-18 | みずほ情報総研株式会社 | コミュニティ形成支援システム、その端末、サーバ及びプログラム |
CN101802864A (zh) * | 2007-07-20 | 2010-08-11 | 惠普开发有限公司 | 信息传播分析系统、信息传播分析装置、信息传播分析方法及其程序 |
CN101795290A (zh) * | 2009-05-27 | 2010-08-04 | 深圳市朗科科技股份有限公司 | 网络内容推送的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN103179025A (zh) | 2013-06-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103179025B (zh) | 一种基于用户传播力的微博推送方法及装置 | |
RU2628208C2 (ru) | Облачно-граничные топологии | |
CN109976915A (zh) | 基于边缘计算的边云协同需求的优化方法和系统 | |
CN105262794A (zh) | 内容投放方法及装置 | |
CN105933096A (zh) | 基于纠错反馈的信息处理方法及装置 | |
Bassoo et al. | Improving the quality of service for users in cognitive radio network using priority queueing analysis | |
Gupta | Stochastic models and analysis for resource management in server farms | |
Yu et al. | Single‐vehicle scheduling problems with release and service times on a line | |
CN103200073A (zh) | 一种信息处理方法和装置 | |
CN105630929A (zh) | 基于评论确定新闻推荐权重的方法及装置 | |
CN105339915A (zh) | 推送型信息发送设备、推送型信息发送方法以及程序 | |
CN103853711A (zh) | 一种文本信息处理方法及装置 | |
CN107528914A (zh) | 数据分片的资源征用调度方法 | |
Ren et al. | Scalable and parameterised VLSI architecture for efficient sparse approximation in FPGAs and SoCs | |
US20150100676A1 (en) | Storage medium, method for data processing, and processing management apparatus | |
Pujol-Perich et al. | IGNNITION: fast prototyping of graph neural networks for communication networks | |
Correa et al. | Adaptive rumor spreading | |
US8306952B2 (en) | Technique for managing messages | |
CN113075921B (zh) | 无人驾驶设备的局部路径规划方法和装置 | |
Ramaswami | Transmission protective relay coordination-a computer-aided-engineering approach for subsystems and full systems (cad) | |
Machado Costa | Models and algorithms for two network design problems | |
CN114331711A (zh) | 一种基于关联语义的区块链交易并行执行方法与装置 | |
Ding et al. | Software/Hardware Co-design for Multichannel Scheduling in IEEE 802.11 p MLME | |
CN108572636B (zh) | 用于环形有轨制导车辆获取任务的方法及装置 | |
Ahamed et al. | Taxonomy of Green Mobile Cloud Computing for Multimedia Applications |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |