作者 | Claire D

又要头秃?2020 年七大年夜 AI 编程措辞大年夜盘点_措辞_人工智能 文字写作

译者 | 苏本如,责编 | 伍杏玲

头图 | 视觉中国

出品 | CSDN(ID:CSDNnews)

以下为译文:

人工智能已成为我们日常生活不可或缺的一部分,它被广泛地运用到几百种实际场景中,极大处所便人们的事情和生活。

随着近年来的发展,人工智能促进企业的发展,这该归功于底层编程措辞核心的改进。

随着人工智能的发达发展和编程措辞的持续改进,对高效、闇练的程序员和工程师的需求激增。
虽然有很多编程措辞可以让你在人工智能上开拓领域轻松起步,但是没有一种编程措辞可以成为人工智能编程的“一站式”办理方案,由于每种编程措辞都有自己的独特之处。
目的不同,对措辞的哀求也会不同。

接下来,我将列出一些最受欢迎的人工智能编程措辞,一起看下:

Python

Python是有史以来最强大的编程措辞。
——Pau Dubois

Python出身于1991年。
据一项民意调查显示,超过57%的开拓职员更乐意选择Python,而不是C++作为开拓人工智能办理方案的编程措辞。
Python易于学习,为程序员和数据科学家们供应了一个更轻松地进入人工智能开拓天下的入口。

Python是一个关于程序员须要多少自由的实验。
太多的自由,会导致没有人能读懂别人的代码;太少的自由,会侵害到措辞的表现力。
——Guido van Rossum

利用Python,你不仅可以得到精良的社区支持和大量的库,还可以享受编程措辞供应的灵巧性。
Python最有可能让你受益的一些特性是:平台独立性和可以用于深度学习和机器学习的广泛框架。

利用Python编程的乐趣该当是看到简洁、可读性强的类,这些类利用简洁而清晰的代码(而不是一堆无聊至去世的噜苏代码)完成了大量的操作。
——Guido van Rossum

下面是一段Python代码的示例:

Python代码示例片断

Python的一些最受欢迎的库,列表如下:

TensorFlow,用于办理机器学习的事情负载和利用数据集问题。
scikit-learn,用于培训机器学习模型。
PyTorch ,用于打算机视觉和自然措辞处理。
Keras,作为高度繁芜的数学打算和操作的代码接口。
SparkMLlib,类似于Apache Spark的机器学习库,利用算法和实用程序等工具使得机器学习对每个人都可以很轻松。
MXNet,作为Apache的另一个库,用于简化深度学习事情流。
Theano,作为定义、优化和评估数学表达式的库。
Pybrain,用于强大的机器学习算法。

此外,对GitHub存储库贡献的剖析结果显示,Python已经超越Java,成为第二大最受欢迎的编程措辞。
实际上,Stack Overflow认为它是“增长最快”的主流编程措辞。

图源:Octoverse

适宜初学者的Python课程:

3个供初学者学习的免费Python课程:2020版https://hackernoon.com/3-free-python-courses-for-beginners-2020-edition-j7c23y3u

hackernoon.com网站供应的最好的免费Python课程,如果你想扩展你的Python知识,那么请来这里。

Python演习营:学习Python措辞和编码的培训营https://www.udemy.com/course/complete-python-bootcamp/?LSNPUBID=JVFxdTr9V80&ranEAID=JVFxdTr9V80&ranMID=39197&ranSiteID=JVFxdTr9V80-lB6TwxSdouentAk36.qjmw

这是Udemy长进修Python编程措辞的最全面、最直接的课程!

Java

一次编写,到处运行。

Java被认为是天下上最好的编程措辞之一,过去20年大伙的利用证明了这一点。

Java编程措辞具有高度的用户友好性、灵巧性和平台独立性,它已经以各种办法被用于人工智能的开拓当中,以下是一些例子供你理解:

TensorFlow

