回顾·京东购物在微信等场景下的算法应用实践

本文根据京东微信手Q业务部马老师在京东&DataFun Talk算法架构系列活动中所分享的《京东购物在微信等场景下的算法应用实践》编辑整理而成,在未改变原意的基础上稍做修改。

https://v.qq.com/x/page/d0628hr7dy3.html

请在WiFi环境下服用,土豪随意~~

此次分享的是以WQ(微信手Q)购物智能推荐系统介绍智能推荐算法在实际中的应用,介绍的WQ购物从海量服务到简单的个性服务到现在的个性化服务发展历程。他从以下四个部分进行了介绍。

首先讲解了WQ个性化推荐有哪些产品、有哪些业务;第二部分讲如何构建WQ推荐平台,如何支持这些业务需求;第三部分简单介绍了用户画像(用户画像、物料画像);最后讲解WQ大数据平台如何搭建。通过这次讲解让大家对推荐系统搭建流程有个初步了解,使大家能够在3-5天时间里通过这种开源框架搭建一个自己的小型推荐系统。

WQ个性化推荐在微信购物界面体现的方方面面,主要有关键词推荐(新用户主要通过上下文信息推荐,准确度不是很高)、素材推荐(入口图、焦点图、品牌特卖)、商品(卖场、秒杀、拼购等)资讯(趣好货、购物圈)以及其他如猜你喜欢、类目入口(由于手机屏幕大小原因,条目不能全部显示,智能通过用户兴趣选择用户感兴趣的条目)栏目馆区等,具体见下图。

WQ这些海量个性化推荐业务主要由ABC(AI人工智能、BigData大数据、Cloud云服务)技术支持,主要解决用户体验问题,运营效率问题、业务效果问题。如金手指(热搜词 规则 推荐)的下单转化率提升为200%-400%,随着时间略有波动,热搜词采用插件式接入(加载js插件,依据你页面上下文,类目进行热搜词推荐),简单易用;智能卖场由原先运营人员和商家谈判、选品、上线,周期为两人一周构建卖场,通过ABC基于算法、基于不同规则生成不同智能卖场只需一个人员10分钟就能完成,而且程序自动维护,解决效率问题;入口图(素材)这一方面主要解决用户体验问题,使用户达到所见即所想,打造触动内心的极致体验。

除了ABC技术提高推荐转化率,团队发现组织联动在推荐效果也有明显提升,上图是去年8月到11月的推荐效果提升,如果单纯的靠算法优化,效果只能提升30%达到50-60%就是算法极限,但是如果和产品联动效果由30%提升到90%,因此建议在做算法优化是加入产品运营联动。如在穿搭推荐中先前无论如何算法优化,转化率一直很低,最后发现是产品素材质量太差,无法引起用户兴趣。另一方面在智能卖场做数据挖掘、爬虫抓取关联商品,再进行聚类确实能够发现人的行为,但是运营能抓住用户价值点,如果在物料上加入这些价值点,能够明显提升推荐效果。

WQ推荐系统需要知道解决那些问题:

(1)首先业务需求多,原先想的是一个一个业务对接,但是关键词开发需要人员,资讯开发也需要人员,但是开发人员资源有限,开发压力大,无法应对也无需求;

(2)平台多,接入工作流量大,每个都去对接工作量大;

(3)跨公司问题,数据不是完全共享,安全性能要求高,只能系统对接,因此流量红点压力大;

(4)用户体验问题,只能向前不能倒退

(5)效果问题,增长放缓,只能从技术、算法方面来提升;

(6)用户量大,资源有限等。

推荐系统核心是“数据”、“算法”、“系统”,有这三种推荐系统就能运行。具体工作是:首先用户会请求我们的业务系统,之后请求推荐引擎,推荐接入实现业务分流到对应的推荐平台,然后通过推荐算法、模型返回用户所需数据。除此之外还有一个数据的反向上报(行为上报),因为我们的推荐都是基于大数据,如果我们能收集用户的行为越多,对用户的行为就越准,推荐也就越精确。对用户的(点击,搜索,浏览)做DMP(大数据管理平台),让模型训练算法,其响应时间一般是限度控制在300-500毫秒。

WQ推荐系统平台架构如下所示,依据架构依据相关开源软件能够3-5天搭建一个推荐系统。首先业务层,主要是有哪些业务;其次是接入层,我们有第三方接入引擎,还要做分流,都要做A/B text;接入后要做推荐引擎,我们分为三层:为召回策略(添加条件,选择最相关)、打分排序、重排策略;引擎打分需要模型,这一块为计算层。再然后是数据层,这块主要是用户画像和物料画像以及数据分析等;最底层是基础平台,来支持我们做推荐,算法训练,我们的实时用的是Spark,离线用的是Hadoop,用CM做集成,用Sklearn/TensorFlow做离线分析,对于大账号推送用全站数据(京东大数据平台)比WQ效果要好。除此之外比较重要的一个是数据上报,最开始用的是自己研发的用C/C 实现,后来需要与业界对标,采用Flume和Kafka。集群时间是分钟级,但是用户画像是毫秒级,用户画像是基于用户行为而不是数据库。

