带你走进微博背后的大数据原理:微博推荐算法

带你⾛进微博背后的⼤数据原理:微博推荐算法
在介绍微博推荐算法之前,我们先聊⼀聊推荐系统和推荐算法。有这样⼀些问题:推荐系统适⽤哪些场景?⽤来解决什么问题、具有怎样的价值?效果如何衡量?
推荐系统诞⽣很早,但真正被⼤家所重视,缘起于以”facebook”为代表的社会化⽹络的兴起和以“淘宝“为代表的电商的繁荣,”选择“的时代已经来临,信息和物品的极⼤丰富,让⽤户如浩瀚宇宙中的⼩点,⽆所适从。推荐系统迎来爆发的机会,变得离⽤户更近:
快速更新的信息,使⽤户需要借助体的智慧,了解当前热点。信息极度膨胀,带来了⾼昂的个性化信息获取成本,过滤获取有⽤信息的效率低下。
很多情况下,⽤户的个性化需求很难明确表达,⽐如“今天晚上需要在附近⼀个性价⽐⾼、⼜符合我⼝味的餐馆“。
推荐系统的适⽤场景还有很多,不再⼀⼀列举;其主要解决的问题是为⽤户到合适的item(连接和排序),并到⼀个合理的理由来解释推荐结果。⽽问题的解决,就是系统的价值,即建⽴关联、促进流动和传播、加速优胜劣汰。
推荐算法是实现推荐系统⽬标的⽅法和⼿段。算法与产品相结合,搭载在⾼效稳定的架构上,才能发挥它的最⼤功效。
厦门舒洁
接下来我们说⼀下微博推荐,微博本⾝的产品设计,使得即使没有推荐系统,仍然会形成⼀个⼤的⽤户关系⽹络,实现信息快速传播;⽽衡量⼀个事物的价值,⼀个简单的⽅法是对⽐看看保留它和去掉它时的差别。微博需要健康的⽤户关系⽹络,保障⽤户feed流的质量,且需要优质信息快速流动,通过传播淘汰低质信息。微博推荐的作⽤在于加速这⼀过程,并在特定的情况下控制信息的流向,所以微博推荐的⾓⾊是⼀个加速器和控制器。
最后回到微博推荐算法中来,上⾯扯了那么多,只是为了让⼤家能对微博推荐算法有更好的理解。我们的⼯作,是将微博推荐的⽬标和需要解决的问题,抽样为⼀系列的数学问题,然后运⽤多种数据⼯具进⾏求解。
接下来⾸先⽤⼀个图梳理下我们⽤到的⽅法和技术,然后再逐⼀介绍。
力量组合基础及关联算法
这⼀层算法的主要作⽤是为微博推荐挖掘必要的基础资源、解决推荐时的通⽤技术问题、完成必要的数据分析为推荐业务提供指导。
这⼀部分中常⽤的算法和技术如下:
分词技术与核⼼词提取
是微博内容推荐的基础,⽤于将微博内容转化为结构化向量,包括词语切分、词语信息标注、内容核⼼词/实体词提取、语义依存分析等。
分类与anti-spam
⽤于微博内容推荐候选的分析,包含微博内容分类和营销⼴告/⾊情类微博识别;内容分类采⽤决策树分类模型实现,共3级分类体系,148个类别;营销⼴告/⾊情类微博的识别,采⽤贝叶斯与最⼤熵的混合模型。
聚类技术
主要⽤于热点话题挖掘,以及为内容相关推荐提供关联资源。属于微博⾃主研发的聚类技术WVT算法(word vectortopic),依据微博内容特点和传播规律设计。
传播模型与⽤户影响⼒分析
开展微博传播模型研究和⽤户⽹络影响⼒分析(包含深度影响⼒、⼴度影响⼒和领域内影响⼒)。
主要推荐算法
1. Graph-based 推荐算法
南京晨光东螺波纹管有限公司微博具有这样的特点:⽤户贡献内容,社会化途径传播,带来信息的爆炸式传播。之所以称作graph-based推荐算法,⽽不是业界通⽤的memory-based 算法,主要原因在于:
我们的推荐算法设计是建⽴在社交⽹络之上,核⼼点在于从社交⽹络出发,融⼊信息传播模型,综合利⽤各类数据,为⽤户提供最佳的推荐结果;⽐如很多时候,我们只是信息传播的关键环节,加⼊必要的推荐调控,改变信息传播通路,后续的传播沿着原来的⽹络⾃然的传播。Feed流推荐(我们称作趋势),是我们最重要的产品,⽽结果必须包含⽤户关系。
从graph的宏观⾓度看,我们的⽬标是建⽴⼀个具有更⾼价值的⽤户关系⽹络,促进优质信息的快速传播,提升feed流质量;其中的重要⼯作是关键节点挖掘、⾯向关键节点的内容推荐、⽤户推荐。
对这部分的算法做相应的梳理,如下⾯的表格:
这⾥的困难点在于graph的“边”怎样量化与取舍,依据多个“边”与“节点”的综合评分计算,以及与⽹络挖掘分析结果的融合。
这部分的算法研发中,产出了如下的数据附产品:
2. Content-based 推荐算法
Content-based 是微博推荐中最常⽤也是最基础的推荐算法,它的主要技术环节在于候选集的内容结构化分析和相关性运算。
正⽂页相关推荐是content-based 应⽤最⼴的地⽅,以它为例,简要的说⼀下
内容分析的很多点已在前⾯描述过了,这⾥重点说2个地⽅:
内容质量分析,主要采⽤微博曝光收益+内容信息量/可读性的⽅法来综合计算。微博曝光收益是借助⽤户体⾏为,衡量内容优劣;内容信息量计内容质量分析,
算⽐较简单,即是微博关键词的idf信息迭代;对于内容可读性的衡量,我们做了⼀个⼩的分类模型,分别以可读性较好的新闻语料和可读性较差的⼝语化语料为训练样本,通过提取⾥⾯的各类词搭配信息,计算新微博具有良好可读性的概率。
词扩展,
词扩展,content-based的效果取决于内容分析的深度。微博的内容⽐较短,可提取的关键信息⽐较少,做相关运算时容易因为数据稀疏⽽导致推荐召回率和准确率的难以权衡;我们引⼊word2vec技术,优化了词扩展效果,后⾯⼜以此为基础开展词聚类的⼯作,实现了推荐召回率和准确率的同步提升。
相关计算的技术点在于向量的量化和距离度量,我们通常使⽤“tf*idf权重量化 + 余弦距离”或者“topic 概率 + KLD距离“的两种⽅法。
在此我向⼤家推荐⼀个⼤数据开发交流圈:658558542    (☛点击即可加⼊聊)⾥⾯整理了⼀⼤份学习资料,全都是些⼲货,包括⼤数据技术⼊门,⼤数据离线处理、数据实时处理、Hadoop 、Spark、Flink、推荐系统算法以及源码解析等,送给每⼀位⼤数据⼩伙伴,让⾃学更轻松。这⾥不⽌是⼩⽩聚集地,还有⼤⽜在线解答!欢迎初学和进阶中的⼩伙伴⼀起进学习交流,共同进步!
3. Model-based 推荐算法
微博作为中国最⼤的社会化媒体产品,具有海量的⽤户和信息资源;这就给推荐带来了2个挑战:向阳屯
来源融合与排序
候选的极⼤丰富,意味着我们有更多的选择,于是我们推荐结果的产⽣包含两层:多种推荐算法的初选与来源融合排序的精选,为了得到更客观准确的排序结果,我们需要引⼊机器学习模型,来学习隐藏在⽤户体⾏为背后的规律。
内容动态分类和语义相关
微博UGC的内容⽣产模式,以及信息快速传播和更新的特点,意味着之前⼈⼯标注样本,训练静态分类模型的⽅法已经过时了,我们需要很好的聚类模型把近期的全量信息聚合成类,然后建⽴语义相关,完成推荐。
Model-based 算法就是为了解决上述的问题,下⾯是我们两块最重要的机器学习⼯作:
3.1 CTR/RPM(每千次推荐关系达成率)预估模型,采⽤的基本算法为Logistic
regression,下⾯是我们CTR预估模型整体的架构图:
这部分⼯作包含样本选择、数据清洗、特征提取与选择、模型训练、在线预估和排序。值得⼀提的是,模型训练前的数据清洗和噪⾳剔除⾮常重要,数据质量是算法效果的上界,我们之前就在这个地⽅吃过亏。Logisitic regression是⼀个2分类概率模型
甲基丙烯酸优化的⽬标在于最⼤化“样本正确分类概率的连乘值“;我们借助yahoo研发的vowpal_wabbit机器学习平台来完成模型特征值求解的最优化过程。
3.2 LFM(Latent Factor Model):LDA、矩阵分解(SVD++、SVD Feature)
LDA是2014年初重点开展的项⽬,现在已经有了较好的产出,也在推荐线上产品中得到了应⽤;LDA本⾝是⼀个⾮常漂亮和严谨的数学模型,。
⾄于矩阵分解,2013年的时候做过相应的尝试,效果不是特别理想,没有继续投⼊。
隐语义模型是推荐精度最⾼的单⼀模型,其困难在于数据规模⼤时,计算效率会成为瓶颈;我们在这个地⽅开展了⼀些⼯作,后续会有同学专门介绍这⼀块。
混合技术
三个臭⽪匠顶个诸葛亮,每⼀种⽅法都有其局限性,将不同的算法取长补短,各⾃发挥价值,是极为有效的⽅式。微博推荐算法主要采⽤了下⾯的混合技术:
时序混合:
黑山论坛即在推荐过程的不同时间段,采⽤不同的推荐算法;以正⽂页相关推荐为例,在正⽂页曝光的前期阶段,采⽤content-based +ctr预估的⽅法⽣成推荐结果,待产⽣的⾜量可信的⽤户点击⾏为后,再采⽤user-based 协同过滤的⽅法得到推荐结果,如下图所⽰:
这样利⽤content-based很好的解决了冷启动的问题,⼜充分发挥了user-based CF的作⽤,实现1+1>2的效果。
分层模型混合:
很多情况下,⼀个模型⽆法很好的得到想要的效果,⽽分层组合往往会取得⽐较好的效果,分层模型混合即“将上⼀层模型的输出作为下层模型的特征值,来综合训练模型,完成推荐任务“。⽐如我们在做微博⾸页右侧的ctr预估排序时,采⽤分层逻辑回归模型,解决了不同产品间特征天然缺失与样本量差异、曝光位置带来的效果偏差等问题。
瀑布型混合:
这类混合技术思路⾮常简单,即在推荐候选⾮常丰富的情况下,采⽤逐层过滤的⽅法的得到推荐结果,通常将运算快、区分度低的算法放在前⾯,完成⼤量候选集的筛选;将运算慢、区分度⾼的算法放在后⾯,精细计算剩下的⼩规模集合。这类混合在微博推荐中⼤量使⽤,我们采⽤各种轻量算法完成候选集粗选,然后采⽤ctr预估做精细化排序。
交叉混合:
各类推荐算法中⼦技术,可以在另外的推荐算法中综合使⽤,⽐如content-based在相关性计算中积累的距离计算⽅法,可以很好的应⽤在协同过滤的量化计算中。实际的例⼦,我们将研究LDA时积累的向量计算⽅法成功的应⽤到⽤户推荐中。
Online 与 offline
微博数据的特点(海量、多样、静态与动态数据混在⼀起),决定了⼤部分推荐产品的结果需要同时借助online和offline的计算来完成。从系统和算

本文发布于:2024-09-24 07:18:47,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/527914.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:推荐   信息   算法   模型   内容   传播   数据
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议