这是百度数据专家毕然老师一次给互联网产品经理们的课堂实录。
大家知道,我们认识世界最主要依据统计,那么究竟统计到底可不可信呢,在这里我先给大家看几个例子:
第一个例子是这样,我们这里有一个罐子,罐子里面有黄球有绿球,我们看不到里面有什么球,这时我随便从罐子里抽出10个球,我发现其中7个绿球3个黄球,那么我现在判断说这个罐子里面有30%的黄球,70%的绿球吗?
(“样本太少了,可能抽的不随机”)
第二道题是这样的,有这么两类格子,上面这三个是A类,下面这三个是B类,那么想问大家右边的是什么类呢?
(“B类,因为B类有规律,A类没有规律”)
第三道题是这样,假设X跟Y我们认为有关系,我们随机抽取了5个点如图,那么他们之间的关系应该是什么样的呢?
(“线性的”)
那么现在公布答案,第一题如右边的图,我们抽取的球什么情况都有,可能抽取10个都是绿色的,但是罐子中黄色的特别多,这都不好说;第二题是这样的,大家说他们是B类,认为是对称的,然后我说答案是A类,因为中间的框是黑色,大家看A类所有的框中间是黑色的,而B类不是的,当然,大家如果说是A类,我就会说答案是B类,因为B类是对称的;最后一道题,大家说是直线,但是有可能是图中1、2、3的样子。
那么我想通过这三个case告诉大家一个什么东西呢,我们人类对世界所有的观察都是源于我们看到的样本,我们看到的样本只是真实世界的一个抽样,这三道题就是想说我们如果想要通过这些抽样来观测世界是完全不可能的,怎么观测怎么错。
那么究竟这些方法是不是真的不行呢?其实是这样的,这个世界没有那么残酷,没有那么残酷的原因是上帝给了我们一个很有力的武器,这个武器是这样的,这个世界的抽样统计值跟真实数据值确实是有可能不一样的,但是他们之间存在一种数学关系,这个数学关系就是“大数定律”,就是说如果我的抽样足够多,那么我得到的统计结果跟真实的统计结果是无限接近的。
为大家举个例子,古代孔子有个学生叫曽参,在曾参的家乡有一个跟他同名的人杀了一个人,曾母正好在家织布,这时第一个人来跟曾母说“你儿子杀人了”,因为同名同姓,大家都说你儿子杀人了,曾母不信,说“我这么了解我儿子,他不可能杀人。”过一阵又来了第二个人,也说“你儿子杀人了,你赶紧跑吧”,因为古代是连坐吧,曾母虽然不信但是心里开始怀疑了,当第三个人过来跟曾母说的时候,曾母转身跳起来就跑了,然后孔子对曾母特别不满,说你看曾母三人成虎,一则无心,二则疑,三则信矣。我感觉孔子对曾母是特别苛责的,曾母在根据大数定律做出判断,当抽样观察到一个样本的时候,这个事情发生的概率是很小的,没办法通过后验的数据改变先验的信息,当随着样本量变得非常大,所以它跟真实的情况发生的可能性接近的概率就非常高,所以我想说明,其实我们每个人对于大数定律的应用都不是我们真正知道大数定律,而是写在我们整个的思维和基因里,我们对它的运用往往是意识不到我们在应用它。
下面是大数定律的一种统计实现,叫做“霍夫定不等式”其实有非常多,每个不等式有自己的使用条件,这个会涉及到机器学习一个非常重要的概念叫做PAC的概念,这个不等式说明了我们用统计学认识世界的一个很重要的原因,大家可以看到,一般人怎么认识世界呢,我观测到罐子里抽样出绿色小球的概率是70%,那么我就认为这个大的世界里面就有70%的绿色小球,那么真正统计学家会怎么认为世界呢?
统计学家认识世界的方式叫做:基于概率的信任。具体怎么说呢?我观测到绿色小球的概率是70%,但是真实概率以90%的可能在65%-75%之间。这是一个非常怪异的表述方式,但是他是一个非常正确的表述方式,我们正常人认识世界的方式是有问题的,真正应该用统计学的方式来认识世界,叫做“基于概率的信任”,它既不是完全信任统计结果也不是完全不信统计结果,而是以一定的概率相信统计结果。
大家明白这种方式之后,后面的很多事情就比较好理解了,我们要以概率的方式信任我们所有的统计结果,另一个是我们观测的样本越多我们得出的结论是越发置信的。
我们来看这个统计案例,选取全中国3000名客户考察队鞋子的喜好,对年龄、性别、居住地做了分类统计,之后我们根据这个数据得到两个结论,第一个结论是:中国女性50%喜欢高跟鞋。第二个结论是:北京海淀区5-10岁的女童,100%喜欢男性旅游鞋。大家觉得这两个结论的问题分别在哪里?
(“第一个还是样本太少了吧,中国这么多女性,从3000人其中获取样本不具备信任”)
其实这个问题是这样的,我们可以这样来看,其实刚刚这位同学说的原因其实是第二个问题的原因,如果我们把这3000个数据按照这么三个维度去切,每个维度对数据进行拆分,拆分之后我们相当于得到这样一个一个格子,每个格子里面都会落入这3000个样本中的一些数据。
那么我们用中国女性这个一个这么粗的分类我们会发现这样一个事情,中国女性作为一个群体,她既不是特别喜欢什么也不是特别讨厌什么,很多很有用的信息其实被埋在里面了。我举一个例子,我们现在有两个班,一个是篮球班有50个人,然后篮球班他们100%喜欢篮球,没人喜欢足球,还有一个班是足球班,这50个人全喜欢足球,那么大家可以发现这两个班大家对于篮球或者足球的喜好是非常非常强的,但是如果我给他们一个更大的分类叫做“球类学院”,那数据变成了这个群体一半的人喜欢篮球一半的人喜欢足球,他们对球类没有很大的偏好,这就跟第一个问题一样的,如果分类太粗,那么我们是无法得到一个真实的有商业性的结论的。第二个问题其实跟他的问题正好相反,如果这个数据是置信的那么我肯定马上就不再百度工作了,马上就去北京市海淀区专门卖5-10岁女童男性旅游鞋。为什么第二个也不正确呢,大家可以想想,3000个样本一切落到这个格子里的可能就是一个样本,而这个样本可能就是我邻居家的一个小女孩,她目前还没有特别清楚自己的性别,所以喜欢了男性旅游鞋。所以说明一方面我们的数据要分的足够细另外一方面又需要每个分类中有足够多的数据量。
这也就是大数据的一个价值,当我的样本量特别特别高的时候,我的特征量就可以上来,如果我的样本量不够的时候,然后我再把它切得很细,实际上就违背了大数据的原理,因为它落在每个格子里的数据是不够多的,所以得出的结论也是不置信的,这也就是大数据最重要的地方,大数据支持了整个的大特征体系。
(卢佳:“我补充一下,前面毕然同学讲到特征,大家都能理解什么是特征吗?就刚刚说的居住地啊性别啊这些用来划分的维度,刚刚说的中国女性50%喜欢高跟鞋就是因为这个概括不具体,不具体的话就说明你的这个结论没有行动指导意义,就比如说女的都喜欢男的,这个结论是没有价值的,所以特征跟样本量是都需要考虑的东西。”)
基础的聊完了,我们来看看评估这个事情。评估在我们工作的应用中是非常非常多的场景,如果我们随随便便做了两种评估,通常会面临两种质疑,我分开跟大家说:
第一个质疑是这样的,一些偏运营的部门会出现这样的情况,比如今年业绩做的不错,收入流量都涨的很厉害,然后去老板那汇报“我今年的工作做的多么出色啊”,老板首先会问一个问题,整个这个事情既是产品也是技术也是运营等等,大家所有人都为了这个产品做了很多努力,那么你不能说这个业绩是你带来的,那么怎么在各个部门中拆分业绩呢?再一个老板还可能会问“是不是今年的市场红利比较好啊”,其实互联网公司这几年都是在吃市场红利,也就是说有你这个部门没你这个部门我的收入都是在涨的,那么也就是说我们做这么一件事的产出看起来是这样,我们需要排除其他所有一切的因素,因为这件事往往是非常多的因素导致的,不能说是因为我做了这一件事造成的,这是第一个质疑。
第二个质疑是关于抽样的,我给大家举个例子,之前百度一个客服说,老板你看我手里运营的20个客户,这20个客户都没有流失而且消费涨的还很厉害,我的业绩是不是非常好。然后老板就说客户就像一个罐子,红色的点就是流失的客户,绿色的点是留下的客户,那么我怎么知道这20个客户不是最初抽样恰好抽中这20个绿色的点而是你工作的成果呢?究竟是你lucky还是究竟做的好呢?那么面对这两个事我们怎么可以解决呢,其实有一个很好的方法可以一下解决所有事情,就是如果我们有神的力量,我们可以构造平衡世界。那么我们构造两个平衡世界完全一样,唯一的差别是一个有小王一个没小王,然后看公司收入的差距,那就是小王创造的真实的业绩,那么平衡世界可以解决一切不好解决的问题,比如毛主席究竟是好的还是坏的?秦始皇呢?这些历史上不好说的事情我们全都可以使用这种方式来评估,如果历史上没有这个人会是什么样,如果有这个人会是什么样,那么两者的差距就是他真正的贡献,但是我们没有这种力量,只能去模拟神的力量,这种方式就是“同质对照组”,它就是为了构造平行世界,那么我们可以把这个因素作用在两个用户组身上,他俩其他方面都是一样的,他俩用户数都是非常多的,所以用这种方式来解决这个质疑。
同质对照组就是为了保证这两个因素完全一样,假设我的实验组对照组不做任何策略,那么他俩的发展应该是完全一样的,但是实验组有实验的因素,所以他俩的差距就是这个实验、策略、活动带来的效果。但是这个逻辑有非常的的问题,其实有两方面问题,第一个是我们需要考虑多少因素的同质才是OK的,因为世界上没有任何一个人、客户是一样的,所以只是看起来用户的同质性比较好。另外一个事情是我这个数量究竟选多少呢,不能等于全体的数据吧,这两个缺陷就导致了只是一个概率上正确的结果。举个例子:
黑色表示对照组、实验组的真实世界的统计结果,如果我做一次,抽样第一次抽样实验组是比对照组好的,这次抽样可能离真实结果很近也可能在离真实结果很远的地方。比如说第二次抽样,实验组抽样是明显不如对照组的。这就说明我们并不能使得我们的评估是对的,但是如果做好,那么正态分布的曲线会越来越窄,所有的实验的改善都是使得正态分布的曲线越来越窄,如果曲线越来越窄,那么这种情况与后一种情况的概率都会很小,我们更有可能得到正确的结论。实际上我们不是为了追求正确,而是追求正确的概率更大了而已,这两个曲线会越来越窄但是误差永远不会消失。
既然我们的衡量不可能是完全正确的,我们一般会在最后附上衡量这个实验可信度的报告,即置信度报告,右侧就是一个真实的报告。这是一个百度的真实的报告,我去抽1000个客户跟6000个客户看消费的变化,我可以完全随机的抽样、也可以按照行业分层抽样,就是实验组跟对照组的行业分布基本都是一致的,比如一半是医疗的一半是教育的。我们期望的是这样的,实验组跟对照组不做任何的策略,他们应该尽可能的一致,这才是好的实验组对照组,那么我们看一下他们天然的波动有多少。1000个客户不做任何实验在一个月之后的增长超过平均值正负5%的概率超过50%,那么如果有一个人过来说做了一个营销活动,他们的消费涨了5个点,那么肯定是不敢信的,无法确认是波动产生的还是策略产生的。如果抽6000个,那么+-5%的概率为90.8%,那么一个人来说做了一个活动涨了20%,那么我们可以判断说涨幅还是比较显著的,策略比较有效,所以一般的评估附上这份报告还是很有必要的。
那么教大家一个方法吧,这个图其实有两个用处,一般到年底谈KPI的时候用第三张图,第二年要根据去年的完成情况制定今年的KPI的时候一般用第一张图。
(“如何选取样本呢?”)
我们一般从两个方面考虑,一个是同质一个是数量,我们一般优先考虑数量,因为足够大的数量是可以天然保证同质的,有概率保证的,百度一天检索量50亿,如果保证随机的情况下抽1%那么基本可以保证结果接近全集了,天然达到同质。如果我们数量很少,那么必须要保证同质性,否则效果差很多。如果数量不OK需要保证同质,那么我们得看对于我这个业务哪几个指标是比较重要的,保证这几个特征同质即可。
大家可以看这个图,很多老板喜欢看这个图,前面的波动基本一样,上线这一天之后出现了明显的变化。这样看效果很好对吧?其实这个图不用管实际怎么样都是可以有办法可以画出来的。其实是说这个图是不够的,不是说不正确的。我们看上面这个表,这个概率就是之前3个月波动完全一致,之后也可能产生差异的概率,即使没有任何策略也可能产生这种差异。那怎么操作呢,我们可以事先选择1000个对照组,然后选择数据最好的一组画出来基本就是这个图(从右边12组结果里选一组比较好的来做图),这个是所有数据作弊手段中最高明的,这个没法追查,因为如果我说你这个有问题,他会说他是随机抽样,我是没有办法检查的。
如果想要做好数据分析,这四个方面是比较重要的,一个是业务调研、一个是创新思考、一个是逻辑推理、一个是可行建议,就是从业务中来到业务中去。其实如果想要做好那么技术方法是应该让位于业务熟悉的,从业务中来到业务中去,中间这两步是产生分析思路的,做数据会发现人跟人之间差异是很大的,有的人思考的宽度跟广度是够的,逻辑推理是帮助我们避免看数据看来看去看错的情况。
我们看一下这个例子,当时刚从学校毕业很痴迷于技术手段,当时用了一些很猛的技术方法分析完之后老板说,就只有一个结论,就是客户流失的原因是因为推广效果不好,所以他们流失了,后来机缘巧合派到北分跟客服给客户打电话,实际接触到业务,才发现感觉不一样。(右边是调研之后总结的原因,可以看到这些原因非常具体,会有很多种类型)。问为什么不推广,首先是一些无厘头的原因。
(卢佳:“我补充一点,大家可能理解不了什么叫推广效果不好所以不做了,这个结果就跟我们问为什么人家不用我们产品,人家说觉得产品不好用是一样的,你这个结论非常不具体,其实是没有价值的,下次不要说这句话了哈”)
再比如会有一些产品功能缺陷,比如当时百度没有提供对比推广前推广后的效果差异,当然这个工具后来有了方便客户对照(这些问题不去跟客户接触是发现不了的)再就是当时很多土老板是相信传统媒体的,所以百度推广就在广播上做百度推广的推广广告,告诉这些土老板百度推广的效果很好,然后转变思路。
其实想告诉大家这个世界不是我们看到的冷冰冰的数字,他们背后是很鲜活的世界,如果我们不去了解业务,我们看数字就是冷冰冰的。
大家能看出来这两个实例的问题吗?第一个是药品的广告,第二个是鼓动美国人参军的广告,第一个实例的问题在于没有对比,如果我告诉大家人类一次生病会有5亿个感冒病毒,大家觉得这个广告语还好吗?或者除了这个药品,其他任何药品10分钟之内都至少能杀死5000万个病毒,大家觉得呢?
第二个有对比了,其实纽约人死的主要是老人跟婴儿,美国海军主要死青壮年小伙子,其实不可比。这个背后其实有个心理学的现象,就是人类对于事物的判断都是来源于比较而不是绝对值的,大家一定要慢慢克服这个人类的弱点。哪怕我过的非常好,但是我看到周围的人过的比我还好,我也会觉得过的不开心。
这里有一个case,就是涨薪之后高兴,之后去无秘APP就变成怨怼了,就是因为比较对象不同,第一个是跟自己比,第二个是跟别人比。这个可以用在管理上,本来团队死气沉沉的,老板就在群里分享别人创业挂了,就跟新闻联播一样,“既然我无法让你的生活更好,至少我让你看到别人生活的更不好”。
这里也有两道题,第一道题大家可能会觉得美国西部航空更好因为延误率更低,第二道题大家可能觉得更有可能是男生,因为男生全都是裤子,女生可能是裙子。
那么实际上如果看到更细节的数据,结论完全不一样。飞机的延误率跟两个因素有关,一个是航空公司效率一个是机场的空闲程度,美国凤凰城机场很大所以运营效率比较高,而西部航空大部分都在凤凰城,整体的延误率就降低了。这也就是我们为什么要把数据特征做的特别特别细呢,因为我们有可能少加了一个特征导致结论完全相反。我加不加按照城市去看,数据结论可能是完全相反的。
(卢佳:“一般不会直接计算延误率的平均数,因为分布不一样,数据没有太大意义。第二个例子就像原来大家学概率讲的白血病的例子,是一样的,在艺术学校你看到有个穿裤子的同首先猜他是男的肯定不对,因为艺术学校大量都是女生,只要看到一个人都猜是女的就行了,这是分布的问题,很多时候我们去看一个数据的时候,一定要看数据背后的原因,比如说我举我们自己的例子,CRM里面微信线索很多,是代表CRM这块大家用的很好吗?如果没有拆开看不会发现,如果拆开看会发现是因为做了营销活动,所以只能说营销模块带来了很多线索,这是一个很好的思考方式。反过来说如果发现数据非常好,也可以像凤凰城这样,找到自己好的地方,然后强化它这块的能力,其实对整体的提升是非常明显的。”)
再举两个阴谋论的例子,比如有个产品10个特征,假设公司收入降了,我最后的说出来的可能是90%的客户收入是上涨的,但是90%的客户可能其实消费占比很低,那10%的大户降了整体就降了,但如果我这样说,你看上去就会感觉还不错。这也就对应到“精心挑选的数据维度”,我可以完全说出不符合真实数据的结论来。
(卢佳:“所以大家知道上市公司的财务同学在每个月、每个季度的财报出来之后很长时间在干嘛吗?拆出那个可以被投资人接受的维度然后解释它”)
所以大家可以看看百度腾讯阿里的财报,每次提的事都不太一样,基本都是不好的东西不提,要靠自己看。
这里有个哲理在这里,经常说吸烟有害健康,然后他说某伟人抽烟喝酒活到80岁,某名人不抽烟不喝酒50岁就挂了,所以活多久跟抽烟没多少关系。真正的原因是这样,3000个样本上面是不抽烟的,下面是不抽烟的,统计出分布。但不管你在哪个分布里,你都有可能落在头里或落在尾巴上。假设抽烟,但是你落在下面那个分布的右边,你也可能活到80。
大家应该知道一句话叫做“尽人事、听天命”,人事决定了我们落在哪个正态分布里,天命决定了我们是在正态分布好的一边还是差的一边,虽然我们知道我即使尽人事了、天命可能也不好,但是我也不能不尽人事,我们还是要到好的正态分布里面去。这跟创业一样的,天命部分很大,但是我们就不尽人事了吗?BAT这种公司都是最好的正态分布之中最好的尾巴,缺一不可。这其实都是反人类的,因为人类愿意相信个案,这就是很多勤奋的同学看到其他人撞大运就觉得人生其实不需要努力,再就是老板愿意相信个案,用这个产品遇到一个bug以后再说好也没用了。这是人性中不太好克服的地方,就比如大家觉得过去的记忆是好的,其实过去的记忆不全是好的,只是我们只记住了好的事情。
(卢佳补充,毕然同学说得对,统计其实是反人性的,我们要有统计的思想,但大家一定要明白,单靠统计是说服不了任何人的,因为其他人只会看他能看到的个案,所以反过来说好的典型的个案是非常有力量的。还有,之前涨5%的例子你说出来不会有人信,因为影响因素太多了,但如果真的有20%,那别人能说的少多了,所以必须是非常显著的结果才能让人信服。)
这一篇是说很多时候我们解释一个数据现象会用一些特别具体的说法但这些往往是我们脑补的,举个例子,不知道大家有没有查过消费波动,查波动可以用“天气法宝”,如果流量下跌了,可以说天气冷,网民手冷不愿意,上网,如果流量上涨,可以说天气冷,网民不愿意出门,都在家上网(当然你得隔几天,马上就说是不行的)。数据做久了会发现历史是任人打扮的大姑娘,数据是任人打扮的二姑娘,你想让它说什么就说什么。这个问题是这样的,一旦我们用一个非常细致的原因或者故事去解释一个非常高层抽象的数据指标,就会出现这样的东西;就是说如果我有一个精细的故事那么我就需要一个精细的数据来解释,我不能说流量跌了我就编个故事去解释。
做数据分析不要先入为主的偏见,一帮精神病专家伪装进精神病医院之后呢,进去之后就恢复正常人表现,怎么都出不来,医生就说“这个人有及其严重的臆想症,老认为自己是正常人”,说明一旦这个人被打上标签,做什么都像精神病。
我们做数据也是这样,脑子里是什么就去寻找什么,就得到期盼的结果。人们只愿意看到他们希望相信的事情,这也是人性的一个弱点。
比如说“疑铃盗斧”就是典型的例子,就是说观察到这个邻居行为就是数据,偷没偷斧子就是结果。当我怀疑他偷了斧子,我怎么看这个数据都觉得他偷了斧子,如果斧子忽然找到了,再看数据都是没偷斧子的证据。
再举个例子吧,老板可能说我们做了这么多产品策略,数据为什么没有涨呢?其实任何时候你问这个问题我都可以解释出很多原因来。我给大家说说怎么弄,比如说正常收入是平的,有的原因导致上升,有的导致下降,老板不是问为什么没涨么,那么所有导致上升的原因我们选择性看不见,我们只看下跌的,可以说“我们做了很多事情,正常应该上涨的,但是由于①②③,导致数据是平的,但是如果我们什么都没做,数据就可能下来了。”
所以太懂数据分析的同学不太适合做数据分析,可以做手脚的地方太多了;不懂数据分析的同学也不适合做数据分析,看不到别人做手脚的地方。
(卢佳:“虽然毕然同学提到了很多数据分析可能会有问题,但是我们新同学还是要经历这个阶段,就是大家现在做的东西,不是说选择性找原因,而是连原因都找不到,大家明白吗?当老板说这里面有其他的原因,很多同学连一个合理的原因也找不出,或者只能找到一两个。大家还没有到找出原因来骗人的阶段。如果大家达到想找原因就能找出来很多个,还能选择性地做这个,那么大家也是进步的了,然后,到你们能选择性的讲原因的阶段,大家要知道,这个事情我们也是干过的,所以我应该也是能识别出来的。今天这些东西主要是一个启发,如何去了解、认识这个世界。”)
作者:百度数据专家毕然。
微信公众号:诗书风景(ID: Xixibook)