等 Java R C Python 从业界反馈看机器学习语言趋势

Python、R、Java、 C++ 等:从业界反馈看机器学习语言趋势

对于 开发者 来说,掌握什么 编程语言 能更容易找到 机器学习 或者 数据科学 的工作?

这是个许多人关心的问题,非常实际,也在许多论坛被翻来覆去地讨论过。非常显著的是 “ python 是大趋势” 这一论调,似乎它即将在机器学习领域一统天下。那么这种说法到底有几分事实?

首先要指出的是, 大多数对编程语言的讨论都比较 主观 。比如说,有的开发者(尤其是初学者)会因为一门语言的某个特性很契合自己的使用习惯、用着最顺手,就狂赞这门语言,而对其他语言的优点选择性失明。而这篇雷锋网编译自 IBM 开发者论坛的文章,则尽量避免了主观判断,用数据来展示各门开发语言在工业界的实际使用情况,可以说是十分难得。毕竟,统计学习的核心就是用数据说话。AI 开发者应该更明白可靠数据相比主观臆测的价值。

闲话少说,我们来看看 2016 年开发语言使用情况统计,到底哪门语言的使用人数上升最快?居前几位的都是哪些?

Python、R、Java、 C++ 等:从业界反馈看机器学习语言趋势

图1:机器学习与数据科学领域各语言的雇主招聘指数对比

如图所示,这是利用美国职位搜索引擎 indeed.com 得出的机器学习、数据科学招聘趋势:对这些领域内开发职位所列出的编程语言要求进行了统计。 它展示出公司、雇主们都在寻找哪些语言技能。 但注意:

我们可以清楚看出,美国雇主最需要的前四大语言排名是 Python,Java,R,C++。其中,Python 在 2015 年中超过 Java 跃升至第一。

然后,把搜索结果限制在机器学习领域(去掉数据科学),数据其实差不多:

Python、R、Java、 C++ 等:从业界反馈看机器学习语言趋势

图2:机器学习领域各语言的雇主招聘指数对比

这张折线图中包含了 Lua,但由于它的招聘职位实在太少,代表 Lua 的线与坐标轴重合。

我们能从这两组数据中推断出什么?

关于 Scala 和 Julia 的增长趋势,在它们的增长率折线图中,我们可以很明显的看出来:

Python、R、Java、 C++ 等:从业界反馈看机器学习语言趋势

图3:Scala,Julia,Lua 在机器学习、数据科学领域的雇主招聘指数增长率

然后,当我们省略掉 Scala、Julia 和 Lua,统计主流语言的增长率,可以明白无误看出Python 和 R 的增长速度远超其他主流语言:

Python、R、Java、 C++ 等:从业界反馈看机器学习语言趋势

图4:机器学习与数据科学领域,主流语言的雇主招聘增长率

R 的增长率始终高于 Python,位居第一,更是远超 Java。 以此来看,在可预测的将来,R 不但不会消失,还会成为更受欢迎的主流机器学习语言。因此,说“Python 是未来大趋势”肯定是不对的。

但是,当我们聚焦于细分领域“ 深度学习” ,数据就变得很不一样

Python、R、Java、 C++ 等:从业界反馈看机器学习语言趋势

图4:深度学习领域各语言的雇主招聘指数对比

在深度学习市场,对 Python 的招聘需求仍然最高。但前五大语言的排序变成了Python,C++,Java,C,R。这里有很明显的对高性能计算语言的侧重。而且, Java 的增长速度惊人,它可能很快成为深度学习市场的第二位 。在可预期的将来,R 还不会成为最受欢迎的深度学习语言。令人惊讶的是 Lua 的存在感之低。要知道,开源框架巨头之一的 Torch 便是基于 Lua,许多开发者因此会认为它在深度学习市场占有特殊地位。

对于文章开头提出的问题——雇主需要掌握什么语言的开发者,答案已经很明确了:

但雷锋网的读者们请注意,这只是私营公司的招聘需求。学界研究人员的偏好会有很大出入。另外,自学 AI 的业余爱好者、暂时没打算在这行谋生的,也不需要对这些数据太过在意。

至于文章原作者的个人观点(雷锋网再次提醒:请注意是“个人”观点,仅给大家做参考),他本人较倾向 Python。原因有二:1. 基于 Python 的顶级机器学习框架选择较多。2. 作者来自计算机专业背景,Python 的逻辑更适合。相比之下,R 语言就更适合统计学、数学背景的开发者。在 Python 之外,作者更倾向于使用C++,这是因为他用C++ 写代码写了半辈子,已经习惯了。其他人、新人可能更适合学习其他语言。比如说,写代码功底不深的统计学背景开发者通常用 R 语言更顺手。经验丰富的 Java 开发者可以接着用 Java,尤其有那么多开源 Java API

