Golang和Python究竟哪种语言更适合AI工程师?Python很出色,但对于AI编程来说,Golang或许更合适。
作者 | Michael lyam
译者 | 孙薇,责编 | 郭芮
以下为译文:
Golang语言出现于大约十年前,也就是2009年11月,到现在刚满10岁不久。这门由Google工程师所开发的语言,大大提高了开发者的工作效率。语言开发者的初衷是希望这种语言能消除C++等语言中的所谓“额外垃圾”,它允许我们编译机器码,支持运行时反射,并有着便利的垃圾回收机制。
Golang语言如今正成为机器学习及AI的主流编程语言,惠及全球数百万的用户。一些大品牌包括网飞、美国运通、Uber、Dropbox、Salesforce、Twitter以及Twitch等都是Golang的用户。
Golang会淘汰Python吗?答案是:并不会。
Python使用广泛,且用途太多,反而因此过时。它是一种编程语言,可以将数千个组件从单独的模块编译为整个的开发程序包。Python还有一个强大的社区,并有望在未来数十年间保持活跃。同时,在多种环境的测试下,Python公认是开发初学者极易入手的编程语言,深受年轻开发者的追捧。Go语言的性能在编写服务器端脚本时要优于Python,因此,如果你要寻找的是具有快速部署周期的超高性能并发服务时,Golang会优于Python。
但是,如今Go和Python被并称为最适合AI专业人士的热门语言。当公司同时使用这两种语言时,提出一个严峻的解决方案对我们来说可能会是个挑战。
对于AI工程师,Golang的优势
AI即将席卷整个技术世界。机器学习、自我纠正和推理都是一些可以模仿人类智能的应用程序。如今,AI驱动的应用使企业能够改善自身资源运用,从而造成积极的影响。
高可伸缩性及计算能力:与Python相比,Golang在可伸缩性和性能方面的潜力更大,使用Go是出于这样的考量:Go在数学计算方面速度更高。比如,与Python相比,Go可以处理高达20-50倍数量的复杂数学问题,且处理速度更快。Golang在AI上的用途更广:尽管Go的库比较小,但一直持续增长,覆盖了AI方面多个用途的需求。Go的数据库,如GoLearn(数据处理),Goml(传输数据)以及Hector(解决二进制分类问题)都是为AI及其应用服务的一些库。提供良好的代码可读性:Go语言所用的算法提供了一种极简主义的方法,允许开发者轻松编写可读的代码。Go语言的开发者可以轻松使用Go语言库:大多Go语言的开发者不需要选择其他编程语言所编写的库。Go拥有库的核心优势在于:使用Go语言的AI专业人士可以获得开发者的舒适感。
对于AI工程师:Python的优势
IT行业中新贵是什么?答案大多集中在机器学习和AI等领域,且确实如此。这两种技术一直是IT行业的主流,且会一直延续到短期未来。
多个库:有各种各样的库可以协助AI工程师构建全新的算法、进行数据集的处理、处理模型、处理最为复杂的数据等,还提供了更多其他的功能。别忘了,TensorFlow就是最热门的库之一,还是开源的,可用于Google多个机器学习的应用。作为一门语言,Python是可访问的:从业务方面来说,语言的可访问性仅仅意味着拥有庞大的Python编程专家市场。此外,我们知道这些编程语言已经在全球范围内普及起来。强大的社区:Python具有完善的强大社区。根据2019年的GitHub报告,全世界大约有100万次pull request,该社区倾向于为创建新库投入资源,以扩展Python工具集及更新相关文档。
为什么要用Golang,而不是Python?
在可伸缩性上,Golang任务就是维护并帮助开发者在更大范围内解决问题,这也是Golang内置支持并发流程通道的原因。但Python在并发方面则面临着重大挑战。
由于支持并发,Go语言广泛运用在集群计算和云计算方面。
如上所述,当涉及到可读性时,Python肯定更占优势,但有时未免太过。Python确实为使用者在同一件事的阐述上提供了多种方式,但反而常会引发混乱。相反,Go语言在编程时遵循着严格的规则,不允许简单导入不需要的库,也不允许创建不必要的变量。当然,这意味着Go语言在执行任务时优势更大。尽管有些人可能对代码非通用的事实不太满意,但会有人在乎核心编程的事情吗?也许,只要代码是可读的,就无需在意了。
想要就哪种语言更好得出结论,可能是一项艰巨的工作。尽管大多数情况下,Golang似乎占了上风。目前,它的耀眼程度可能还不如Python,但最终某天会成长到那个程度。根据记录,Python花费了20年才达到如今的水平,最初10年中Python并未引起太多关注,直到2001年才逐渐崛起。因此,Go语言也一定会赶上如今的Python,也许在引发关注方面,Go语言已经有了一定出色的表现。
原文:
https://www.rtinsights.com/why-golang-and-not-python-which-language-is-perfect-for-ai/
作者:Michael lyam, 作家、AI极客、企业及社交媒体策略师。专业领域包括:人工智能、机器学习、物联网、数据科学、区块链和企业战略等主题。
译者:孙薇,前产品经理,现从事科幻小说及技术文章的编辑工作,兼职翻译。
本文为 CSDN 翻译,转载请注明来源出处。