数据科学家所需的大脑训练

前言

让我们以一个小练习开始本文。请拿出笔和纸,一有答案就写下来。不要反复思考,应该在15秒内完成。

请在纸上写下对于“一个成功的数据科学家需要哪些技能?”的问题的答案。

很多读者可能已经写过代码,有着关于分析工具、统计学等等的知识。要成为一个成功的数据科学家,这些当然是必须的,但还远远不够。

区分一名分析学家/数据科学家好坏与否的最重要的技能之一是:面对复杂问题,确定分析框架,简化假设,分析问题,然后找到解决方案。至于那些分析工具只是用来解决问题的手段和方法而已。

在本文中,我们将通过一个案例分析来学习系统化解决问题的方法和步骤。

你会学到什么呢?

在这里你会发现用实际问题来训练你的大脑在解决复杂问题的过程中以分析的方法进行思考。这个大脑训练不仅可以把解决问题的新方法介绍给你,还会使你在跟数字打交道时反应更快。

我以前的一篇文章“how to train your mind for analytical thinking?”应该会给你一个良好的开端。(文章地址:http://www.analyticsvidhya.com/blog/2014/01/train-mind-analytical-thinking/)

实际问题

这是我每天的作息表:

每个工作日,我上午10:30准时出门上班。有时考虑到我当天要完成的工作量,我会开快些以便尽量早到(当然是在保证安全的前提下)。

然而,在过去的5天内,我发现无论在每个红绿灯之间的平均速度如何,我几乎都是在同一时间到达办公室。这让我感到有些好奇,每天上班路程上所要花费的时间是否取决于我的车速?换句话说,总平均速度都会被红绿灯调整到同一水平,而不取决于我们开车的速度。

为了解释地更清楚,请思考一个简化后的场景:

两辆汽车同时从A点,即第一个红绿灯出发。B点是另一处信号灯(,等待时间为60秒,通行时间20秒。A和B之间的距离为600米。第一辆车的启动速度为6米/秒,第二辆车的启动速度为5米/秒。哪一辆车会先通过红绿灯(B点)呢?下面是一些假设:

1. 红绿灯是根据汽车的平均速度来设置的,它会在第一个红绿灯变绿之后120秒(600米/(5米/秒))变绿。

2. 绿灯会持续20秒,红灯持续60秒(20*3)

假设两辆车都是从0秒出发。

车1到达B点所需的时间 = 600/6 = 100秒

车2到达B点所需的时间 = 600/5 = 120秒

B点为绿灯的时间区间为:(40,60);(120,140); (200,220); (280,300)

因此,汽车在61秒或者140 秒时到达B点并不影响通过第二个红绿灯的时间。让我们来计算在不影响汽车通过第二个红绿灯的情况下的最小速度和最大速度。

最小速度 = 600米 / 120秒 = 5米/秒 = 18 公里/小时

最大速度 = 600米 / 61秒 = 9.8 米/秒 = 35 公里/小时

不管你的速度是18公里/小时还是35公里/小时,你都会在同一时间通过B点。通常来说,在交通高峰期,驾驶的速度不可能在这么大的范围内变化,因此现在我的猜测看上去是有道理的。我可能无法控制从家到办公室所需要的时间(当然,这是把问题简化了很多之后的情况)。

让我们把问题复杂化一点!

现在我们有四个红绿灯 A,B,C和D。同样的,两车从A开始 0秒出发,A到B、B到C和C到D的距离相等。那么问题变成,哪辆车先通过红绿灯D。

不需要用到数学知识,就能得到答案。如果两车在同一时间通过B,由于A到B与B到C及C到D距离是一样的。因此两车会同时通过D。这个场景事实上更极端,如果一辆车以平均时速18公里行驶,另一车以平均时速35公里行驶,他们还是会同时通过D。这进一步验证了我前面的假设。

这个问题归结为:

“在我开车去上班的时候,我是不是只是一个受交通规则控制的无助的木偶?”

让我们试试把它归结为一个参数方程

在本文中难以全面分析实际情况,因此我们在一些假设上进行分析:

1 红绿灯显示为绿灯的时间为 t 秒, 之后显示为红灯时间为3t秒;

2 在路上汽车的平均速度为 v米每秒;

3 开快车的速度是汽车平均速度的x倍;

4 道路长度为L米(两个红绿灯之间距离为L米)。

到目前为止,我们已经明白,就算我们解决了处于一对红绿灯或更多对红绿灯之间的问题也不重要。如果开快车的驾驶员能够在红绿灯显示绿灯期间超过以平均时速行进的汽车,那么答案就会不同,否则开快车是没有用的。

因此,要让这个结果发生所需要的时间差就是3t。下面是解决问题的最终方程式:

普通车用时L/v秒

快车用时L/vx秒

简化后

L/v –Ll/vx > 3t

已知x, v,L和t都是正数,方程式可以进一步简化:

xL- L – 3tvx > 0

x (L- 3tv)> L

你成功了!我们知道L总是正数,因此为了让上面的方程式成立,x和(L-3tv)也一定要是正数。也就是说,如果 3tv 比L 大,你就没机会打败那些红绿灯。例如,如果t= 30秒, v= 5米/秒,L 为145米,即使你的车速跟子弹一样快,你也没有机会。

让我们设定其中几个参数,然后更深入地理解一下方程:

假设L为600米,那么方程变成:

x(200 – tv) >200。

因此,这里有一些经验法则让你有可能打败那些红绿灯:

1. 尽量减小 t (红绿灯变化周期): 在红绿灯变化交替很快的快速区域,你可能打败那些红绿灯。

2. 尽量减小 v (道路上车辆的平均速度):如果车辆平均速度很慢,车速快的就能超过车速慢的。

3. 尽量加大x (车速相对于平均车速的倍数): 如果我们开得超级快,我们还是能打败红绿灯的。但是注意如果 vt大于200,你就不可能赢。

让我们试试将一些关系进行可视化。

在班加罗尔,t的平均值大约是20秒,平均车速 v 为 5米/秒。那么方程式就是:

x (L – 300) >L

从上图中可以看出,只有当 x 和L大到可以落在阴影范围内时,我们才有可能击败红绿灯。

让我们来总结一下我们的发现:

1 如果某段路的长度比三倍的绿灯时间和平均车速的乘积小,那么你开多快都没用。

2 如果下列条件合适,我们才可能打败红绿灯:

a x值大。 我们开得飞快(不安全的选择)

b L值大。比如在高速路上开快车是有道理的。

c t值小:在红灯显示周期很长的路段开快车没有意义。

d v值小:如果在路上的平均车速真的很慢,我们还是可以打败红绿灯。我们已经知道了!

结语:

我希望你可以很享受解决这个交通问题,当然你的思维受到了挑战,这也是本文最初的目标,对吧?

本文中,通过红绿灯的例子和应用一些基本物理学概念,我解释了一些必要的技能,这些技能是成为一个数据科学家不可动摇的基础。

你是否欣赏这篇文章呢?你以前有没有思考过这一类问题呢?你觉得你能不能进一步完善优化这些计算方法来让它们更有具现实意义呢?

敬请在评论区留下您宝贵的建议和意见,谢谢!

原文发布时间为:2015-07-27

时间: 2024-10-26 03:25:54

数据科学家所需的大脑训练的相关文章

大数据科学家可不是那么好当的,五项专业特质你有吗?

大数据科学家有多牛?让我们从有史以来市值最高的科技公司苹果看起.为抢大数据科学家,苹果开出美金16万到20万(约合台币400万到600万)的年薪,以及任何你想得到的好福利:美味员工餐.健身中心.教育津贴甚至冻卵补助,但苹果不是唯一一个需要数据科学家的公司,打开领英(LinkedIn).上面至少有5万3千个数据科学家的职缺,而这还只是美国的统计数字. 美国专业招聘公司罗致恒富(Robert Halt)公布的<2015薪资指南>把大数据工程师列为今年薪资涨幅最大的六大行业之一,预计薪资年成长率9.

如何区分数据科学家,数据工程师与数据分析师

与其他一些相关工程职位一样,数据科学家的影响力与互联网同进同退.数据工程师和数据分析师与数据科学家携手共同完成这幅"大数据时代"巨作. 三者之间的定义又是如何区分的呢? 数据科学家是什么样一个存在呢? 通常情况下,数据科学家有数学或物理方面的高等学位.有博士学位的情况并不少见,硕士学位仅是一个前提条件.数据科学家精通统计建模以及如何构建与定制高级数学算法.这既在他们专业范围内,也是他们所擅长的地方.我听到过有人这样形容一个数据科学家"软件工程技能牛过多数人的酷炫统计学家&qu

数据科学家需要的技能组合

在2016年的美国,数据科学家已经被冠以"最佳工作"的头衔,数据科学家的定义以及成为一名出色数据科学家所需的技能一直处于不断的变化之中.科技和商业需求方面的进步驱使着数据科学家随着行业的不断变化而不停的进化.在这片文章中,我们将会近距离的看一看在2016年当中,作为一名数据科学家应该扮演何种角色. Dave Holtz写道,小小的"数据科学家"这样的岗位头衔,经常被充当一个空白头衔来用,其作用就是说明数据科学家这样的岗位所涉及到一系列工作,其实与其他工作有着天壤之别

把孩子培养成数据科学家吧

以前,父母往往会鼓励他们的孩子去从事一些社会地位高而且收入丰厚的职业,例如医生,律师,银行家,然而随着时间的推移,他们也许很快就要鼓励他们的孩子去追求另一条职业之路:数据科学家. 大数据一直被认为是社会发展的下一个大事件.无论是大公司还是小公司,大数据都将是他们获得竞争优势和提高利润的关键.数据分析在决策过程中日益重要,这一趋势极大地刺激了企业对具有分析能力和技术的员工的需求,从而开拓了大量大数据相关的工作职位,也使得这条职业道路越来越受到人们的追捧. "随着市场对量化分析技能的员工的需求的增加

数据科学家的争夺及美分析学专业研究生院的建立

手工免費外鏈的 好处IVY-TECHNET常春藤关于我们的公司链接出售廉价高质量软文链好东西Google优化SEO优化百度收录增加友情链接学习SEO 需求高涨的数据科学家 从技术方面来看,硬盘价格下降,NoSQL数据库等技术的出现,使得和过去相比,大量数据能够以廉价高效的方式进行存储.此外,像Hadoop这样能够在通用性服务器上工作的分布式处理技术的出现,也使得对庞大的非结构化数据进行统计处理的工作比以往更快速且更廉价. 然而,就算所拥有的工具再完美,它本身是不可能让数据产生价值的.接下来我们还

《数据科学家修炼之道》一2.3 新思维与随之而来的变化

2.3 新思维与随之而来的变化 到现在为止,你大概能认识到数据科学不仅仅是一些聪明的工具.方法论和运用方法了.这是一种对数据的全新的整体认知.很自然地,这种规则转变带来了人们在处理相关项目时的方式,如何参与亟待解决的问题,以及如何以从业者的身份使自己成长. 数据科学需要我们更系统地思考,将对问题的创见性方法与实际情况结合在一起.这就好像是以一个优秀的建筑师一样的思维方式,将艺术的角度(通过设计)与工程本身,以及时间的管理一起结合起来.规划对于使用大数据来说是至关重要的,尽管是同一件任务,但不同的

一张图帮助你从程序员晋升为数据科学家

前段时间,Opensource.com进行了一项"最好的初学者编程语言投票活动",我们也对此进行了报道(具体内容请戳:最受初学者青睐的编程语言是Python),调查结果显示Python是最受初学者欢迎的编程语言,甚至Python已经成为了入门级计算机科学课程的首选语言. Python不仅学习起来很简单,可以应用的范围也很广,许多专业领域都有涉及.所以将Python语言作为职业晋升或者职位转变的敲门砖是再合适不过了. DataCamp搜集了很多信息,整理了一张Python开发者和数据科学

伪数据科学家 VS 真数据科学家

如今数据科学书籍.认证和文凭,如雨后春笋般层出不穷.但许多仅仅是镜花水月:许多人钻了这一新名词的空子,将旧酒(比如统计学和R编程)放在了"数据科学"这个新瓶里. 本文选自<数据天才:数据科学家修炼之道>. R语言编程跟伪数据科学为何扯上了关系? R是一种有20多年历史的开源统计编程语言及编译环境,是商业化产品S+的后继者.R一直以来都局限于内存数据处理,在统计圈子里非常流行,并因其出色的可视化效果为人称道.一些新型的开发环境通过创建R程序包或者将其扩展到分布式架构里(比如将

Facebook数据科学家解密数据分析驱动用户增长

本文内容来源于作者在知乎的一场直播,内容关于如何通过数据分析驱动用户增长.由于 Facebook 有严格的保密要求,所以这次直播内容不会透露属于内部消息的数据.产品或者策略.直播里提到的例子如果涉及到 Facebook ,都会是已经公开的信息(一般是 Facebook F8 大会提到过的或者 Engineer blog 上的内容).  先简单介绍一下我自己.我是清华生物系本科和硕士毕业,之后去北卡大学念药物药理学的博士,中间发现自己不适合走生物科研的路,所以在博士开始两年多的时候决定转硕士走人.