京东个性化推荐系统持续优化的奥秘(转)

订单贡献率10%,京东个性化推荐系统持续优化的奥秘

作者:周建丁

在信息过剩的互联网时代,个性化推荐技术对于互联网公司运营的重要性自不待言。本文要谈的是京东商城最新的推荐系统。京东已经在新版首页上线了“今日推荐”和“猜你喜欢”两项功能,基于大数据和个性化推荐算法,实现了向不同用户展示不同的内容的效果(俗称“千人千面”),该系统目前在PC端和移动端都已经为京东贡献了10%的订单。

京东推荐系统三部曲

总体而言,京东推荐算法的步骤并不神秘,无非是建立召回模型——召回模型效率分析——排序模型三步。但这并不意味着每一步的具体实现都是简单的事情。刘尚堃对此做了详细的解析。

召回模型

召回模型,即候选集的获取,大体从基于用户历史行为的召回、基于用户偏好的召回、基于地域的召回三个维度来实现。

基于行为的召回,根据用户购买行为推荐相关/相似的商品。大家都知道根据用户的浏览记录推荐相似商品,但京东更进一步地把购买行为视为一个重要的分界线,当用户已购买某个商品,京东会根据商品种类和用途选择推荐相关/相似的商品,而不是没玩没了地重复推荐,比如为Kindle买家推荐Kindle保护套而不是Kindle。当然,对于如肥皂、洗发水之类的日用品,会根据一个购买周期来再次推荐。

基于用户偏好的召回包括了两个重要的元素:用户画像和多屏互通。结合商品品牌、适用人群、价格指数以及用户对商品的点击、购买、关注和收藏等行为,京东对用户进行画像,从而确定可以长期推荐的品类。针对移动时代的购物新习惯,京东还注意到了根据用户ID及MEI等信息融合不同的终端的数据,包括PC端、移动APP、微信和手Q,从而做到更加精准的画像。当然,在最终的内容展示上,会根据终端的差异选择不同的展示结果。

基于地域的召回,把整个地图划分多个网格运用数据统计结果。以北京为例,三里屯地区用户更感兴趣的商品是扑克牌、水等,中低端小学校的数据主要集中在袜子、晾衣架等等。基于地域的召回主要用于在京东用户行为比较时候少的新用户。

召回模型效率分析

具体的技术实现,三类模型当然会包含多个子模型,例如在线相关,在线相似,离线相关,离线相似,近期热销品牌品类等,都加入到模型当中。那么问题来了:对某个具体的用户,到底要使用哪个模型?这就涉及到模型效率分析。评判某个模型效率的高低,主要是看该模型带来的点击率、转发率、GMV等。

刘尚堃给出了一个重要的结论:基于用户实时行为建立的模型,它的效率更高一些,比如说在线相关的产品和在线相似的推荐。为了达到更好的效果,京东采用了多个模型融合的算法,而不是使用单一模型去做。刘尚堃表示,合适的模型组合在一起,总体效率可以达到最高。如果某个模型效率较低,它就会只占据较小的流量,实现总体流量价值最大化。当然,是针对不同的人采用不同的模型组合。

效率提升主要来自最近尝试的两个模型:最近点击和最近关注的商品模型,和加入购物车的商品模型。前者是指将最近浏览过的商品推荐到首页,后者是将放入购物车未购买的商品推荐给用户,实验的结果,转化率的提升分别达到了100%和5%-10%。

排序模型

在模型融合的基础上,京东还进行排序学习,推荐排序的问题转化为分类的问题去实现,即从用户的交互日志中通过模型训练特征权重,再通过L2R排序学习算法来改进,转化率又获得了20%的提升。

刘尚堃透露,京东推荐搜索部也有过包括逻辑回归在内的多种尝试,包括Vowpal Wabbit(VW)、排序学习、PMI等等,但逻辑回归算法只有1%的提升,而排序学习有20%的提升。

每周迭代7个新算法的架构

