成为数据科学家,需具备这些技能

文章节选自《机器学习:北美数据科学家的私房课》

文末评论赠送本书,欢迎留言!

目前数据科学和数据科学家成为了流行词汇。当有人问你干什么,你回答说数据科学家,对方会恍然大悟,觉得特别高大上,噢,数据科学家啊,听说过。是啊,没听说过数据科学家那就out了。如果接着问,数据科学家具体干什么的?然后就没有然后了。

不知道你们有没有听说过这样一则轶事,美国最高法院法官PottrStwart被问到什么是淫秽时,他回答:“看下才知道。”这和数据科学很类似,很多概念,在大而化之的时候都可以存在,大家口耳相传,聊的不亦乐乎,但一追究细节,立即土崩瓦解。那么什么是数据科学家呢?我从谷歌查询了数据科学家的定义,下面是其中的一些:

住在加州的数据分析师;

数据科学家是商业(数据)分析师的进化版;

比软件学家更懂统计,比统计学家更懂软件科学的人;

拥有出众数据分析能力的BI咨询师,尤其是能用大量数据增加商业竞争力的人;

会编程,懂统计,能通过多种方式从数据中掘金的人。

此外,很多其他职位其职责都和“从数据中获取信息”有关,比如:数据分析师,BI咨询师,统计学家,金融分析师,商业分析师,预测分析师……这些不同职业有什么区别?即便都是数据科学家,教育背景等也是千差万别的。由于媒体的炒作以及对“数据科学家”这个名称的滥用,尽管总的分析行业正在飞速发展,但大家对这个行业从业人员的认识却越来越混乱。现在大部分商业领域所谓的分析都达不到“科学”的程度,而仅仅是加减乘除的游戏,数据科学工作职位比较如图1-1所示。

图1-1

这些不同的职位要求有何不同?在北美总体说来:

金融分析师一般有金融方向的MBA学位。他会用电子表格,知道会计软件,分析各部门的预算数据,分析实际经营结果和预测之间的差别,做一些预测,但这里的预测不会涉及复杂的机器学习和统计模型。

数据分析师一般有MBA学位,有一些计算机背景,很擅长使用电子表格,会用高阶的电子表格编程功能如VBA、自定义函数、宏。根据情况,会使用一些BI的软件,如Tablau,主要都是用鼠标点拖的方式。会用SQL从数据库中读取数据。我所见的商业分析师拥有很少(或没有)统计知识。所以这部分人有处理数据的知识,但是没有统计学的知识,能做的分析非常有限。

统计学家一般多在药厂、生物技术公司,做一些非常传统的混合效应模型、方差分析等生物统计分析。由于行业要求,多用SAS而非开源软件R。

BI咨询师,一般也是工商管理专业,有MBA学位,受传统的商学院教育(熟悉4Ps或6Ps,4Cs,使用SWOT法分析市场),熟练使用电子表格,很少或没有其他技术背景。

数据科学家,多是数学/统计、计算机、工程学专业出身,会使用R,Python等多种编程语言,熟悉数据可视化。大多数在入职前没有太多市场营销知识。掌握高等概率统计,熟悉如下概念:抽样,概率分布,假设检验,方差分析,拟合优度检验,回归,时间序列预测模型,非参数估计,实验设计,决策树,马尔可夫链,贝叶斯统计(很快就能在白板上写下贝叶斯定理)。

数据科学家都分布在哪些行业呢?根据BurtchWorksExcutivRcruiting在年4月发布的“数据科学家薪资调查报告”,科技(包括互联网)公司是数据科学家最大的雇主。其次是一些为其他公司提供如广告、市场调查、市场分析等商业服务的公司。这两者之和超过了50%。年创业公司雇佣了29.4%的数据科学家,年这个比例降至14.3%,原因不是创业公司招的数据科学家职位少了,而是大公司招入的数据科学家增长迅速,整体基数变大。

总体来说,数据科学家就业前景在北美是非常好的。调查还显示,在北美,大部分(70%)数据科学家工作经验还不到10年,因此数据科学还是个很年轻的行业。现在,大家对数据科学领域应该有个大致的感觉了。下面我们对其进一步探讨。

