数据思维如何驱动产品设计?今日头条告诉你

网友 8年前 3.1K+ 导读

今日头条用了短短5年时间,成为移动端新闻媒体的独角兽,2016年末,完成10亿美金D轮融资,估值近110亿美元,成功挤入互联网第二梯队。如一句老话所说,世上没有平白无故的成功,当了解了今日头条如何打磨产品功能和交互设计后,笔者发现其成功是必然的,也是有迹可循的,这一切都源于自上而下的数据化思维。本文源于今日头条算法工程师曹欢欢的分享,笔者结合自身理解和思考加...

今日头条用了短短5年时间,成为移动端新闻媒体的独角兽,2016年末,完成10亿美金D轮融资,估值近110亿美元,成功挤入互联网第二梯队。如一句老话所说,世上没有平白无故的成功,当了解了今日头条如何打磨产品功能和交互设计后,笔者发现其成功是必然的,也是有迹可循的,这一切都源于自上而下的数据化思维。

本文源于今日头条算法工程师曹欢欢的分享,笔者结合自身理解和思考加以总结梳理,力求整理出每个产品经理都可以在实操中运用的科学设计产品方法论。

本文共分六个模块:

一、今日头条前世今生–介绍今日头条近期数据,今日头条的源起

二、数据思维做产品–CEO张一鸣如何解读数据思维,详述三个方法论

三、数据思维指导算法演化–头条推荐算法概述

四、今日头条的A/B测试系统–超级强大的科学实验系统

五、需求从何而来?数据收集到何种程度?–科学严谨的实验态度处理需求,收集全量用户行为

六、如何低成本完成有效A/B测试–A/B测试的原则,注意事项、实践方法和案例分析

一、今日头条前世今生

介绍方法论之前,我们来看看今日头条究竟有何成功之处。今日头条是一个个性化信息推荐平台,基于大数据和人工智能,做到信息推荐的千人千面,2017年6月数据显示,今日头条日活用户超7700万,月活用户近1.8亿,日均使用时长超76分钟,日均启动次数超13次,如此活跃的数据,出现在一个新闻信息类应用实属罕见。接下来,笔者带着大家来一起探秘今日头条的成功之道——数据思维打磨产品。

数据思维如何驱动产品设计?今日头条告诉你 数据分析 第1张

今日头条从起名字开始就运用了数据思维,创始团队没有头脑风暴,没有投票,没有老大拍板儿,而是采用科学实验的方式,通过数据观测确定了头条的名称。实验方法如下所属:

首先,将appstore上各类免费榜单的前10名整理出来,然后根据名字归类(朗朗上口白话类,内函情怀类,模拟特殊声音类,公司名+用途类等),分析那各类数量占比。分析结论是朗朗上口的大白话效果最好。

其次,分渠道A/B测试,确定先验效果类似的发布渠道,分别投放,界面功能logo完全一样,统计各个渠道的用户下载和活跃等核心数据指标,《今日头条》效果最好。

二、数据思维做产品

今日头条CEO张一鸣所定义的数据思维包含三个维度:

收集数据。无偏,全面,客观。

做出决策。根据数据做决策,抛弃主观经验,情感因素,做到客观解释。

高效执行。3个方法论(归纳总结,A/B测试,双盲交叉验证)+高效A/B测试系统

1、归纳总结–最朴素的数据思维工具

按照特定维度对目标排序,分析top对象在特定属性上的共同点。

2、A/B测试——科学产品观的关键

(1)A/B测试定义

A/B测试是一种把实验对象随机分组,把一个或多个测试组的表现与对照相比较,进行测试的方式。

(2)A/B测试目的

通过科学实验设计,在保证采样样本无偏,有代表性的前提下,流量分割与小流量测试等方式,获得具有代表性的实验结论,并确信该结论在推广到全部流量可信。

注意事项:测试组和对照组不要设计多个变量同时测,一次实验只设置唯一变量,同时实验组内分小组,尽量保证组间数据随机分布,便于分析数据波动影响。测试前需要定义核心观测指标,通过指标数值变化,确定实验结果的好坏。

数据思维如何驱动产品设计?今日头条告诉你 数据分析 第2张

3、双盲交叉验证——确保信息审核高效快捷

交叉验证用得最多的场景是涉及到人工运营的场景,在评估时需要人工介入为文章分类,以保证推荐的准确,那么评估和审核都需要依赖人,人员能力的差异和流动性导致评估和审核标准会变来变去,这就需要机器可以监控人的行为,每个评估的运营人员有自己一个任务队列,把一个要评估的样本至少放到两个以上的评估队列里面去,就意味着一个样本最少有两个人看过,如果他们意见不一致,我们有一个资深的仲裁小组进行仲裁。

