← 返回 QuantGrowth 首页

马尔可夫链归因(上篇):原理、边界与落地

增长
增长

摘要|本文结论
马尔可夫链把用户旅程表示为状态之间的概率转移。它能把触点顺序和渠道承接关系纳入贡献计算,但结果仍受状态定义、窗口期、样本和可观测范围约束,不能直接视为因果增量。

一、马尔可夫链是什么

马尔可夫链是一种描述系统如何在不同状态之间随机转移的概率模型。

它通常包含三个要素:

  • 状态:系统当前处于什么位置,例如晴天、雨天,或信息流、应用商店;
  • 转移概率:系统从一个状态进入另一个状态的可能性;
  • 时间步:每经过一步,系统可能发生一次状态变化。

一阶马尔可夫链的核心假设是:已知当前状态后,下一状态的概率不再额外依赖更早历史。写成公式是:

P(X_{t+1}=j\mid X_t=i,X_{t-1},\ldots,X_0) =P(X_{t+1}=j\mid X_t=i)

这并不是说过去毫无影响,而是假设过去的信息已经由“当前状态”概括。状态定义得是否充分,会直接影响模型是否合理。
截屏2026-08-14 15.53.32

在归因中的应用场景

马尔可夫链归因主要用于多触点路径:用户先后接触多个渠道,团队不仅想知道最后一次点击来自哪里,还想识别每个渠道在完整路径中的作用。

归因场景 典型问题 模型提供的信息
长决策链路 搜索、内容、广告、应用商店都参与转化,功劳怎么分? 各渠道的相对贡献
承接渠道识别 哪个渠道不是主要入口,却承接了其他渠道带来的用户? 渠道之间的转移和连接作用
助攻渠道识别 哪些触点很少完成末次转化,却经常出现在有效路径中? 首触、中间触点和末触的路径作用
路径顺序分析 A→BB→A 是否代表不同转化过程? 触点顺序及方向关系
渠道移除评估 从当前路径网络中拿掉一个渠道,模型转化率下降多少? 移除效应与贡献排序
人群或产品对比 新老用户、不同产品的转化路径是否不同? 分群后的转移概率和渠道贡献差异

它特别适合发现“入口不大但不可替代”的渠道。例如应用商店可能不是首触来源,却承接多个广告渠道的安装;末次点击会把功劳全部给它,首次点击又可能完全忽略它,马尔可夫链则能从整个路径网络评估其作用。

模型可以辅助渠道诊断和预算讨论,但“移除效应”不等于真实停投后的增量损失。涉及预算大幅调整时,仍应结合实验或准实验验证。

The future is independent of the past given the present ----Андреевич Марков

未来无关过去,全凭当下决定!----俄罗斯数学家 安德烈.马尔可夫

二、广告归因中的“状态”

放到广告归因中,可以把每个渠道看成一个状态:

  • 开始:用户尚未进入已观测的广告路径;
  • 渠道 A:信息流;
  • 渠道 B:应用商店;
  • 渠道 C:社交裂变;
  • 转化:用户完成目标行为;
  • 流失:用户没有转化,或离开可观测路径。

用户每向前走一步,就发生一次状态转移。大量用户路径汇总后,我们可以估计“从 A 到 B”“从 C 到转化”等转移概率。

一阶还是高阶?

一阶模型只看当前渠道;二阶模型会区分“从 A 来到 B”和“从 C 来到 B”,因为两类用户离开 B 后的行为可能不同。更高阶模型保留更多路径记忆,但状态数量和数据需求会快速增长。

模型 状态示例 优点 代价
一阶 B 简单、稳定、易解释 忽略更早路径
二阶 A→B、C→B 能识别相同渠道在不同前序下的差异 状态更多、样本更稀疏
更高阶 A→C→B 保留更长记忆 容易过拟合,计算和解释成本更高

Anderl 等人的图模型研究同时讨论了一阶和高阶马尔可夫图,并将移除效应扩展到渠道及渠道序列。实践中不应默认“阶数越高越好”,而应使用留出数据比较预测稳定性,再决定是否增加路径记忆。

三、用模拟考试看懂转移矩阵

在进入广告归因之前,子恢用“高考前每月参加一次模拟考试”的例子解释马尔可夫链。
截屏2026-08-14 15.19.51 1
假设一个人的考试结果只有三种状态:优秀、中等、较差。这个月处于哪个状态,会影响下个月进入三种状态的概率。

