Enlister―基于机器学习的百度知道问题推荐系统
Enlister——是中国最大的中文问答网站“百度知道”的问题推荐系统名字。这个由几个百度一线工程师研发的系统,自2012年1月上线以来,承担着百度知道千万级登录用户的问题推荐计算。
问题的开始
百度知道这样的问答社区型网站有个典型特点:有些用户在平台上提出问题,这些问题被另一些用户发现,其中有能力且有意愿的人回答了这几个问题。这几个问题及其解答在平台上沉淀下来,持续给后来有相关问题的搜索用户提供着解答,并激励着更多用户将自己的问题发布在平台上。
像这样的系统就是一个自生态系统,有人生产,有人消费(如图1)。若其中一个环节出现问题,都会导致这个生态异常。在现在的百度知道上,每日有几十万的新问题正在提出,又有近百万左右的在涌现,而浏览这些知识的人每天有上亿。最可能出问题的地方在于,问题被提出以后,解答无法满足甚至鲜有人问津,这不利于解决提问者的疑惑和知识的沉淀。
图1
面对这样问题,提升回答量是最直接的办法,回答量上升了,有价值的回答数量就会成比上涨。“回答”是一个高门槛的事,是contribute而非consume。排除这个问题,若用户本身在发现待回答问题上,还需要过高的付出(例如搜索、或按分类查找,如图2),那着实让大量有能力和意愿但不想花更多时间在查找问题上的人望而却步。而推荐,就是我们一把杀手锏。
图2
关于百度知道推荐
有了推荐,就有了地基,如何设计楼宇有更多细节需要解决。做推荐需要密切结合产品,是恒古不变的真理。详细了解了知道的产品和目标后,我们提出了三个系统核心:
1、基于内容
新问题一旦被提出,其解决就刻不容缓。高时效性要求了必须要以准确的内容分析为基础。
基于内容,意味我们需要用模型准确地描述“问题”和用户。考虑我们的推荐场景,一个新问题产生并被推荐给目标用户后,用户看到的是一个推荐列表与里面的问题标题(如图3)。此时,影响一个用户是否点击该问题的因素大致有:问题的具体内容、问题的分类及分类的回答活跃度、问题的地域性。其中,问题分类活跃度是一个实际观察得到的因素,某些分类,如情感,的回答活跃度会远远高于其他分类。而用户因素则有:用户内容偏好、回答时间、了解地域、最近行为偏向与最近推荐活跃度。其中,除了内容偏好与了解地域这类用户长期兴趣,一些短期偏好如时间、最近行为和最近对推荐的活跃度作为context信息也被考虑在内,以便提高推荐时机准确性。
图3
根据以上因素,我们对问题进行了如下建模:获取问题标题、切词并从标题中抽取中心词,构建plsa主题模型,利用分类器获取问题分类(分类结构可见知道主页上“问题分类”)与该分类最近点击、回答量,问题推荐的时间与问题地理关键词。
而用户的建模包括了:用户在知道的个人中心定制的关键词、问题分类,用户历史回答问题标题中挖掘的中心词分布与权重及这些中心词的plsa模型,用户最近回答问题的时间,最近回答的问题标题,以及用户最近对推荐问题的点击与回答量。
利用以上的数据,我们基本对问题、用户有了准确的描述。不仅涵盖了用户关注的问题且能解答的兴趣方向,同时刻画了最近用户的回答兴趣偏向与推荐场景信息。
2、CTR预估(Click Through Rate,点击率预估)
为了提升回答量,我们可考虑提升点击量,在用户量和回答率不变的基础上,间接提升了回答量。另外,CTR预估是我们擅长的技术,是我们的一大优势。
CTR预估自然就会使用到最大熵模型。该模型是经典的分类模型,在工业界有很多成功的使用案例,不仅可以进行线性计算以满足实时推荐需求,也不用考虑变量间独立性关系,可将所有的特征(包括context信息)构造成向量加入模型中。在我们的问题中,希望利用及其有限规模的设备来获得优质的推荐服务,自然就涉及到需要定期更新训练模型且样本数不能过大(训练本地化),特征维度不宜过高。因此,我们尽可能利用用户与问题模型构造组合的高级特征,以提高特征的覆盖度和泛化能力(如图4)。
图4
为了保持模型的新鲜性,我们自动更新模型周期为5天。在5天之内采样登录用户的几百万点击数据作为正样本。常规情况下,本可采用推荐列表中展示但未被点击的问题作为负样本,但预测结果并不令人满意,究其原因可能为:由于列表上问题方向由一定重复性,另外用户每天回答能力有上限,所以列表上其他问题可能由于用户未看到或已经不想再继续回答而未点击,不能代表其为真正的负样本。所以,负样本采用从与正样本时间一致的同一批问题里随机抽取。而正负样本比例则尝试了多种比例组合,最终1:1的比例在精确率(accuracy)上优于其他组合(如图5)。
图5
3、流式计算
为了适应新问题实时推送,我们设计了以问题数据为主数据流的推荐系统,保证了新问题在分钟级时效性内推送给目标(如图6)。
图6
流式计算,是相对于离线批量计算和当用户访问时实时为其计算推荐而言的。当新问题产生时,我们需要及时为其发现目标用户,并为这批目标用户构建新的推荐列表,包含了巨大的计算量及存储量。如图7,当我们在question pre-process端接收到新问题时,立即对其进行秒级建模运算。
图7
而在user action pre-process端,我们利用分布式计算实现了用户模型小时级更新,保持用户模型的新鲜性。通过BMQ系统(Baidu Message Queue)将建好模的问题发送到几十台click predict运算模块中(每台包含不同的用户分片)。click predict内部也是多线程并行流水线处理,保持高并发性(如图8)。当click predict接收到一个问题,会先根据问题中心词拉取用户倒排,获取一个该问题关联用户的候选集(pre-process),淘汰部分不合格用户。在prediction阶段,对问题和关联到的全部用户(千量级)计算点击率,并淘汰低点击率。最后再re-rank阶段对用户原有列表插入该新问题。
图8
百度知道的列表构建
在上一节最后提到了将一个新问题插入到原有用户列表中。若只简单考虑利用CTR值来进行排序,则使得整个列表看起来同质化比较严重:
1、不少问题的标题很接近,在列表中排序也可能很邻近。
2、用户可能包含几个兴趣点,但最终列表(特别头部)集中了大量问题只属于一个兴趣。
实验表明,这些问题会严重影响用户体验,降低用户持续回答的欲望。我们则采用了一种多样化列表构建方法,以CTR为基本排序依据,但在列表头部尽可能的保证推荐的相关性。当一个新问题插入头部时,只要和周围标题不是非常接近都可插入,让用户能首先看到的列表前部看起来推荐很“准”;而在非头部区域,则加强对邻近问题相似过滤,让更多的兴趣点能得以展现,用户看起来觉得很“多样化”(如图9)。
图9
百度知道的整体系统
除了以上几点需要考虑之外,我们做一个线上的推荐系统还需要考虑如spam屏蔽、某些业务逻辑、用户反馈等问题。如图,在多样化列表构建时,加入业务逻辑模块,过滤spam问题,对一些高价值问题的展现进行优先或对用户点击删除或不太喜欢的关键词进行屏蔽、降权。图10中RP部分是推荐引擎,iknow部分是产品线。
图10
图11
图11是系统上线前与上线后回答量的一个对比。原有推荐系统基于中心词计算距离相似进行推荐,日均回答量不足8万。Enlister上线后回答量持续攀升,至6月份后稳定在19万左右。
本文发布于马海祥博客文章,如想转载,请注明原文网址摘自于https://www.mahaixiang.cn/seoyjy/244.html,注明出处;否则,禁止转载;谢谢配合!上一篇:解读2013最新版SEO元素周期表
下一篇:深度解析搜索引擎的原理结构
您可能还会对以下这些文章感兴趣!
-
落地页体验白皮书5.0解读:什么样的顶部嵌入广告符合体验标准
《百度APP移动搜索落地页体验白皮书5.0》对页面广告的内容、形式、位置和面积的要求都做出了详细的说明,受到了全网开发者的广泛关注。关于白皮书5.0中最新提出的顶部嵌入广告标准”落地页首屏顶部允许嵌入不超过一屏面积10%的优质广告”,不少开发者对此提出疑问和反馈,本篇文章将对顶部嵌入优质广告要求做出具体解读:落地页首屏顶部允许嵌入优质广告的总体要求如下:面积:顶部嵌入广告面积必须小于首屏面积的10%。标识:广告位上有明……【查看全文】
-
2011-2012年百度历次大更新数据分析
本篇文章记录了百度从2011年到2012年中旬百度大更新记录的文章。以下数据分析以站长之家官方提供的网站监控分析数据为蓝本,结合优词网等站点观察数据和一些 优秀SEO站长工具和软件的收集,并佐以自己手上二十几个站点作参考进行综合分析,基于统计学分析原理,以大量站……【查看全文】
-
百度快照更新是什么意思?
最近发现有很多刚入SEO行业的新手对网站seo的技巧有很多的误区,比如网站快照不更新就代表网站被惩罚。关于这个观点我们先看看什么是百度快照,百度快照的作用是什么?我们有该如何让百度快照持续更新呢?快照即为Web Cache,可以翻译为网页缓存,当搜索引擎派出蜘蛛去对网站……【查看全文】
-
基于用户投票的六大排名算法研究
随着互联网的发展,网站的数量也在随着成倍的增加着,就中国的互联网来说,根据中国互联网信息中心的数据显示,目前中国的网站数量每半年都会以接近10%的数量增长。这些大量的网站涌现,也就意味着我们已进入了信息大爆炸的时代。 而如今用户担心的已不再是信息太少,而……【查看全文】
-
落地页体验白皮书5.0解读:如何合理设置展开全文功能
本文解读文章深度剖析展开全文功能的设置要求。白皮书5.0提到”展开全文的设置必须具有文字标示,且功能实际可用;展开全文功能最多只能出现一次,但不可出现在落地页的首屏内容中(列表页除外);展开全文与广告等引导性内容要设置一定距离间隔,避免干扰用户操作。”如何设置展开全文按钮才更符合用户的体验习惯呢?这篇文章将为你答疑解惑。百度搜索用户研究团队的用户调研发现,搜索用户进入落地页的诉求是浏览页面全部内容,展开……【查看全文】
-
《百度搜索优质内容指南》全文解读
今日,《百度搜索优质内容指南》在百度搜索学院悄悄地上线了,这是百度近两年,再次重新深度定义什么是百度搜索优质内容,对于SEO人员而言,特别是对于新站长而言,具有非常积极的指导意义,以免造成过多的资源浪费,给予了明确的指导规范的建议。百度搜索2020年全新发布了面向全网内容生产者的《百度搜索优质内容指南》,详细讲述了优质内容的标准,希望给广大内容生产者在生产优质内容时提供参考。关于优质内容的详细标准,请查看以下……【查看全文】
-
揭秘搜索引擎中的反SEO作弊研究
从搜索引擎优化服务开始,分析了现在所存在的搜索引擎优化的作弊手段;然后提出了四种方法用来预防、破解作弊,并结合现实总结提出逐级分层审查刮度;最后结合Google搜索引擎,讨论并分析了Google搜索引擎的反作弊方法及其中的PR值算法……【查看全文】
-
搜索引擎判定相似文章网页的原理
余弦相似性是指通过测量两个向量内积空间的夹角的余弦值来度量它们之间的相似性。0度角的余弦值是1,而其他任何角度的余弦值都不大于1;并且其最小值是 -1。从而两个向量之间的角度的余弦值确定两个向量是否大致指向相同的方向。两个向量有相同的指向时,余弦相似度的值……【查看全文】
-
反向链接是什么意思
反向链接又叫导入链接(Backlinks),外部链接,是指外部网站有你的网址指向你的网站,其实就是在目标文档(网页)内部进行声明,要求目标文档指向自己(网页)的链接,通俗点讲,网页A上有一个链接指向网页B,则网页A上的链接是网页B的反向链接,换言之,常规链接在文……【查看全文】
阅读:2048关键词: 反向链接 日期:2012-08-14 -
SEO链轮是什么?
SEO链轮(SEO Link Wheels)是从国外引入国内的,一种比较新颖的SEO策略,是一种比较先进的网络营销方式。SEO链轮是指通过在互联网上建立大量的独立站点或是在各大门户网站上开设博客,这些独立站点或是博客群通过单向的、有策略、有计划紧密的链接,并都指向要优化的目标……【查看全文】
-
如何分析网站是否真的被降权惩罚及解决方法
对于混迹于国内站长圈的朋友来说,每天起早贪黑发外链的网站被百度惩罚似乎在这几年已经是司空见惯的事了,所以很多时候网站流量、排名或者是收录有小幅度波动时,站长都会认为网站又被惩罚了,有到处的去抱怨。其实,很多情况都只是站长自己太过于敏感了而已,网站被百……【查看全文】
-
百度排名算法规则及SEO优化要点总结
做SEO目的其实就是为访客服务,满足用户的需求,想方设法的为了用户提供他们想要看的内容,而不是一味的最求最大利益化,其实百度只是一个展示的平台,只要你有了用户的青睐,你想达到的目标,自然也就水到渠成了,做SEO的核心就是要挖掘用户的力量,只有挖掘用户的力量……【查看全文】
-
百度最新调整后的算法规则
最近闹得沸沸扬扬的百度6.22和6.28的K站事件到目前已经告一段落了,K站的主要原因已经渐渐明朗,以及百度将会对哪些类型的网站会做降权处理,现在也已经明朗化。针对各大站长漫长的着急等待,以及愤恨的心情,百度目前已经给出了较为明确的答案,那么百度规则和算法调整……【查看全文】
-
404 Not Found错误页面的解决方法和注意事项
404页面就是当用户访问某网站时,点击了错误的链接时,所返回的页面。最常见的出错提示:404 Not Found。其目的就是告诉浏览者其所请求的页面不存在或链接错误,同时引导用户使用网站其他页面而不是关闭窗口离开。错误页面的文字可以自定义,有些网站没有设置404错误页面,或……【查看全文】
-
网站SEO优化的分析诊断报告包含了哪些内容
SEO优化是针对搜索引擎规则做出优化以提高网站排名为目的的优化手段。其所需时间往往是长久性的,包括从网站域名、服务器、程序选取、网站结构、行业分析、竞争分析而切入的优化过程。而SEO诊断,在时间的要求上恰与其截然相反,所求目的完全与优化过程一致:提高网站友……【查看全文】
-
百度索引量下降的原因及解决方法
作为一名专业的SEO人员,我们很多的时候都在研究站点中有多少页面可以作为搜索候选结果,也就是一个网站的索引量,所谓网站索引量,就是搜索引擎抓取你网站的数量,这能影响到网站收录率,是一个非常重要的SEO因素,索引量是流量的基础,索引量数据的每一个变动都拨动着……【查看全文】
-
linux系统或windows+iis系统设置404页面方法
404页面通常是为用户访问了网站上不存在或已删除的页面,服务器返回404错误页面,告诉浏览者其所请求的页面不存在或链接错误,同时引导用户使用网站其他页面而不是关闭窗口离开,消除用户的疑虑。网站设置404页面后,如果网站出现死链接,搜索引擎蜘蛛爬行这类网址……【查看全文】
-
百度移动搜索落地页体验白皮书4.0全文解读
进入移动互联网时代,百度搜索致力于提升搜索用户的浏览体验,营造健康的搜索生态。过去一年中,在百度搜索和全网资源提供者的共同努力下,移动搜索落地页广告问题已经得到了明显的改善。现在,百度搜索发布《百度移动搜索落地页体验白皮书4.0》,旨在继续与各内容生产……【查看全文】
-
网站最新SEO优化公式解析
网站seo优化公式 SEO=Clock=C1+L2+K3+O4 1、是一个积分符号,C=content,L=link,K=keywords,O=others。SEO就是一个长期的对时间积分过程,内容是核心; 2、C1丰富的内容是第一位的要素,按照原创、伪原创、转载依次排列内容的重要性满足用户体验; 3、L2链接的合理与……【查看全文】
-
Google搜索质量小组专业解答的25个SEO问题
2013年对于众多站长和SEO可以说是最为波折的一年,这一年百度出台了百度绿萝算法、百度石榴算法和百度绿萝算法2.0,而google也相继出台了谷歌EMD算法、熊猫算法、企鹅算法2.0和蜂鸟算法。作为一个站长或SEOer,你是否对这些算法还存在很多的疑惑,尤其对于靠做外贸产品……【查看全文】
分类目录
互联网更多>>
- 互联网技术的50年发展回顾与分析 1998年至2008年是公认的互联网飞速发展的十年,无论是传输速率、网络规模、关键技术还是应用领域都经历了大幅的增……
- 基于贝叶斯推断应用原理的过滤垃圾邮件研究 随着电子邮件的应用与普及,垃圾邮件的泛滥也越来越多地受到人们的关注。而目前正确识别垃圾邮件的技术难度非……
- 云服务器的常规安全设置及基本安全策略 我们要保障云服务器数据安全,首先应树立正确的安全意识,从监控、入侵防御、数据备份等多方面做好安全措施,……
SEO优化 更多>>
-
百度对站点Logo属性审核原则的具体要
自百度搜索资源平台后台的站点属性设置开通上…… -
预约未到诊患者的回访技巧及话术整
很多朋友问预约是否有技巧,个人认为技巧是沉…… -
百度公告:关于近期出现网站劫持用
近日,百度搜索技术团队发现,搜索结果中的部…… -
未来的站内SEO优化需要做些什么?
SEO说难不难,说简单也不是那么简单,很多人问…… -
医疗行业该如何做免费营销推广
当前医疗网站越来越多,竞争也越来越激烈,各…… -
外贸企业网站常用的5个优化推广方法
做海外推广不同国内的网站推广,因为在文化、…… -
移动设备前端开发中viewport的理论及使
在移动设备上进行网页的重构或开发,首先得搞…… -
医疗行业开展品牌推广急需解决的1
如今医疗行业要想在互联网上占有一席之地,就……