当前位置: 首页 > 科技观察

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

时间:2023-03-20 18:55:45 科技观察

开发人员应该学习哪种编程语言才能在机器学习或数据科学领域找到工作?这是一个非常重要的问题。我们已经在很多论坛上讨论过了。现在,我可以提供自己的答案并解释原因,但让我们先看一些数据。毕竟,这是机器学习者和数据科学家应该做的事情:看数据,而不是想法。让我们看一些数据。我将在Indeed.com上使用趋势搜索。它可以根据时间搜索实际工作机会中的特定术语。这表明雇主正在寻找具有这种技能的人。但是请注意,这不是关于有效使用技能的调查。该指标更好地反映了一项技能的受欢迎程度。话不多说,我们上数据。我搜索了与“机器学习”和“数据科学”相关的技能,搜索选项包括编程语言Java、C、C++和JavaScript。然后还有Python和R,因为我们知道它在机器学习和数据科学中很受欢迎,当然还有Scala,因为它与Spark的关系,加上一些开发人员认为“下一件大事”的Julia。运行这个查询,我们得到以下数据:当我们专注于机器学习时,我们得到类似的数据:我们可以从这些数据中学到什么?首先,我们看到一刀切。在此背景下,各种机器学习编程语言大行其道。其次,所有这些编程语言都在经历着急剧的增长,反映出过去几年企业对机器学习和数据科学的兴趣和需求迅速增加。第三,Python是明显的领导者,其次是Java,然后是R,然后是C++。Python对Java的领先优势在增加,而Java对R的领先优势在下降。必须承认,我很惊讶地看到Java排在第二位;我还以为是R。第四,Scala的发展令人印象深刻。三年前几乎没有,现在几乎和这些成熟的编程语言处于同一水平。当我们切换到Indeed.com上数据的相对视图时,这一点更容易发现。第五,虽然Julia的人气不明显,但绝对有上升的趋势。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开发人员可以使用他喜欢的语言,因为有大量的JavaAPI开源。这些图表上的任何一种语言都可能有类似的例子。因此,我的建议是,在花大量时间学习一门语言之前,根据自己的情况决定选择哪种编程语言,切记不要跟风。