浅谈微博精准推荐——用户行为挖掘与相似用户挖掘

  • 时间:
  • 浏览:0

  在微博中,用户的互动行为主要包括“转发”、“评论”、 “点赞”、“收藏”和“点击短链接”等。哪些地方地方行为的背后,表明用户对这条微博的内容在一种程度上产生了共鸣,只是,在不同的行为之间,其不能代表用户的兴趣程度也是不一样的,如“点赞”行为只是对博文内容的认同,而转发行为,则更多地表明用户希望让自己认同的微博内容被更多人看后,更能表明用户的兴趣。

  基于互动内容的兴趣挖掘是指利用有些机器学习可能性文本补救的措施 ,提取出用户互动微博文本中的核心词,一般提取核心词的主要步骤为:

  当用户A与待推荐微博的博主之间有过互动行为时,在一定程度上表明该用户与博主之间指在一种兴趣上的例如于性,对于博主发布的微博,用户A互动的可能性性比较大,只是,不能选取将这次责用户作为待推广的候选集。

  在基于与博主互动的兴趣挖掘中,是指将微博博主的微博投放给与其互动过的有些用户。基于与博主互动的兴趣挖掘的主要任务是对历史的“转发”、“评论”、“点赞”、“收藏”等数据进行补救,从中提取出博主与互动用户之间的关系,并将另另另五个 的对应关系存入对应的数据库中,其具体的过程如图5所示。

       

                    图5 基于与博主互动的兴趣挖掘

  在基于社区的例如于用户的挖掘中,利用Label Propagation算法对社区进行挖掘,最终将社区对应的用户列表存储到对应的数据库中,其具体的过程如图7所示。

  

                    图7 基于社区的例如于用户挖掘

  在精准推荐中,对用户的离线数据挖掘是很关键的步骤,常用的用户定向主要有:①人群属性定向(Demographic Targeting);②行为定向(Behavioral Targeting);③地理位置的定向(Geo Targeting);④例如于用户的定向(Look-Alike Targeting)。

  人群属性定向指基于用户基本属性进行定向,包括年龄、性别等定向,比如为女人爱用户推荐化妆品类的微博。行为定向指的是基于用户的历史行为数据挖掘用户的兴趣,比如通过对微博中用户对博文的“转发”、“评论”、“点赞”等数据的分析,发现用户的兴趣。地理位置定向指的是利用移动设备记录用户的地理位置,为用户推荐相关的微博,比如用户在某个景点,我们我们我们都都为其推荐邻近地点的微博。例如于用户的定向指的是利用可能性找出的有些人,找到与其例如于的用户进行定向。

  以上简单介绍了4种离线数据挖掘的措施 ,还有只是有些的挖掘措施 。在本文中,我们我们我们都都重点关注行为定向和例如于用户的定向。

引言:在推荐系统中,通过对用户数据的挖掘,抽象出用户感兴趣的“商品”,以微博的博文推荐为例,“商品”表现为用户的博文,在博文精准推荐中,其核心间题是在给定的环境下,为用户推荐高质量且符合用户兴趣的博文。