TensorFlow支持的编程措辞列表也包括带有API的Java。
它对Java的支持不像其他完备支持的措辞那样功能丰富,但它已经存在,并且正在以很快的速率得到改进。

Deep Java Library

由Amazon构建,利用Java来创建和支配深度学习能力。

Kubeflow

Kubeflow用于在Kubernetes上轻松支配和管理机器学习堆栈,供应现成的机器学习办理方案。

OpenNLP

Apache的OpenNLP是一个用于自然措辞处理的机器学习工具。

Java机器学习库

Java ML为开拓职员供应了几种机器学习算法。

Neuroph

在Neuroph GUI的帮助下,Neuroph使得利用Java开源框架设计神经网络成为可能。

如果Java有真正的垃圾回收,那么大多数程序在实行完后都会把自己从内存中删除。
——Robert Sewell

Java代码的示例片断如下:

Java代码的示例片断

适宜初学者的Java课程:

供初学者在线学习的五个最好的Java编程课程https://javarevisited.blogspot.com/2018/05/top-5-java-courses-for-beginners-to-learn-online.html

如果你是一名打算机学科的毕业生,或者是想学习Java并探求一些很棒的资源的人,那么请来这里吧。

R措辞

官网

R措辞是由Ross Ihaka和Robert Gentleman开拓,1995年推出第一个版本。
目前它由R开拓核心团队掩护。
R措辞是S编程措辞(以统计和绘图为目的)的一种实现,它被用来赞助开拓统计软件和数据剖析。

R措辞被开拓职员大量地用于人工智能编程,主是是由于它具有以下两个特点:

R措辞善于处理大量数据的基本特性,比较带有未经优化的NumPy包的Python措辞来说,更有上风。
利用R措辞,你可以以各种编程模式事情,如函数式编程、矢量打算和面向工具编程。

R措辞可供给用的一些AI编程包有:

Gmodels,供应了用于模型拟合的多个工具的凑集。
Tm,作为一种文本挖掘运用的框架。
RODBC,作为R措辞的ODBC接口。
OneR,用于实现One Rule机器学习分类算法,适用于机器学习模型。

R措辞因其如下特点/功能,在数据挖掘职员和统计职员中被广泛采取:

各种各样的库和包,以扩展其功能。
积极支持的社区。
能够与C、C++和FORTRAN一起事情多个软件包帮助功能扩展。
支持天生高质量的图形

一个有趣的R措辞运用例子:

利用R措辞制作2019新冠肺炎(Covid-19)交互式舆图:

https://www.r-bloggers.com/covid-19-interactive-map-using-r-with-shiny-leaflet-and-dplyr/

利用R措辞制作2019新冠肺炎(Covid-19)交互式舆图

Prolog

Prolog是Programming in Logic(逻辑编程)的简称,Prolog措辞最初涌现于1972年。
它为人工智能开拓,特殊是自然措辞处理供应了一个令人愉快的工具。
Prolog措辞最适宜创建谈天机器人,ELIZA是用Prolog创建的第一个谈天机器人。

第一个成功的谈天机器人,图源medium

要理解Prolog,你必须熟习辅导它事情的一些基本术语:

Facts(事实)定义了真实的声明。
Rules(规则)定义了有附加条件的声明。
Goals(目标)定义了根据知识库确定的报表提交的位置。
Queries(查询)定义如何使你的声明真实,以及如何对事实和规则进行终极剖析。

Prolog供应了两种实现人工智能的方法,这两种方法已经在实践中利用很永劫光了,并且在数据科学家和研究职员中广为人知:

符号方法(Symbolic Approach):包括基于规则的专家系统、定理证明、基于约束的方法。
统计方法(Statistical approach):包括神经网络、数据挖掘、机器学习等。
Lisp

用来创建一个有着N维输入和M个输出单元的单层感知器的Lisp代码

Lisp是List Processing的简称,它是仅次于Fortran的第二古老的编程措辞。
Lisp被称为人工智能的创始之父之一,由约翰·麦卡锡(John McCarthy)于1958年创建。

