推荐系统本质与严选实践

达芬奇密码2018-06-14 09:57

1、推荐系统作用本质

有资料称亚马逊的推荐系统带来的GMV占其全站总量的20%-30%。这个数据会让人直觉地认为,电商网站只要一上好的推荐系统,就会带来相当高的GMV提长。甚至有产品会问:我们的推荐系统GMV占全站多少?为什么亚马逊能做到20%而我们做不到?
想像一下,亚马逊把推荐系统的位置全换成游戏广告,每次用户点击收取广告费等同于物品推荐时的单次点击价值。这时会有什么结果?合理的推荐是,如果游戏推荐做得足够精准,这个伪推荐系统的GMV占全站的比例可能越来越高,网站的用户流失率会显著增加,总体营收会趋于下降。
这个假设揭露了一个真像:推荐系统的位置本质上就是广告展现;对于任何一个有流量的站点来说,不断上升或者稳定的忠实用话是其最大价值;广告位的展现最好能够同时不损坏甚至提升用户体验。facebook初上广告时就遇到一个问题:广告的投放影响了用户体验,会损失用户忠诚度,造成用户流失。而对于电商网站来说,为用户推荐物品,是一种能提升用户体验的方向投放,看起来像一种奇妙的巧合。
与搜索类似,推荐的本质就是提升用户体验---为此它们最主要的方式就是帮助用户快速的找到它需要的产商品,其他的方式还包括给用户新颖感等。事实上,亚马逊宣称的20%的GMV,其中很多是“你不向用户推荐他也会购买的东西”,推荐系统在这方面的贡献是为用户提供了便利性点击,节约了用户的精力。如果没有推荐系统或者推荐系统很糟,用户流向竞品网站的可能性就会增大。这时的损害是造成在整体GMV上。至于推荐的GMV能占全站的比率多少才合适,这个问题很难回答。我们只能知道,每个站点的基准值由产品的综合情况决定,它不是一概而论的。
综合起来,推荐系统有如下几个作用:
     (1)提升综合体验
       为用户节省精力,增加漫游机率,提升页面访问量及驻留时间,提升留存率
     (2)提升GMV(由1附带的效果)
     (3)印象提升
       推荐的结果,用户点不点是个非0即1的的事件,但是用户对它们兴趣度是一个介于0到1的连续的数值。兴趣度的提升,能提升用户对网站的信任度,提升留存及LTV。

2、推荐系统工作原理本质

   在推荐领域被证明有效的算法非常多,如各种CF、矩阵分解、基于图的算法、关联规则、各种方式的embedding、融合多种特征的ctr-based方法等。深度学习领域的进展表明,如果有一种最接近上帝的方法,那很可能就是embedding的方法。所谓embedding,数学上的意义就是映射。如word2vec通过语料训练把词变成一个数百维的向量,向量的每一维没有明确的物理意义(或者说我们无法理解)。推荐系统如果可以把人很精确的映射成一个向量,把物品也映射成一个同维度同意义的向量,那么推荐就是可以按规则处理的精确的事情了。
 
                                                                     图1.最佳的推荐形式

事实上,电影推荐的确可以这样做。豆瓣电影推荐是国内推荐系统的先驱之一,它经过多次迭代,最终形成了一种本质上是embedding的方法来实现推荐:用一定的方法把用户用一系列标签描述,将电影也样同样的标签空间描述,据此计算用户与电影的相似度来推荐,得到的推荐效果非常好。

                                                      图2.豆瓣基于标签的电影推荐

3、电商推荐系统的特点

电影是一种文化艺术商品,直接与人的感性感受相关;同时它有比较精深的空间,从数学的角度来说,它具有多个维度的属性,多到可以产生非常丰富的变化,但不至于多到让人脑难以理解。人对电影的兴趣,具有一定的稳定性,不太会发生快速的转变。
在电影的世界里,人与电影都比较容易做embedding。 
与电影推荐不同,电商推荐就复杂得多了。主要有如下几点:
   (1) 商品种类数巨大,不同的商品需要不同的embedding。
    放在电商的世界里,电影就相当于一种商品。如果要做embedding,用户与每一物品都要做一组embedding,不同的物品无法统一。比如,喜欢白色T-shirt的用户,不见   得会喜欢白皮鞋;喜欢咸豆浆的用户,不一定会喜欢咸豆腐脑。而商品的种类可能是以10万记的。即始可以针对每种商品做embedding,也很难将它们统一起来。
   (2) 单种商品深度不够,难以有效embedding。
     描述物品的空间维度一般很浅,除了少数的商品(如女士包等)称得上博大精深,大多数是很简单的。
   (3) 人对商品的兴趣大都建立在短期或者瞬时需求之上。
     大部分情况下,人对商品有兴趣是因为正好需要商品,而非中长期的喜好。很多情况下,买了某种耐用品之后,人对它的兴趣(指购买它的欲望)在很长时间内会降到最    低。想要embbeding这种转瞬即逝的变化,是一件不容易的事情。当然,也有一些商品及一些情况下,用户的确是对商品有中长期的兴趣,比如刚生小孩的父母,很长时间内    会对母婴用品感兴趣。在海量的商品与情景中把这些case都找出来,本身是一件不容易的事情。
   (4) 大量的耐消品
     上面的论述中可能已经包含这部分。这里单独强调一下。电影是一种极佳的快消品,而在商品的世界里,充满了海量的慢消品。慢消品的特点是一旦满足用户兴趣就转移    了。
   (5) 用户理论上对所有商品都会有兴趣
     人在一生中,会在不同的时间对大部分商品产生兴趣。用户对商品的大部分情况是短期兴趣。一般情况下,用户短期的兴趣难以预测,只能根据用户明确指时的对哪些商    品感兴趣;中长期兴趣在某些情况下可以挖掘。
基于以上的原因,在电商领域难以找到完美的embedding方式来实现推荐。其实我们在看各大电商的个性化推荐时,无论背后宣称用怎样复杂的模型融合,从结果看,用户近期行为的权重是非常大的,使得结果非常像itemCF推荐出来的。

                                           图3. 京东首页的猜你喜欢模块-都是与最近浏览相似的物品

                                                 图4.淘宝首页的猜你喜欢模块 -都是与最近浏览相似的物品
 由于以上的原因,现代电商的推荐往往用机器学习的方法来实现。对于推荐来说,算法与模型并不是最主要的,重要的是对需求、业务目标、平台用户、平台数据的理解及与之对应的特征工程。

4、严选推荐实践

   严选推荐的基础模型采用CTR模型,基于LR。

                                                                                         图5.严选推荐模型

 特征工程方面,是将用户的具体属性(性别、收入水平、地域等)、用户在严选的行为属性(短期,长期)、及时间上下文(季节、上次购买时间间隔等)作为属性空间,从1层迪卡尔积开始往上构造N层迪卡尔积形成复杂属性空间P,挖掘属性空间与商品的相关,对有明显相关(正相关或负相关)的(属性,物品)对构造特征。
                                                                           图6.用户属性空间
                                                                              图7.具体属性应用
                                              图8. 行为属性作为抽象属性与具体属性置以相同的地位

                                                             图9. 二阶属性(属性的 2 重迪卡尔积)

从结果来看,这一套特征工程方法可以挖出比较全的特征集,在鲁棒性与效果上都有不错的效果,自上线以来各项指标均在稳步提升。


本文来自网易实践者社区,经作者沈燕授权发布。