什么是数据科学

50年前,JohnTuky他老人家就预言有个类似今天的数据科学的东西会出现。早在年,他在“数据分析的未来(ThFuturofDataAnalysis)”中就嚷着要对学术统计进行改革。这篇文章当时发表在“数理统计年鉴(ThAnnalsofMathmaticalStatistics)”上,他的观点震惊了许多统计界的同事,这都是一群根正苗红的数理统计出身的大神们,那时数理统计年鉴中的文章都是满满的数学公式推导,从定义、定理到证明,逻辑缜密,理论精确。当然牛人最大的特点就是可以随时任性。John推导了大半辈子公式,突然有一天发现统计不是这么玩的,于是他跳出来说:

“很长一段时间我觉得自己是统计学家,对统计推断情有独钟,将从小样本上研究得到的结论推广到更大的群体。但随着数理统计的发展,我越发觉得这个路数不大对……总的来说,我觉得自己感兴趣的是数据分析,它包括:分析数据的过程,解释该过程得到结果的技术,合理计划收集数据的方案,使得之后的分析过程更方便准确,以及所有的分析中需要用到的仪器和数学理论。”

用简短的一句话概括就是:仅仅研究数学理论不是数据科学,数据科学的内容涵盖更广。

美国密歇根大学在年9月宣布了一个1亿美金的“数据科学项目(DataScincInitiativ)”,计划在未来4年聘请35名新教授,支持与数据相关的跨学科研究。大学媒体大胆地宣称:

“数据科学已经成为第4大科学发现手段,前3个为:实验、模型和计算。”

这里的数据科学指的是什么?该项目的网站上有如下对数据科学的描述:

“数据科学是科学发现和实践的结合,其包括对大量类型各异的数据进行收集、管理、清理、分析、可视化和结果解释。其应用遍及各种科学、平移和交叉领域。”

如前所述,数据科学是一个新兴领域。在美国,对数据分析类专业人才的需求不断上升。研究估计[2],从到年,美国预计有~万个工作岗位要求数据分析技能,大部分这些岗位的人才需要经过特殊训练。前面已经介绍过各种和数据分析相关的行业,这些行业对专业训练的要求参差不齐。其中数据科学家的门槛是最高的。成为一个数据科学家不是件容易的事。不可否认,即使是数据科学家这个职业名称,当前也被滥用了。这些工作的本质都是从数据中获取信息。

我是这样定义数据科学的:

数据科学=数据+科学=从数据中获取信息的科学

这是一门新的科学,有各种因素推动了这门科学的产生。John提到了如下的4个驱动因素:

正统统计学理论;

计算机和电子显示设备的高速发展;

很多领域内更多更大的数据提出的挑战;

定量分析在更广的领域受到重视。

很难想象这些观点是在年提出的,现在看来一点也不过时。当前这4个推动力都已经存在,这也是数据科学兴起的原因。

7年之后,Tuky和Wilk在年又将这门科学和已经存在的科学进行对比,进一步限定了统计学在数据科学中所扮演的角色:

“……数据科学是一个困难的领域。它需要和人们能用数据做什么和想用数据做什么这样的外在条件相适应。从某种意义上说,生物比物理困难,行为科学比这两者都难,很可能总体数据科学的问题比这三者还要难。无论在现在还是短期的将来,要建立一个正式的能够给数据分析实践提供高效指导的数据科学的结构还有很长的路要走。数据科学可以从正规正统统计学那里获得很多,但它们之间也需要保持适当的距离。”

数据科学不仅是个科学领域,而且和其他已经存在很久的科学领域一样困难。统计理论只在数据科学中扮演了部分角色。

但数据科学是纯科学吗?

什么样的东西能够称为科学?我们看看JohnTuky在50年前是怎么说的[1]:

怎样才能称为科学呢?回答因人而异。但下面3点大多数人都同意:

智力内容(intllctualcontnt);

用能让人理解的方式组织起来;

实践是检验其结果的最终标准。

