统计学的知识,学了那么多,应该在实际问题去验证和解决,尽量在实际项目中去应用,要有输出的环境,否则学习只是学习,并不能检验真正的水平和意义。所以针对此,后续在网上找一些案例进行实操。
例1:某互联网公司希望激活数量可观的沉默用户,设计了3个方案,将所有沉默用户随机分布在规模相同的三个群中,将3套方案实施在这3个群体中,观察3个群体中每天成功唤醒的用户数量,下图是3个方案实施8天后的数据:
那么作为数据分析师,要如何依据上面的数据衡量每个唤醒方案的效果,选出最优方案呢?这个问题结合业务的分析,还是可以实现的。但是这里主要结合基本的统计学知识来做基本的分析。分析方法有哪些呢:
我们先假设这3个方案的用户激活数的均值是相等的。我们需要通过统计学的方法来验证这个假设是否正确,如果满足这个条件,则接受这个假设,说明这3个方案的效果是相同的,如果不满足一定的条件,就拒绝这个假设,说明这个3个方案激活效果是不一样的,那么才有接下来的深层分析。
分析:MS值得是均方和,F指的是F检验统计量的值,P-value值得是出现当前结果的概率,说明的是,在原假设成立的前提下,3个方案均值分别的1024、1073、1043的概率仅为0.045,低于显著性概率0.05,如此小概率的事件在一次实验中发生是不可能的,因此要拒绝原假设,也就说这3个方案所激活的沉默用户的均值是不相同的。
那到底是哪个方案最优呢?在证明了3个方案的效果均值不同之后,最简单的方案就是看均值,均值最高的就是最优的方案,因此可以选择方案2。
但是,我们都会知道,均值反应的是数据的集中趋势,数据还有波动性,如果方案2的均值最大,但是对应的方差很大,那依据均值来判断就不是那么可靠了。
在这里我们选择EXCEL中t-检验,双样本等方差假设
从输出结果来看,不仅有单侧t检验和双侧t检验结果:tStat:计算得出的t值;**P(T<=t)单尾与t单尾临界**:已知显著水平下的单尾临界t值和P值;**P(T<=t)双尾与t双尾临界**:已知显著水平下的双尾临界t值和P值;合并方差:合并公式如下:
我们通过上图发现,方案1和方案2之间呈现出了显著性,可以判断方案2是优于方案1的,至于方案1和方案3,暂时没有足够的证据判断他们的优劣。在这里呢,可以继续用均值来做比较就会准确很多了。
案例2:
某互联网公司开发了一个识别商家是否是恶性商户的模型M1。在使用模型之前,人工监察团队说,目前平台上的恶性商户比率为0.2%。利用M1模型监测后,发现在之前人工判定的恶性商户中,有模型判定为恶性商户的人数占比为90%,在人工判定的健康商户中,有M1判定为恶性商户的人数占比为8%,通过这些分析会感觉商户有8%的误判,还有10%的漏判,那么这个模型的结果到底是不是可靠的呢?
利用全概率公式:当M1判别某个商户为恶性商户时,这个商户的确是恶性商户的概率由P(E∣P)P(E|P)P(E∣P)表示:P(E∣P)=P(P∣E)P(E)P(E)P(P∣E)+P(E)P(P∣E)P(E|P)=\dfrac{P(P|E)P(E)}{P(E)P(P|E)+P(E)*P(P|E)}P(E∣P)=P(E)P(P∣E)+P(E)P(P∣E)P(P∣E)P(E)
上面就是全概率公式。要知道判别为恶性商户的前提下,该商户实际为恶性商户的概率,需要由先前的恶性商户比率P(E)P(E)P(E),以判别的恶性商户中的结果为阳性的商户比率P(P∣E)P(P|E)P(P∣E),以判别为健康商户中的结果为阳性的比率P(P∣E)P(P|~E)P(P∣E),以判别商户中健康商户的比率P(E)P(~E)P(E)来共同决定:
P(E)=0.002P(E)=0.002P(E)=0.002P(P∣E)=0.9P(P|E)=0.9P(P∣E)=0.9P(E)=0.998P(~E)=0.998P(E)=0.998P(P∣E)=0.08P(P|~E)=0.08P(P∣E)=0.08P(E∣P)=P(P∣E)P(E)/(P(E)P(P∣E)+P(E)P(P∣E))=0.022P(E|P)=P(P|E)P(E)/(P(E)P(P|E)+P(E)*P(P|E))=0.022P(E∣P)=P(P∣E)P(E)/(P(E)P(P∣E)+P(E)P(P∣E))=0.022
通过贝叶斯模型计算,恶性商户的比例为2.2%,也就是说,根据M1的判别结果,某个商户实际为恶性商户的概率为2.2%,是不进行模型判别的11倍。
虽然2.2%的概率并不算高,但在实际情况中,被M1模型判别为恶性商户,说明这家商户做出恶性行为的概率是一般商户的11倍,非常有必要用进一步的手段检查。
恶性商户判别模型真正的使用逻辑应该是如下图所示。我们先用M1进行一轮判别,结果是阳性的商户,说明出现恶性行为的概率是一般商户的11倍,那么有必要用精度更高的方式进行判别,或者人工介入进行检查。精度更高的检查和人工介入,成本都是非常高的。因此M1模型的使用能够使我们的成本得到大幅节约。
贝叶斯模型在很多方面都有应用,我们熟知的领域就有垃圾邮件识别、文本的模糊匹配、欺诈判别、商品推荐等等。通过贝叶斯模型的阐述,大家应该有这样的一种体会:分析模型并不取决于多么复杂的数学公式,多么高级的软件工具,多么高深的算法组合;它们的原理往往是通俗易懂的,实现起来也没有多高的门槛。比如贝叶斯模型,用Excel的单元格和加减乘除的符号就能实现。所以,不要觉得数据分析建模有多遥远,其实就在你手边。