在平台接入时,需要简单、通用、快速、开放为目标。将业务抽象为物料,统一格式,业务只需要实现物料上报、请求服务、行为上报三步。对于算法选择前期配置就能快速上线,选择快速上线算法是热度和IOR算法。智能接入:由于平台多,通过物料、用户、平台判断哪个平台转化效率高,就将平台流量多分给推荐平台,达到整体最优,对于模型选择各自去训练,然后选择、融合。

接入之后就是推荐引擎,常见的有召回策略、打分策略、重排策略。召回策略如下所示,所谓个性化召回就是画像打上的那些标签,是偏向某个类目还是某个品牌偏好等做召回,关联规则前键召回是根据用户前面的行为来关联后续感兴趣的商品;打分就是和模型结合;重排也有很多算法,例如特征加权就是用户有什么偏好给他提前。重排主要是基于个人,模型是基于群体特征,重排命中也能很好提升效率,EE策略主要改善体验问题,我们发现如果一个人行为很少,进来之后什么都不点,如果模型在5-10分钟未更新,推荐的就是一直是这个,如果特别偏门,群体又比较小,模型就没有影响,个人就需要推荐一些新的东西,EE策略就是以一定概率来显示推荐而不是单纯以排名推荐,我们用的是汤姆森算法。

接下来讲一下模型,我们的推荐模型就是解决GMV(成交)最大化、CTR*CVR最大化、CTR最大化(首页、中间页引流,最容易,点击转化率)核心是“他点的”/“他看的”。这个模型还有一个瞬息系约束,一方面就是EE策略,另一个就是某一类商品在一定时间不能超过多少,保证用户体验。在评价推荐效果方面,如果直接做到下单,其中很多因素不可控,这时考虑CTR*CVR模型,提升转化率,主要考虑物料、用户以及上下文场景。

接下来就是机器学习过程,主要有环境搭建、收集数据、分析数据、准备数据、训练算法、测试算法、应用算法。这个过程很简单,但是我们要解决冷启动问题、假曝光问题(这个主要是产品预加载,在用户还未看数据就显示,这种就是假曝光)异常数据清洗问题(爬虫、刷单)、正负样本问题、数据稀疏问题等问题。在推荐过程中数据是基础中的基础,下面是数据处理中常用的方法。

在算法里面对我们比较受益的是机器学习军规,做C 或前端时有雅虎军规、effective C 这些都有很规则性的东西告诉你怎么做。在机器学中有一个机器学习军规,其实在ML中首要的是工程问题,其次才是算法问题。我们把数据做好了效果也就好了,如果大神能做95分,我们做好了这些也有80分。

而用户体验方面,一个是要准,另一个是要新。新就是EE算法,准就是位置偏见,例如冷启动时你把某一个商品放在前面,那么他的转化率一直高;这种就不能他分值高就一直在前面,这种情况就要看不同商品在此位置时的转化率,这个就是位置偏见。

接下来简单介绍下用户画像,做推荐时你首先要知道用户是谁,如果你只用cookie Mapping的话效果太差,这个我们是和微信合作,我们是拿到open ID的,如果有微信场景可以参考这种方式;其次用户是什么用户,这就是用户画像;再者用户还是那个用户么(可能前一秒和下一秒不是同一个用户)因此要注意更新。画像主要解决身份问题,还有就是WQ数据和自己收集数据以及全站数据,这些数据整个融合而做的一个用户画像。

用户画像的系统架构首先是一个内外部数据的融合,然后是做采集(分析、清洗、格式化然后做一些画像计算)这里用到很多算法,如统计算法等。

大数据平台主要解决实时问题、系统复杂问题、业务支持(支持ML算法等)下面是系统需要的达到的目标

接下来讲一下大数据生态,最开始时是并行计算(最原始的那种命令行并行计算)然后就是Hadoop(MapReduce和HDFS开始也是简单UI)在Hadoop V2就有了HBase之后就是更快的Spark(Hive、Flume、Kafka),下面是整个大数据生态。

最后讲一下大数据采集,对于我们做账务,事务型的数据不能丢,可以慢不能丢,所以可以异地多活(主要是做一个异地防或多级防的备份),这个需要看具体业务需求。

最后推荐几个对我来说做推荐比较有用的书。

技术品牌推广、活动举办等商务合作请联系:

137-1612-3521(手机号)、tianmuqu(微信号)


DataFun社区是一个关注大数据、人工智能技术主题的社区,主要形式以组织线下的技术沙龙活动为主、线上运营为辅。希望将行业内资深从业者拉到大家面前,和大家进行一对一的面对面交流,促进同行间的沟通交流,推动大数据、人工智能技术在不同场景下的交流融合、共同进步。DataFun的愿景是:为广大数据从业者和爱好者打造一个公益免费的分享、交流、学习、成长的平台。

