什么是数据驱动?

Warning:有些句子,我以自己的理解意译。也有些话很拗口,完结后再做优化。

数据驱动

定义:
一个数据驱动的组织会以一种及时的方式获取、处理和使用数据
来创造效益,不断迭代并开发新产品,以及在数据中探索(navigate)。

有很多方式可以评估一个组织是否为数据驱动的,如:
1. 产生的数据量
2. 使用数据的程度
3. 内化数据的过程

作者认为有效地(effectively)使用数据为关键。

商务公司拥有使用数据来改善效益的历史。
任何好的销售人员天性知道如何去向消费者推荐采购。

那些浏览过这些商品的客户同样浏览了另外一些东东……Amazon将该技术移至线上。
这种简单的协同过滤的实现是Amazon诸多特性的一种。
这是一个对于传统搜索之外的机缘巧合的强大的机制。

数据产品是社交网站的心脏。它们的数据必然是庞大的用户数据集,形成的一张图。也许对于社交网络来说最重要的产品是某种帮助用户链接彼此的工具。任何新的用户需要找到新的伙伴,熟人或者联系方式。让用户去搜索他们的朋友可不是一个好的用户体验。如同LinkedIn,工程师发明了People You May Know(PYMK)来解决这个问题。在理论上的确很容易完成这项工作,根据已经存在的关系图,我们可以准确地发现新用户的关系网络。这样的推荐朋友比自己去选择更为高效。尽管PYMK现在很新颖,它却已经成为了每个社交网站的必备部分。Facebook不仅支撑了自身版本的PYMK,他们还监控了用户获得朋友的时间。使用精密的跟踪和分析技术,他们已经标识了让一个用户长期参与的的时间和连接数。

如果你缓慢地链接一些朋友或者添加朋友,你将不会是一个长期依赖社交网络的用户。
通过学习达到信任的活动的层级,他们已经将网站设计成为能够有效降低新人加一定数量朋友为其好友的时间。

类似地,Netflix在线电影事业完成了同样的任务。当你注册时,他们强烈推荐你添加你打算观看的电影。他们的数据组已经发现一旦你增加超过某个数量的电影,你成为一个长期用户的概率将大大增加。借助这个数据,Netflix可以构造、测试和监测产品流来最大化新人转变为长期顾客的数量。他们已经简化了高度优化的注册/试用服务,有效利用了这样的信息来快速和高效地黏合客户。

Netflix、LinkedIn和Facebook并不是仅有的使用用户数据来鼓励客户的长期参与。如Zynga,它不仅仅关注游戏,还会常态化地监测用户身份和他们的行为,生成了一个不可思议的大数据。通过分析用户在一段时间内在一个游戏中的交互行为,他们已经识别出那些直接导致成功游戏的特征。基于用户和其他用户的交互行为的数目、前n天内用户建造的房子数目、在前m个小时内他们杀死了怪物的个数等等,他们便可以知道用户将成为长期会员的概率的变化。他们找到了如何达成参与的挑战的关键点,并已经设计出产品来鼓励用户达到这些目标。通过持续测试和监测,他们优化了对这些关键点的理解。

Google和Amazon在使用A/B测试来优化网页的展示方面是先行者。在互联网发展历史上,设计者门借助直觉和本能来完成工作。这没有任何错误,但是如果你对一个页面作出修改,你需要确保这个改动是有效的。你卖出更多的产品了么?用户需要多久才能发现想要的东西?多少用户放弃了并转向了其他网站?这些问题只能借助实验、收集和分析数据来完成,这些是数据驱动公司的第二特性。

Yahoo已经对数据科学作出了很多重要的贡献。在看到Google使用MapReduce来分析海量数据后,他们认识到了自身需要同类的工具来完成自己事务这就是Hadoop,现在是数据科学家的最重要的一项工具之一。Hadoop已经由Cloudera,Hortonworks,MapR等公司商业化了。Yahoo并未停步于Hadoop,他们注意到流数据的重要性,而这是Hadoop不能给出很好的解决方案的。目前Yahoo致力于开源工具S4来解决流数据问题。

