人工智能最火编程语言 Python大战Java!


Posted in Python onNovember 13, 2017

开发者到底应该学习哪种编程语言才能获得机器学习或数据科学这类工作呢?这是一个非常重要的问题。我们在许多论坛上都有讨论过。现在,我可以提供我自己的答案并解释原因,但我们先看一些数据。毕竟,这是机器学习者和数据科学家应该做的事情:看数据,而不是看观点。

话不多说,上数据。我搜索了与“机器学习”和“数据科学”一起使用的技能,搜索选项包括编程语言Java、C、C++和JavaScript。然后还包括了Python和R,因为我们知道它在机器学习和数据科学方面很受欢迎,当然还有Scala,考虑到它与Spark的关系,再加上Julia,一些开发中认为这是“the next big thing”。运行这个查询,我们得到的数据如下:

人工智能最火编程语言 Python大战Java!

当我们关注机器学习时,我们得到了类似的数据:

人工智能最火编程语言 Python大战Java!

我们能从这些数据中得到什么启示呢?

首先,我们看到并不是一招通吃。在这种情况下,各种机器学习编程语言都很受欢迎。

其次,所有这些编程语言都在急剧增长,反映出在过去几年里,企业对机器学习和数据科学的关注和需求正在急速增加。

第三,Python很明显的领导者,其次是Java,然后是R,再然后是C++。Python对Java的领先优势正在增加,而Java在R上的领先地位正在下降。必须承认,我很惊讶地看到Java名列第二;我本来是以为是R语言。

第四,Scala的增长令人印象深刻。它在三年前几乎是不存在的,现在和这些成熟的编程语言几乎在同一个层面。当我们切换到Indeed.com上的数据的相对视图时,这更容易发现。

人工智能最火编程语言 Python大战Java!

第五,Julia的受欢迎程度虽然不明显,但肯定有上升的趋势。Julia将成为一种流行机器学习和数据科学编程语言吗?未来会告诉你。

如果我们忽略Scala和Julia,以便能够聚焦其他编程语言的增长,那么我们毫无疑问可以确认:Python和R的增长速度要快于通用语言。

人工智能最火编程语言 Python大战Java!

考虑到增长率的差异,R的受欢迎程度可能很快就会超过Java。

当我们专注于深度学习这个问题时,数据是完全不同的:

人工智能最火编程语言 Python大战Java!

这时,Python仍然是领导者,但C++现在是第二,然后是Java,而C在第四,R只在第5。这里显然强调了高性能计算语言。Java正在快速发展。它可以很快达到第二名,就像一般的机器学习一样。R不会很快接近顶部。令我惊讶的是Lua的缺席,尽管它在一个主要的深度学习框架(orch)中使用,而Julia不存在。

到这时,到底哪种语言才是最受欢迎的编程语言呢?答案应该很清楚了。当涉及到机器学习和数据科学工作时,Python、Java和R是最流行的技能。如果你想专注于深度学习,而不是一般的机器学习,那么,在某种程度上来说C++、C也是值得考虑的。然而,请记住,这只是看待问题的一种方式。如果你想找一份工作,或者你只是想在业余时间学习机器学习和数据科学,你可能会得到不同的答案。

我的个人答案呢?除了有许多顶级机器学习框架的支持之外,Python对我来说很适合,因为我有计算机科学的背景。对于开发新的算法,我也会感到很舒服,因为我的大部分职业生涯都是用这种语言编程的。但这就是我,有不同背景的人可能会觉得用另一种语言更好。一个拥有有限编程技能的统计学家肯定会更喜欢R。一个强大的Java开发人员可以使用他最喜欢的语言,因为有大量的Java API的开放源代码。对于这些图表上的任何一种语言,都可以有类似的例子。

因此,我的建议是,在花大量时间学习一门语言之前,根据自己的情况来决定选择哪种编程语言,切记千万不可跟风。

