电商to C平台是典型的专业的人传递专业的信息给不专业的人的场景,其与toB平台的区别是:toB平台的用户需求较为单一,在一段时间内往往是有明确的采购需求,很少会有发散的需求或者闲逛的需求,而toC平台的用户的需求相对B端没有那么明确和固定,用户的兴趣也在实时变化,在购买自己目标商品的同时也会在逛的过程中产生临时需求,且购物的目标相比toB平台也会更为分散,种类更多。
在to C平台中,一个用户在3天前浏览过化妆品,1小时前浏览过女装,当前正在浏览高跟鞋,如果计算当前用户行为,那么很大概率,商品信息流中会有大量的高跟鞋被密集地推荐出来。此种情况虽然有利于快速聚焦用户的当前需求,但却忽略了用户的其他购物需求,效果并不好,缺少对用户需求的全局认知。
因此,针对这种现象,在推荐列表的返回时,会考虑组合商品集合的返回而不仅是结果序列的返回。也就是针对用户,系统会从候选集合中,选出n个商品组成集合K,同时选中的商品之间需要满足既定的约束(类目打散)来保证推荐体验,推荐列表则是由n个集合K组成的。
举个例子:原先在商品信息流中会推荐50个互不考虑关联的商品,而通过商品集合返回的形式,会返回10个以5个不同品类商品组成的集合,每个集合的品类被打散,所以同品类的商品不会集中密集地在一起进行推荐。从推荐“用户最有可能感兴趣的商品”变成推荐“用户最感兴趣的不同品类的商品”,从而实现兼顾用户的全局需求的目标。
总而言之,我们分别从行为收集、算法计算、召回排序和结果展示四个方面讲了电商场景推荐的不同,当然,这只是通用电商场景层面上的不同而已。电商发展到现在,各种商业模式层出不穷,推荐系统在不同商业模式的实现方式必然各不相同,例如在电商场景中,外卖场景会将LBS、餐品时间等因子参与模型计算中,因此我们还是“具体问题具体分析”。