支付服务,如PayPal、Visa、American Express和Square,靠自身技术能力领先于对手。它们使用精密的欺诈检测系统来发现数据中的异常行为模式。这些系统必须在毫秒级时间做出反应,其模型需要在新数据生成后实时更新。这工作就像在不断堆叠新草的草堆中找出一根针那样。

Google和其他搜索引擎常态地监测搜索相关的度量来识别哪些情况是用户只是在耍弄系统哪些情况可以帮助改进用户体验。Google所面临的数据移动和处理的挑战是巨大的,也许比目前所有其他的公司的都大。为了支撑其业务,他们不得不发明新颖的技术解决方案,从硬件到软件如MapReduce再到算法如PageRank),其中很多方案的思想都已经流入开源软件项目中。

最强的数据驱动组织的座右铭“If you can‘t measure it, you can‘t fix it”。这是从一个牛人那儿学来的。这个态度给人一种美妙的能力来传达这种价值,其方式包括:
1. 产生和收集尽量多的数据。不管你是做商业智能还是构建产品,如果不能收集数据,你就不能使用数据。
2. 以一种积极和省时的方式来度量你的产品或策略是否成功?如果你不去度量结果,你又如何得知呢?
3. 让更多的人来观察数据。任何问题可能只是因为一些简单的原因导致。更多有经验的专家可以从不同的角度迅速发现问题出在哪儿。
4. 刺激对数据产生变化或者不变的背后原因的好奇心。在一个数据驱动的组织,每个人都在思考数据。

当然,假装自己是一个数据驱动的组织其实很简单。但是如果你试着以上面的心态来收集数据和度量你能做到的每件事,思考自己收集的数据背后的意义,你将会超前于大多数只是嘴上说说的公司。并且我需要指出的是,当我在对专业的数据科学家介绍这些内容时,并未限制其他的人来了解这些知识。每个人都应该看看数据。

-------
translation from part of the book: Building Data Science Teams

时间: 2025-01-15 20:26:53

什么是数据驱动?的相关文章

【工业串口和网络软件通讯平台(SuperIO)教程】六.二次开发导出数据驱动

SuperIO相关资料下载:http://pan.baidu.com/s/1pJ7lZWf 1.1    导出数据接口的作用 在数据集成系统项目中,要么是自已集成其他厂家的设备,要么是其他厂家集成自己家的设备,在没有统一的标准前提下,就会有各种集成数据的格式.为了满足此类的场景,为设备输出数据专门设计了接口,开发者可以继承该接口,设备在处理完数据后,会把数据自动传输到该接口,可以按规定的数据格式进行输出了. 1.2    接口功能说明 开发设备输出接口,主要考虑到在集成项目中,集成过程中或被集成

Python Unittest与数据驱动

python中有一个装饰器类DDT,通过它我们可以复用代码,达到数据驱动测试的目的,该类的官方介绍可以参考 http://ddt.readthedocs.io/en/latest/index.html 安装ddt方式很简单,直接在cmd命令行输入:pip install ddt ,完成安装即可. 下面看一个简单的例子: 1 import unittest 2 from practise.myTestPractice.api_login import * 3 import ddt 4 5 6 @d

WEB接口测试之Jmeter接口测试自动化 (三)(数据驱动测试)

 接口测试与数据驱动 1简介 数据驱动测试,即是分离测试逻辑与测试数据,通过如excel表格的形式来保存测试数据,用测试脚本读取并执行测试的过程. 2 数据驱动与jmeter接口测试 我们已经简单介绍了接口测试参数录入及测试执行的过程,因为大量的测试脚本与测试数据内聚在一起,使得我们的测试脚本的可移植性及可维护性变得很不好,所以我们接下来采取了csv格式表格保存测试数据来驱动测试的方式. 2.1 新建一个csv文件 新建一个txt文档文件,重命名文件,修改文件后缀名为csv,如test.csv,

