近年来,Python成为人工智能和数据科学领域最受欢迎的编程语言。 但是,随着5G时代的到来,生产环境对AI应用的性能要求越来越高,Python说有点“力所不及”。 天生支持同时性的Golang诞生,据专家介绍,Go语言支配着人工智能的下一个十年。
Python不是为AI而生的,Golang会支配人工智能的下一个十年吗?
Python于20年末获得批准,但不是为AI而生。30年前,Python首次出现。
但是,Python花了20年才被公众认可。
根据2019年Stack Overflow的调查,Python成为开发者第二喜欢的语言。
在过去的五年里,Python的增长确实巨大,成为机器学习和数据科学开发者的首选语言。
短时间内来看,Python主导地位高的概率不变。 但是,与一些新语言相比,有一些严重的缺点,会成为生产环境引进的障碍。
Python受欢迎的主要原因是容易学习。
与其他语言相比语法简单,任何人都可以在几个小时或几天内掌握Python的基础知识。
即使在学习了COC +和Java等其他语言之后,开发者也想使用Python。 因为无论你想做什么,总是有一个满足你需求的Python库。 这些库可以轻松高效地开发数据科学和AI类应用程序。
但是,Python在大规模生产环境中的性能问题直接影响着AI应用的开发效率。 现在很多人工智能初创企业处于基础结构的构筑阶段,需要检查Python的问题。
GIL锁定Python,拐杖步行性能成为瓶颈Python是说明文,执行慢,与C +和Go等其他编译语言相比Python的执行速度像乌龟,因此很多AI模型都是Python开发的原型。
Python是动态类型的语言。 变量的数据类型在运行时自动判断,执行速度也变慢。
为了克服Python的速度,许多Python库选择并改写更快的语言。 例如,TensorFlow、Numpy和Pandas部分是用c或C+写的,有助于提高运行速度。
这就像拄着拐杖走,一直需要外界的帮助。
随着5G时代的到来,多任务并行处理和实时性的需求急剧增加,Python可以构建小而美丽的应用程序,但在大规模高吞吐量的场景中,没有什么意义。 提高Python并行计算能力的方法有很多,但都是用曲线实现的,没有实现真正意义上的并行化。
由于Python中存在GIL锁,因此一次只能运行一个线程。
GIL的全名是全球解释器锁定( Global Interpreter Lock ),Python的父亲是为了数据安全而设计的,那时计算机的主频率还没有达到1G,程序都是单核的。
要执行一个线程,必须先获得GIL。 可以把GIL看作CPU的“通行证”。 如果不能取得通行证,就不允许CPU执行。 Python的多线程实际上没有利用多核计算的好处
因此,原生Python在性能上有很多限制。 在人工智能和数据科学领域,对性能的需求高,有既能满足Python的易用性又能满足生产需求的语言吗?
这时,Golang出生了。
Go天生支持同时称霸云计算,支配AI的下一个十年的golang(go )是静态和编译的语言,意味着执行速度比Python快好几倍。 与Python不同,Go不需要其他语言的帮助来加快速度。
以下是Go和Python之间的小基准游戏的对决。 Go的执行和CUVA差不多快,而且Go的编译代码比CUVA快得多,有些游戏中Go的所需时间只有Python的1%。
Go的语法也很简单,写入程序后可以直接编译到二进制文件中执行。 25个关键词可以表达你能想到的所有招式。 你想做什么是Go。
Go最大的特色是天生支持同时性,不需要像其他编程语言那样由开发者自己实现,也不需要使用第三者库实现同时编程,逻辑很容易理解。
Go可以使用Goroutine同时运行。 Goroutine是一个可以同时独立运行的函数,只占用2 kB的内存,因此单独同时运行数千万个Goroutine也没问题。
上述程序的顺序执行花了1000毫秒以上。 然后,在printTime函数之前添加关键字go。 也就是说,使用Goroutine同时运行程序在整个过程中只需要110毫秒,因此在go中同时运行非常简单。
与其他脚本和说明的高级编程语言不同,由Go编写的代码直接编译成机器代码并有效执行。 x86、AMD64 (x86_64 )、ARM; Linux、Windows、Darwin (OSX )、FreeBSD、Android (计划Go 1.4 )几乎在所有平台上都受支持,真的尽了一手,到处都在复用。
人工智能席卷世界,模仿机器学习、深度学习等人类智能的应用层出不穷,Python有助于很好地构建原型系统,验证模型的利用是否高效。
但是,现在对于高扩展性和计算能力的需要,Python有点难对付,但Go在这些方面显示了更大的潜力。 与Python相比,Go的速度提高了几十倍,可以吞吐量更多的数据,满足更高的并发需求。
根据Hackearth从76个国家对16000多名开发者进行的调查,Go在2020年成为最受欢迎的编程语言。
今年,近3成有经验的开发者想学习Go,学生的比例也达到了29%。
我知道几年前也把推荐系统从Python切换到了Go。
Go首席传教士许式伟说,2015年,Go语言将在两年内支配云计算领域,Go将支配下一个十年。
由于Docker、Kubernetes等项目的成功,Go在集群计算和云计算领域名列前茅,但Go的步伐并没有停止。
我们利用机器学习、深入学习进行预测和推论,最终为了生产服务。
Go对生产环境的支持远远优于用Python例如Go语言开发的Cortex,可以将Python开发的AI模型迅速且稳定地引入生产环境。
Go和Python两大社区的开发者也讨论过哪种语言好,但似乎没有人完全说服。
但是越来越多的企业使用Go构建基础设施至少证明了Go对生产环境更合适。
【编辑推荐】
自动智能是如何影响网络保密工作的?自动智能的出现将改变IT未来的发展趋势,为未来带来更多的行业利益。 自动智能是如何影响网络保密工作的? 自动智能的基本原则可以收集数据,分析数据,理解结果之后决定,从结果中学习。
约会软件上的妹妹实际上是StyleGAN制作的人体模型。本文经人工智能新媒体qubit(公开号:QbitAI)授权转载。请联系来源以便重印。 约会软件上的妹妹实际上是StyleGAN制作的人体模型。 吐出一口老血。 你在约会软件上左右滑动的妹妹可能不再是人类了。
中国科学家创造“变色”软机器人天哪!!这还是我认识的机器人吗?不仅可以。伪装变色 ldquo变色。软件爬行机器人。 中国科学家创造“变色”软机器人 一方面,它向变色龙学习,通过调整结构颜色(不同于颜料)来改变颜色。
谷歌新的开源模型效率网:图像识别效率提高10倍,参数减少88%卷积神经网络通常是在资源有限的情况下开发的,然后在条件允许的情况下扩展到更大的计算资源以获得更好的精度。谷歌人工智能的科学家在他们的论文《效率网(EfficientNet):卷积神经网络的缩减
这就是为什么人脸和图像识别变得越来越重要。即将开播:4月29日,民生银行郭庆谈商业银行金融科技赋能的探索与实践 你记得看过犯罪节目吗?在这些项目中,调查小组将雇佣一名素描艺术家来画出证人描述的罪犯的外貌。然后他们会找到那