三、数据思维指导算法演化

推荐算法是今日头条产品的灵魂。头条推荐算法是一系列算法的策略的组合,每一个子系统的改进都会对系统整体造成影响。

推荐排序模型:数百亿特征,涵盖你能想到的一切可以帮助做判断的信息。

推荐召回模型:若干策略独立的负责判断,哪些内容有资格进入排序算法。

数据思维如何驱动产品设计?今日头条告诉你 数据分析 第3张

一个排序模型,搭配多个召回模型,通过召回模型做初筛,然后反馈给排序模型,节省99%的处理资源,推荐更快捷。

对推荐效果可能产生影响的因素:候选内容集合的变化、召回模块的改进和增加、推荐特征的增加、推荐系统架构的改进、规则策略的改变。

四、今日头条的A/B测试系统

数据思维如何驱动产品设计?今日头条告诉你 数据分析 第4张

今日头条同时在线测试的实验有很多,每月多达有上百个之多,如何科学的分配实验流量,减少沟通,降低实验成本,做到实验结果可视化展示是必须思考的,于是出现了今日头条的A/B测试系统。

系统实验创建属性:实验名称,实验时间,实验类型(共享or独占),过滤流量条件,实验组ID

实验动作概述:动作收集,日志处理,分布式统计,写入数据库,数据可视化。

独占实验。是指实验模型比较复杂,任何其他因素改变可能影响到实验结果准确性,所以用户不可以与其他实验共享,申请完成后,系统自动随机从流量桶中分配出流量用于实验,留出一半未调整用户,作为对照数据组,将实验数据桶分开,观察数据波动性,防止测试结果有偏。

数据思维如何驱动产品设计?今日头条告诉你 数据分析 第5张

共享实验。是指实验模型只测试某类特定属性用户,可以与其他非相关属性的实验共用实验对象,流量桶分配逻辑与独占实验类似,但是当其用户可以分配到其他实验中,复用部分用户。如下图所示:

数据思维如何驱动产品设计?今日头条告诉你 数据分析 第6张

基于这套系统,基于数据分析协助产品功能迭代(经历几十个版本迭代),数百个有效改进上线,人均有效点击提升40%,人均停留时长提升50%。

五、需求从何而来?数据收集到何种程度?

1、需求从何而来

互联网产品的需求一般来源于用户反馈或焦点小组需求收集,是一种信息的归纳总结,但是这部分数据是有偏信息,不可以简单粗暴的将用户反馈的需求作为直接需求,所谓会哭的小孩有奶吃,很多时候,用得很好的用户不反馈,用得不好的才反馈。如果你改变了,是不是伤害了那些不反馈的用户呢?

其实你是不知道的,所以这些需求我们并不一定要做,只是先做一个候选实验的需求池。如果一个需求两三周持续在反馈,这个需求可能是一个强需求,那么做好了小渠道测试,用数据说话。

数据思维如何驱动产品设计?今日头条告诉你 数据分析 第7张

2、WAP页面VS原生功能

(1)原生功能

优势:响应速度,复杂交互流畅,异常状态显示,缓存效果等。

劣势:更新需要发版,出现问题无法快速调整。

发布方式:先在小渠道发版测试,与老版本对比,如果一上来留存率降低5%,那这个改动肯定有问题。如果说波动在正负1之间,这个东西可能有用,可以大渠道发版A/B测试。今日头条可以做到从应用市场提交同一个版本,但是用户下载之后,通过服务端的远程控制,让每个人看到的界面是不一样的,确认没有问题后,将改进合并到主开发分支。

(2)WAP页面

优势:随改随上,反应迅速

劣势:一些交互和问题场景没有原生体验好

发布方式:利用A/B测试系统,随测随发,出现问题随时调整下架。

数据思维如何驱动产品设计?今日头条告诉你 数据分析 第8张

3、“全量”用户行为数据收集

根据人的特征(职业,年龄,性别,兴趣爱好,机型,短期点击行为,搜索行为,收藏行为)

根据环境特征(场景,时间-饭后或周末,网络环境-wifi或移动流量)

根据文章特征(文章时效性,文章热度,相似文章,点击和不点击是有偏的,停留时间,阅读的细节行为收集)

