Advertisement

对于机器学习,到底该选择哪种编程语言

阅读量:

开发人员究竟应当掌握哪一种编程语言才能从事机器学习或数据分析之类的工作?这确实是一个非常重要的话题。我们曾在多个论坛上探讨过这一问题。目前我可以提供我的见解并阐述原因所在——不过在此之前,请注意查看相关数据。鉴于此,在进行机器学习和数据分析时,请记住关注事实而非观点。

让我们来看看一些数据。我们将在Indeed.com上进行趋势搜索,并将利用其来筛选实际工作机会中的特定条款。这一发现表明雇主们正在寻求具备该技能的人才。然而需要注意的是, 仅仅通过趋势分析来衡量技能的有效性并不科学, 因此我们不能仅凭这种指标来判断某一技能在当前市场中的受欢迎程度。

直接上手的数据资源。为了寻找与机器学习及数据科学相关的技能,我进行了全面的搜索,并列出了可能的相关编程语言作为参考选项。其中,除了Java之外,还涵盖了C语言、C++以及JavaScript等其他编程语言,因为它们在这些领域非常受欢迎。此外还包括了Python和R,因为它们在这两个新兴领域表现尤为突出;另外还有Scala,考虑到其与Spark框架的紧密关联;再则再加上Julia这一新兴语言,因其被视为未来趋势所在。执行该查询后获取的数据是:

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

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

从观察来看,并非存在一种万能的方法能够适用于所有场景。在当前背景下,多种机器学习编程语言均受到青睐。

其次,在过去几年中这些编程语言的数量快速增长表明企业对机器学习和数据科学的关注与需求显著提高。

第三部分展示了几种主要编程语言的排行榜单。在编程语言排行榜中占据首位的是 Python 语言,在紧随其后的是 Java 语言之后排在后面的是 R 语言接着排在后面的是 C++ 语言。随着技术的发展, Python 在与 Java 的竞争中占据更大的优势。然而, 在占主流地位的领域中(如数据科学), Java 的地位却在逐步下降. 实说, 在看到这份排行榜时让我感到意外的是 Java 出人意料地获得了第二名的位置;原本我以为冠军应该是由 R 言语系的语言来主导.

第四点 Scala的发展令人瞩目。在三年前几乎还不存在,在如今与这些成熟的编程语言处于同一水平。当我们转向Indeed.com的数据相对视图时, 这使得发现更为便捷。

第五部分显示了Julia的表现尚可,在这一领域已呈现出增长态势。尽管如此,我们还不确定它是否会发展成为机器学习和数据科学领域的主流编程语言?读者可以期待未来的反馈。

如果不考虑 Scala 和 Julia 的话,我们就可以更专注于其他编程语言的发展。毫无疑问地得出结论:Python 和 R 的发展速度超过了通用语言。

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

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

此时,在这一排行榜中仍然保持领先地位的是Python语言;紧随其后的是C++语言,在其之后则是Java语言;而C语言则位于第四位;R语言仅排在第五位。很明显这表明高性能计算领域的竞争异常激烈。正迅速发展中的Java语言正在迅速向第二名发起冲击;像一般的机器学习一样它也可以很快地超越现有排名;而R语言则难以赶上这个位置。令我感到意外的是Lua语言不在其中;尽管它被广泛应用于主要的深度学习框架(orch)中;而Julia语言也并未出现。

到此为止,当前最受欢迎的编程语言又是什么呢?答案已然清晰明了。在涉及机器学习与数据分析领域时,Python、Java以及R是当前最热门的语言。若你专攻深度学习而非广义上的机器学习,从某种程度上讲,C++与C也是值得关注的选择。然而需要注意的是,这仅是一种看待问题的方式。如果你想寻找一份工作机会或者只是出于业余兴趣来学习机器学习与数据分析,你可能会得到不同的答案

我的个人答案呢?除了因为我具备了多种顶级机器学习框架所需的技能外,我对Python也感到非常适应。这得益于我拥有计算机科学背景的教育背景。对于设计新算法而言,在这种语言下进行工作会让我感到异常舒适。不过这仅是我的个人偏好,在不同背景下的人可能会有不同的选择:一个仅限于基础编程知识的统计学家可能会更偏爱R语言;而一位经过专业Java训练的开发者则可能更倾向于使用他最熟悉的编程语言,并借助丰富的Java API资源开发应用;对于任何一种特定的语言或工具集合来说,在图表分析方面都可以找到类似的替代方案。

鉴于此,在投入大量时间和精力去掌握一门编程语言之前(这一步非常重要),我提出以下意见:即根据个人的具体情况和需求来决定选择哪种编程语言。同时,请务必切勿盲目效仿他人的做法。

via:

End

阅读排行榜/精华推荐1 入门学习

当有人对大数据提出疑问时,请考虑分享这两则相关的教学视频给他

视频:大数据到底是什么?解析:都说干大数据挣钱?一夜暴富真的可行吗?快速科普……都在做啥

不可忽视的大数据最核心的问题有哪些?

2 进阶修炼

关于底层至应用的那些人而言

关于底层至应用的那些人而言

掌握快速且有效的方式去深入理解并熟练运用R语言的基础知识和高级功能。

一名程序员如何才算熟练掌握Python语言?

3 数据源爬取/收集

处于全球前五十名的开源Web爬虫被广泛应用于数据分析与知识发现的过程

一套完整的开源网络数据采集工具套装,提供大约 33 个功能模块。
http://mp.weixin.qq.com/s?__biz=MjM5MTYwMjI3Mw==&mid=212179986&idx=1&sn=97ff01da038698b1a5736de8a5d091e5&scene=21#wechat_redirect

中国居民获取数据的方法有哪些?全面的数据收集方法论为您详细讲解。

4 干货教程

PPT:数据可视化,到底该用什么软件来展示数据?

深度解析:电信运营商数据价值在跨行业运营中的现状及未来发展趋势分析

大数时代的数据分析在推动国密实现统一管理路径的过程中发挥着重要作用;其数字化转型的应用场景已在国有大行的大屏展示中得到充分体现。

实战PPT

实战案例展示

实战案例展示

六个步骤:通过Excel工具实现直观且专业的数据可视化方案

大数据产业的发展稳步前行

双十一购物狂欢节背后,“黑科技”解决方案助力企业数字化转型:阿里的‘黑科技’解决方案包含OceanBase、金融云架构、ODPS及数据仓库技术的创新性整合方案

金融业大数据客户画像的具体应用场景下的实践探索

阐述大数据在金融行业以及电信网络等领域中的具体应用实例。
以中立且专业的态度探讨这些技术如何从多个层面深入影响着最广泛的用户群体。

36大数据

长按识别二维码,关注36大数据

搜索「36大数据」或输入36dsj.com查看更多内容。

投稿/商务/合作:dashuju36@qq.com

点击下方“阅读原文”查看更多

↓↓↓

全部评论 (0)

还没有任何评论哟~