相关书籍推荐:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python使用mailbox打印电子邮件的方法
Apr 30 Python
python中使用序列的方法
Aug 03 Python
python中星号变量的几种特殊用法
Sep 07 Python
flask中主动抛出异常及统一异常处理代码示例
Jan 18 Python
python中的turtle库函数简单使用教程
Jul 23 Python
Python函数装饰器常见使用方法实例详解
Mar 30 Python
Python处理时间日期坐标轴过程详解
Jun 25 Python
PyTorch 随机数生成占用 CPU 过高的解决方法
Jan 13 Python
python爬虫把url链接编码成gbk2312格式过程解析
Jun 08 Python
Selenium及python实现滚动操作多种方法
Jul 21 Python
在 Python 中使用 MQTT的方法
Aug 18 Python
用Python爬取英雄联盟的皮肤详细示例
Dec 06 Python
Python随机生成均匀分布在单位圆内的点代码示例
Nov 13 #Python
python、java等哪一门编程语言适合人工智能?
Nov 13 #Python
K-means聚类算法介绍与利用python实现的代码示例
Nov 13 #Python
python通过opencv实现批量剪切图片
Nov 13 #Python
flask + pymysql操作Mysql数据库的实例
Nov 13 #Python
django之session与分页(实例讲解)
Nov 13 #Python
python实现图片处理和特征提取详解
Nov 13 #Python
You might like
apache+mysql+php+ssl服务器之完全安装攻略
2006/09/05 PHP
一个域名查询的程序
2006/10/09 PHP
深入认识JavaScript中的函数
2007/01/22 Javascript
JS 分号引起的一段调试问题
2009/06/18 Javascript
window.location.hash 使用说明
2010/11/08 Javascript
jQuery为iframe的body添加click事件的实现代码
2011/04/07 Javascript
js分页代码分享
2014/04/28 Javascript
Jquery实现的角色左右选择特效
2014/05/21 Javascript
JavaScript中的函数重载深入理解
2014/08/04 Javascript
javascript属性访问表达式用法分析
2015/04/25 Javascript
每天一篇javascript学习小结(Array数组)
2015/11/11 Javascript
Jquery检验手机号是否符合规则并根据手机号检测结果将提交按钮设为不同状态
2015/11/26 Javascript
jQuery实现背景滑动菜单
2016/12/02 Javascript
jQuery如何跳转到另一个网页 就这么简单
2016/12/28 Javascript
vue页面使用阿里oss上传功能的实例(二)
2017/08/09 Javascript
vue.js中实现登录控制的方法示例
2018/04/23 Javascript
vue实现个人信息查看和密码修改功能
2018/05/06 Javascript
详解Angular中实现自定义组件的双向绑定的两种方法
2018/11/23 Javascript
Vue infinite update loop的问题解决
2019/04/23 Javascript
python使用正则表达式分析网页中的图片并进行替换的方法
2015/03/26 Python
详解duck typing鸭子类型程序设计与Python的实现示例
2016/06/03 Python
django轻松使用富文本编辑器CKEditor的方法
2017/03/30 Python
Python在不同目录下导入模块的实现方法
2017/10/27 Python
简单了解OpenCV是个什么东西
2017/11/10 Python
解决Python pandas plot输出图形中显示中文乱码问题
2018/12/12 Python
Scrapy框架爬取西刺代理网免费高匿代理的实现代码
2019/02/22 Python
如何编写python的daemon程序
2021/01/07 Python
用HTML5实现鼠标滚轮事件放大缩小图片的功能
2015/06/25 HTML / CSS
10个最常见的HTML5面试题 附答案
2016/06/06 HTML / CSS
Sephora丝芙兰马来西亚官方网站:国际化妆品购物
2018/03/15 全球购物
捷克厨房用品购物网站:Tescoma
2018/07/13 全球购物
俄罗斯商务邀请函
2014/01/26 职场文书
团购业务员岗位职责
2014/03/15 职场文书
美术第二课堂活动总结
2014/07/08 职场文书
纪检监察立案决定书
2015/06/24 职场文书
Java 实现限流器处理Rest接口请求详解流程
2021/11/02 Java/Android