本文选自《Python机器学习算法》。

  在微博中,有两方面的数据不能使用,一方面是用户之间的关注关系,这不次责数据体现了用户的社交属性;自己面是用户的行为数据,主要包括用户的原创、“转发”、“评论”、“收藏”、“点赞”、“点击短链接”等,这次责体现了用户的兴趣属性,通过对不例如于型的数据挖掘,我们我们我们都都不能获得用户不同维度上的例如于性。

  在基于用户的行为的挖掘中,主要包括:

  在构建推荐系统的过程中,为了不能为用户提供精准的博文推荐,其架构的设计主要包括四层:数据生产层、存储层、候选过滤层和排序层。最终输出排序后的结果,具体的精准推荐的分发如图2所示。

        

                      图2 精准推荐的分发

  在图2所示的精准推荐的分发中,首先,在数据生产层,我们我们我们都都不能利用离线挖掘的措施 对用户兴趣进行挖掘,挖掘完成后,将用户数据存储到对应的数据库中,我们我们我们都都称为用户数据库。一齐,我们我们我们都都不能将待推荐的微博也存储在数据库中,我们我们我们都都称为推荐微博数据库。在用户数据挖掘中,通常使用到的措施 包括协同过滤算法、标签传播算法、word2vec等。

  在存储层,将挖掘好的用户兴趣存储到对应的数据库中,我们我们我们都都通常不能使用Redis等NoSQL数据库。

  在候选过滤层,当用户请求时,首先从用户数据库中查找到用户的兴趣,再根据查找到的用户兴趣、到推荐微博数据库中进行请求,查找到对应的待推荐的微博,其具体过程如图3所示。

      

                      图3 查询操作

  当通过如上的操作查询出了最终的结果后,我们我们我们都都不能对其中的结果进行合并和过滤,以保证最终结果的唯一性。

  在排序层,我们我们我们都都不能对所有的候选进行排序,以选取最终的曝光顺序,在排序阶段,使用的评价指标通常为点击率CTR,即:                  

                   

  其中,#impression表示的是曝光的次数,#click表示的是点击的次数,在微博中,点击的行为主要包括:“转发”、“评论”、“点赞”、“点击短链接”等。通常采用机器学习的算法对候选进行排序,排序的主要措施 有:Logistic Regression算法、因子分解机FM算法、梯度提升决策树GBDT算法等。

  社区划分是社交网络中研究比较多的另另五个 话题,对于不同特征的社交网络有不同的社区划分算法。对于社区并越来越明确的定义,通常对于社区的理解是:在网络中,由有些节点构成特定的分组,在同另另五个 分组内的节点,通过节点之间的连接边紧密地连接在一齐,而在分组与分组之间,其连接比较松散,称每另另五个 分组为另另五个 社区。社区划分算法通过一种措施 将用户划分到不同的社区中,社区结构的连接较为强烈,社区与社区之间有比较明显的界限。

  在微博中,用户与用户之间的连接主要分为一种,一种是通过“关注”操作连接另另五个 用户,另外一种是通过“转发”、“评论”、“点赞”、“收藏”、“点击短链接”等行为连接另另五个 用户。在上述的一种连接中,前者的关系不仅蕴含了兴趣关系,也蕴含社交关系,而后者,更多倾向于兴趣关系。在这里,我们我们我们都都想要得到的更多的是用户之间的兴趣关系,只是,我们我们我们都都这里使用到的数据是用户之间的“转发”、“评论”、“点赞”、“收藏”、“点击短链接”等行为数据。

  从哪些地方地方行为数据中我们我们我们都都不能知道,哪些地方地方行为数据连接的另另五个 用户之间的边是指在方向的,即构成的图是有向图。有向图是指图中的边是蕴含方向的图。对于有向图,每另另五个 节点之间的边的条数是两条,分别为流出的边和流入的边,其流出边的总数为出度,流入边的总数为入度,有向图如图6所示。

 

                       图6 有向图

  对于节点5,其出度为2,入度也为2。对于更多的有向图的知识,可参阅相关图论的书籍。

  而对于标签传播Label Propagation算法,其对数据的要求是无向图,为了使得Label Propagation算法不能利用上述的行为数据对用户进行社区划分,我们我们我们都都将图中的流出边和流入边进行合并,合并的公式为:

               

  其中表示的是节点j到节点i的权重,表示的是节点i到节点j的权重,表示的是节点j到节点i的权重。通过参数α和参数β不能调节不同的权重比例。此时,我们我们我们都都不能利用Label Propagation算法对微博中的社区进行划分。

  我们我们我们都都对参数α与参数β进行了不同的取值,并利用50天的行为数据,最终得到,当α=0.6,β=0.4时效果比较好,最终识别出12629个社区。觉得我们我们我们都都捞出了哪些地方地方社区,只是哪些地方地方社区的质量参差不齐,有的社区结构较为活跃,而有些社区,结构并不活跃,我们我们我们都都试图将有些不活跃的社区从我们我们我们都都挖掘好的社区中去除,此时,计算每另另五个 社区中的信息熵,熵越大表明该社区越活跃,只是,我们我们我们都都过滤有些不活跃的社区,保留活跃的社区。

  当有微博不能投放时,选取某好多个社区,将微博投放给社区中的住户,选取社区的措施 有只是种,比如:

  在社交网络中,每另另五个 用户只是整个网络中的另另五个 节点,另另五个 简单的网络特征如图1所示。

        

                        图1 网络特征

  在微博中,用户不能通过“关注”行为成为另另另五个 用户的粉丝,“关注”行为是有向的。通过“关注”另另五个 用户后,我们我们我们都都不能在我们我们我们都都的feed流中看后对方的信息。在微博中,通过另另另五个 的措施 ,我们我们我们都都不能接触到更多的信息。

  然而,在信息过载的时代,信息呈现爆炸式增长,如在微博中,每天有极少量的微博被创作和转发,信息量的爆炸式增长在给用户不断带来新的信息的一齐,也增加了用户筛选信息的难度,为了不能为用户推荐其感兴趣的信息,我们我们我们都都首越来越分溶于 该用户的兴趣,从海量的信息中选取出与用户兴趣例如于的信息,并将哪些地方地方信息推荐给用户。推荐系统(Recommendation System,RS)正是在另另另五个 的背景下被提出的,推荐算法根据用户的历史行为,捞出用户的喜好,并为用户推荐与其喜好相符的商品可能性信息。推荐系统的任务只是不能连接信息与用户,帮助用户找到其感兴趣的信息,一齐让有些有价值的信息不能触达到潜在的用户中。此时,对用户兴趣的精准挖掘,成为为用户精准推荐博文的关键任务。

  另另五个 用户与其粉丝之间指在一种例如于性,可能性是兴趣维度的例如于,可能性是群体间的例如于。在微博中,为了不能定向让某自己看后,我们我们我们都都会在这条微博中加入“@”该用户的标记。“@”标记在一定程度上说明该信息与被“@”用户之间指在关系,而由上述的分析可知,用户与其粉丝之间指在社交关系可能性兴趣关系,只是,另另另五个 的挖掘措施 不能充分利用微博数据的特殊性。

  在基于“@”人的例如于用户挖掘中,对于蕴含“@”信息的微博,通过对“@”用户的提取,查找到该用户的粉丝,并进行投放,不能查找的库为用户的粉丝库。

  从中间的分析中,我们我们我们都都知道,在微博中,另另五个 用户与其粉丝之间的关系大致不能分为:

  以哪些地方地方核心词作为用户的标签,并将哪些地方地方信息保存到对应的数据库中,其具体过程如图4所示。

       

                      图4 基于互动内容的兴趣挖掘

  对于例如于用户的挖掘,除了上述的社区挖掘的措施 外,还不能使用协同过滤的措施 。在协同过滤算法中,主要分为基于用户的协同过滤算法和基于项的协同过滤算法,其主要的区别是在例如于度的计算过程中。

