又是一年618,大家控制不住买买买的同时,会不会有这样一种感觉:好像有一股神奇的力量牵引着自己,一旦把商品加入了购物车,再也停不下来。
看直播带货也是如此,听到主播在耳边大喊着:买一件再送一件,买两件再送三件,手一抖就下单了。
这背后到底是我们自制力不够,还是电商平台太会读懂人心,我们不妨从技术维度,抽丝剥茧一探究竟。
图数据库:建立实体间关系,洞察你的喜好
菊厂小王是个新手爸爸,准备在618好好表现一下,给宝宝买点奶粉奶瓶。小王打开某电商APP,把奶粉加入购物车,随手往下一滑,看到这个小玩具不错,那套衣服也很酷……一顿操作猛如虎,小王越买越兴奋,最后买的东西超出他计划的3倍。
是的,在大促期间,小王无意中陷入了电商系统的推荐大网中。APP首页,购物车页,商品详情页……推荐系统无处不在,电商APP的后台早根据所掌握的小王的用户画像(性别、年龄、购物记录、搜索记录等)给他准备了一系列商品。
在电商领域,推荐系统作用强大,它使用户花费更多的时间来浏览商品,达到提高客单价的目的,背后所应用的正是图数据库技术。
初次接触图数据库的人,很容易被它字面上的意思所误导,以为这是一个存储图像的数据库,实则不然。就像雷锋和雷峰塔是完全不一样的两种概念,图数据库指的是以图结构存储数据的在线数据库管理系统。
举个例子,菊厂小王和小李是同事,都喜欢打乒乓球。这里的小王、小李分别是一个实体,代表一个点,小王和小李的关系——同事,就是连接两个点的边,这就是一个简单的图结构。
通过图结构,我们可以对各种有关联的场景进行建模,小到社交网络、电商平台的推荐系统,大到整个城市的交通运输系统。
比如,电商平台会根据小王的特点(程序员、奶爸、爱打乒乓球等等)给他打标签,用标签判断用户属性:小王平常爱逛A品牌的数码产品的,并习惯买B品牌的婴儿用品。但同样经常去看A品牌手机资讯的小李,就不会购买B品牌的产品,借助图结构就可以将这种关联给找出来,实现精准营销。
如果想让图结构找到这种关系,就得依赖图计算的查询分析、计算、存储管理、可视化等。比如图数据库Neo4j就擅长图数据的实时查询;图引擎则重于在海量图数据中利用成熟的图算法进行离线分析和挖掘。
华为云的图引擎服务(GES)就是为以关系为基础的图结构数据,提供查询、分析服务。以华为商城为例,借助GES可以实现商品的实时推荐,它分析对比目标用户和其他用户的喜好,找到相似点后,把这些其他用户购买过的商品推荐给目标用户。
GES之所以能做到实时大量的推荐,“功臣”之一就是EYWA,它提供了从底层图存储和管理、核心的高性能计算引擎,到面向上层的图分析、图查询的一整套解决方案。
具体在技术上,EYWA做了这些优化:
- 分布式优化Parallel Sliding Window(PSW)的图计算框架,高效加载图数据,以满足业务大规模的计算需要;
- 兼顾图计算与点查询效率,开发基于边集流(edge-set)的块状数据组织以合理组织数据;
- 通过边集合的prefetch策略来隐藏磁盘的IO操作以及松弛的BSP模型来隐藏通信IO,从而提升性能;
另一大“功臣”是GES所拥有的图场景和图优化算法, 以其中的Pixie算法为例,Pixie是华为云尝试将多元数据构建到同一张图,并在这个异构图上配置相应的schema、点边属性、权重而设计的算法。它是一种全新的实时推荐算法,克服了异构图的数据获取和融合问题,支持多请求节点下综合推荐,能满足各种复合型、时变、多样性推荐场景需求。
所以GES图引擎服务提供的实时推荐算法,在多重关系(用户与商品的历史交互信息,人与人、商品与商品等背后潜在关系)共同作用下进行推荐,精度更高;大数据量下,依然能够达到较好的实时推荐效果,可扩展性强,具体数据可以参考这篇文章:《华为云新一代黑科技核心算法揭秘》。
知识图谱:米其林大厨“加工”数据原料,智能推荐快,准,狠
如果说图数据库强调对“数据原料”的存储、查询和管理,那么知识图谱就是米其林餐厅的大厨,进一步加工数据。基于图引擎服务的知识图谱,融合各种异构异质数据,形成大规模的知识库支撑业务应用,让搜索结果更准确。
基于图数据库,知识图谱扩展了各种商品的关联属性(商品的各种维度、这些维度属性的喜好度、商品的社会化评价等),由于扩展了用户与商品之间存在的隐藏关联关系,补充了用户与物品的交互数据,基于人-人关联,实现人-物关联。因此可以更进一步提升推荐效果。
比如拥有同种属性的用户可能会对同一类物品感兴趣,当爱打乒乓球的小王在电商APP上购买了品牌A的速干衣,那么同样喜欢乒乓球的同事小李打开APP时,排在前面的可能就是小王刚买的那家店。你看,这样基于熟人属性的推荐系统,已通过知识图谱悄然地自动上演。
知识图谱的构建一方面提高了电商平台的个性化推荐的准确度,它还能应用于智能客服,帮助建立知识系统卡片,实现智能问答。
例如,当你在某电商企业的客服对话框内输入:“显示器”,知识卡片会列出产品介绍、特点(屏幕尺寸、像素等)、款式分类、适宜人群、适宜场合、制作工艺等。
华为商城在线客服也是一种典型的应用,它能够处理消费者在售前及售后中的各类问题咨询,及时回复你需要的商品促销信息。
而且基于产品构建的知识图谱,它比普通的FAQ系统更加精准地完成问答,实现产品对比、产品常见问题支持、属性查询等能力。
那么,知识图谱是如何解放人力,让智能客服如此优秀呢?
业界主流的知识图谱构建方式是基于企业内部数据、公开数据,图谱服务商以解决方案形式帮助客户定制构建知识图谱。这种方式成本高且效率低,制作周期长,一个电商企业做完某个产品的知识图谱,主打产品可能就过时卖不动了。
为了提供流水线式图谱构建能力,华为云知识图谱云服务将图谱构建抽象为:本体构建、数据源配置、信息抽取、知识映射以及知识融合。
因为将每一个流程模块抽象成插件形式,并通过组合配置生成图谱构建任务,所以只需要修改插件配置即可完成不同领域的企业知识图谱的构建。同时,基于流水线设计,知识图谱云服务可以在只修改数据源的前提下完成更新操作,非常适用于需要频繁更新的知识图谱。至于它是如何构建本体、配置数据源、完成信息抽取和知识融合,本文篇幅有限,具体可以参考《前沿技术探秘:知识图谱构建流程及方法》。
综上,从图数据库到知识图谱再到智能客服,每一年的618,电商平台为你推荐的产品服务是越来越合胃口,智能客服也可以在仅仅两三句对话之后秒懂你,这也是消费者深陷购物狂欢节的原因吧。
618技术特辑(二)几百万人同时下单的秒杀,为什么越来越容易抢到了?
当消费者被电商的推荐系统虏获后,他们又是如何保证大促期间,你能随时随地买到自己心仪的商品,以及上亿的交易数据是如何有序地流通,保证你既能抢到,也能及时收到货呢?这篇文章为你一一解密。