不管是模型本身优化的需求,抑或因为用户偏好随着时间或条件变化,持续的迭代都是必不可少的,也就是说特征的增加、修改或者不同的组合,这些工作几乎都是常态。事实上,京东平均每周就有7个新的算法实验上线。这需要一个很好的推荐架构来支持算法的高速迭代。基于HBase、Storm、Spark以及MapReduce等,京东搭建了自己的推荐架构,具体如下图所示:

刘尚堃认为,Spark分布式计算框架对大数据的支持好,效率高,同时提供了不断改进的MLlib机器学习库,对协同过滤等常用于推荐系统的机器学习算法支持很好,使用起来很方便。

经验与未来优化

由于个性化首页产品上线还不到一个月,刘尚堃相信,当前推荐位的情况下,还有提升40%-50%的提升空间。

整体来看,京东推荐系统的主要经验如下:

积累更多、更新的数据支持迭代。京东具有庞大的用户量和全品类的商品,能够根据用户浏览、点击、购买、评论数据以及品牌、品类、描述等商品自身的数据的积累,分别做基于用户和基于商品的协同过滤,更精确地进行个性化推荐。为了与时俱进,京东不仅做多屏互通,还正在规划与腾讯合作获取一些关系数据,包括针对微信朋友圈数据挖掘出不同用户的偏好,并将其作用到推荐结果中来。

开源工具的利用。比如实时行为模型的利用、排序算法的实现,都离不开Spark的支持。此外,京东也会基于一些开源算法针对自身业务场景做一些修改,来实现更好的推荐效果。

效率是评判推荐模型的标准。例如逻辑回归,本来被寄予厚望,却效果不佳;本来不屑一顾的最近点击和最近关注模型,反而能实现100%的转化提升。这里补充说明:京东评判模型效率采用了先验和后验结合的方式,先验是用一些排序预测算法去预测模型,得到一个最佳模型组合的方案,配备给每个用户,后验即基于更精细化的模型效率分析,找出能够提升效率的最佳模型。

深度学习是未来推荐的方向。特征的选择仍然是难点。特征选择、特征提取对机器学习而言都是大课题,而机器学习又是模型排序与融合从而持续提升转化率的关键。很自然地,排序特征的丰富是京东未来迭代优化的一个主要方向。

刘尚堃表示,将京东正在研发的DNN深度学习技术应用于排序是未来要做的事情,当然,还有用于线性低维空间模型的逻辑回归,预计提升5%转化率。据我们了解,京东DNN Lab的研究成果已经目前应用于京东智能客服机器人。

文章出处:http://www.csdn.net/article/2015-04-15/2824476

时间: 2024-08-01 10:40:47

京东个性化推荐系统持续优化的奥秘(转)的相关文章

0 深度解析京东个性化推荐系统演进史 (转)

在电商领域,推荐的价值在于挖掘用户潜在购买需求,缩短用户到商品的距离,提升用户的购物体验. 京东推荐的演进史是绚丽多彩的.京东的推荐起步于2012年,当时的推荐产品甚至是基于规则匹配做的.整个推荐产品线组合就像一个个松散的原始部落一样,部落与部落之前没有任何工程.算法的交集. 2013年,国内大数据时代到来,一方面如果做的事情与大数据不沾边,都显得自己水平不够,另外一方面京东业务在这一年开始飞速发展,所以传统的方式已经跟不上业务的发展了,为此推荐团队专门设计了新的推荐系统. 随着业务的快速发展以

京东的个性化推荐系统

1.这里面涉及到较为复杂的用户购物状态的推理和判定,如果不借助人工输入,比如通过产品设计提供用户筛选接口,让用户人工输入限制项,典型的比如过滤器,负反馈,则对目前的机器算法是一个非常大的挑战.而推荐天然就是一个被动信息消费的产品,不适合做很重的意图探索交互,因此,这是目前电商平台上的推荐系统面临的一个较大的挑战. 2. 推荐的优化目标,局部与全局的指标权衡.无论承担了多少的角色定位,电商平台的个性化推荐一个万变不离其宗的任务就是达成成交,毕竟,这是一个交易平台,首要目标是最大化GMV(Gross

11.12模拟考T1(可持续优化)PS:神奇的东西

1.数列操作   (array.pas/c/cpp) [问题描述] 现在有一个数列,最初包含0个数.现在要对数列操作n次,操作有3类. 1) a k,在数列的最后插入一个整数k 2) s 将最近插入的数删除. 3) t k 将数列恢复第k次操作前的状态 下面是一个例子,有12个操作 1 a 5 -> [5] => 5 加入数5 2 a 3 -> [5,3] => 3 加入数3 3 a 7 -> [5,3,7] => 7 加入数7 4 s -> [5,3] =>