第1条没有提供太多的信息,毕竟太多东西都有智力的内容,这个没有区分度。

第2条也没有办法将科学和艺术区别开来。

第3条我觉得才真正是区分科学和艺术的硬标准,也就是可证伪性。

数据科学符合前2条,但是不总是可以证伪的。对于预测消费者是否会再次购买这样的问题,可以用真实发生的行为来评估模型表现。以及很多交互校验(cross-validation)的过程也能够用来评估模型。但对于很多市场调查数据的分析,就难以严格地科学证伪,比如分析消费者的品牌认知。对于人类心理学和行为学的研究本身就是有艺术的成分,因此相关的数据科学也同时是一门艺术。但是这和瞎猜并不一样,或许可以这样描述:这是在当前信息下能得到的最好猜测。

计算机科学之父高德纳(DonaldKnuth)在他年出版的图书《计算机程序设计的艺术》中如此定义科学:

“能够教给计算机的知识就是科学。”

从这个角度上看,数据科学的艺术部分就更高了。计算机是数据科学不可或缺的一部分,可以说是最重要的一部分,但绝对不是全部。我们能完全依赖计算机取代数据科学家吗?很难。因为计算机不能和客户交流,将一个现实的商业问题转化成数据问题。计算机本身并不能决定什么数据应该收集,什么不需要。计算机无法对数据的质量做出评估。计算机无法向人解释模型结果,更无法将模型结果转化成商业决策建议。

因此数据科学还有艺术的一面,艺术部分的发挥就需要数据科学家啦!

什么是数据科学家

数据科学家=数据+科学+艺术家=用数据和科学从事艺术创作的人

数据科学家立足于科学,但不止于科学。从数据中提取出信息无疑是重要且有意义的过程,但这还不够。因为分析的终极目标是能够解决问题,实现价值。而从信息到具体应用领域的知识,进而应用所得知识创造价值,这两步都是需要一些艺术的,需要一点想象力。在第3章“数据分析流程”中我会进一步讨论这个职业中艺术的部分。科学家需要不断学习,数据科学家是一个需要终身学习的职业,其实很多职业都要求这一点。当然,你进入这个领域之前有一个门槛得要跨过去,有些基本的技能需要掌握。上面关于数据科学以及数据科学家的定义听起来非常高大上,可能有些抽象,感觉自己是个文艺青年。其实也可以用一种更接地气的方式表达:

数据科学=从数据中得到问题答案的科学

数据科学家=通过科学方法从数据中得到有实际意义的问题答案的人

数据科学结合了一整套科学工具与技术(数学,计算,视觉,分析,统计,试验,问题界定,模型建立与检验等),用于从数据收集中获得新发现、洞察与价值。使用数据科学的根本目的是解决实际问题。DavidDonoho在他年的文章《数据科学50年(50yarsofDataScinc)》[3]中讨论了当今数据科学的全貌,其中他将数据科学这个大领域分成6块:

数据探索和准备;

数据表示和变换;

数据编程计算;

数据建模;

数据可视化和展示;

数据科学的科学。

而一个合格的数据科学家,应该掌握这6个子领域的相关技能。

数据科学家需要的技能

在之前介绍北美各种和数据分析相关职位要求的时候,从技术层面上列举了一些数据科学家需要的技能。现在进一步讨论下这个职业需要的不同方面技能。

首先谈谈数据科学家的教育背景。数学、统计、计算机或其他定量分析学科(电子工程,运筹学等)的本科以上学历是必需的。

根据年的统计数据,美国的数据科学家48%有博士学位,44%有硕士学位,只有8%是本科。研究生博士期间的课题最好偏向机器学习、数据挖掘或预测模型。其次需要数据库操作技能,在工作中通常需要用SQL从数据库读取数据。所以能熟练使用SQL是基础。对于统计或者数学专业的学生,在校期间可能不需要使用SQL,因此不太熟悉。这没有关系,我也是工作以后才开始使用SQL的。但你要确保自己至少精通一种程序语言,之后遇到需要用到的新语言可以迅速学习。在学校期间的主要目的不是学会毕业后所需的全部技能,这是不可能完成的任务。

