一种推送消息的方法和装置与流程

文档序号:12802726阅读:168来源:国知局
一种推送消息的方法和装置与流程
本发明涉及信息处理
技术领域
,具体而言涉及一种推送消息的方法和装置。
背景技术
:在智能移动终端和互联网快速发展的时代,人们越来越多的使用智能移动终端来处理一些事情,例如购物、浏览新闻、玩游戏、即时通讯、看小说等等,而要实现这些功能需要在终端上安装第三方应用。为了提高用户使用应用的活跃度,有时候通过向用户推送消息,引起用户的注意和兴趣,从而提升用户登录该应用的活跃度。另外,为了引起用户的注意和兴趣以推荐应用,也可以使用向用户推送消息的方式,当用户对消息内容感兴趣时,就会有下载相应的第三方应用的意愿。但是,对于如何给用户推送“消息”,传统的做法是工作人员每天编辑一些新鲜吸引人的信息给用户推送,这种做法靠纯人工的方式一方面需要消耗大量的人力成本,另一方面无法达到个性化推送消息的效果,不同用户看到的人工编辑的消息内容都是一样的。技术实现要素:本发明的目的在于一种推送消息的方法和装置,以改善上述问题。本发明的第一实施例提供了一种推送消息的方法,其包括:基于预先建立的用户库里的用户的身份标签来统计将预置消息库里的消息发送给所述用户库里的相应用户的次数和接收到所述消息的用户点击该消息的点击率;基于统计的消息发送的次数和所述点击率来确定所发送的消息对所述点击率的贡献度;基于所述贡献度确定用户与消息之间的匹配度;基于所述匹配度按预设方式选取对应的一定数量的消息推送给该相应用户。优选的,基于所述匹配度从大到小顺序选取对应的一定数量的消息推送给该相应用户,或者基于大于预设阈值的匹配度来随机选取一定数量的消息推送给该相应用户。其中,所述预先建立的用户库里的用户为待推送消息的用户,该用户库里记录的每个用户信息都包括一个或多个身份标签,所述身份标签用于表示用户的特点,包括但不限于:性别、兴趣、爱好、年龄段、地域、学历、专业、技能。在一个优选实施例中,在基于预先建立的用户库里的用户的身份标签来统计将预置消息库里的消息发送给用户库里的相应用户的次数和接收到所述消息的用户点击该消息的点击率的步骤中,基于预先建立的用户库里的用户的身份标签预先将预置消息库里的消息随机发送给用户库里没有接收过该条消息的用户中的一部分或全部用户。本发明第二实施例还提供了一种推送消息的装置,其包括:统计单元,用于基于预先建立的用户库里的用户的身份标签来统计将预置消息库里的消息发送给所述用户库里的相应用户的次数和接收到所述消息的用户点击该消息的点击率;贡献度确定单元,用于基于统计的消息发送的次数和所述点击率来确定所发送的消息对所述点击率的贡献度;匹配度确定单元,用于基于所述贡献度确定用户与消息之间的匹配度;推送单元,用于基于所述匹配度按预设方式选取对应的一定数量的消息推送给该相应用户。优选的,所述推送单元还用于基于所述匹配度从大到小顺序选取对应的一定数量的消息推送给该相应用户,或者用于基于大于预设阈值的匹配度来随机选取一定数量的消息推送给该相应用户。在一个优选实施例中,所述推送消息的装置还包括用户库建立单元,用于预先为待推送消息的用户建立用户库,该用户库里记录的每个用户信息都包括一个或多个身份标签;所述身份标签用于表示用户的特点,包括但不限于:性别、兴趣、爱好、年龄段、地域、学历、专业、技能。在一个优选实施例中,所述推送消息的装置还包括预发送消息单元,用于在统计单元工作之前基于预先建立的用户库里的用户的身份标签预先将预置消息库里的消息随机发送给用户库里没有接收过该条消息的用户中的一部分或全部用户。优选的,使用以下方法来计算所述贡献度:其中msi,t表示发送给具有身份标签t的用户的消息i对该用户点击该消息i的点击率mci,t的贡献度;mci,t表示点击率,为向具有身份标签t的用户发送了消息i的所有用户中点击了该消息i的用户数与向具有身份标签t的用户发送了消息i的所有用户数的比值;mpi,t表示向具有身份标签t的所有用户发送了消息i的次数;m表示预置消息库里的消息数量;t表示用户库里记录的不同身份标签的数量。优选的,使用以下方法来计算所述匹配度:其中fitu,i表示用户u与消息i之间的匹配度;umu,i表示用户u是否接收过消息i,其中umu,i为1表示接收过,umu,i为0表示没有接收过;utu,t表示用户u所具有的一个或多个身份标签中是否包含了身份标签t,其中utu,t为1表示包含了身份标签t,utu,为0表示没有包含;msi,t表示发送给具有身份标签t的用户的消息i对该用户点击该消息i的点击率的贡献度;t表示用户库里记录的不同身份标签的数量。根据本发明的推送消息的方法和装置,可以实现自动向不同用户发送不同的消息,即根据用户的兴趣、爱好、特点等发送符合其需求的消息,实现自动的个性化推送消息的效果,改善了不同用户看到的人工编辑的消息内容都是一样的不足。附图说明图1是现有的消息推送的一个实例截图;图2是本发明第一实施例的推送消息的方法的流程图;图3是本发明第二实施例的推送消息的方法的流程图;图4是本发明第三实施例的推送消息的装置的示意性框图;图5是本发明第四实施例的推送消息的装置的示意性框图。具体实施方式下面将结合本发明实施例和附图,对本发明实施例中的技术方案进行清楚、完整地描述。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。图2是本发明第一实施例的推送消息的方法的流程图。如图2所示,根据本发明第一实施例的推送消息的方法包括以下步骤:s1:基于预先建立的用户库里的用户的身份标签来统计将预置消息库里的消息发送给所述用户库里的相应用户的次数和接收到所述消息的用户点击该消息的点击率。通常,为了实现自动的个性化推送消息,需要预先建立一个用户库,用户库里保存多个待推送消息的用户信息,而且保存的用户数量和用户信息可以定期更新的。所述预先建立的用户库里的用户为待推送消息的用户,该用户库里记录的每个用户信息都包括一个或多个身份标签,所述身份标签用于表示用户的特点,包括但不限于:性别、兴趣、爱好、年龄段、地域、学历、专业、技能。用户信息可以通过用户注册第三方应用时来采集,也可以通过其它方式采集,例如通过调查问卷方式获得用户信息等。在采集用户信息时,得到的信息越全面、越详细越好。这样可以使得用户库里保存的每个用户信息都包括一个或多个身份标签。所述身份标签用于表示用户的特点,以便为后面的个性化推送消息打下基础,所述身份标签包括但不限于:性别、兴趣、爱好、年龄段、地域、学历、专业、技能等。这里仅仅是举例列出而非穷举,其它能表明用户特点的身份标签都在适用于本发明提供给的推送消息的方法。除此之外,所述用户信息还可以包括:用户标识(id),用于标识不同用户;消息推送结果,用于记录已向用户推送的消息的消息标识(id),该消息标识用于区分不同信息。通过用户信息记录的消息标识,可以知道向该用户推送了哪些消息。在一个优选实施例中,可以建立消息推送统计列表,列表里记录统计的在一段时间内的推送消息的情况,该统计列表可以包括但不限于:消息标识(id)、身份标签、推送次数、该消息的点击率、用户标识(id)等。所述消息标识(id)用于区分不同内容的信息。所述推送次数用于记录向具有某个身份标签的多个用户发送了一条消息的次数。另外,同一条消息,同一个用户只会收到一次,即同一条消息只向同一个用户发送一次。一条消息只要向一个用户推送过一次,那么这条消息将不再推送给这个用户。例如,一个用户a有2个身份标签a和b,当同一条消息分别向具有身份标签a的用户和具有身份标签b的用户发送时,同时具有身份标签a和b的用户a只会收到一次,即当一条消息发送给具有身份标签a的用户时,可以通过在统计列表里记录用户标识(id),来识别一条消息都发给了哪些用户。当将该条消息发送给具有身份标签b的用户时,禁止向已经收到过该消息的用户发送。除了可以在统计列表里记录用户标识(id)的方法之外,也可以单独建立推送消息与用户对应表,以记录一条消息都发给了哪些用户。所述点击率为基于身份标签统计的向具有某个身份标签的用户发送了一条消息的所有用户中点击了该条消息的用户数与所述具有该身份标签的所有用户数的比值。例如:其中mci,t表示点击率,为向具有身份标签t的用户发送了消息i的所有用户中点击了该消息i的用户数与向具有身份标签t的用户发送了消息i的所有用户数的比值;ui,t,d表示向具有身份标签t的用户发送了消息i的所有用户中点击了该消息i的用户数量;ui,t,n表示向具有身份标签t的用户发送了消息i的所有用户数量。所述消息推送统计列表例如可以是如下所示:消息id身份标签推送次数点击率1a10000.011b20000.052c5000.01…………从这个实例可以看出,消息1向用户库里具有身份标签a的用户发送1000次,接收到所述消息1的用户点击该消息1的点击率是0.01;消息1向用户库里具有身份标签b的用户发送2000次,接收到所述消息1的用户点击该消息1的点击率是0.05;消息2向用户库里具有身份标签c的用户发送500次,接收到所述消息2的用户点击该消息2的点击率是0.01。在本发明里,出于个性化推送消息的目的,基于身份标签来统计将预置消息库里的消息发送给用户库里的相应用户的次数和接收到所述消息的用户点击该消息的点击率,而不是基于用户来统计。当然,因为用户库里的用户信息都包含了相应的一个或多个身份标签,通过身份标签就可以找到相应的用户。为了快速找到相应用户,还可以建立推送消息与用户对应表。例如:消息id用户id100110022002…从这个列表可以快速得到1条消息都发送给了哪些用户,还便于对用户库里的用户信息中记录的消息推送结果进行更新。s2:基于统计的消息发送的次数和所述点击率来确定所发送的消息对所述点击率的贡献度。基于统计的消息发送的次数和所述点击率,可以使用以下方法来计算所发送的消息对所述点击率的贡献度:其中msi,t表示发送给具有身份标签t的用户的消息i对该用户点击该消息i的点击率mci,t的贡献度;mci,t表示点击率,为向具有身份标签t的用户发送了消息i的所有用户中点击了该消息i的用户数与向具有身份标签t的用户发送了消息i的所有用户数的比值;mpi,t表示向具有身份标签t的所有用户发送了消息i的次数;m表示预置消息库里的消息数量;t表示用户库里记录的不同身份标签的数量。在上式中,表示预置消息库里的所有消息被推送的平均点击率。以该平均点击率为基准值,一条消息i的点击率大于该基准值,则该条消息i对用户对它的点击率的贡献价值(贡献度)为正,当该条消息i的点击率小于该基准值,则该条消息i对用户对它的点击率的贡献价值(贡献度)为负。s3:基于所述贡献度确定用户与消息之间的匹配度。在得到所述贡献度后,使用以下方法来计算用户与消息之间的匹配度:其中fitu,i表示用户u与消息i之间的匹配度;umu,i表示用户u是否接收过消息i,其中umu,i为1表示接收过,umu,i为0表示没有接收过;utu,t表示用户u所具有的一个或多个身份标签中是否包含了身份标签t,其中utu,t为1表示包含了身份标签t,utu,为0表示没有包含;msi,t表示发送给具有身份标签t的用户的消息i对该用户点击该消息i的点击率的贡献度;t表示用户库里记录的不同身份标签的数量。所述公式的作用是计算一个用户u与其没有接收过的消息i之间的匹配度。如果该用户u接收过消息i,因为不需要重复向其发送第二次消息i,所以匹配度记为0。因为同一条消息只向同一个用户发送一次,所以在上式中,(1-umu,i)的目的是将已接收过的消息i的用户去掉,即已接收过消息i的用户与消息i之间的匹配度记为0。这样,通过计算与一个没有接收过消息i的用户u具有相同标签的其他用户收到的消息i对其点击该消息i的点击率的贡献度msi,t的累加之和,作为用户u与消息i之间的匹配度。s4:基于所述匹配度按预设方式选取对应的一定数量的消息推送给该相应用户。在得到了所述匹配度之后可以根据匹配度值按预设方式选取一定数量的相应消息推送给相应用户。为了实现推送的消息最大可能的符合用户的需求,在一个优选实施例中,基于大于预设阈值的匹配度来随机选取一定数量的消息推送给该相应用户。为了避免在较短时间段里向用户推送过多消息而降低用户的体验感,优选的可以预先设置一个阈值,从大于或等于该预设阈值的匹配度所对应的消息中随机选取一定数量的消息推送给该用户,优选选取3-5条消息;更优选的,选取匹配度最大值对应的一条消息推送给该用户。假设匹配度最大值对应了多条消息,可以将该多条消息推送给用户,也可以从中随机选择1条或者几条消息推送给用户。在一个实施例中,在基于预先建立的用户库里的用户的身份标签来统计将预置消息库里的消息发送给用户库里的相应用户的次数和接收到所述消息的用户点击该消息的点击率的步骤中,基于预先建立的用户库里的用户的身份标签预先将预置消息库里的消息随机发送给用户库里的一部分用户,优选随机发送给用户库里没有接收过该条消息的用户中的一部分或全部用户。即,在统计将预置消息库里的消息发送给用户库里的相应用户的次数和接收到所述消息的用户点击该消息的点击率之前,基于预先建立的用户库里的用户的身份标签属性将预置消息库里的消息随机发送给用户库里的具有该身份标签的一部分用户,优选随机发送给用户库里具有该身份标签但没有接收过该条消息的用户中的一部分或全部用户。如上面举过的例子,当一条消息分别发给2个或以上不同身份标签(例如身份标签a和b)的用户时,同时具有相应2个或以上不同身份标签的用户在第一次收到该条消息后,不会重复接收该条消息,即在这个实施例里也需要符合同一条消息只向同一个用户发送一次的规定。这样做的好处在于获取不同标签身份的用户对不同消息的点击率数据。在一个实施例中,更新用户库的用户信息中记录的内容,具体如下:当用户信息包含的一个或多个身份标签发生变化时更新该身份标签;当向用户推送新的消息时更新该用户信息包含的消息推送结果。在一个实施例中,更新预置消息库里的消息推送统计列表,具体如下:当消息推送次数和点击率发生变化时进行更新该消息推送统计列表。在一个实施例中,更新推送消息与用户对应表,具体如下:当推送消息与用户对应表中记录的一条消息发送给该对应表中记录的发送用户之外的用户时,更新该推送消息与用户对应表。图3是本发明第二实施例的推送消息的方法的流程图。如图3所示,该第二实施例描述的方法与第一实施例描述的方法的区别仅仅在于步骤s4对预设方式做了进一步的限定,而其它步骤s1-s3以及相应的优选实施例描述的技术方案都是完全一样的。本发明第二实施例的推送消息的方法包括的步骤s4如下所述:s4:基于所述匹配度从大到小顺序选取对应的一定数量的消息推送给该相应用户。即,为了实现推送的消息最大可能的符合用户的需求,在另一个优选实施例中,在得到了一个用户与其接收到的各个消息之间的匹配度之后,选取在匹配度的降序排列中排名靠在前面的多个匹配度所对应的多条消息推送给该用户,优选选取3-5条消息;更优选的,选取匹配度最大值对应的一条消息推送给该用户。假设匹配度最大值对应了多条消息,可以将该多条消息推送给用户,也可以从中随机选择1条或者几条消息推送给用户。由此可以见,该第二实施例所描述的选择推送消息的限定条件是:选取与用户的匹配度最大的1条或多条消息向该用户推送。根据以上两个实施例并结合优选实施例描述的本发明的推送消息的方法,可以实现自动向不同用户发送不同的消息,即根据用户的兴趣、爱好、特点等发送符合其需求的消息,实现自动的个性化推送消息的效果。图4是本发明第三实施例的推送消息的装置的示意性框图。如图4所示,根据本发明第三实施例的推送消息的装置包括:统计单元,用于基于预先建立的用户库里的用户的身份标签来统计将预置消息库里的消息发送给所述用户库里的相应用户的次数和接收到所述消息的用户点击该消息的点击率;贡献度确定单元,用于基于统计的消息发送的次数和所述点击率来确定所发送的消息对所述点击率的贡献度;匹配度确定单元,用于基于所述贡献度确定用户与消息之间的匹配度;推送单元,用于基于所述匹配度按预设方式选取对应的一定数量的消息推送给该相应用户。优选的,所述身份标签用于表示用户的特点,包括但不限于:性别、兴趣、爱好、年龄段、地域、学历、专业、技能。优选的,所述贡献度确定单元用于使用以下方法来计算所述贡献度:其中msi,t表示发送给具有身份标签t的用户的消息i对该用户点击该消息i的点击率mci,t的贡献度;mci,t表示点击率,为向具有身份标签t的用户发送了消息i的所有用户中点击了该消息i的用户数与向具有身份标签t的用户发送了消息i的所有用户数的比值;mpi,t表示向具有身份标签t的所有用户发送了消息i的次数;m表示预置消息库里的消息数量;t表示用户库里记录的不同身份标签的数量。优选的,所述匹配度确定单元用于使用以下方法来计算所述匹配度:其中fitu,i表示用户u与消息i之间的匹配度;umu,i表示用户u是否接收过消息i,其中umu,i为1表示接收过,umu,i为0表示没有接收过;utu,t表示用户u所具有的一个或多个身份标签中是否包含了身份标签t,其中utu,t为1表示包含了身份标签t,utu,为0表示没有包含;msi,t表示发送给具有身份标签t的用户的消息i对该用户点击该消息i的点击率的贡献度;t表示用户库里记录的不同身份标签的数量。为了实现推送的消息最大可能的符合用户的需求,在一个优选实施例中,所述推送单元还用于基于所述匹配度从大到小顺序选取对应的一定数量的消息推送给该相应用户,或者用于基于大于预设阈值的匹配度来随机选取一定数量的消息推送给该相应用户,优选选取3-5条消息;更优选的,选取匹配度最大值对应的一条消息推送给该用户。这与所述第一实施例和第二实施例描述的优选实施例的具体过程相同,不再重复赘述。图5是本发明第四实施例的推送消息的装置的示意性框图。如图5所示,所述推送消息的装置还包括:用户库建立单元,用于预先为待推送消息的用户建立用户库,该用户库里记录的每个用户信息都包括一个或多个身份标签;所述身份标签用于表示用户的特点,包括但不限于:性别、兴趣、爱好、年龄段、地域、学历、专业、技能。和/或,所述推送消息的装置还包括预发送消息单元,用于在统计单元工作之前基于预先建立的用户库里的用户的身份标签预先将预置消息库里的消息随机发送给用户库里的一部分用户,优选随机发送给用户库里没有接收过该条消息的用户中的一部分或全部用户。这里描述的所述推送消息的装置包含的各个单元的工作过程和原理,与上述方法实施例中的相关描述相同,这里不再重复展开描述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,前述方法实施例中列举的例子和相关描述,同样适用于解释装置的工作过程,在此不再重复描述。根据本发明的推送消息的装置,可以实现自动向不同用户发送不同的消息,即根据用户的兴趣、爱好、特点等发送符合其需求的消息,实现自动的个性化推送消息的效果。本发明实施例所提供的推送消息的方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,平板电脑,智能手机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom)、随机存取存储器(ram)、磁碟或者光盘等各种可以存储程序代码的介质。以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本
技术领域
的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1