复盘一个2年前我在美团做过的策略,通用性比较强

专业成就职业

大家好,我是策略产品经理夏唬人。

召回是策略产品当中常见的一个模块,尤其是搜索推荐的场景下,召回决定了给用户展示哪些东西。

今天给大家讲一个常见的召回策略:频繁二项集。

一个故事

大家肯定都听过啤酒尿布的故事:

在美国有婴儿的家庭中,一般是母亲在家中照看婴儿,年轻的父亲前去超市购买尿布。父亲在购买尿布的同时,往往会顺便为自己购买啤酒,这样就会出现啤酒与尿布这两件看上去不相干的商品经常会出现在同一个购物篮的现象。

如果这个年轻的父亲在卖场只能买到两件商品之一,则他很有可能会放弃购物而到另一家商店,直到可以一次同时买到啤酒与尿布为止。

超市发现了这一独特的现象,开始在卖场尝试将啤酒与尿布摆放在相同的区域,让年轻的父亲可以同时找到这两件商品,并很快地完成购物。

这个故事带给我们什么样的启发?

其实对于推荐策略产品来讲,它的本质目标是在做什么事情?

个性化推荐系统的目标就是在做高效的流量分发,实质是人货匹配。

啤酒、尿布因为经常被用户同时购买,所以如果把他们放在同一区域,让客户能够快速找到目标商品,这样也就提升了客户的购买效率。

那么,这个故事的思路后续被应用到推荐系统中,就是我们今天要讲的“频繁二相集”。

我在美团做的

下面复盘一下我在美团的时候做的一个频繁二项集的方案的具体落地过程,大家看完之后就知道怎么应用到你的业务上了。

首先,需要抽取近三个月的订单数据,这里的时间窗可以自定义,根据你的平台用户下单的频次,建议订单量不要太少。

接下来按照如下的过程进行操作:

1 将近三个月的订单中同时涉及到的商品按照两两分组,形成一个pair

数据源

类型

pair

订单数据

商品(物品id)

100023(鱼香肉丝盖饭)-327445(胡萝卜)

232423(青椒)-121322(瘦肉)

三级类目(类目id)

0324(咳嗽)-3452(消炎药)

0212(渔具)-2341(鱼食)

2 对每个pair的频数(出现次数)进行统计

数据源

类型

pair

频次

订单数据

商品(物品id)

100023(鱼香肉丝盖饭)-327445(胡萝卜)

300000

232423(青椒)-121322(瘦肉)

23743743

三级类目(类目id)

0324(咳嗽)-3452(消炎药)

435235

0212(渔具)-2341(鱼食)

73822

3 根据频数计算每个pair的支持度和置信度

如下就是每一个pair支持度和置信度的计算方式:

复盘一个2年前我在美团做过的策略,通用性比较强

支持度表示所有订单量中同时包含两种类型的概率,这个值越高说明对于这个pair同时出现的说服力越高,这个其实就是个支持度的概念;比如所有用户的订单中,同时购买了青椒和瘦肉的有越多代表用户越倾向于两者同时购买;

可信度表示的是用户同时购买的概率是多大,概率越高说明用户同时购买的可能性越大。

4 人工设置一个支持度与置信度阈值,过滤不达标的pair

接下来大家需要设置两个值:支持度和置信度的阈值,也就是分别超过对应阈值的我们才认为是一个合格的pair,才能用于给用户推荐。

所以通过上面的流程,其实大家能够发现,所谓的频繁二相集其实就是根据用户购买的行为记录,对于用户经常一起购买的两个物品是可以进行相互推荐的。比如:如果用户购买了999感冒灵,那么可以推荐一个阿莫西林胶囊。

以上,就是我曾经在美团的一次具体的策略实践,希望你能有所启发。

本文由运营大叔发布,不代表运营大叔立场,转载联系作者并注明出处:http://www.yunyingdashu.com/yunying/46712.html

联系我们

18205969981

在线咨询:点击这里给我发消息

邮件:jay@opp2.com

工作时间:周一至周五,9:30-18:30,节假日休息

QR code