Lisp是一种措辞,它能让你做到别人见告你不可能做到的事情。
——Kent Pitman

Lisp作为一种实用的面向数学符号处理的编程措辞,它很快成为开拓职员的人工智能编程措辞的选择。
Lisp如下的一些特性,使其成为机器学习人工智能项目的最佳选择之一:

快速原型创建动态工具创建垃圾回收灵巧性

随着其他与之竞争的编程措辞的重大改进,Lisp特有的一些特性也运用到其他措辞中。
采取了Lisp开拓的一些著名项目包括Reddit和HackerNews。

就Lisp而言,你知道它是天下上最俏丽的措辞,至少在Haskell涌现之前是这样。
——Larry Wall

Haskell

官网

Haskell发布于1990年,以著名数学家Haskell Brooks Curry的名字命名,它是一种纯函数式和强静态类型的编程措辞,常常和延迟打算和较短的代码搭配利用。

Haskell被认为是一种非常安全的编程措辞,与其他编程措辞比较,它在缺点处理方面供应了更大的灵巧性。
在Haskell中很少发生缺点。
纵然它们确实发生了,大多数非语法缺点都是在编译阶段,而不是运行时捕获的。
Haskell供应的一些功能包括:

强大的抽象能力内置的内存管理代码可重用性易于理解

SQL、Lisp和Haskell是我见过的仅有的编程措辞,在这些措辞中,人们花在思考上的韶光比写代码的韶光要多。

Philip Greenspun

Haskell的特性有助于提高开拓职员的事情效率。
Haskell与其他编程措辞非常相似,只是由一个小众的开拓团队利用。
抛开这些寻衅不谈,Haskell可以证明它与其他竞争措辞一样适宜人工智能开拓,并且越来越多地被开拓社区采取。

Julia

Julia是一种高性能、通用的动态编程措辞,适宜创建险些任何运用程序,尤其非常适宜数据剖析和打算科学。
能够与Julia一起事情的各种工具包括:

盛行的编辑器,如Vim和Emacs。
集成开拓工具,如Juno和Visual Studio。

Julia源代码的目录构造

Julia供应的下列特性,使其在人工智能编程、机器学习、统计和数据建模中成为一个不可或缺的选项:

动态类型系统内置的包管理器能够进行并行和分布式打算宏和元编程能力支持多个调度对C措辞函数的直接支持

Julia是为肃清其他编程措辞的弱点而构建的,它可以与TensorFlow.jl、MLBase.jl、MXNet.jl等工具集成,用于开拓机器学习运用程序,这些工具充分利用了Julia供应的可伸缩性。

Google Trend – Julia的用户数随韶光变革图:

图源:Google trends

2019Julia开拓大会的先容***:https://www.youtube.com/user/JuliaLanguage

有了以上几种人工智能编程措辞可供选择,人工智能工程师和科学家们可以选择适宜他们项目须要的措辞。
每一种人工智能编程措辞都有各自的优缺陷。

随着这些措辞的不断改进,很快人工智能的开拓就会变得好比今更加轻松和高效,更多人就可以加入到这股创新浪潮中来。
好的社区支持使得新人们的生活更加美好,社区对扩展操持的贡献使每个人的编程事情生活更加轻松。

原文:https://towardsdatascience.com/top-programming-languages-for-ai-engineers-in-2020-33a9f16a80b0

本文为 CSDN 翻译,转载请注明来源出处。

热 文 推 荐

☞软件敲诈的骗局戳穿:“替罪羊”究竟是如何构建的?

☞遗留代码写的烂,我能怎么办?

☞Python 爬取疫情期间环球股市走向,笑不出来......

☞无代码时期来临,程序员如何保住饭碗?

☞从零开始构建:利用CNN和TensorFlow进行人脸特色检测

☞另一种声音:容器是不是未来?

☞探索比特币独特韶光链、挖矿用度及场外交易的观点