目前我们的活动已经覆盖了北京、深圳、上海等城市,希望大家多多支持,后期持续为大家推出更多干货的线下沙龙活动。

最新活动、更多分享,请关注DataFunTalk公众号:

来源:https://www.icode9.com/content-1-907351.html

(0)

相关推荐

  • 用户画像

    Part 1 什么是用户画像 Part 2 为什么需要用户画像 Part 3 如何构建用户画像 Part 4 用户画像的应用 Part 5 总结 参考资料: 1. 百分点<用户画像的构建与应用& ...

  • “围剿”黑产,揭秘O2O、电商和互联网金融的大数据风控之道

    [数据猿导读] 1月13日,由DataFun.数据猿主办的<算法架构系列活动-大数据风控技术应用>在洪泰创新空间举办,本期活动聚焦大数据风控和反欺诈应用,邀请了O2O.电商和互金公司的相关 ...

  • 今年双十一 腾讯要出手了?

    就在阿里宣布今年双十一计划之后,京东就在这个周末,悄然向媒体发出了一封略显神秘的邀请函,邀请函中只含蓄地透露了"京东+腾讯"的简略信息,双方究竟要做什么,却不愿再过多透露.此举一度 ...

  • App会“偷听”吗?实验结果令人震惊

    进入大数据时代,很多人都有这样的经历,并不是旅游旺季,机票价格却越搜越高 :聊天时随口提到某款商品,一转身就在各大平台上看到相关商品的广告推送 . 在网络时代,我们能很快地找到自己想要的信息,但自己的 ...

  • 让“有钱人”多消费一点到底对吗?

    整整20年前,有一个卖DVD的网站,被用户发现根据cookie里的购物历史.上网记录.操作系统等为消费者差别定价,同一张DVD的最大定价差可达4美元. 被激怒的用户群起义愤填膺地声讨这家网站,以至于最 ...

  • 多目标推荐场景下的深度学习实践

    编辑整理:陈维美 出品平台:DataFunTalk 导读:58 同城作为一个 UV 千万量级的APP,覆盖了租房,招聘,二手房,二手车,本地生活,新房,新车等多个业务.在首页这个复杂的业务推荐场景下, ...

  • Java高并发21-AQS在共享,独占场景下的源码介绍

    一.AQS--锁的底层支持 1.AQS是什么 AQS是AbstractQueuedSychronizer的简称,即抽象同步队列的简称,这是实现同步器的重要组件,是一个抽象类,虽然在实际工作中很烧用到它 ...

  • 多场景下超车实录详解,高速超车语灯光使用解读,新手学会不吃亏

    多场景下超车实录详解,高速超车语灯光使用解读,新手学会不吃亏

  • 小柏家护:医护+家政+养老,多服务场景下的市场化生存之道

    "有时候,可能只有先跳出养老,才能找到机会." AgeClub线上预告丨2021开年论坛:年终复盘,过去一年老年行业创业中经历的难忘时刻,1月22日,文末扫码报名! 撰文丨格格 编 ...

  • 大会场景下,企业要怎样选直播平台呢?

    通过直播,企业可以实现哪些场景呢?现在有不少的营销场场景.培训场景以及会议场景都可以通过直播来实现线上化.那么通过直播来做大会这些场景,选择直播平台时有什么需要注意的吗? 1.直播平台要能够保障稳定的 ...

  • 高并发场景下锁的使用技巧

    来源:张飞洪 https://www.cnblogs.com/jackyfei/p/12142840.html 如何确保一个方法,或者一块代码在高并发情况下,同一时间只能被一个线程执行,单体应用可以使 ...

  • 隐私计算 区块链:一次具体场景下的详细应用

    来源:碳链价值 原文标题:隐私计算+区块链:一次具体场景下的详细应用 在本文中,我们假设了一个非常具体的业务场景,在这个场景中说明应用隐私计算的详细过程,以及区块链在其中扮演的作用. 编者按:本文转自 ...

  • 智能音箱场景下的性能优化

    QCon是由InfoQ主办的综合性技术盛会,今年是Qcon举办的第10个年头,半吊子全栈工匠有幸作为演讲嘉宾分享一个近两年来的实践经验--智能音箱场景下的性能优化,隶属于曾波老师出品的"场景 ...

  • 天猫和京东购物哪个比较正品(全面评测两个平台产品的可信度)

    一年一度电商购物狂欢节又要来了,各大平台海量优惠券铺天盖地限时抢购,是不是快按耐不住呢?面对觊觎已久.千挑万选.精心收藏偷偷放在购物车.好不容易秒到的,还要经过漫长而焦急的等待,几番波折终于收到包裹, ...