Airbnb 做好试验的四大原则

217 阅读8分钟
原文链接: www.appadhoc.com
1-zvroat3tpxvtmzhwunu7yw 过去两年,我一直作为数据科学家在 Airbnb 的增长团队工作。当我刚刚来到公司的时候,每个星期运行的试验不到100个;今天我们同一时间运行大概700个试验。正如我们在增长的过程中所了解的,大部分的增长并不是自然产生的,而是人为通过很多的试验来培育所实现。就拿我们们来说,不仅仅是建立内部的工具这么简单(比如ERF试验报告框架),同样还需要在不同部门中塑造强大的试验文化。今天,我总结了 Airbnb 内部做好试验的四个关键原则,希望能对各位有所帮助:
  1. 产品试验应该是假设驱动
  1. 定义适当的分流策略很重要
  1. 理解统计功效十分必要
  1. 失败就是机会
上面原则的实践不仅可以节省大量的开发时间和成本,而且可以让您对用户和产品有更加深入的了解。 产品试验应该是假设驱动 Airbnb 有很多天才工程师。我们可以很容易地实现某个功能,但是这并不代表着这个功能就该实现,或者产品就该变得更“好”一些。在 Airbnb 的增长团队中,我们往往从“数据告诉我们什么”这个问题开始。如果不是的话,那么你的产品优化策略也许会非常低效。磨刀不误砍柴工,你应该在试验之前做更多的准备工作。 为何假设非常重要?没有假设的话,工作会变得漫无边际,看上去不错的结果会让你分心,最后可能只是个统计学的烟雾。在这种情况下,你也许会为你的发现编个合理的故事,而不是努力的理解其背后究竟发生了什么。真实情况可能会让你大吃一惊!如果有不明白的东西,我们 通常就会更新我们的假设。并在管理试验的过程中加入新的指标和变量让试验更加准确。 举个例子,网站和原生应用使用新的翻译服务,针对这个变化我们跑了个试验。当然,我们假设两个平台上都能因此提升转化。实际上,我们发现原生应用实验组的预订转化有了大幅提升,可是在网站上却没有发生同样的预期。困惑之后,我们假设这是源于另外一个团队对产品的修改,让更多的用户在原生应用中更有可能的使用翻译服务。我们增加了这个指标作为衡量,事实证明假设成立。试验组中的老用户比例高,他们会首先使用翻译服务,且我们会骨气他们更频繁的使用新的翻译服务。而网站用户由于环境不同造成其是无法监测的。从这个试验中我们发现了新的整体战略机会。如果没有更新假设的话,也许就会错过重要的发现。 定义适当的分流策略很重要 不要只是发布新功能或设置试验后就等着奇迹发生。大多数情况下,奇迹并不会发生。这不代表着你做的不好,而是提醒我们工作并不是那么简单。很多团队都在挣扎纠结于如何在试验中正确的设定分流策略。分流策略会决定哪些用户能看到新功能,以及这部分用户的比例,这些构成你试验中的采样样本。 举个例子,我们团队希望为使用不同语言的房主和房客提供消息翻译功能,并假设该功能能够提高预订转化率。确定语言足够简单,但却是不够的。如果对所有的用户都开放这个功能,试验就过度曝光了——因为并不是所有发送消息的房客都会来预订。也许有些人已经入住,只是想问问毛巾在哪。或者是把手机充电器忘在房间里希望能够找回来。虽然这可能看上去很简单,但是你会惊讶很多时候这些情况都会被忽视。因为预防需要对业务有非常深刻的理解和丰富的经验。因此,和工程师沟通试验情况时,你需要问的第一个问题应该是:“分流策略是什么样的?为什么这样设定?”必要的话为试验量身定制分流策略。这样对双方都会有利。如果工程师认为正确的分流策略需要花费太多的工作,那就祭出下面的“万福玛利亚”大招。 健康的指标在此时会有所帮助。如果的你的试验仅限于现有用户,那么请添加一些指标来标明试验中是否有非用户(访客),比如正在注册的用户。如果在试验中看到大量这样的用户,那么你的分流策略也许就有问题。另一个办法是计算指标的全局覆盖。如果你希望所有用户都可以看到,那么就确认。过度的分流会稀释指标,对统计功效产生影响。开发很棒的功能非常重要,但无法监测其影响却是相当糟糕的! “万福玛利亚”大招:如果你无法准确分流的话,那么就请确保你有办法来识别试验不应该包含的用户并在分析阶段剔除。在 Airbnb,我们通过上传“排除清单”到试验清单中来实现,该清单包括刚才提到那些需要剔除的用户。识别这些用户有时也许非常耗时耗力。如果你正在做这项工作,确保和其他伙伴进行分享,因为整个团队会因此搞定数据难题并以可扩展的方式最大化利益。 理解统计功效十分必要 统计功效决定了试验检验假设的能力。如果你不懂的话,那么最好还是别做试验。你可以也应该比猜的更好。 三个建议:
  1. 在使用历史数据开始试验之前,首先要搞清楚基础指标。没有基础指标对比,你就没办法实际地发现并衡量功能变化所带来的影响。
  1. 除非正在做你全面了解并事关生死的功能^_^。如果你认为不会带来业务效益的话就别上线了,尤其是在你没有确定基础指标下。除非基础指标很多,否则唯一的方法就是大规模的改变指标。
  1. 记住,试验不是了解用户的唯一办法,那只是因为你没有足够的能力。因此不应该运行那些意味着游戏结束的 A/B测试。在 Airbnb, 我们和一群研究人员和调研科学家密切合作。他们对用户行为进行前瞻性和周到的工作。把他们变成你的合作伙伴,他们的见解可以帮助团队了解客户并开发真正有影响力的功能。

 

失败就是机会:用好它 有时可以尝试通过试验来验证假设提升指标。如果没有的情况下,那么就继续下一个试验。你是该提升指标,并在这个过程中你应该能够发现它。但是如果你只是关注在指标提升的话,那么你将会错过很多的洞察,并有可能无视很多错误潜在的危险。 试验没有失败,只是假设被证伪而已。 当这种情况发生时,你需要知道为什么。你可以尝试从以下的问题开始:
  1. 假设是错误的?还是假设的实施执行有缺陷?通常我们从后一个问题开始,然后在考虑前面那个问题。我们的工作十分复杂,一个人不可能一次就了解全部。这就意味着我们不会总是一击命中。如果增加功能假设影响下游转化,请不要只关注在转化的变化。你可能什么都看不到,因为功能可能无法正常的工作。有个简单的方法来检测,那就是确保你已经把这个功能登录在册。(这就是为何好的数据科学家在上线前进行适当的记录,我们无法测量不存在的东西。)
  2. 指标是否按我期望的发生变化?漏斗遵循可预测的模式。如果上游指标无法带来下游指标变化,你最好能够对此进行很好的说明和解释。(这是伟大的产品经理该有的素质。)但是请注意确认偏差,我们大多数人被激励确认工作是有影响力的。因此,在 Airbnb 我们尝试通过非正式会议和双周的试验评估会来帮助不同团队沟通,从试验中吸取经验教训。越多的人听取你的发现,你就能得到越多的反馈。你可以借此测试你和你的团队。
  3. 是否对大胆的假设试验验证?如果假设验真的话,你肯定会觉得很棒。不过要小心!不要浅尝辄止,继续试验前进!

 

总结 试验是项艰苦的工作。一个复杂的试验工具仅仅是个工具而已,它不会自己工作。我们会运用工具来通过试验来尝试不可思议的机会来改变自己所关心的业务。