2017数据科学与机器学习行业现状调查 Python是最受欢迎的语言

简介: 最近,Kaggle这一互联网上最著名的数据科学竞赛平台首次进行了机器学习与数据科学现状调查。在超过 16000 名从业者的答卷中,我们可以一窥目前该行业的发展趋势。

今年,Kaggle有史以来第一次对人工智能领域进行了深度调查,旨在全面了解数据科学和机器学习的概况。本次调查收到了 16000 多份答卷,庞大的调查数据为我们提供了有关从业者、业界最新动态以及如何进入该行业的数据支撑。以下报告包括本次调查的几个主要结果,其中包括:

  1. 尽管Python很可能是机器学习最常用的编程语言,但统计学家使用最多的是 R 语言。
  2. 数据科学家的平均年龄在 30 岁左右,但是这个数字在不同的国家有所不同。例如,印度受访者的平均年龄要比澳大利亚的小 9 岁。
  3. 被调查者教育程度最多是硕士,但在工资最高的(超过15万美元)人群中,拥有博士学位的人则更多。

Kaggle 已经公开了该调查的匿名数据集,以供大家进行研究,可以从此处下载:https://www.kaggle.com/kaggle/kaggle-survey-2017

谁在工作中与数据打交道?

分析数据从业者的方式有很多种,本文将从有关数据科学从业者的工作、背景等人口统计学信息开始。

年龄多大?

从下图可见,本次调查对象的平均年龄大约为 30 岁,但各个国家的这个值有所不同。例如印度调查对象的平均年龄就比澳大利亚的小了 9 岁。


0_1.jpg

目前的就业状况如何?

受调查者中,有 65.7% 表示自己有全职工作。


0_2.jpg

职位是什么?

尽管我们把数据科学家定义为使用代码分析数据的人,但我们发现数据科学领域可涵盖的工作非常多。比如在伊朗和马来西亚,数据科学从业者最流行的工作头衔是“科学家或者研究员”。


0_3.jpg

全职工作的年薪是多少?

中位数55441美元,不过由于很多人没有全职工作(收入为 0),所以这一数字并不准确。尽管在我们的调查中“补偿和福利”的重要性稍微比“职业发展机遇”低一些,不过知道什么是合理的补偿依然不错。在美国,一般机器学习工程师带回家最多的东西是培根。


0_4.jpg

有131个回复由于超出最大值而没有显示出来,但它们被算进了中位数。

最高学历是什么?

你需要再去读一个学位吗?通常来讲,数据科学从业者中最常见的学历是硕士,但是获取最高薪水(15万到20万美元,以及高于20万美元)的那些人大多有着博士学位。


0_5.jpg

被调查者的大多是 30 岁左右,硕士学历,年薪5.5万美元左右,拥有数据科学家的职位。但实际情况并不如此平均。这些最初的几个人口统计学问题只是展示了复杂的 Kaggle 数据科学社区在年龄、性别、国籍、工作职称、薪水、经验和学历方面的表层差异。

数据科学家的工作内容是什么?

我们把数据科学家定义为写代码来分析数据的人。他们的日常工作内容是什么呢?以下是我们的调查结果。

工作中使用哪些数据科学方法?

逻辑回归是工作之中最为常用的数据科学方法,不过在神经网络使用更为频繁的国家安全领域除外。总的来说,数据科学中更常见的还是使用经典的机器学习算法,简单的线性与非线性分类器是数据科学中最常见的算法,而功能强大的集成方法也十分受欢迎。


0_6.jpg

工作中使用最多的编程语言是什么?

Python是数据科学家最常用的语言,也是最常用的数据分析工具。不过,也有很多数据科学家仍然保持着对 R 语言的忠诚。


0_7.jpg

在工作中常用的数据类型是什么?

关系型数据是开发者在工作中最常用的数据类型,因为大多数产业工程师都十分关注于这种关系型数据。而学术研究者和国防安全产业则更注重于文本与图像。


0_8.jpg

如何分享工作中的代码?

尽管很多受访者(58.4%)在工作使用 Git 来分享代码,但大公司中的开发者更倾向于将代码保留在本地,并通过像 Email 那样的文件共享软件来分享代码。而初创公司可能需要在云中共享以保持更加敏捷的反应。