阅读细节行为收集,今日头条已经做到了近乎于眼动测试的程度,通过数据可以分析用户阅读文章的滑屏速度,阅读习惯,阅读速度,什么地方快速滑过,什么地方仔细阅读,最终,以量化的形式反馈给内容创作者,帮助其持续优化内容编辑。

数据思维如何驱动产品设计?今日头条告诉你 数据分析 第9张

4、创业初期产品的核心竞争力模型

产品核心竞争力=拉新能力*留存能力*变现能力。每项能力比对手强20%,整体差距超过70%,数据思维可以帮助团队把每一项能力发挥到极致。

六、如何低成本完成有效A/B测试

初创团队可能没有太多资源开发多个版本进行多渠道测试,一些大公司也不会如同今日头条专门设计一个A/B测试系统,那么如何在没有很多预算的情况下完成简易有效的A/B测试呢?首先,要理解A/B测试的原则,其次,一定要躲过一些坑,最后,就是根据实际情况确定测试方案(开发参与实现方案讨论)。

1、A/B测试原则

(1)多方案同时段并行测试;

(2)测试方案只有一个唯一变量;

(3)用户行为数据收集;

(4)定义核心指标。

2、A/B测试注意事项

(1)一定要是单变量。如果两个版本,每个版本有2处不同,最终分析的时候很难确定是哪个优化导致的指标变化。

(2)统计置信度。受到样本量影响(样本太少,样本代表性);置信水平(A方案49%,B方案51%,可能数据分流导致的偏差所致,分流有偏造成的影响)

(3)设置对比观察数据组,即没有任何调整的情况各项数据指标如何,用于实验效果对比分析。

3、实践方法

(1)从测试页面类型分类

原生功能A/B测试。选择渠道流量类似的小渠道进行小渠道发版测试,确定方案后,在主流渠道发版A/B测试。

WAP/H5页面A/B测试。通过后端或前端控制,进行A/B测试,具体测试流程见下文:

A/B测试实践全总结

一:基本概念

网站设计中,我们经常会面临多个设计方案的选择,比如某个按钮是用红色还是用蓝色,是放左边还是放右边。传统的解决方法通常是集体讨论表决,或者由某位专家或领导来拍板。虽然传统解决办法多数情况下也是有效的,但A/B 测试(A/B Testing)可能是解决这类问题的一个更好的方法。

所谓 A/B 测试,简单来说,就是为同一个目标制定两个方案(比如两个页面),让一部分用户使用 A 方案,另一部分用户使用 B 方案,记录下用户的使用情况,看哪个方案更符合设计目标。当然,在实际操作过程之中还有许多需要注意的细节。

A/B 测试最核心的思想,即:

多个方案并行测试;

每个方案只有一个变量不同;

以某种规则优胜劣汰。

需要特别留意的是第 2 点,它暗示了 A/B 测试的应用范围,——必须是单变量。

另外,虽然 A/B 测试名字中只包含 A、B ,但并不是说它只能用于比较两个方案的好坏,事实上,你完全可以设计多个方案进行测试,比如ABC测试,“A/B 测试”这个名字只是一个习惯的叫法。

回到网站设计,一般来说,每个设计方案应该大体上是相同的,只是某一个地方有所不同,比如某处排版、文案、图片、颜色等。然后对不同的用户展示不同的方案。

要注意,不同的用户在他的一次浏览过程中,看到的应该一直是同一个方案。比如他一开始看到的是 A 方案,则在此次会话中应该一直向他展示 A 方案,而不能一会儿让他看 A 方案,一会儿让他看 B 方案。

同时,还需要注意控制访问各个版本的人数,大多数情况下我们会希望将访问者平均分配到各个不同的版本上。要做到这些很简单,根据 cookie (比如 cookie 会话ID的最后一位数字)决定展示哪个版本就是一个不错的方法。

要实现 A/B 测试,我们需要做以下几个工作:

1、开发两个(或多个)不同的版本并部署;

2、收集数据;

3、分析数据,得出结果。

二:实践方法

数据思维如何驱动产品设计?今日头条告诉你 数据分析 第10张

从左到右,3条较粗的竖线代表了 A/B 测试中的3个关键角色:客户端(Client)、服务器(Server)、数据层(Data)。从上到下代表了3种访问形式:

无 A/B 测试的普通访问流程(Non AB test)

基于后端分流的 A/B 测试访问流程(Back-end AB test)

基于前端分流的 A/B 测试访问流程(Front-end AB test)。

