一. 问题
我们要为一个电商商户预测其用户购买某个商品的概率,这个商户提供了5个商品,用户可以自由购买其中的商品,其中第5个商品是该商户的重要商品。商户用了很多方法引导其用户购买第5个商品。现在我要预测购买了前4个商品任意组合的用户购买第5个商品的概率。
二. 贝叶斯公式
这个问题是一个典型的贝叶斯问题。贝叶斯是英国数学家,统计学中有一个基本的工具用他的名字命名,叫贝叶斯公式,贝叶斯公式描述了事件A在事件B发生的条件下概率。比如:事件A发生的概率是P(A),事件B发生的概率是P(B),事件A和事件B同时发生的概率是P(AB),事件A在事件B发生的条件下概率是P(A|B)。
P(A|B) = P(B|A)P(A) / P(B)
P(A) P(B) P(B|A) 都可以根据历史数据计算可得。
贝叶斯公式实际上是将要计算的结果转化为利用已知数据得出结论的工具。
三. 建模和求解
我们假设用户购买商品A1的概率是P(A1),购买商品A2的概率是P(A2),购买商品P(A3)的概率就是P(A3),购买商品P(A4)的概率就是P(A4),购买商品P(A5)的概率就是P(A5)
我们按照用户购买组合的情况,分组求解以上模型,我们将分为:
- 购买1个商品用户,购买第5个商品的概率
根据前面讨论的模型,该情况下的贝叶斯算式是:
P(A5| A1) = P(A1|A5) P(A5) / P(A1)
P(A5| A2) = P(A2|A5) P(A5) / P(A2)
P(A5| A3) = P(A3|A5) P(A5) / P(A3)
P(A5| A4) = P(A4|A5) P(A5) / P(A4)
4个算式中的P(A1| A5), P(A2| A5), P(A3| A5), P(A4| A5)都可以通过在已有的历史数据的计算得出,它们分别是:
P(A1) = 36.5%
P(A2) = 14.3%
P(A3) = 13.4%
P(A4) = 7.5%
P(A5) = 1.8%
P(A1| A5) = 2.5%
P(A2| A5) = 1%
P(A3| A5) = 0.7
P(A4| A5) = 0.5%
带入算式:
P(A5| A1) = 0.13%
P(A5| A2) = 0.13%
P(A5| A3) = 0.1%
P(A5| A4) = 0.12%
- 购买2个商品的用户,购买第5个商品的概率
按照贝叶斯公式,
P(A5| A1 A2) = P(A1 A2|A5) P(A5) / P(A1 A2)
P(A5| A1 A3) = P(A1 A3|A5) P(A5) / P(A1 A3)
P(A5| A1 A4) = P(A1 A4|A5)P(A5) / P(A1 A4)
P(A5| A2 A3) = P(A2 A3|A5)P(A5) / P(A2 A3)
P(A5| A2 A4) = P(A2 A4|A5)P(A5) / P(A2 A4)
P(A5| A3 A4) = P(A3 A4|A5)P(A5) / P(A3 A4)
4个算式中所用到的变量都能从历史数据中获得
P(A1 A2) = P(A1)P(A2) = 5.22%
P(A1 A3) = P(A1)P(A3) = 4.88%
P(A1 A4) = P(A1)P(A4) = 2.73%
P(A2 A3) = P(A2)P(A3) = 1.96%
P(A2 A4) = P(A2)P(A4) = 1.10%
P(A3 A4) = P(A3)P(A4) = 1.03%
P(A1 A2|A5) = 0.2%
P(A1 A3|A5) = 0.2%
P(A1 A4|A5) = 0.1%
P(A2 A3|A5) = 0.2%
P(A2 A4|A5) = 0.1%
P(A3 A4|A5) = 0.1%
带入算式,最后得出
P(A5| A1 A2) = P(A1 A2|A5) P(A5) / P(A1 A2) = 0.1%
P(A5| A1 A3) = P(A1 A3|A5) P(A5) / P(A1 A3) = 0.1%
P(A5| A1 A4) = P(A1 A4|A5)P(A5) / P(A1 A4) = 0.1%
P(A5| A2 A3) = P(A2 A3|A5)P(A5) / P(A2 A3) = 0.2%
P(A5| A2 A4) = P(A2 A4|A5)P(A5) / P(A2 A4) = 0.0%
P(A5| A3 A4) = P(A3 A4|A5)P(A5) / P(A3 A4) = 0.2%
- 购买3个商品的用户,购买第5个商品的概率:
P(A5| A1 A2 A3) = P(A1 A2 A3|A5) P(A5) / P(A1 A2 A3)
P(A5| A1 A2 A4) = P(A1 A2 A4|A5) P(A5) / P(A1 A2 A4)
P(A5| A1 A3 A4) = P(A1 A3 A4|A5) P(A5) / P(A1 A3 A4)
P(A5| A2 A3 A4) = P(A2 A4 A4|A5) P(A5) / P(A2 A3 A4)
同购买1个商品的用户和2个商品用户情况类似,计算以上算式,最后结果是:
P(A5| A1 A2 A3) = P(A1 A2 A3|A5) P(A5) / P(A1 A2 A3) = 0.3%
P(A5| A1 A2 A4) = P(A1 A2 A4|A5) P(A5) / P(A1 A2 A4) = 0.4%
P(A5| A1 A3 A4) = P(A1 A3 A4|A5) P(A5) / P(A1 A3 A4) = 0.5%
P(A5| A2 A3 A4) = P(A2 A4 A4|A5) P(A5) / P(A2 A3 A4) = 0.0%
发现当用户购买3个商品的组合时,对购买目前商品的概率提升还是很明显的。但是要避免用户购买A2A3A4的情况
- 购买4个商品的组合,购买第5个商品的概率:
P(A5| A1 A2 A3 A4) = P(A1 A2 A3 A4|A5) P(A5) / P(A1 A2 A3 A4)
同样按照前面的方法计算,得出:
P(A5| A1 A2 A3 A4) = P(A1 A2 A3 A4|A5) P(A5) / P(A1 A2 A3 A4) = 1.6%
四. 结论
- 购买1个商品的情况下,购买哪个商品对最后购买第5个商品的概率影响不大。
- 购买2个商品的情况下,只有A2和A4组合对购买第5个商品的概率有提升,其他组合对目标概率的提升不高。
- 购买3个商品的情况下,普遍能大幅提升购买第5个商品的概率,但是A2A3A4组合除外。
- 购买4个商品的情况下,能大大提高购买第5个商品的概率,该商户应该想办法引导用户购买出第5个商品外的剩余全部的4个商品。
网友评论