敏捷开发下的软件架构设计与持续优化

过往的软件开发, 往往都是由架构师将他对产品的理解,利用 UML 来体现软件的架构设计. 这种方式的问题是:因缺乏使用者与团队成员间的互动参与,使得对外并未能完整的将使用者需求,映射到软件架构中; 而对内所提供的软件架构设计文档, 对实际开发的工作, 指导意义并不大(因为,厚重的架构设计文档,便如老太婆的裹脚布般:又臭又长).更严重的问题是,由于架构设计耗费太长的时间,如此再加上开发.测试的时间,团队往往会太晚才会发现软件架构上的重大缺陷.而由于太晚才发现软件架构上的缺陷,所以,软件架构上若需做

写日志函数和持续优化

首先看下面的函数 <span style="font-size:18px;">void writelog(char* file, char* msg) { FILE*fp=NULL; int nDataLen = strlen(msg); fp=fopen(file,"ab+");//只供读取 if(fp!=NULL) { fwrite(msg, nDataLen, 1, fp); } fclose(fp);//关闭文件 }</span> 这

个性化推荐系统(九)--- 电商商品个性化推荐系统

个性化推荐系统由亚马逊电子商务公司.Netflix电影租赁公司,在线上业务大力使用推荐系统,并大力通过文章.竞赛形式宣传推荐系统.使得个性化推荐系统在电商领域及其受欢迎,并且个性化推荐技术应用到线上个频道,相比于运营配置产品数据,uv.pv.gmv点击转化.订单转化均是大涨个别业务接入个性化推荐系统后数据涨幅高达400%-500%. 个性化技术在线上商品业务上效果明显,也加速个性化推荐技术使用的深度.广度. 商品推荐特征明显,商品本身和文章.新闻存在较大差异,本身存在交易属性. 如果推荐不准确用

持续优化云原生体验,阿里云在Serverless容器与多云上的探索

摘要: 深度解读阿里云的Serverless Kubernetes, 介绍对Open Service Broker API标准的支持. 近日,阿里云宣布推出Serverless Kubernetes服务此举意在降低容器技术的使用门槛.简化容器平台运维.并同时发布阿里云服务对Open Service Broker API标准支持,通过一致.简单.可扩展的接口,将各种类型开发服务便捷统一化地交付到Cloud Foundry.Kubernetes等云原生应用平台:轻松实现多云环境下应用开发,让用户更多

发票二维码扫描增强_06_持续优化

整个功能完成后,对扫描速度进行了测试,在I7 6700的CPU机器上,一个图片扫描的时间大概在5-7秒之间: "E:\python workspace\qrcode-complement\venv\Scripts\python.exe" "E:/python workspace/qrcode-complement/main.py" 对二维码部分进行切片处理:0.25531697273254395 对图片进行预处理:0.013962984085083008 对图片基于

Paper Reading:个性化推荐系统的研究进展

论文:个性化推荐系统的研究进展 发表时间:2009 发表作者:刘建国,周涛,汪秉宏 论文链接:论文链接 本文发表在2009,对经典个性化推荐算法做了基本的介绍,是非常好的一篇中文推荐系统方面的文章. 个性化推荐系统通过建立用户与信息产品之间的二元关系 , 利用已有的选择过程或相似性关系挖掘每个用户潜在感兴趣的对象 , 进而进行个性化推荐, 其 本质就是信息过滤. 事实上, 它是目前解决信息过载问题最有效的工具 .文中根据推荐算法的不同, 分别介绍了协同过滤系统, 基于内容的推荐系统 , 混合推荐