小程序开发语言python_小程序是用什么语言开发的?5种最佳语言分享

你应该学习哪种编程语言来探索AI的深度?当然,你会需要一个拥有许多优秀机器学习和深度学习库的语言。它还应具有良好的运行时性能,良好的工具支持,大量程序员社区以及健康的支持包生态系统。这仍然留下了很多不错的选择。

下面是我选择AI开发的五种最佳编程语言。其中一些语言正在兴起,而其他语言似乎正在滑落。几个月后回来,你可能会发现这些排名已经发生了变化。

1. Python

第一,它是Python。它怎么可能是其他的,真的吗?尽管有令人生气的关于Python的东西 - 空格,Python 2.x和Python 3.x之间的巨大差异,五种不同的打包系统都以不同的方式打破了 - 如果你正在做AI工作,你几乎肯定会在某些时候使用Python。

Python中可用的库在其他语言中几乎是无与伦比的。NumPy已经变得如此无处不在,它几乎是张量操作的标准API,Pandas将R的强大而灵活的数据框带入Python。对于自然语言处理(NLP),您拥有令人尊敬的NLTK和快速的SpaCy。对于机器学习,有经过测试的Scikit-learn。而且,当涉及到深学习,目前所有的库(的TensorFlow,PyTorch,Chainer,阿帕奇MXNet,Theano等)是有效的Python的第一个项目。

如果您正在阅读关于arXiv的尖端深度学习研究,那么您几乎可以肯定会在Python中找到源代码。然后还有Python生态系统的其他部分。虽然IPython已经成为Jupyter Notebook,并且以Python为中心,但您仍然会发现绝大多数Jupyter Notebook用户以及大多数在线共享的笔记本都使用Python。

没有绕过它。Python是人工智能研究的前沿语言,这是您可以找到机器学习和深度学习框架最多的语言,也是人工智能领域几乎所有人都会说的语言。由于这些原因,尽管您的作者每天至少诅咒一次空白问题,Python仍然是人工智能编程语言中的首例。

2、Java系列

JVM系列语言(Java,Scala,Kotlin,Clojure等)也是AI应用程序开发的绝佳选择。无论是自然语言处理(CoreNLP),张量运算(ND4J)还是完整的GPU加速深度学习堆栈(DL4J),您都可以使用大量库来管理流水线的各个部分。另外,您还可以轻松访问Apache Spark和Apache Hadoop等大数据平台。

Java是大多数企业的通用语言,在Java 8和Java 9中提供了新的语言结构,编写Java代码并不是我们中许多人所记得的可恶的体验。使用Java编写人工智能应用程序可能会让人觉得无聊,但它可以完成工作,并且可以将所有现有的Java基础架构用于开发,部署和监视。

3. C / C ++

在开发AI应用程序时,C / C ++不太可能是您的首选,但如果您在嵌入式环境中工作,并且无法承受Java虚拟机或Python解释器的开销,那么C / C ++就是回答。当你需要从系统中抽取最后一点的性能时,你需要回到可怕的指针世界。

值得庆幸的是,现代C / C ++可以很好写(诚实!)。您可以选择一些方法。您可以使用CUDA等库来编写自己的代码,直接在GPU上运行,也可以使用TensorFlow或Caffe获取灵活的高级API访问权限。后者还允许您导入数据科学家可能用Python构建的模型,然后以C / C ++提供的所有速度在生产环境中运行它们。

留意Rust在未来一年的空间中所做的工作。结合C / C ++的速度与类型和数据安全性,Rust是实现生产性能而不会造成安全性问题的最佳选择。并且TensorFlow绑定已经可用。

4. JavaScript

JavaScript的?究竟是怎么回事?那么,谷歌最近发布了TensorFlow.js,这是一个WebGL加速库,允许您在Web浏览器中训练和运行机器学习模型。它还包括Keras API以及加载和使用在常规TensorFlow中训练过的模型的功能。这可能会吸引大量开发人员涌入AI领域。虽然JavaScript目前对机器学习库的访问权限与此处列出的其他语言不同,但很快开发人员将在他们的网页中添加神经网络,与添加React组件或CSS属性几乎相同。同时授权和恐吓。

TensorFlow.js仍处于早期阶段。目前它在浏览器中工作,但不在Node.js中。它还没有实现完整的TensorFlow API。不过,我预计到2018年底,这两个问题都将基本得到解决,并且AI的JavaScript入侵将在此后不久进行。

5. R

R进入前五名的底部,并且趋向下行。R是数据科学家喜欢的语言。但是,其他程序员发现R在第一次遇到它时感到有些困惑,因为它采用了以数据框架为中心的方法。如果您有一组专门的R开发人员,那么使用与TensorFlow,Keras或H2O进行研究,原型设计和实验的集成是有意义的,但是我不愿推荐R用于生产用途。

其他AI编程选项

当然,Python,Java,C / C ++,JavaScript和R并不是AI编程唯一可用的语言。让我们看看三种编程语言,它们并没有完全进入我们前五名的上升和下降。

LUA

几年前,Lua在人工智能领域处于领先地位。借助Torch框架,Lua是深度学习开发中最受欢迎的语言之一,您仍然会在GitHub上遇到许多历史深入的学习工作,这些工作通过Lua / Torch定义了模型。我认为,为了研究和查看人们以前的工作,熟悉Lua是个好主意。但随着TensorFlow和PyTorch等框架的到来,Lua的使用大幅下降。

你可能感兴趣的:(小程序开发语言python)