A/B 测试需要将多个不同的版本展现给不同的用户,即需要一个“分流”的环节。从上图中我们可以看到,分流可以在客户端做,也可以在服务器端做。

传统的 A/B 测试一般是在服务端分流的,即基于后端的 A/B 测试(Back-end AB test),当用户的请求到达服务器时,服务器根据一定的规则,给不同的用户返回不同的版本,同时记录数据的工作也在服务端完成。

基于后端的 A/B 测试技术实现上稍微简单一些,不过缺点是收集到的数据通常是比较宏观的PV(Page View)信息。虽然可以进行比较复杂的宏观行为分析,但要想知道用户在某个版本的页面上的具体行为往往就无能为力了。

基于前端的 A/B 测试则可以比较精确地记录下用户在页面上的每一个行为。它的特点是,利用前端 JavaScript 方法,在客户端进行分流,同时,可以用 JavaScript 记录下用户的鼠标行为(甚至键盘行为,如果需要的话),直接发送到服务器记录。

下面,我将重点介绍一下我们在基于前端的 A/B 测试上的一些实践。

首先遇到的问题是如何分流的问题。对于大部分需求来说,我们希望各个版本的访问人数平均分配。可以根据某一个 Cookie ID 来划分用户,比如“123.180.140.*.1267882109577.3”,可以根据这个 Cookie ID 的最后一位(在本例中是“3”)来划分人群,比如单数的显示 A 版本,偶数的显示 B 版本。

正确展示对应的版本后,就要开始采集需要的数据了。当前版本有多少 PV (Page Views,访问量),如果需要记录这个数据的话,在正确版本加载完成之时就要发送一个打点信息。不过很多需求中,具体版本的 PV 的精确数值可能不是很重要,而且要收集这个信息需要多一次打点操作,所以一般情况下这个数据是可选的。

必须的数据是测试区域内用户的点击信息。当用户在测试区域点击了鼠标左键(无论这个点击是点击在链接、文字、图片还是空白处),我们就需要发送一条对应的打点信息到打点服务器。一般来说,这个打点信息至少需要包含以下数据:

当前 A/B 测试以及版本标识

点击事件的位置

点击时间戳(客户端时间)

当前点中的URL(如果点在非超链接区域,此项为空)

用户标识(比如 Cookie ID)

用户浏览器信息


营销活动的A/B测试。通过短信、站内消息或公众号唤醒用户,可以进行用户分桶后批量通知,观察后续用户行为操作。或是通过活动banner引导入活动详情页,通过活动页引导的A/B测试与WAP页面类似。

(2)从测试时间点分类

实时分流测试。实时分流测试需要开发参与,进行服务器分流或数据库分流测试,并且进行数据埋点,用于用户行为分析。

定性后向分流测试。从历史数据中筛选出测试用户组和对比观测用户组,数据选择需要足够样本量,否则测试结果的置信度会很低,这种后向通知模式比较容易执行,但是并不适用所有场景,常用语召回用户,活动通知使用,通过短信和微信服务号/订阅好通知消息进行唤醒。

样本量足够的情况下,可以考虑实验组数据内部再做分组,如同今日头条系统实现的部分,观察用户行为波动性,保证测试结果置信度更高。

4、案例实操:P2P平台用户投资引导A/B测试

我们以P2P平台为例,假设P2P平台月新增1万注册用户,9000用户注册未投资,以往通过短信告知用户下发投资卷召回用户,效果非常不明显,现在将9000用户随机分成3组,每组3000用户,分别是1组(对比观测组),2组(红包召回组),3组(话费召回组),短信文案知识红包和话费区别。观察三组用户在短信发出后一天内的行为变化,核心指标定为登录APP行为。

红包和话费充值初期数量不会很大,可以考虑设计成手动下发,如果用户投资则固定时间充值,无需相应开发。

通过对比用户登录和投资行为,可以很明显的看出何种召回方式效果更好,因为是小数据样本检测,充值量初期不会太大,可以节省话费充值对接开发,测试效果出来,优化完善,确认召回方案后再进行开发才相对高效,因为很可能新召回策略并不比原有策略有效。

本文地址: https://shyhot.com/shuju/20170722772.html

瞎扯新时代

请使用手机自带浏览器扫描,一定不要使用QQ微信
微信打赏二维码宅男深夜APP
支付宝打赏二维码资源下载站
扫一扫分享/收藏

本站所收集的资源来源于互联网公开资料,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。本站部分作品是由网友自主投稿和发布,本站仅为交流平台,不为其版权负责。

数据分析