这张表应该按“行”来读。例如:

  • 本月优秀,下月仍然优秀的概率是 0.6;
  • 本月优秀,下月变成中等或较差的概率各是 0.2;
  • 本月较差,下月变成中等的概率是 0.5。

每一行的概率之和都等于 1。把表格写成矩阵,就是转移概率矩阵 ​P

P= \begin{bmatrix} 0.6 & 0.2 & 0.2\\ 0.4 & 0.3 & 0.3\\ 0.2 & 0.5 & 0.3 \end{bmatrix}

已知 1 月份处于优秀、中等、较差三种状态的概率分别为 0.1、0.5、0.4,可以写成状态分布向量:

S_1=[0.1,\ 0.5,\ 0.4]

要求 2 月份的状态分布,只需要让当前状态分布乘以转移矩阵:

S_2=S_1P

分别计算三种状态:

P(2月优秀)=0.1\times0.6+0.5\times0.4+0.4\times0.2=0.34
P(2月中等)=0.1\times0.2+0.5\times0.3+0.4\times0.5=0.37
P(2月较差)=0.1\times0.2+0.5\times0.3+0.4\times0.3=0.29

因此:

S_2=[0.34,\ 0.37,\ 0.29]

三个结果相加仍然等于 1。它表示:按照这套状态转移规律,到了 2 月份,出现优秀、中等、较差的概率分别为 34%、37%、29%。

这个例子真正要说明的是:已知当前各状态的分布,以及状态之间如何转移,就能计算下一时刻的状态分布。

迁移到广告归因中:

模拟考试 广告归因
优秀、中等、较差 信息流、应用商店、社交裂变等渠道
本月到下月 用户从当前触点到下一个触点
考试状态转移概率 渠道之间的转移概率
下一月状态分布 后续进入各渠道、转化或流失的概率

区别在于,广告归因除了渠道状态,还会加入“开始”“转化”和“流失”状态。我们不只关心下一步去了哪里,还关心每条路径最终有多大概率到达转化。

四、三个容易混淆的概念

移除效应不是最终占比

每个渠道的移除效应都是相对完整网络计算的,彼此相加通常不等于 1。要得到总和为 100% 的贡献占比,还需统一归一化。

高贡献不等于高首触量

渠道可能不是主要入口,却是多条路径共同依赖的承接节点。马尔可夫链衡量的是渠道在整个路径网络中的结构作用。

归因贡献不等于因果增量

模型中的“移除”只是重算已观测路径图,不是真实停投实验。真实关掉一个渠道后,用户可能转向其他入口。因此,马尔可夫链适合解释路径结构;预算的因果增量仍需实验或准实验验证。Google Research 也指出,数字归因常见问题是尚未明确测量目标和决策需求,就直接选择算法。

五、哪些归因场景不适合马尔科夫链归因

  • 大量线下触点或跨设备行为不可观测;
  • 路径非常稀疏,组合数量远大于样本量;
  • 渠道策略频繁变化,历史转移概率无法代表当前情况;
  • 绝大多数用户只有一个有效触点,不需要复杂路径模型;
  • 团队真正要回答的是预算因果增量,而不是观察路径中的相对贡献。

六、上线前的五项检查

决定 需要回答的问题 常见风险
状态粒度 按媒体、广告位还是活动建状态? 过粗丢信息,过细导致稀疏
模型阶数 只看当前渠道,还是保留前序? 高阶模型样本不足、过拟合
转化窗口 收集多长时间内的触点? 过短漏路径,过长混入弱相关触点
重复触点 A→A→B 保留还是合并? 不同规则改变转移概率
验证与更新 留出期表现是否稳定,多久重训? 历史路径无法代表当前策略

最低限度的验证应包括:在留出时间段比较模型预测转化率与实际转化率;改变状态粒度、窗口和阶数做敏感性分析;观察渠道排序是否跨周期稳定。若模型结果直接用于预算,还应配合增量实验,而不是只看归因占比。

结语

马尔可夫链把“优、中、差”的状态转移换成渠道路径,并增加开始、转化和流失状态。模型是否有用,取决于状态、阶数、窗口和验证方式,而不只是矩阵是否算对。下篇用一个三渠道案例完整演算。

参考资料