Trustworthy Online Controlled Experiments Part 2 Chap 7
- 如果你告诉我, 你打算如何衡量我,那么我会告诉你,我将如何表现
− Eliyahu M. Goldratt (1990)- 第一条规则是,有度量(任何度量)要比没有度量要好。但是,真正有效的指标将涵盖产出,而不仅仅是涉及劳动。显然,公司通过推销员获得(输出)的订单来衡量推销员的业绩,而不是通过他打的电话(活动)的数量来衡量它的业绩
− Andrew S. Grove in High Output Management (1995)
为什么重要: 要设计和运行良好的在线对照实验,则需要符合某些特征的指标。这些指标必须在短期内(实验持续时间)是可测量的,并且是可计算的,并且必须足够灵敏才能对实验有用。如果使用多个指标来衡量实验的成功程度,则理想情况下,可以把他们整合到总体评估标准(OEC)中,这样可以衡量他们对长期目标产生的影响。通常需要多次迭代来调整和完善OEC,但是正如上面Eliyahu Goldratt所说的那样,这个过程为组织提供了明确的调整机制。
从商业指标到实验指标
如第6章所述,数据驱动型组织经常使用目标,驱动和护栏指标来以透明和负责的方式协调和执行业务目标。但是,这些业务指标可能无法直接用于在线实验,因为实验指标必须是:
可测量性: 即使在在线世界中,并非所有效果都可以轻松测量。例如,购买后的满意度可能很难衡量。
属性化: 为了计算指标以用于实验目的,我们必须能够将指标值归因于某个实验版本。例如,要分析某个干预措施是否会提高程序的崩溃概率,我们必须能够将应用程序崩溃归因于某个版本。对于其他数据提供者(例如第三方)提供的指标,此属性可能不被满足。
敏感性: 实验指标必须足够敏感,才能及时检测到重要的变化。敏感性取决于基本指标的统计差异,效果大小(实验中治疗与对照之间的差异)以及随机单位(例如用户)的数量。作为不敏感的指标的一个极端示例,您可以进行对照实验并查看公司的股价。由于常规产品更改在实验期间影响股票价格的能力实际上为零,因此股票价格指标将不够敏感。在另一个极端,您可以衡量新功能的存在(是否正在显示?),这将非常敏感,但不能告知其对用户的实际价值。在这两种极端之间,对新功能的点击将是敏感的,但它高度本地化:点击指标不会捕获对页面其余部分的影响以及对其他功能的影响。整页点击率指标(尤其是对用户快速返回的快速返回进行惩罚),“成功”指标(如购买)和成功时间通常是比较好的的关键指标,而且对实验敏感。参见Dmitriev和Wu(2016)对敏感性的深入讨论。以下是一些更常见的例子:
-
广告收入,通常有一些异常值会对收入产生不成比例的高影响,例如具有很高的每次点击费用的点击。虽然每一美元都是相同的,并且这些昂贵的点击会包括在业务报告中,但这些较大的异常值会夸大差异,使误导你对干预效果的判断。出于这个原因,可以将实验的收益的截断版本视为更敏感的指标(请参见第22章)。
-
考虑具有每年续订周期的订阅合同。除非你愿意进行长达一年的实验,否则很难衡量对续订率的影响。对于这种情况,通常在实验中使用替代指标,这些替代指标是会反应续订率的领先指标。
因此, 你可以发现,适用于商业的一些指标,并不适用于实验。我们确实同意安德鲁·格罗夫(Andrew Grove)所说:“有疑问时,需要进行更多的测量”,但更重要的是:认真考虑你要优化的内容。 如果公司宣布,无须优化网页返回速度,那么这将导致各种网页控件让网站越来越慢, 这将导致短期内业务上升,但是长期来看,会造成用户的流失。
通常,为了进行试验,要选择满足可度量性,可计算性,敏感性特征的业务目标,驱动目标和护栏标准的子集。然后,可能需要使用以下因素进一步增强该指标集:
- 针对业务目标和推动因素的其他替代指标。
- 更细化的指标,例如功能级别的指标,可帮助您了解特定功能的变化趋势。例如,页面点击率可能会分解为页面上许多功能的点击率。
- 其他可信赖防护栏(请参阅第21章)和数据质量指标。
- 诊断和调试度量标准提供的信息过于详细,无法持续跟踪,但在深入研究目标,驱动或护栏指标出现的问题时很有用。
将关键指标结合到OEC中
如果多个目标和推动因素,那该怎么办?只选择一个指标,还是用多个指标?要不要把他们合并到一个指标中?
虽然有些书主张只关注一个指标(精益分析(Croll和Yoskovitz,2013年),但建议“一个指标很重要”(OMTM)和“执行的四个纪律”(McChesney,Covey和Huling,2012年)则建议关注“非常重要的目标”(WIG)。 ),我们发现这种激励方法过于简单。除了一些不重要的场景外,通常没有单一的指标可以捕获所有企业正在优化的内容。卡普兰(Kaplan)和诺顿(Norton)(1996)给出了一个很好的例子:想象一下进入一架现代喷气式飞机。应该在飞行员的仪表板上只放置一个仪表吗?空速?高度?剩下的燃料?飞行员必须能够看到这些指标以及其他指标。开展在线业务时,会有几个关键的目标和推动因素,用于衡量用户参与度(例如,活动天数,每用户会话数,每用户点击次数)和金钱价值(例如每用户收入) 。通常没有简单的单一指标可以替代其他所有指标,用于优化。
在实践中,很多公司的领导层在心理层面会对不同的指标有所取舍。 比如,有的公司愿意牺牲一些用户数量,来确保剩余用户可以共享更多的收入。而另外一些注重增长的公司则不愿意那么做, 他们更在乎用户数量。
通常,会有一个折衷的心理模型,这样才能设计一个单一的指标(OEC)。 将不同目标进行加权组合(Roy 2001,50,405–429)可能是更理想的解决方案。与总体指标一样,确保指标及其组合不可博弈也是至关重要的(请参见第6章的补充工具栏:可游戏性)。例如,篮球记分牌不会跟踪两分和三分线以外的投篮情况,而只会记录每支球队的综合得分,即OEC。 FICO信用分数将多个指标合并为一个单项分数,范围从300到850。拥有单一分数在体育运动中很典型,对企业也同样至关重要。单个度量标准可以使成功的确切定义变得清晰,他可以帮助组织中的人保持思想上的一致性。此外,通过进行讨论并明确权衡取舍,决策过程中的一致性更高,人们可以更好地理解组合的局限性,从而确定OEC本身何时需要发展,这种方法使团队无需升级就可以做出决策,进行管理,并提供了自动搜索最佳参数的机会。
如果多个指标,Roy(2001)提出的一种可能性是将每个指标标准化到预定义的范围(例如0-1),然后每个指标分配一个权重。OEC是标准化指标的加权总和。
当然,一开始很难提出一个加权组合,但是可以从将决策分为四类来开始:
-
如果所有关键指标是平坦的(在统计上不显着)或正的(在统计上显着),并且至少有一个(实验)指标为正,则可以发布新版本。
-
如果所有关键指标都是固定指标或否定指标,且至少有一个(实验)指标为负,则不要发布新版本。
-
如果所有关键指标都没有变化,则不要发布更改,而应考虑提高实验Power,快速进行调整。
-
如果某些关键指标为正,而某些关键指标为负,则根据权衡取舍。当经理了足够多的这些决策后,便可以尝试分配权重了。
如果无法将所有关键指标合并到一个OEC中,那么可以尝试减少关键指标的数量。 指标太多可能会导致认知超负荷和复杂性,从而可能导致组织忽略关键指标。减少度量标准的数量还有助于解决统计信息中在多个值之间进行比较的问题。
一个粗暴的经验法则是尝试将关键指标限制为五个。虽然单独使用 0.05 p值阈值可能会被 p-hack,我们仍然可以将基础统计概念作为启发式的方法。具体来说,如果Null假设为真(无变化),则单个度量的p<0.05的概率为5%。当您拥有k个(独立的)度量标准时,至少一个p<0.05的概率为。对于k = 5,您有23%的概率看到有统计学意义的东西。对于k = 10,该概率上升到40%。拥有的指标越多,发现其中一个统计显著的概率越高。
达成共识的OEC的一项最终好处是:可以自动发布版本。
例子1: Amazon Email 的OEC
亚马逊构建了一个邮件系统,该系统可以根据各种条件发送电子邮件,该不同的条件来针对不同客户,例如(Kohavi和Longbotham,2010年):
-
如果用户买了 A 作者的书, 当A作者出新书了以后,该系统会通过邮件通知客户。
-
购买记录:使用Amazon推荐算法的程序发送了这样的电子邮件:“ Amazon.com根据您购买的商品提供新的推荐。”
-
基于他人信息的推荐:基于行为相似客户的购买行为的推荐。
些程序应使用哪种OEC?最初的OEC是基于用户点击该程序产生的电子邮件所产生的收入。
问题在于,该指标随着电子邮件数量的增加而单调增加:更多的广告和更多的电子邮件肯定能增加收入,但是同样会导致垃圾邮件。请注意,即使随机对照实验,也无法解决该问题。
当用户开始抱怨收到太多电子邮件时,危险会上升。亚马逊最初的解决方案是增加一个限制:用户只能每X天收到一封电子邮件。他们建立了一个电子邮件流量警察,但问题是它成为了一个优化程序的问题:当多个电子邮件程序要以用户为目标时,应该每隔X天发送一封电子邮件?如何确定哪些用户可能愿意接收更多电子邮件?
这里主要的问题是,点击访问收入OEC正在针对短期收入而不是用户生命周期价值进行优化。如果恼怒的用户取消订阅,Amazon便失去了将来卖给他们东西的机会。他们构建了一个简单的模型,以构建用户退订时用户生命周期机会损失的下限。他们的OEC是:
image.png- i 接受电子邮件的客户数量(从1到 n)
- s 去掉电子邮件订阅客户的数量
- unsubscribe_lifetime_loss 如果损失了一个客户, 在客户余生中会给 Amazon 带来的收入损失
- n 所有客户的数量.
当他们实施此OEC时,unsubscribe_lifetime_loss 的值只有几个美元的时候,一半以上的计划性广告活动都显示出负面的OEC!
更有趣的是,意识到退订会造成巨大损失, 导致Amazon有不同的退订页面,默认页面是退订该“广告系列”,而不是退订所有Amazon电子邮件,从而极大地降低了退订的成本。
例子2: Bing 搜索 的OEC
《Trustworthy online controlled experiments: Five puzzling outcomes explained 》描述了: Bing使用两个关键的组织指标来衡量:查询份额和收入。该例子说明了短期和长期目标如何截然不同。该例子也包括在《Data Science Interviews Exposed 》中(Huang等,2015)。
当时 Bing有一个排名Bug,导致在“干预”组中向用户显示非常差的结果,但是,两个关键的组织指标得到了显着改善:每个用户的不重复查询率增加了10%以上,每用户收入增加了30%以上。OEC应该是什么?显然,搜索引擎的长期目标与实验中的这两个关键指标不一致。如果按照实验显示的去做,搜索引擎将有意降低质量以提高查询份额和收入!
出错算法结果迫使人们使用更多次的查询(每用户查询次数增加)点击更多的广告(收入增加)。为了理解问题,让我们分解查询共享:
每月查询份额定义如下:
image.png其中产品中的第二和第三项是按月计算的,Session 被定义为用户活动,该活动以查询开始,以搜索引擎30分钟不活动结束。
如果搜索引擎的目标是允许用户快速找到答案或完成任务,那么减少每个任务的distinct queries是一个明确的目标(减少用户查询次数),这与增加查询份额的业务目标相冲突(增加查询次数)。由于此指标与每个会话中的不同查询(与任务相比更容易测量)高度相关,因此不应将distinct queries 单独用作搜索实验的OEC。
将上面一个公式分解:
1.每月用户。在实验中,用户数由设计时确定。例如,在以50/50分割的A / B测试中,每个版本中的用户数量大致相同,因此您不能将此用作OEC的一部分。
2.应该最小化每个任务的不同查询,但是这很难衡量。可以使用会话的指标作为不同查询的替代;但是,这很微妙,增加可能表明用户必须发出更多查询才能完成任务,而减少可能表明用户放弃了这次搜索任务。因此,如果你能够判断出来用户是否完成了搜索任务, 那么就应该尽可能的降低该指标。
- 每用户的会话数(Sessions-per-user)是在受控实验中进行优化(增加)的关键指标。一般来说,满意的用户访问的频率更高。
在不增加其他限制的情况下,每位用户的收入同样不应被用作搜索和广告实验的OEC。在查看收入指标时,我们希望增加收入指标而不会给用户体验造成负面影响。常见的限制条件是限制广告可以在多个查询中使用的平均像素数(限制广告出现的次数,因为每次出现都会占用像素)。给定此约束,让每次搜索收入增加, 就变成了一个约束优化问题。
古德哈特定律,坎贝尔定律和卢卡斯批判
OEC必须在短期内(实验的持续时间)是可测量的,但又要和长期战略目标有因果关系。古德哈特定律,坎贝尔定律和卢卡斯批判都强调相关性并不意味着因果关系,在许多情况下, OEC所带来的相关性会具有一定欺骗性。
英国经济学家查尔斯·古德哈特(Charles Goodhart)最初是写下该法则的:“任何观察到的统计规律一旦施加于控制目的便会趋于崩溃”(Goodhart,1975; Chrystal和Mizen,2001)。如今,将古德哈特法则引用为更普遍的做法是:“当一项措施成为目标时,它就不再是一项好措施”(《古德哈特法则》 2018年,斯特拉森,1997年)。
坎贝尔的定律以唐纳德·坎贝尔(Donald Campbell)的名字命名,他指出:“当越多的定量的社会指标用于社会决策,社会就越容易腐败,社会进程就越容易被扭曲和破坏。”(坎贝尔定律2018,坎贝尔1979)。
卢卡斯批评(Lucas critique 2018,卢卡斯1976)指出,历史数据中观察到的关系不能被认为是结构性或因果关系。如果政策决策改变了经济模型的结构,那么在历史上保持的相关性将不再成立。例如,历史上,菲利普斯曲线显示出通货膨胀与失业之间负相关关系。在英国1861年至1957年的研究期间:通货膨胀率高时,失业率低,反之亦然(Phillips 1958)。但实际上,高通胀并不是低失业的原因,二者没有因果关系。
实际上,在1973年至1975年的美国衰退中,通货膨胀率和失业率都在增加。当前的主流认知是通货膨胀率对失业没有因果关系(Hoover 2008)。蒂姆·哈福德(Tim Harford)举了一个例子,以展示从历史数据中获取因果关系的荒谬(Harford 2014,147):“诺克斯堡从未被抢劫过,因此我们可以解雇保安, 这样就可以省下一笔费用。”
综上所述,在历史数据中找到相关性并不意味着可以借此来提升系统性能, 这有当这种关系是因果关系的时候, 干预才有效,这使得为OEC选择指标非常困难。
网友评论