0_9.jpg

工作中遇到的障碍主要有哪些?

脏数据(dirty data)显然排在了第一位,也就是说,数据科学家最常见的困扰就是需要对数据进行大量的预处理工作。除了数据预处理之外,还有很多问题困扰着数据科学家,比如说众多的机器学习算法各有各的擅长领域,所以了解它们的性能也会有一些困难。


0_10.jpg

数据科学家初学者如何进入这个领域?

当开始一个新的职业生涯的时候,参考别人的成功经验会很有帮助。我们调查了在数据科学行业工作的人们,询问他们是如何入门的。以下是我们最喜欢的几条建议:

你们会推荐数据科学家新手最先学哪门语言?

每一位数据科学家都有自己的对选择第一门语言的想法。事实证明,那些仅使用 Python 或 R 语言的人们做出了正确的选择。不过如果你问一下使用过 R 和 Python 的人们,他们有两倍的可能会把 Python 推荐给你。


0_11.jpg

你们使用哪些数据科学学习资源?

数据科学是一个发展迅速的领域,有很多有价值的资源可以帮助你学习并保持业内的顶尖位置,从而不断提升你的竞争力。已经在数据科学领域中工作的人们会更多地使用 Stack Overflow Q&A,Conferences 和 Podcasts。如果想要发布内容或开源软件,请时刻记住刚进入这个领域的人们通常更多使用官方的文档和观看 Youtube 视频。


0_12.jpg

你们在哪里获取开源数据?

没有数据,就没有数据科学。当需要学习数据科学技巧的时候,知道如何找到干净的开源数据集用于练习和开发项目相当重要。很高兴我们的数据集聚合器正发展为数据科学社区成员中使用最频繁的工具。


0_13.jpg

如何找工作,并且又是如何找到的?

在寻找工作地时候,人们可能会去公司网站,或在指定技术方向的招聘信息中寻找机会,但是根据数据科学领域工作的人们的经验,这些方式无疑是最差的选择。直接联系招聘者或建立自己的网络以进入这个领域才是他们的首选。


0_14.jpg

注意:少于 50 名受访者的组别被合并进了“Other”类中。其中一些柱状图为了美观而做了缩放处理。如果想要查看所有问题和结果的原始数据,请访问:https://www.kaggle.com/amberthomas/kaggle-2017-survey-results

文章原标题《The State of Data Science & Machine Learning》,作者:Kaggle Inc,译者:夏天,审校:主题曲。

文章为简译,更为详细的内容,请查看原文