我们我们我们都都以基于用户的协同过滤算法为例,在基于用户的协同过滤算法中,主要计算任意另另五个 用户A和B之间的例如于度,并利用该例如于度将用户B互动过而用户A越来越互动过的商品推荐给用户A。

  在微博中,每个用户有的是自己的粉丝列表,我们我们我们都都不能利用另另五个 用户的粉丝列表来度量这另另五个 用户之间的例如于度,假设用户A的粉丝列表集合为,用户B的粉丝列表集合为,越来越,用户A和用户B的例如于度为:

                

  其中,表示的是的交集,表示的是集合中元素的个数。

  本文选自《Python机器学习算法》,点此链接可在博文视点官网查看此书。

                  

  “例如于用户”的概念在不同的应用场景下的理解是不同的,如基于例如于兴趣的例如于用户,基于不同群体的例如于用户等。在基于例如于兴趣的例如于用户中,哪些地方地方用户都对同另另五个 事物有兴趣,如一群对“机器学习”感兴趣的用户的集合。在基于不同群体的例如于用户中,哪些地方地方用户可能性是年龄区间也可能性是消费能力例如于,如大学生群体等。在精准推荐中,我们我们我们都都主要考虑的是基于例如于兴趣的例如于用户。

  想及时获得更多精彩文章,可在微信中搜索“博文视点”可能性扫描下方二维码并关注。