本文目录:
- 1、【译】Netflix是怎么做A/B测试的
- 2、linux测试网速的工具
- 3、Netflix的AB测试之道
【译】Netflix是怎么做A/B测试的
文章的一开始是一些客套话,我就不翻译了,大致意思是作者参加了一个活动,活动中两个Netflix的产品设计师(product designers)做了关于A/B测试的分享,这篇文章就是作者听完之后的一些总结和思考。
首先提了一个“实验”的概念,用了“绝命毒师”的图片来解释什么是实验。确实很生动形象,也和Netflix搭上勾。这个概念很简单,以至于作者就说了她很喜欢这张幻灯片,觉得这个比喻很机智,然后就没有了。之后提了一个“科学的方法”,应该就是指A/B测试是一种科学的方法。
第三个概念是假设(Hypothesis),或者说猜想。在科学上,是指一个想法或者解释,之后可以通过分析和实验对其进行验证。在设计中,往往指的是一种理论或者猜测。假设的基本特征是事先不知道最后的结果是什么,但是可以通过实验得出,而且实验是可以被重复。就像韩春雨。
所谓的A/B测试,就是设置两组或者多组用户进行测试,其中一组为控制组,其余的为实验组。控制组使用的版本一般是默认的,或者说是原来的,没有修改的,跟其他普通的没有参与测试的用户的版本一致。而实验组的使用的版本则是修改过的。每个用户只能加入一个组。
测试进行时,需要跟踪一些重要的指标,比如时间流(streaming hours),留存率(retention)等,一旦参与者提供的数据足够得出有意义的结论,就可以在各个不同的组之间进行对比,以此来判断哪个组的表现更好,就像下面这种图,在test1中,第二个实验组表现最后,称为winner,胜利者。
公司需要通过实验来获取用户数据,因此,花费一定的时间和精力对实验方法进行整理以确保获取的数据在类型和数量上能满足要求,这样数据才能尽可能有效地解决相应的问题。如果你有注意的话,每次登陆Netflix,主页的显示是不同的,这其实就是Netflix的实验之一,用来确保你收看他们的节目。就像Netflix的一位工程师说的,如果你不能在90秒内引起用户的注意力,用户就会失去兴趣并转移到另外的活动上去。这种情况可能是由于网站没有展示出正确的内容,也有可能是展示出正确的内容,但是没有提供足够的吸引力来让读者觉得自己应该收看这个节目。
这种情况下,就可以通过A/B测试进行实验,判断出真实的原因。
早在2013年,Netflix就做了实验去验证不同的背景图像是否对观看者的数量有影响,结论是肯定的,如下图。
Netflix之后还开发了一个系统,可以自动将具有相同背景,但有不同的长宽比、裁剪、小装饰、标题的位置等的各个图像组合在一起,然后可以在其他不同的电视节目中追踪这些作品的表现。下面是一些例子,其中有绿色箭头的是表现比较好的。
最后是作者写的几点自己的体会。
当你的设计方案进入开发环节的时候,就可以使用A/B测试来调整设计方案,同时关注两个关键的指标:留存率和利润。在A/B测试中,对产品做出一些改变,然后追踪用户的使用情况,看是否这个改变能够提高留存率和收入,如果可以,就确认在产品中使用这个改变,反之,则尝试别的修改方案。这样不断通过A/B测试,就可以持续提高产品的商业指标。
很多时候用户不能想你期望的那样快速完成任务,有时候他们会找不到你放在页面上的按钮。原因可以有很多,可能是这个设计不够直观,颜色不够鲜艳,或者是技术不够娴熟,不知道怎么在一个页面的众多选项中做出决定等等。
不幸的是,在预测用户行为方面,我们的直觉可能是错误的,唯一可以证明的方法就是通过A/B测试,这是用来验证一个用户体验设计方案是否比另一个更加有效的最好的办法。这种说法在工作中得到了验证。举个例子,有一次我们想验证是否能够通过一些设计上的改变,从而提高用户点击广告之后的注册率。为此我们做出几个设计方案。一开始认为只隐藏property image(这个不知道怎么翻译,感觉是一个广告相关的,应该不是简单的图片属性之类)的方案会是最好的,但最后发现同时隐藏property image和价格的方案有最高的转化率。
最好的想法来自于源源不断的探索。在工作中,我们的产品团队一起合作完成了各种不同的项目,团队中包括了设计师、产品经理、开发者,我们一起进行探索。一些最好的想法是产品经理或者开发者试用了原型之后提出来的,而不是由设计师自己。
与用户交流的时候,要时刻记住,他们说的往往和做的不一样。这里有一个很好的例子来说明,这周我进行了一个用户测试,是关于一个联系人列表的原型。我询问用户是否经常使用分类和筛选的功能,用户说不,因为他不需要这些功能。但是当用户发现有了一个新的下拉菜单用于筛选时,他惊奇地发现这样的设计让分类和筛选变得非常方便,并且马上问到,为什么不在产品中加入这个功能。
最后这六个点是作者自己的收获,应该是听的过程中一些比较深刻的内容,所以也不是什么总结或者归纳,内容上也显得比较随意,不过确实都是一些值得思考的问题。
文中作者还附上了两个Netflix的相关链接,这里补上。
以上。
linux测试网速的工具
1、fast
是Netflix提供的一项服务,它不仅可以通过命令行来使用,而且可以直接在Web端使用:fast.com,我们可以通过以下命令来安装这个工具:
$ npm install --global fast-cli
不管是网页端还是命令行,它都提供了最基本的网络下载测速。命令行下最简单的使用方法如下:
$ fast
93 Mbps ↓
从以上结果可以看出,直接使用fast命令的话,将只返回网络下载速度。如果你也想获取网络的上传速度,则需要使用-u选项。
$ fast -u
⠧ 81 Mbps ↓ / 8.3 Mbps ↑
2、speedtest
是一个更加知名的工具。它是用Python写成的,可以使用apt或pip命令来安装。你可以在命令行下使用,也可以直接将其导入到你的 Python
项目,使用的时候,可以直接运行speedtest命令即可:
$ speedtest
Retrieving speedtest.net configuration...
Testing from Tencent cloud computing (140.143.139.14)...
Retrieving speedtest.net server list...
Selecting best server based on ping...
Hosted by Henan CMCC 5G (Zhengzhou) [9.69 km]: 28.288 ms
Testing download
speed................................................................................
Download: 56.20 Mbit/s
Testing upload
speed......................................................................................................
Upload: 1.03 Mbit/s
从运行结果可以看出,speedtest命令将直接提供上传/下载速率,测试的过程也是挺快的。你可以编写一个脚本来调用这个命令,然后定期进行网络测试,并在结果保存在一个文件或数据库,这样你就可以实时跟踪你的网络状态。
3、iperf
是一个网络性能测试工具,它可以测试TCP和UDP带宽质量,可以测量最大TCP带宽,具有多种参数和UDP特性,可以报告带宽,延迟抖动和数据包丢失。利用iperf这一特性,可以用来测试一些网络设备如路由器,防火墙,交换机等的性能。
这个工具不仅仅在Linux系统下可以用,在Mac和Windows系统同样可以使用。
如果你想测试网络带宽,则需要两台电脑。这两台电脑需要处于同样的网络,一台作为服务机,另一台作为客户机,并且二者必须都要安装
iPerf,可以通过如下命令获取服务器的IP地址:
$ ip addr show | grep inet.*brd
inet 192.168.242.128/24 brd 192.168.242.255 scope global dynamic
noprefixroute ens33
之后,我们再在服务机上启动iperf工具:
$ iperf -s
然后,我们就可以等待客户机的接入了。客户机可以使用以下命令来连上服务机:
$ iperf -c 192.168.242.128
通过几秒钟的测试,它就会返回网络传输速率及带宽。
Netflix的AB测试之道
[国外设计第145期]
几周前,我在旧金山的 Yelp 总部参加了一场 设计师与极客们的活动 Anna Blaylock和Navin Iyengar两位都是 Netflix 的产品设计师,他们分享了自己多年在千万级用户群中做A/B测试的经验。他们也展示了相关的产品案例,帮助与会者思考自己的设计。
下面是我关于他们演讲做的记录,其中包含我最喜欢的一些精华。
演讲的照片
我非常喜欢PPT的第一页—— 绝命毒师 里的这张图用得很聪明,能表现 实验 的概念。
在科学中,假设是指一个想法或一套解释,需要通过研究和实验来验证。在设计里,一套理论或猜想同样可以被称为假设。
假设的基本概念,是没有确定结果的。它经得起检验,这些测试也可以被重现。
“ A/B测试 背后的总体概念,是创造一套实验,有对照组和一个或更多实验组(在Netflix中这被称作‘单元’),对他们进行区别对待。在实验中,每个用户都属于唯一的单元,其中一个单元会被设计成‘默认单元’。这个单元代表着对照组,使用体验与所有没有加入实验的Netflix用户相同。” —— Netflix技术博客
Netflix的A/B测试是这样进行的:随着测试启动,它们会记录特定的重要指标。例如播放时间和留存率之类的因素。一旦测试者得出足够有意义的结论,他们就会进一步观察每组实验的效果,定义出各个版本中的优胜者。
许多像Netflix这样的公司通过实验保障用户数据。同样重要的是,投入时间和精力合理安排实验,确保数据的种类和数量足以有效地阐明他们感兴趣的问题。
你可能会注意到, Netflix首页 的焦点区域似乎随着登录状态改变。它们都是Netflix复杂实验的一部分,让你观看他们的节目。
我首次登录看到的首页。
PPT中的图片:用户注销后会看到纸牌屋的页面。
我第二次登录时看到的页面。
我换了另一个账号登录看到的页面。
我换了一个“儿童”账号登录看到的页面。
我未登录时看到的页面。
A/B测试的概念,是向不同用户群呈现不同内容,收集他们的反应,通过结果来建立未来的策略。Netflix工程师 Gopal Krishnan 写的 这篇文章 里提到:“如果不在90秒内吸引一个用户的注意力,这个用户就很可能失去兴趣,去做其他的事情。这些失败的情况,往往是因为我们没有呈现正确的内容,或者我们呈现了正确的内容但没有提供足够的观赏理由。”
Netflix早在2013年做过一个实验,用来研究是否可以通过创造一些不同版本的作品,来提高某个标题的收视率。结果如下:
图片来自 Netflix技术博客
Krishnan补充道:“这个信号很早提示我们,用户对于封面变化的敏感。这个信号也表明,还有更好的方式,可以通过Netflix的用户体验,帮助用户找到他们要的那一类故事。”
Netflix后来打造了一套 系统 ,能自动根据纵横比、裁剪、润色和不同语言的同一张背景图为作品分组。他们在TV节目上也重复这个实验,用来追踪相关作品的表现。例子如下:
图片来自 Netflix技术博客 。两张带有标记的图片明显胜过其他版本。
图片来自 Netflix技术博客 。最后一张带标记的图片明显胜过其他版本。
请看两篇博客文章,可以了解更多关于Netflix的A/B测试:
A/B测试是研究用户行为的最可靠的方式。作为设计师, 我们应该通过实验的角度,思考自己的项目 。
PPT中的图片:你的直觉未必正确。
了解用户是设计过程中最令人兴奋的部分。设计没有成品,许多的改版和迭代可以改进设计,给用户带来尽可能好的体验。
本文最初发布在 Medium 。
原文链接:
作者信息: Jessie Chen, UI/UX Designer
Jessie Chen currently works at ZapLabs , where she designs a CRM for real estate professionals. She enjoys gathering user feedback through user testing, and iterating on design ideas to solve usability issues. In her spare time, she shares ideas on Medium about how design impacts businesses.
Follow me on Twitter
【netflix测试脚本】的内容来源于互联网,如引用不当,请联系我们修改。
网友留言: