您还未登录! 登录 | 注册 | 帮助  

您的位置: 首页 > 业务知识 > 正文

从事数据科学工作需要掌握哪些技能?

发表于:2020-01-09 作者:CDA数据分析师 来源:今日头条

本文通过国外KDnuggets论坛上Simplilearn的统计结果和国内某知名招聘网站的招聘要求信息进行分析,详细介绍在数据科学的工作中,需要掌握哪一些技能以及工具,以及当下数据科学工作中,哪些技能和工具是从业人员的学习首选。

国外KDnuggets网站曾发起民意测验调查,提出了以下问题:

1)您目前拥有哪些与数据科学/机器学习相关的技能?

2)您想学习或进修哪些技能?

KDnuggets调查结果分析

该民意调查获得了1500份以上有效的答卷,样本足够大,由此做出来的推论是比较有参考意义的。本次调查仅有两个问题,我们将通过这两个问题的结果:现已掌握&计划学习这两个指标进行分析。调查结果显示,平均每个人具有10种技能,平均每个人希望学习或进修6.5种技能。

下面的图1显示了主要发现,X轴显示已有技能,对应第一个调查问题的结果,Y轴显示想要技能,对应第二个调查问题的结果。每个圆圈的大小与拥有该技能的人数的比例成正比,而颜色则取决于需求/已有的比率(红色高-大于1,蓝色低-小于1)。

从事数据科学工作需要掌握哪些技能?

我们注意到此图中的两个主要类别。 图表右侧蓝色虚线矩形中的第一类中包含了拥有率超过40%的技能,其需要/拥有的比率小于1。我们称其为核心数据科学技能。

从事数据科学工作需要掌握哪些技能?

其中,最需要增加或改进的技能是机器学习(41%)和Python(37%)。增长最少的技能是Excel-只有7%的人希望增加或提高其Excel技能。

第二个集群,是图1左侧用红色边框标记的那些,包括当前不那么受欢迎(%Have <30%),但是使用比例可能却在增长的技能,需求/已有比超过1。我们称其新兴的数据科学技能。

从事数据科学工作需要掌握哪些技能?

有趣的是,尽管有观点认为Hadoop在下降,但在这次调查中,有更多的人希望学习Hadoop,而不是已经知道的东西,因此它仍可能越来越流行。

尽管Julia的需求/已有率高达3.4,但我们并未将其包括在热门/新兴技能中,因为仅有2%的总占比,比例太低,没有有效的数据支撑。

其余技能划分为第三类,包含了XGBoost,软件工程,Java,MATLAB,SAS,虽然占比在10%至30%间,使用率并不算低,但并没有增长,需求/已有比率<1。

从事数据科学工作需要掌握哪些技能?

具体技能的排名情况如下所示,分别以已有率和需求率的高低进行排序展示。

从事数据科学工作需要掌握哪些技能?
从事数据科学工作需要掌握哪些技能?

我们可以发现,当前和有抱负的数据科学家最想要学习的进修的技能是深度学习,Tensorflow,机器学习和Python。

根据调查,我们发现有一些核心的、稳定的数据科学技能,它们有些是使用率很高,有些是当前非常重要、热门的技能。

技术技能:计算机科学

1、教育

数据科学家受过高等教育,并且有高达88%的人至少具有硕士学位,46%的人拥有博士学位。尽管有例外,但通常需要非常强的教育背景,以发展成为数据科学家所需的知识深度。要成为数据科学家,您可以获得计算机科学,社会科学,物理科学和统计学的学士学位。最常见的研究领域是数学和统计学(32%),其次是计算机科学(19%)和工程学(16%)。这些课程中的任何一个学位都将为您提供处理和分析大数据所需的技能。 完成学位课程后,并不意味着已经成功。事实是,大多数数据科学家都拥有硕士学位或博士学位,并且他们还接受在线培训以学习特殊技能,例如如何使用Hadoop或大数据查询。因此,可以通过学习数据科学,数学,天体物理学或任何其他相关领域的硕士学位课程。利用在大学学到的技能使您轻松过渡到数据科学。 除了课堂学习之外,您还可以通过构建应用程序,创建博客或探索数据分析来练习在课堂上学到的知识,以使您学到更多。比如CSDN、Github、Kaggle等。

2、R编程

在过去,通常首选R语音作为对数据科学的分析工具。R是有统计学家,专门为数据科学需求而设计的。可以使用R解决在数据科学中遇到的任何问题。实际上,现在有43%的数据科学家正在使用R来解决统计问题。但是,R具有陡峭的学习曲线。

相对现在非常热门的python而言,R很难学习,尤其是如果您已经掌握了编程语言。但是,互联网上有大量资源可以帮助学习,对于有抱负的数据科学家来说,这是一个巨大的资源。

3、Python编码

不同于Java,Perl或C / C ++,Python是数据科学工作中通常使用到的最常见的编码语言。对于数据科学家而言,Python是一种很棒的编程语言。这就是为什么接受调查的受访者中有40%表示,使用Python作为其主要编程语言的原因。

由于它的多功能性,使用者几乎可以将Python用于数据科学过程中涉及的所有步骤。它可以采用各种格式的数据,并且使用者可以轻松地将SQL表导入代码中。可以创建数据集,并且可以在Google上找到所需要的任何类型的数据集。

4、Hadoop平台

尽管Hadoop并不是必需的,因为他是大数据平台,但在许多情况下,它是首选。拥有Hive或Pig的经验也是一个强项。熟悉诸如Amazon S3之类的云工具也可能会有所帮助。在对3490个数据科学工作者进行的一项研究调参中,Hadoop以49%的占比被评选为数据科学家第二重要技能。 作为数据科学家,可能会遇到这样一种情况,即拥有的数据量超出了系统的内存,或者需要将数据发送到其他服务器,这就是Hadoop的用武之地。使用者可以使用Hadoop来快速将数据传输到各种服务器。同时可以使用Hadoop进行数据探索,数据过滤,数据采样和汇总等各项工作。

5、数据库/SQL编码

尽管NoSQL和Hadoop已经成为数据科学的重要组成部分,但仍需要能够在SQL中编写和执行复杂的查询。SQL(结构化查询语言)是一种编程语言,可以执行数据库中添加,删除和提取数据之类的操作。它还可以执行分析功能和转换数据库结构。 作为数据科学家,需要精通SQL。这是因为SQL是专门为访问、通信和处理数据而设计的。它具有简洁的命令,可以节省时间并减少执行困难查询所需的编程量。

6、Apache Spark

Apache Spark正在成为全球很受欢迎的大数据技术。就像Hadoop一样,它是一个大数据计算框架。唯一的区别是Spark比Hadoop快。这是因为Hadoop读写磁盘,这使其速度变慢,但是Spark将其计算缓存在内存中。 Spark专为数据科学而设计,可帮助更快地运行其复杂算法。处理大量数据时,它有助于传播数据处理,从而节省时间。它还可以帮助数据科学家处理复杂的非结构化数据集。可以在一台或多台计算机上使用它。

Spark使数据科学家可以防止数据科学中的数据丢失。Spark的优势在于其速度和平台,这使得执行数据科学项目变得容易。使用Spark,可以进行从数据获取到分布式计算的分析。

7、机器学习与人工智能

大量数据科学家并不精通机器学习领域和技术。这包括神经网络,强化学习,对抗学习等。如果您想在其他数据科学家中脱颖而出,则需要了解机器学习技术,例如监督机器学习,决策树,逻辑回归等。这些技能将帮助您解决基于主要组织成果预测的不同数据科学问题。 数据科学需要在机器学习的不同领域中应用技能。Kaggle在其一项调查中显示,一小部分数据专业人员具备高级机器学习技能,例如有监督的机器学习,无监督的机器学习,时间序列,自然语言处理,离群值检测,计算机视觉,推荐引擎,生存能力分析,强化学习和对抗学习。

8、数据可视化

商业世界经常产生大量数据。需要将这些数据转换为易于理解的格式。人们自然比原始数据更了解图表和图形形式的图片。 作为数据科学家,必须能够借助数据可视化工具(例如ggplot、BI、Matplottlib和Tableau)可视化数据。这些工具将帮助您将项目中的复杂结果转换为易于理解的形式。例如很多人不了解序列相关性或p值等专业性的较强的词汇所表达的意思。您需要直观地向他们展示这些术语在您的结果中代表什么。 数据可视化使组织能够直接使用数据,可以快速掌握见解,从而帮助他们把握新的商机并保持竞争优势。

9、非结构化数据

数据科学家能够处理非结构化数据至关重要。非结构化数据是不适合数据库表的未定义内容。例如包括视频,博客文章,客户评论,社交媒体文章,视频供稿,音频等。它们是复杂的文本、音频汇集在一起。 因为这些类型的数据没有被简化,所以很难对其进行排序。 由于非结构化数据的复杂性,大多数人将其称为“黑暗分析”。使用非结构化数据可帮助您揭示对决策有用的见解。作为数据科学家,必须具备理解和操纵非结构化数据的能力。

非技术技能

10、求知欲

“我没有特殊才能。我只是充满好奇。” --爱因斯坦。 好奇心可以定义为获取更多知识的愿望。作为数据科学家,需要能够提出有关数据的问题,因为数据科学家花费大约80%的时间来发现和准备数据。这是因为数据科学领域是一个发展迅速的领域,数据科学家必须学习更多以跟上步伐。 数据科学家需要通过在线阅读内容并阅读有关数据科学趋势的相关书籍来定期更新知识。不要被遍布互联网的庞大数据量所淹没,数据科学家必须要能够知道如何理解所有数据。好奇心是成功成为数据科学家所需的技能之一。例如,他可能不会对所收集的数据有太多了解,但好奇心使他可以筛选数据以找到答案和更多见解。

11、商业头脑

要成为数据科学家,需要对自身所从事的行业有扎实的了解,并且知道本公司正在试图解决哪些业务问题。在数据科学方面,除了确定业务应该利用其数据的新方法之外,还要能够辨别哪些问题对于业务而言至关重要。 为此,必须了解解决的问题是如何影响业务的。

12、沟通技巧

寻找强大数据科学家的公司正在寻找可以清楚,流利地将其技术发现转化到非技术团队的人员,例如市场或销售部门。数据科学家除了了解非技术同事的需求以适当地整理数据外,还必须通过用量化的见解武装他们来使企业做出决策。 除了说公司所能理解的相同语言外,还需要使用数据讲故事进行交流。作为数据科学家,必须知道如何围绕数据创建故事情节,以使任何人都易于理解。例如,呈现数据表,并不像以讲故事的方式共享来自那些数据的见解那样有效。讲故事将帮助您正确地将您的发现传达给您的雇主。交流时,请注意在分析数据中嵌入结果和值。大多数企业所有者不希望知道您所分析的内容,而是对它如何对他们的业务产生积极影响感兴趣。学会专注于通过交流传递价值并建立持久的关系。

13、团队合作

数据科学家不能独自工作。必须得和公司高管一起制定战略,与产品经理和设计师一起创造更好的产品,与市场人员一起开展转换效果更好的活动,与客户和服务器软件开发商一起创建数据管道并改善工作流程。实际上,数据科学家将必须与公司中的每个人,甚至包括客户一起工作。 本质上,数据科学家将与团队成员合作开发数据产品,了解解决问题所需的业务目标和数据。并且需要知道解决问题的正确方法,解决问题所需的数据以及如何将结果转换和呈现为所涉及的每个人都易于理解的内容。

数据分析某知名招聘网站的招聘信息

相对于国外的情况,国内的情况又是如何呢?进行数据分析相关工作又需要哪些工作技能呢?为此,特意爬取某招聘网站的有关数据分析相关职位的相关信息来进行分析,探索国内数据分析工作的技能要求。

将工具提取出来制作成词云图,其中字体越大,颜色越深的工具出现的频率越高,说明也越多企业希望能招到掌握此技能的员工。可以很明显的看出,python是其中需求较高的技能,其次还有SQL、Spark、Hadoop、Excel等

从事数据科学工作需要掌握哪些技能?

根据工具与其出现的词频,绘制成条形图:

从事数据科学工作需要掌握哪些技能?
  • python作为近年来最热门的编程语言,在数据科学领域也有这举足轻重的地位,在所有招聘数据分析工作者的岗位中,有多达1329家企业明确希望找到能使用python的员工。
  • 而作为传统统计分析编程软件的R,位列第六,岗位需求仅有不到800,远不及python的需求量。
  • 同为编程语言的Hadoop和Spark分别位列第二、第四,均有1000上下的需求,说明当前大数据方向在数据科学中的重要性,市场对拥有大数据分析技能的人才有着很大的需求。
  • 作为非传统数据处理、清洗、分析的编程软件Java和C语言,同样在这一领域有这不少的需求量,也在侧面说明了编程能力对于数据科学领域是一个重要的能力。
  • 在数据库方面,Hive、Hbase、MySQL、Oracle出现的频数较高,sql作为数据库的编程语句,并不属于一种独立的软件,其实也包括了MySQL、Oracle在内的一些数据库,所以MySQL和Oracle实际会有更高的市场人才需求。
  • Excel、SAS、SPSS也是数据分析工作中较多人使用的工具,目前市场上对掌握此类技能的人才也有这大量的需求。