相关文章
|
15天前
|
机器学习/深度学习 算法 TensorFlow
交通标志识别系统Python+卷积神经网络算法+深度学习人工智能+TensorFlow模型训练+计算机课设项目+Django网页界面
交通标志识别系统。本系统使用Python作为主要编程语言,在交通标志图像识别功能实现中,基于TensorFlow搭建卷积神经网络算法模型,通过对收集到的58种常见的交通标志图像作为数据集,进行迭代训练最后得到一个识别精度较高的模型文件,然后保存为本地的h5格式文件。再使用Django开发Web网页端操作界面,实现用户上传一张交通标志图片,识别其名称。
44 6
交通标志识别系统Python+卷积神经网络算法+深度学习人工智能+TensorFlow模型训练+计算机课设项目+Django网页界面
|
14天前
|
机器学习/深度学习 算法 数据挖掘
Python数据分析革命:Scikit-learn库,让机器学习模型训练与评估变得简单高效!
在数据驱动时代,Python 以强大的生态系统成为数据科学的首选语言,而 Scikit-learn 则因简洁的 API 和广泛的支持脱颖而出。本文将指导你使用 Scikit-learn 进行机器学习模型的训练与评估。首先通过 `pip install scikit-learn` 安装库,然后利用内置数据集进行数据准备,选择合适的模型(如逻辑回归),并通过交叉验证评估其性能。最终,使用模型对新数据进行预测,简化整个流程。无论你是新手还是专家,Scikit-learn 都能助你一臂之力。
67 8
|
11天前
|
机器学习/深度学习 数据可视化 数据挖掘
数据可视化大不同!Python数据分析与机器学习中的Matplotlib、Seaborn应用新视角!
在数据科学与机器学习领域,数据可视化是理解数据和优化模型的关键。Python凭借其强大的可视化库Matplotlib和Seaborn成为首选语言。本文通过分析一份包含房屋面积、卧室数量等特征及售价的数据集,展示了如何使用Matplotlib绘制散点图,揭示房屋面积与售价的正相关关系;并利用Seaborn的pairplot探索多变量间的关系。在机器学习建模阶段,通过随机森林模型展示特征重要性的可视化,帮助优化模型。这两个库在数据分析与建模中展现出广泛的应用价值。
26 2
|
16天前
|
机器学习/深度学习 存储 人工智能
文本情感识别分析系统Python+SVM分类算法+机器学习人工智能+计算机毕业设计
使用Python作为开发语言,基于文本数据集(一个积极的xls文本格式和一个消极的xls文本格式文件),使用Word2vec对文本进行处理。通过支持向量机SVM算法训练情绪分类模型。实现对文本消极情感和文本积极情感的识别。并基于Django框架开发网页平台实现对用户的可视化操作和数据存储。
20 0
文本情感识别分析系统Python+SVM分类算法+机器学习人工智能+计算机毕业设计
|
29天前
|
机器学习/深度学习 数据采集 人工智能
使用Python实现简单的机器学习分类器
【8月更文挑战第37天】本文将引导读者了解如何利用Python编程语言构建一个简单的机器学习分类器。我们将从基础概念出发,通过代码示例逐步深入,探索数据预处理、模型选择、训练和评估过程。文章旨在为初学者提供一条清晰的学习路径,帮助他们理解并实现基本的机器学习任务。
|
26天前
|
机器学习/深度学习 算法 Python
从菜鸟到大师:一棵决策树如何引领你的Python机器学习之旅
【9月更文挑战第9天】在数据科学领域,机器学习如同璀璨明珠,吸引无数探索者。尤其对于新手而言,纷繁复杂的算法常让人感到迷茫。本文将以决策树为切入点,带您从Python机器学习的新手逐步成长为高手。决策树以其直观易懂的特点成为入门利器。通过构建决策树分类器并应用到鸢尾花数据集上,我们展示了其基本用法及效果。掌握决策树后,还需深入理解其工作原理,调整参数,并探索集成学习方法,最终将所学应用于实际问题解决中,不断提升技能。愿这棵智慧之树助您成为独当一面的大师。
25 3
|
28天前
|
机器学习/深度学习 算法 Python
决策树下的智慧果实:Python机器学习实战,轻松摘取数据洞察的果实
【9月更文挑战第7天】当我们身处数据海洋,如何提炼出有价值的洞察?决策树作为一种直观且强大的机器学习算法,宛如智慧之树,引领我们在繁复的数据中找到答案。通过Python的scikit-learn库,我们可以轻松实现决策树模型,对数据进行分类或回归分析。本教程将带领大家从零开始,通过实际案例掌握决策树的原理与应用,探索数据中的秘密。
30 1
|
2月前
|
机器学习/深度学习 人工智能 开发者
使用Python实现简单的机器学习分类器
【8月更文挑战第31天】在这篇文章中,我们将探索如何使用Python来创建一个简单的机器学习分类器。通过使用scikit-learn库,我们可以快速构建和训练模型,而无需深入了解复杂的数学原理。我们将从数据准备开始,逐步介绍如何选择合适的模型、训练模型以及评估模型的性能。最后,我们将展示如何将训练好的模型应用于新数据的预测。无论你是机器学习的初学者还是有一定经验的开发者,这篇文章都将为你提供一个实用的指南,帮助你入门并理解基本的机器学习概念。
|
1月前
|
机器学习/深度学习 算法 数据挖掘
|
2月前
|
机器学习/深度学习 PHP 开发者
探索PHP中的面向对象编程构建你的首个机器学习模型:以Python和scikit-learn为例
【8月更文挑战第30天】在PHP的世界中,面向对象编程(OOP)是一块基石,它让代码更加模块化、易于管理和维护。本文将深入探讨PHP中面向对象的魔法,从类和对象的定义开始,到继承、多态性、封装等核心概念,再到实战中如何应用这些理念来构建更健壮的应用。我们将通过示例代码,一起见证PHP中OOP的魔力,并理解其背后的设计哲学。
下一篇
无影云桌面