A / B测试有什么问题



我们为哈布拉(Habra)的读者准备了哈里(Harry's)前分析总监迈克尔·卡明斯基 Michael Kaminsky)的文章翻译。 他谈论A / B测试出了什么问题。 Skyeng分析总监Gleb Sologub对材料的评论。


A / B测试的概念是基于一个根本错误的假设,即有一个单一解决方案平均对所有客户都更好。 分析人员应该放弃假设他们的听众是同质的,并开始开发允许使用(并鼓励)测试结果而不是二进制测试结果的系统。


在过去的几周中,已经发表了两篇非常有趣的文章,涉及A / B测试的非标准解释。 Uber工程博客的其中一篇文章是关于计算分位数曝光的影响,而另一篇文章来自一贯出色的StitchFix Data Science博客 )则是关于使用上下文强盗算法来实现个性化。


这两篇文章都很有趣,但是在我看来,他们对测试的解释和实现有太多的理论,并且缺乏事实。 为了清楚起见,我重新撰写了论文:


传统的A / B测试基于一个根本错误的假设。 在大多数情况下,选项A对某些子组更好,而选项B对其他子组更好。 选择A OR B最初会丢失A和B的精心选择的组合。


不幸的是,将这种方法应用于测试,优化和软件开发并不容易。 如果您希望他们参与流程,则需要新的统计工具,用于开发和支持软件解决方案的新工具,以及培训利益相关者。 在本文中,我将给出一个激励性的示例,然后,我将讨论在创建适应新现实的系统时您将遇到的一些问题。 我不会讨论与构建这些类型的系统有关的基础统计信息(最好阅读StitchFix的 文章和Google的这篇文章 ),但是我将谈论在战略和体系结构级别上看到的机会。


激励榜样


为了说服您这很重要,让我们看一个小例子。 尽管这些数字是虚构的,但它们完美地代表了我在A / B测试的实时评估中看到的无数次。


另一家床垫公司(EOMK)在线销售床垫(您可以在地铁上看到它们的广告)。 他们想测试针对手机优化的更新订单。 设计师有点担心,尽管更新的版本不那么麻烦,但在订购过程中它也传达了较少的信息,这可能会对台式计算机用户的转换产生负面影响。


团队开始测试并获得以下结果:


图片


该死的,没什么区别! 凭直觉,您决定在移动设备和PC上共享流量。


图片


哇! 新版本...准确显示了设计师的期望! 对于移动设备用户而言,情况已变得更好,而对于PC用户而言,情况则更糟。


糟糕的是,我们的A / B测试没有效果。 也许我们应该派遣设计师考虑订购表的新版本。


但是等等! 如果我们为通过电话访问网站的用户提供优化的移动版本,该怎么办? 以及优化的桌面版本-适用于台式计算机上的用户? 如果我们创建的登录页面在人们有更多时间阅读的周末会更好地工作,该怎么办? 如果我们制作的广告在加利福尼亚州比马萨诸塞州的效果更好,该怎么办?


如果该网页不能一次适合每个人怎么办?


任务


很难说这个想法是显而易见的还是革命性的。 如此明显,以至于看起来几乎是愚蠢的。 但是,如果您看一下大多数公司如何开发,测试和调试软件产品,事实证明,这是解决软件问题的方法的一个根本性转变。


许多公司仍然只有一个工作版本的网站。 可以进行测试,但是一旦其中一项测试获胜,则丢失的版本将被丢弃,唯一的正确版本即“山丘之王”出现。


为了涵盖客户和用户的所有多样性,有必要以根本不同的方式开发软件解决方案。 我们需要新的和更高级的工具,我们还需要以新的思维方式培训利益相关者。


如今,尝试管理具有如此多变量的使用场景非常困难(如果有可能的话)。 由于管理这么多的选择非常昂贵,因此许多公司甚至都没有尝试个性化其客户体验。 接下来,我将更多地讨论这些问题并概述解决这些问题的方法。


编程工具


