你好,这里是巡山猫编辑部,我是巡山猫。
之前,我们讲了产品分析基础:
「原理」如何优化产品路径,提高用户留存?
「原理」产品新功能分析-实操篇
「原理」如何分析产品新功能的效果?
「原理」产品路径分析-实操篇
接下来,我们来讲讲,如何运用一些数学上的原理来分析产品链路。
马尔可夫链初探
马尔可夫链,通俗来说,和独立随机事件(比如投硬币猜正反面,每次事件都是独立的,可能正面可能反面,且每一次投硬币的结果都不可能受上一次结果的影响)的区别是,当前的状态,可以影响下一个状态。
也就是说,下一个状态,是由当前状态所影响的。未来的状态,会依赖于过去的过程。所以我们可以在某种程度上,可以通过过去发生的情况预测未来。
但是这里有几个假设:
1、过去对未来的影响,他的概率随着时间而不断变化
2、假设这个变量的状态,只能取有限个值,也就是状态属于随机性,而不是不确定性(随机性是指 知道事件出现的所有结果,只是不知道下次会出现哪种结果,比如上面说道的 投硬币猜正反面;不确定性是指 完全不知道事件可能出现的结果,比如明天出门会发生什么)
这两点映射到产品上,通俗的解释是:
1、用户明天是否继续使用我们的APP,和用户在之前使用APP的状态强相关,且会随着使用频次的增加/减少,而不断的变化(使用频次高了,用户留存率也会变高,使用频次低了,用户留存率也会变低)
2、用户明天是否继续使用我们的APP,只会有两种状态:使用&不使用,不会出现这两种状态以外的不可知状态
这里就是我们需要了解的马尔可夫链的通俗的知识点。
以下的内容,节选至《概率导论》这本书,偏数学推导(也有通俗的解释),如果不想看,可以等下一篇的马尔科夫链实操案例讲解。
马尔可夫链里的知识点
我们来定义下马尔可夫链在数学上的表达。
我们考虑离散时间的马尔可夫链,其中状态在确定的离散时间点上发生变化,由于时间已经离散化,我们通常用 n 来表示时刻。
那么,在任意时刻n上,我们可以用 Xn 来表示这个链里的状态。根据上文的前提假设,所有状态可以组成有限的集合 S 。我们用 S = { 1 , ... , m } 表示这个状态空间,其中 m 是某个正整数。
那么,马尔可夫链的转移概率 Pij 描述的是:当前状态是 i,下一个状态是 j 的概率。马尔可夫链的核心思想,就是只要当前时刻的状态为 i,不论过去发生了什么,也不论下一个状态是如何达到的,下一个状态为 j 的概率,就一定是转移概率Pij。
通俗来说,就是下一个状态的概率,只依赖于前一个状态。即 用户明天是否再次使用我们的APP,只依赖于今天我们是否使用APP这个状态,而今天是否使用APP的状态,只依赖于之前他是否使用APP的状态。
这里有个很重要的性质:Pij一定是非负的,且其和为1,即:
备注:通常情况下,Pii 可以取正值,这样下一个状态可能和当前状态一样,就算状态不发生变化,我们也认为状态发生了一次特殊的转移(自身转移)(这里只是做一个说明,不用特别关注这个特性)
那么,马尔可夫链可以由 转移概率的矩阵 来刻画。是一个简单的二元矩阵,第 i 行第 j 列的元素即为 Pij:
如果要直观的表达转移矩阵,我们来举一个小例子(例子来自 《概率导论》):
用户A上一门概率课程, 每周她可能进步, 也可能落后。如果在给 定的一周里 她进步了, 那么她下一周进步(或落后)的 概率是0.8(或0.2); 相应地, 如果在给定的一周里她落后了,那么她下一周进步(或落后)的 概 率是 0.6 (或0.4)。
我们假设这些概率都不依赖于她之前的每周是否进步或 落后,所以该问题就是一个典型的马尔可夫链问题(未来的状态依赖过去 的方式是只依赖于当前状态来体现)。
我们令状态1和状态2分别表示进步和落后, 那么转移概率为:
转移概率矩阵为:
转移概率图为:
(中间省略很多字)这里就到了另一个知识点,马尔可夫链的稳态收敛:
当状态1和状态2,不断的重复和经历之后,转移概率矩阵都会无限趋近于一个极限值。也就是当状态1和状态2重复非常多次之后,转移概率会会无限收敛于一个值。
我们用上面的例子来计算一下:
备注:这里不用关注怎么计算出来的,只需要知道,当我们经历了n个时刻之后,转移概率无限收敛于一个值即可(如果想知道这个步骤具体如何计算的,可以看看原著《概率导论》)
它们的转移概率是:
如果仍旧用上面的例子来表达:
用转移概率的平衡方程组来表达:
由转移概率的性质可知:
求解这个方程组:
即:当我们操作足够多次(经历了足够多的链状态),我们的状态会稳定于某一个值。
如果应用到产品链路分析上,通俗解释是:当用户使用了足够多的功能,经历了足够多的状态转换,频次达到一定次数后,无论是否再频繁的使用产品,该节点状态对于用户最后是否留存的影响,无限趋近于0。
那我们就可以根据当前用户的使用链路,来评估用户是否留存这个状态,当前链路中某个节点的重要性以及贡献度,从而筛选出,哪些节点更重要。
小结
以上,我们就讲完了马尔科夫链中,比较基础的两个知识点:
1、未来的状态仅由历史状态影响,未来状态可以由当前状态预测
2、经历了足够多的链路转换后,转移概率无限趋近于一个固定值
下篇,我们来利用这两个特性,具体讲讲链路分析里,如何计算链路分析中节点的贡献度。