高阶媒体归因:沙普利值vs马尔科夫链

沙普利值 VS 马尔科夫链

沙普利值 VS 马尔科夫链

归因模型不单可以帮助我们分配媒体之间的贡献功劳,也可以在单一渠道如搜索营销中分配各个推广计划的贡献功劳。我们在过去的文章中介绍过归因模型,也曾经说过因为它们各有各的缺点,没有一种模型是完美的。那么有没有一种相对于其他的简单的归因模型,更加可靠的模型呢?答案是肯定的。这就是我们今天要讲的沙普利值(Shapley Value)方法和马尔科夫链(Markov Chain)的方法。这两种方法并未提供具体的模型而提供了博弈中计算归因的方法。由于笔者也是现学现卖,如有错误请包涵并指正。

沙普利值对媒体进行归因

劳埃德·沙普利(诺贝尔经济学奖2012)

劳埃德·沙普利(诺贝尔经济学奖2012)

沙普利值是谷歌的各种产品中普遍使用的方法,它有另一个好听的名字Data-Driven Attribution(DDA)模型。你可以在付费版的Google Analytics,Google Attribution,DoubleClick,和AdWords中使用。沙普利值的计算相当复杂,特别是当参与归因的渠道增多时将几何级增长。知乎上已经有各路神仙做了解释,推荐先看明白算法。为了行文方便我们只做一个简单的三渠道举例。

假设我们有搜索引擎推广,记为P;SEO,记为O;社交媒体,记为S。我们开始进行媒体投放后一共获得了8个点击,并取得了2个转化,记为C。未转化的记为N。具体的结果如下:

  • S>P>O>C
  • S>P>C
  • O>N
  • P>S>N

接下来你可以忘记我们刚才的试验了,现在我们把这个结果看成一个整体,一个黑盒子。这点非常关键,道理我们最后讲。

如果你爱钻牛角尖,请把这三个渠道想象成三个开关。这三个开关控制开灯,我们接下来看当各种开关情况下所亮的灯的个数。

如果我们只投放P,那么转化为0,等号左边是打开了哪些开关,顺序无关,等号右边是亮了多少灯,记为P=0;同样S=0;O=0。如果我们仅投放P和O,那么转化为0,记为PO=0;仅投放P和S,转化为1,记为PS=1;仅投放OS,转化为0,记为OS=0。

三者都投放时,记为POS=2。稍作整理下,我们有下面的输入条件:

  • P=O=S=0
  • PO=0
  • PS=1
  • OS=0
  • POS=2

由算法我们可以得到下面的结果:

加入顺序\转化增益POS
POS002
PSO011
OSP200
OPS002
SOP200
SPO110
平均值5/62/65/6

由此我们可以算出P、O、S三者是如何“瓜分”这两个转化的功劳的。我们对比实验数据可以粗略看出由于O仅参加了一次转化所以分到的功劳最少。P和S一样多,它们都参加了两次转化。

好了我们先把这个例子放一边,说下马尔科夫链。

马尔科夫链对媒体归因

数学家-安德雷·马尔科夫

数学家-安德雷·马尔科夫

战斗民族的数学家安德雷·马尔科夫对决策的贡献普遍应用到了归因上。相对于沙普利值,马尔科夫链更讲究“先来后到”。仍然是上面这个例子,我们添加起始点B后有如下情况:

  • B>S>P>O>C
  • B>S>P>C
  • B>O>N
  • B>P>S>N

接下来我们拆成对子:

路径个数
B>S2
B>O1
B>P1
S>N1
S>P2
P>S1
P>O1
P>C1
O>N1
O>C1

根据每个节点到其他节点的概率我们可以画下面这张决策树。

全路径概率图

全路径概率图

我们可以算出这个决策树中C的概率。由于这里有个无限循环PS,因此我们可以用无限等比数列求和公式,貌似是高中水平,Sum=a/(1-q),此处a为9/8即1/4 * 1/3 * 1/2 + 1/4 * 1/3 + 1。q为2/3 * 1/3 = 2/9。这样Sum就为81/56。还要加上BOC的1/8并减去多加的1,最后得到4/7的概率。

看出来C的各种路径是无限循环的吗?

看出来C的各种路径是无限循环的吗?

要想得到每个渠道的重要性,我们只要衡量失去它们我们的损失即可。

去除P后只能走O了

去除P后只能走O了

如果P不存在,那么S也废了。转化只能通过BOC进行,转化数降低到了1/4 * 1/2 = 1/8。如果P走不通会降低1 – (1/8) / (4/7) 即 25/32的转化。

去除O之后还是会有无限循环

去除O之后还是会有无限循环

如果O不存在,那将只剩下前面等比数列图的下面两块。a = 13/12,即1/4 * 1/3 + 1。q仍旧为2/9。Sum = 39/28,减去多加的1为11/28。如果O走不通会降低1 – (11/28) / (4/7)即5/16的转化。

去除S之后的转化概率可轻松计算

去除S之后的转化概率可轻松计算

如果S不存在,那么我们把S画作N,这样一来总的转化数降低到了1/4 * 1/3 + 1/4 * 1/3 * 1/2 + 1/4 * 1/2 = 1/4。我们可以这样算出,如果S走不通了会降低1 – (1/4) / (4/7) 即9/16的转化。

我们综上汇总一下,POS的功劳比依次为25/32,5/16,9/16即,25:10:18。发现了吗?P和S不一样了!

沙普利值和马尔科夫链归因结果对比

首先这两个方法相比基础的模型如First Touch,Last Touch,Linear等有着优势,它们考虑到了更多渠道间的互动。正因为如此,这两者并非将每条转化路径归因后求和,而是理清关系后求整体中的每个渠道的影响力。

不管是沙普利还是马尔科夫,积极地参与转化会是提高本身影响力的最佳方法。对于展示媒体这样的Prospecting属性的媒体,铺得更开会比投放更密集来得有效。毛评点GRP = F × A,当GRP固定的情况下,提高覆盖率A,降低播放强度/频率F将会是您提高功劳的技术途径。

其次,相比沙普利值,马尔科夫链的接触点先后顺序更被突出,而且这种顺序表现在紧邻的两个接触点移动的概率。这里说的紧邻的含义是马尔可夫链就是这样一个任性的过程,它将来的状态分布只取决于现在,跟过去无关。

在这个例子中沙普利值得到的P:O:S结果为25:10:25,而马尔科夫链得到的结果为25:10:18。S的贡献更小了。因为S虽然能拿到50%的起始接触,但是其转化依赖于渠道P,所以从马尔科夫链的结果来看P比S更重要。

最后,无论是沙普利值和马尔科夫链哪种方法得到的归因结果都只能代表过去,要应用于未来的预算分配和媒体采购的话,我们还需要进行测试比较变化。从计算成本的角度上讲,沙普利值的计算只要参加的渠道总数不是很多计算还不会太复杂。因此谷歌采用沙普利值也容易理解,而且每天只更新一次。马尔科夫链的计算要复杂很多,现在通常的做法是用超过一百万条随机路径来模拟每一个参加渠道的影响,而不是像我们例子中精确计算,计算成本要大许多。

希望上面的例子可以给你一个直观的认识。篇幅有限,如果有疑问,请通过极诣的公众号留言提问。谢谢阅读。

(鸣谢小伙伴Michael Zhang,Misaki Zhou对本文的概念构思进行的指点。)