信息熵在会员营销中的应用思考

在短信营销场景中,常常会遇到有些用户你给他发多少条促销短信他都无动于衷。针对这样的情况,通常我们会将这类用户称为营销不敏感用户。然而如何区分出这些用户会是一个挺头疼的问题,最常用的手段是通过营销反应次数的技术进行划分。比如定义营销5次都没有任何反馈的用户。以上定义存在的问题:

  • 营销场景的不一致,导致有的营销转化高,有的营销转化低,不应等同看待
  • 划分定义拍脑袋,针对某一个用户,营销5次没有反馈是从首次到第5次还是,还是5次计算可以间断,还是不需要从首次开始,只要连续5次都算。各种不同的定义无法说清楚那种更好。

信息熵简介

信息是我们一直在谈论的东西,但信息这个概念本身依然比较抽象。在百度百科中的定义:信息,泛指人类社会传播的一切内容,指音讯、消息、通信系统传输和处理的对象。但信息可不可以被量化,怎样量化?答案当然是有的,那就是“信息熵”。早在1948年,香农(Shannon)在他著名的《通信的数学原理》论文中指出:“信息是用来消除随机不确定性的东西”,并提出了“信息熵”的概念(借用了热力学中熵的概念),来解决信息的度量问题。

信息熵的定义公式:

$$H(X)=-\sum_{x\in\chi}p(x)\log{p(x)}$$

并且规定$0\log(0)=0$。

信息论之父克劳德·香农给出的信息熵的三个性质:

  • 单调性,发生概率越高的事件,其携带的信息量越低;
  • 非负性,信息熵可以看作为一种广度量,非负性是一种合理的必然;
  • 累加性,即多随机事件同时发生存在的总不确定性的量度是可以表示为各事件不确定性的量度的和,这也是广度量的一种体现。

香农从数学上严格证明了满足上述三个条件的随机变量不确定性度量函数具有唯一形式:

$$H(X)=-C\sum_{x\in\chi}p(x)\log{p(x)}$$

其中的 C 为常数,我们将其归一化为 C=1 即得到了信息熵公式。

问题来了。为什么要把信息熵的公式定义成的这么麻烦?

第一,假设存在一个随机变量$x$,当我们观测到该随机变量的一个样本时,我们可以接受到多少信息量呢?毫无疑问,当我们被告知一个极不可能发生的事情发生了,那我们就接收到了更多的信息;而当我们观测到一个非常常见的事情发生了,那么我们就接收到了相对较少的信息量。因此信息的量度应该依赖于概率分布$p(x)$,所以说熵h(x)的定义应该是概率的单调函数。

第二,假设两个随机变量$x$和$y$是相互独立的,那么分别观测两个变量得到的信息量应该和同时观测两个变量的信息量是相同的,即:$h(x+y)=h(x)+h(y)$。而从概率上来讲,两个独立随机变量就意味着,所以此处可以得出结论熵的定义$h$应该是概率$p(x)$的log函数。因此一个随机变量的熵可以使用如下定义:$h(x)=-\log{p(x)}$。此处的负号仅仅是用来保证熵(即信息量)是正数或者为零。而log函数基的选择是任意的(信息论中基常常选择为2,因此信息的单位为比特bits;而机器学习中基常常选择为自然常数,因此单位常常被称为nats)。

最后,我们用熵来评价整个随机变量$x$平均的信息量,而平均最好的量度就是随机变量的期望,即熵的定义如下:$$H(X)=-\sum_{x\in\chi}p(x)\log{p(x)}$$

信息熵的使用

1000桶水,其中一桶有毒,猪喝毒水后会在15分钟内死去,想用一个小时找到这桶毒水,至少需要几头猪?

限制条件:

  • 一滴毒水足以导致一头猪的死亡。死亡时间为15分钟内不确定的某个时间点。
  • 其死亡只是毒水导致的,不会有其他因素导致死亡。
  • 猪的承水量无穷大,且假设饮一桶花费时间为零。

使用信息论求解:

  • 在1000桶水中找一桶水,需要的信息量是$-\log(\frac{1}{1000})$
  • 而一头猪所能提供的信息是它在什么时间死(未死、0-15分钟、15-30分钟、30-45分钟、45-60分钟),因此能提供的信息量是$-\log(\frac{1}{5})$
  • 求$ -\log(\frac{1}{1000}) \leq -n\log(\frac{1}{1000})$可得,n>4.29203即,5头猪即可。

如何设置实验:将1000桶水按5进制编号,将五头猪对应到每一位。首先喂每头猪5进制编号下该位数为0的水。15分钟内,如果某头猪死了,那么有毒的水该位就是0;然后过15分钟后,再喂还存活的猪5进制编号下该位数为1的水。15-30分钟内,如果某头猪死了,那么有毒的水该位就是1。以此类推,于是在一个小时内我们就可以判断有毒的水的编号在5进制下每一位是多少,从而找到这桶水。

营销应用思考

假设我们把每次营销活动看成是信息反馈。针对某一个用户,假设我们期望控制营销的量,即针对营销不敏感用户进行剔除。假设我们定义:

  • 营销成功,则获得的信息为:$H_s = -\log{R_{conversion}}$,其中$R_{conversion}$为营销计划的转化率
  • 营销失败,则获得的信息为:$H_f = -\log{(1-R_{conversion})}$

假设按照上面的内容定义,针对每一次营销,营销成功与营销失败的用户可以获得的信息比为:$\frac{H_s}{H_f} = \frac{-\log{R_{conversion}}}{-\log{(1-R_{conversion})}}$

  • 假设转化率为百分之2,则可提供的信息比为:$\frac{-\log\frac{2}{100}}{-\log\frac{98}{100}} \approx 193.64$
  • 假设转化率为千分之2,则可提供的信息比为:$\frac{-\log\frac{2}{1000}}{-\log\frac{998}{1000}} \approx 3104.30$

显然,转化率越低,信息比其实越大。且差距非常的大。所以将用户对营销的敏感度定义为所有营销成功的信息量减去营销失败获得的信息量非常的不适合。

那么,接下来怎么办?能否以营销失败$H_f$进项评定?当营销成功只做参考:

$H(\theta ) < H(F) = \sum_{i=1}^{n}H_{f_n}$

我们将不敏感度定义为过去一段时间营销失败获得信息和,如果营销成功,可将$H(F)$全部置零重新进行计算。

另外考虑到营销不成功还有可能是用户当下没有需求,所以可以让每次营销结果随着时间进行降权。比如:

$$H(\theta ) < {H(F)}’ = \sum_{i=1}^{n}(H_{f_n}\cdot 0.99^{d_n})$$

其中$d_n$,为每次营销活动距离当前日期的天数。

参考链接:

微信支付标点符 wechat qrcode
支付宝标点符 alipay qrcode

美团酒旅实时数据规则引擎的学习

美团点评酒旅运营需求在离线场景下,已经得到了较为系统化的支持,通过对离线数据收集、挖掘,可对目标用户进行T+1

什么是 Real-Time Marketing?

什么是实时营销? 实时营销就是让营销在当下发生的。这个“时刻”可以多种形式。“时刻”指的是关于目标受众的需求和

App Store Top 1000 关键词分析

做这个分析的主要目的是分析用户的搜索习惯及用户的需求方向,寻找可能的机会。以下分析是7月初进行的,数据比较老,

发表评论

电子邮件地址不会被公开。 必填项已用*标注