在我们这个勇敢的新世界中,我们向不同类别的用户提供各种内容(比例可能会随时间变化),我们需要用于开发和分析软件的工具。


使用这种范例的最明显的结果似乎是项目中代码量的显着增加。 在测试之后,我们不必支持过时的代码分支,而必须支持它们(也许永远)。 太可怕了!


实际上,我们需要使应用程序更具模块化,以便我们能够不断开发,测试,部署和维护新的代码分支(例如,用于测试的新版本)。


为了能够根据用户的特征将用户定向到代码的不同分支(用户脚本的分支数量可能很大),有必要开发一种支持这种分支的体系结构。 我们需要一个集中的决策机制,可以为此用户选择路线。 路径的组成部分也必须足够互换,以无缝地指导用户沿路线行驶,即使它们是彼此独立开发的,也没有单个用例。


最后,如果没有一个单一的整体用例,我们就需要工具,以便产品经理和设计人员可以在不同路径的花园中想象客户的路径。 我们如何引入和评估新功能? 我们如何跟踪该用户使用我们的应用程序时经过了哪些步骤? 我们如何防止应用程序变成大量的意大利面条代码?


沟通与培训


对于那些远离产品开发过程的人们来说,要以这种新的眼光看待软件开发将尤其困难。 经理习惯于照顾单个用户的路线,品牌的唯一声音以及与客户互动的相同和普遍的经验。 当我们开始个性化用户体验时,仅从一个角度谈论软件解决方案的机会就消失了。


我们需要教育利益相关者这种新方法的价值,并帮助他们在这种情况下考虑自定义脚本和品牌声音。 有必要开发确定最常见路线的方法。 并为经理提供工具,以代表特定子组的用户研究产品,以便他们可以从不同的角度获得与针对不同用户个性化的产品交互的经验。


统计工具


在没有A / B测试的世界中,最有可能的是,我们将不得不摆脱传统上用来优化Web应用程序的许多工具。 我们对产品经理和营销人员进行启动和解释A / B测试的所有努力都将无关紧要。


在这个新世界中,我们将需要开发研究和可视化不同大小样本的新方法。 我们将需要新的,更高级的比较方法,以免陷入多重比较的陷阱


结论


考虑到我们用户群的真正多样性,我们可以改善与大量用户的互动,这非常有价值。 不幸的是,在改变技术开发和实施方法时经常发生的这些优点是昂贵的。 从现在到实现一个激动人心的,更加个性化的未来,我们还有很长的路要走,我相信这一旅程将是令人激动的。


作者注:
为了简单起见,我将所有有关置信区间和统计意义的讨论都排除在外。 不好意思


Skyeng分析总监Gleb Sologub的评论

Michael总结了当前的个性化趋势,并幻想当所有IT产品将完全针对特定用户进行个性化开发和分析的方式和方法。

到目前为止,我们已经学习了如何通过两种方式进行个性化设置:首先,通过为不同的用户细分创建单独的场景,其次,通过开发算法解决方案以在渠道的各个步骤中显示个性化内容。

因此,Skyeng当然已经针对不同年龄的用户优化了网站和培训平台的移动版本,以及这些产品的各种版本。 此外,我们进行了AB测试,并意识到来自不同地区的用户有不同的需求,然后我们根据地区对营销描述进行了区分。

在算法个性化的示例中,除了Michael引用的那些之外,还可以添加推荐产品或内容的长期使用和广泛使用的列表,以及在生成单个电影海报方面的相对近期的成功。

但是,所有这些都可以在继续使用旧的开发方法和分析的同时完成。

在Michael所描述的同一未来中,尽管进行AB测试可能并不值得,但它们将需要令人难以置信的软件模块化和一些新的分析方法来创建无数种完全独立的用户场景

Skyeng的我们已经拥有并正在扩展研究人员和分析师团队,他们正在研究这些趋势并试图将其应用于改善我们的产品。

Source: https://habr.com/ru/post/zh-CN440692/


All Articles