模拟Vue之数据驱动3

一.前言 在"模拟Vue之数据驱动2"中,我们实现了个Observer构造函数,通过它可以达到监听已有数据data中的所有属性. 但,倘若我们想在某个对象中,新增某个属性呢? 如下: 那么岂不是,新增的infor属性,以及它的对象属性,没有得到监听. 此时,应该怎么处理呢? 通过走读Vue源码,发现他是采用另增属性方法$set实现的. 就是说,如果我们采用常规方法为对象增加属性(如上),我们没法得知并监控它,所以,我们为每个对象扩展一个$set方法,用于另增属性使用,即可,如下: da

自动化测试---被玩坏的数据驱动

最近在整理接口测试相关的资料,所以,看到有关资料就会多看两眼.偶看到别人发的微信公众号. Python接口测试框第一篇  --- python如何读取txt文件. Python接口测试框第三篇  --- python如何读取XML文件. Python接口测试框第四篇  --- python如何读取CSV文件. 曾几何时,也许某大牛说,搞自动化必须要把测试数据放文件里,然后通过程序读取文件.于是,大家纷纷效仿. 什么?你做自动化测试居然不读取测试数据文件,一看就是新手,没逼格. 小王啊!我们这个自

RobotFrameWork接口报文测试-----(三)demo的加强版(数据驱动测试)

在上一篇RobotFrameWork接口报文测试-----(二)demo的升级版基础上,将接口的xml的格式保存在xml文件中,然后程序如果增加一个接口,在xml文件里添加即可,无需修改自动化测试里的其他模块,然后在工具加case就可以了,但是接口取值的数据全部都是直接在case里面录入的,也就是说,每增加一条测试用例,就需要在工具内添加一条case,测试数据始终都是在工具内控制,这让以前使用excel管理过测试数据的我感觉很不爽,总感觉得把数据放到excel内,然后实现数据驱动测试. 围绕着这

SeLion的自动化测试实现三(数据驱动模型)

在SeLion框架中提供了2中主要的数据驱动方式,分别为基于Excel表的数据驱动和基于YAML文件的数据驱动方式,这两种方式各有优劣,下面通过代码详细讲解这两种方式的使用并在最后对两种数据驱动方式的使用场景. 一:基于Excel的数据驱动方式.由于Excel便于对大量的测试数据的处理和管理,所以在很多自动化测试框架中Excel存储测试数据是常用的方法,尤其基于大量数据的测试流程.SeLion中很好的提供了对excel的支持,并且完美的和testNg的dataprovider进行结合,基本的使用

在大数据驱动下必须加强积极防御“网络武器”的研发工作

"美国"网络武器"的研究已多达2千多种,其中最值得注意的是,"震网"病毒是世界上首个专门针对工业控制系统编写的破坏性病毒,被称为"网络空间的精确制导武器".它能够利用Windows系统和西门子SIMATIC WinCC系统的漏洞进行攻击.攻击西门子公司控制系统的数据采集与监视控制系统(SCADA),该系统广泛应用于能源.交通.水利.石油化工等领域,实现生产过程控制与调度的自动化."震网"病毒侵入系统后,对可编程逻辑控

webdriver 的CSV数据驱动

1.获取CSV数据内容 public static Object[][] getFromCSV(String filename) {       if (!(new File(filename)).exists()){     return null;    }    Object[][] content;    CSVReader reader;    try {     reader = new CSVReader(new FileReader(filename));     Vector<

SOAPUI中文教程---数据驱动测试

在你想测试存储在文本或XML文件的一些测试实例包含不同的请求.做使用类型为"目录"的数据源驱动的测试数据. The step-by-step guide: 1. Create DataSource 由于数据驱动测试指南中,有从公开可用的CurrencyConverter WSDL(http://www.webservicex.com/CurrencyConvertor.asmx?wsdl)创建SoapUI项目,再加入一个TestSuite和一个TestCase,并打开其编辑器: 现在加