归纳起来, 还是程序猿的个人学习、开发经历,以及知识背景影响了他的语言偏好。 很少有人能够涉猎所有主流语言,即便只掌握几门语言,也未必在每一门上的开发经验都够深。因此,老司机对新入门开发者的语言推荐都带有强烈主观色彩。即使拿这篇以陈述数据为主的文章来说,也有它的主观局限:Matlab/Octave 和 Lisp,这两门重头语言并没有包括在内。这大约是由于作者并没有充分接触这三门语言。而 AI 大牛吴恩达对新手的建议就是选择 Octave 或者 Matlab 起步。

对于新入门、正犹豫选择哪门语言的技术宅,关键还是在投入大量时间之前多听、多看、多了解;比较不同人的观点,选择最适合自己的。雷锋网与旗下 AI 科技评论频道常年更新针对新老开发者的技术文章,以及追踪 AI 界的重大新闻事件,感兴趣可关注公众号。

更多对机器学习编程语言的介绍请参考上期文章 入门必读 机器学习六大开发语言 。

via ibm developer

版权文章,未经授权禁止转载。详情见 转载须知 。

Python、R、Java、 C++ 等:从业界反馈看机器学习语言趋势

全局中部横幅
人工智能(AI)

富加科技公司是一家拥有强大前沿数字化技术创新实力的企业,由一批曾任职于国内外知名企业的留学归国人员及国内具有先进技术的人员共同创办。公司先后获得了粤科金融集团在内的著名投资机构及投资人的投资。 富加科技致力于人工智能多模态大模型(HumadaAI)深耕细作近十年,在人工智能、区块链、云计算、大数据处理等领域拥有世界领先的专利技术,积累了丰富的全生命周期服务的能力和经验。 经过多年发展,富加科技打造了人工智能大模型的全技术栈道,研发了全场景精细化管理SaaS平台、软硬件一体化产品、“云边端”结合一体化交付的行业数字化系统等。 富加科技正在用自主创新的人工智能技术与产品为各行业的数字化升级、AI转型赋能,并且成功创新应用于大型企业的管理运营、智能制造、智慧城市、智慧楼宇、智慧商业综合体(园区、社区)等领域。

UrlEncode编码/UrlDecode解码

为了让包含中文的URL可以使用,您可以使用本工具对中文进行UrlEncode编码。

25导航网

25导航网(25dh.com)是汇集全网优质网址及资源的中文上网导航。及时收录影视、音乐、小说、游戏等分类的网址和内容,让您的网络生活更简单精彩。上网,从25导航网开始。

上海展台设计

长桥展览(上海)有限公司提供专业的上海展台设计,上海展台搭建服务。自营工厂价格优惠搭建质量有保障,创意设计方案新颖,可根据客户不同需求提供量身定制,欢迎咨询!电话:400-157-4273

一起品玩

电脑手机,兴趣爱好,数码科技广场,游戏影音,潮玩玩具,时尚潮流,运动爱好,一起品一起玩

四川太阳能工程,成都太阳能热水器,太阳能发电,空气能热水器,四川空气能热水工程,四川杰科太阳能公司欢迎你

四川杰科新能源公司专业从事太阳能发电的设计和安装,太阳能光伏组件及配套产品的销售,太阳能热水,空气能热水和各种锅炉热水及地暖工程的设计和安装,欢迎您的光临或来电洽谈。

CPHI制药在线

CPHI制药在线是服务于制药行业的专业B2B电子商务平台,汇聚制药原料与中间体、实验室装备、制药设备及包装四大产业最优质供应商和买家,创造无限商机。

激光全息防伪标签

河南省卫群科技发展有限公司是专业从事二维码防伪标签印刷,二维码追溯标签,激光全息防伪标签,定位烫印标识,可变二维码防伪标签等高新防伪标识设计印刷,在动态可变二维码,质量追溯,溯源防伪管理系统等方面具有很强实力。

笔点

笔点(www.bidianer.com)是一个简洁的网址导航网站。你可以自定义上网常用网址、自定义你需要的工具模块。你还可以发现、收集、分享,Web开发、设计工作中的优质资源、干货。

汉普英语

汉普英语在线英语字典,包括英语词典、法语词典、德语词典、西班牙语词典、意语词典、葡萄牙语词典、俄语词典等在线查询工具,是学生查询学习资料的好帮手。

61蛋糕网

中国订蛋糕网,提供北京蛋糕店蛋糕预订,上海蛋糕异地订购送货,广州生日蛋糕,深圳庆典蛋糕订购,全国蛋糕2-4小时送货上门

全局底部横幅