高等教育(本科、研究生和博士)后应该具有的是基本的专业知识和自学能力。数据科学和很多其他领域一样,需要终身学习。有很多人问,要成为优秀的数据科学家是不是一定需要博士?这个问题很难用简单的是或者不是来回答。我看到的大多数优秀数据科学家确实都有博士学位,其余也都是硕士。我并不是要说高学历是成为优秀数据科学家的必要条件,其实真正重要的不是那个学历本身,而是拿到那个学历的过程,以及会选择获得这些学位的人共有的一些特质。

在美国,一般情况下,如果你拿到数理专业的博士学位,至少说明一个问题,就是你对学习的东西有兴趣。这样成天在电脑前面分析数据、编写程序的生活,对于那些对此不感兴趣的人来说必定是难以想象的痛苦。其次是研究生期间系统的理论训练。很多人可能觉得模型背后的数理知识不重要,只要会用模型就可以。统计软件使得很多模型使用者不需要知道具体的模型原理。了解模型原理是否能够帮助你更好地使用模型?当然会有帮助。但问题是这个帮助有多大?是不是值得我们花几年时间去学习?学习很多东西的好处是很难用短期去衡量的。我没有严格的分析,只是个人觉得了解模型原理是必要的。我很喜欢一个词“匠人精神”,也很乐意将“数据科学家”称为匠人,这是一种精益求精的精神。当然这种精神和学位没有必然联系,有本科毕业而对数据科学很感兴趣,自己学习也能够对这个学科有很深的理解。但大多数对这个领域感兴趣又具有“匠人精神”的人都有相关领域的更高等学历。最后,当然就是学习的能力。即使拿到博士学位,也不意味着学完了所有知识,而是具备了进一步自学的能力,可以自己看懂数据分析新方法的论文,也就是具备了在这个领域发展的自学能力。总的来说,这个领域的高学历现象并不能说明学历是必要条件,也不是充分条件。真正重要的是兴趣、匠人精神和自学能力。

编程能力也是数据科学家需要的基本技能。熟练使用一种编程语言是必需的,如R,Python,C等。有人可能会问,只会SAS够不够?个人意见是:不够。这里不想对SAS进行过多评价。我的建议是大家至少要熟悉一门开源语言。当然,这些都只是工具,工具是解决问题的手段,而非目的。你必须要有一个能用来进行数据分析的工具,偏好因人而异,但你选择工具的时候最好考虑工具的灵活性和可扩展性。

接下来就要提到具体的分析技能。数据科学家应该掌握高等概率统计,能够熟练进行t检验、开方检验、拟合优度检验、方差分析;能够清楚地解释Sparman秩相关和Parson相关之间的区别。熟悉抽样,概率分布,实验设计相关概念;了解贝叶斯统计(很快就能在白板上写下贝叶斯定理);知道什么是有监督学习,什么是无监督学习;知道重要的聚类、判别和回归方法;知道基于罚函数的模型,关联法则分析。如果从事心理相关的应用的话(如消费者认知调查),还需要知道基本的潜变量模型,如探索性因子分析,验证性因子分析,结构方程模型。这个单子还可以一直列下去。看起来是不是不只一点吓人?我说过,数据科学家不是一个低门槛的行业,之前需要接受的训练对于没有兴趣的人来说是无比痛苦的。还有,单子是动态的,因为你在工作过程中还需要不断学习。这些技能只是让你能够很好地开始。再次强调自学能力和成为一个终生学习者是优秀的数据科学家的必要条件。

除了技术能力以外,还需要其他一些非技术的能力。这些包括将实际问题转化成数据问题的能力,这一过程需要交流,也就要求良好的交流沟通能力。







































北京治疗白癜风好专科医院
北京治疗白癜风花多少钱



转载请注明地址:http://www.weidadezzz.com/klzd/879.html
  • 上一篇文章:
  • 下一篇文章:
  • 热点文章

    • 没有热点文章

    推荐文章

    • 没有推荐文章