专为人工智能和数据科学而生的Go语言,或将取代Python

国外机构预测 , Go语言将很快取代Python!
时间回到30年前 , Python 首次亮相 。 花了20年时间 , Python才获得开发者的认可 。 来到 2019 年 , Python已经成为开发人员第二喜欢的语言 。
专为人工智能和数据科学而生的Go语言,或将取代Python文章插图
在过去的5年时间里 , Python 成为了机器学习和数据科学开发人员的首选编程语言 。
可以预见的是 , 在未来几年内 , Python在这些领域依然占据主导地位 。 但与较新的语言相比 , 它有一些严重的缺点 , 这对2020年的开发者来说可能是个障碍 。
现在正是研究Python问题并用更好的替代方案取代它的时候 。 在人工智能开发和数据科学方面 , 我们的下一个语言可能是 Golang 。
专为人工智能和数据科学而生的Go语言,或将取代Python文章插图
Python 流行的原因Python 之所以受欢迎 , 主要原因是它简单易学 。 与其他语言相比 , 它的语法很简单 , 任何人都可以在几个小时或几天内学会 Python 的基础知识 。
即使在学习了其他语言(如C++或Java)之后 , 开发人员也往往更喜欢使用Python 。 这是因为几乎所有的开发需求 , 都有对应的Python库来帮我们解决问题 。
庞大且功能齐全的Python库和简单的语法使 Python 中的软件开发变得简单而高效 。 这些优势使Python成为初学者的首选语言 。
Python存在的问题1.速度
Python是一种解释性语言 , 这导致了Python最大的问题 -- 执行缓慢 。 与其他编译语言(如C++和GO)相比 , Python的执行速度非常慢 。
Python是一种动态类型语言 。 变量的数据类型在运行时自动分配 , 这就会让执行速度变慢很多 。
2.C/C++的使用
为了克服Python的运行慢的难题 , Tensorflow、Numpy和Pandas等库都是用C或C++编写的 , 有助于显著提高Python执行速度 。
简而言之 , Python需要借助其他语言来克服它的运行速度过慢的难题 。
3.全局解释器锁
Python的全局解释器锁(GIL)一次只允许一个线程执行 , 同时提高了单线程性能 。 Python的多线程实际上并没有真正的同时运行多个线程 。
(注意:Python的非CPython实现 , 比如Jython和IronPython没有GIL)
为什么是Go语言?Go是一种开源编程语言 , 它的出现 , 让开发人员构建简单、可靠和高效的软件变得更加容易 。
Go作为谷歌开发的一种通用语言 , 在10年前首次亮相 。
相比Python及其他编程语言 , Go有以下几大优点:
1.运行速度快
Go是静态类型和编译语言 。 这意味着执行速度将比Python快几倍 。 与Python不同 , Go不需要其他语言的帮助来提高运行速度 。
2.简单易学
Go的语法很简单 , 与C语言相似 。 它是一种特别容易学习的编程语言 , 特别是如果你已经掌握了C或Java语言的基础知识 。
3.越来越受欢迎
根据hackerth对来自76个国家的16000多名开发者的调查 , Go是2020年最受欢迎的编程语言 。
此外 , 还有32%有经验的开发人员和29%的学生想学习Go语言 。
专为人工智能和数据科学而生的Go语言,或将取代Python文章插图
4.并发
并发性是Go的主要优势之一 。 Go通过Goroutines来实现并发 , Goroutine是可以同时独立运行的函数 。
Goroutine是只占用2kb的内存的轻量级函数 , 可以同时运行数千个Goroutine 。
是什么让Go语言更适合人工智能研究?在人工智能研究或数据科学中使用Go好像并没有什么特别之处 。
那么 , 为什么Go更适合用于人工智能和数据科学?
在30年前 , Python被开发出来的初始目的不是为了构建机器学习或深度学习算法 , 也不是为了使数据可视化 。


推荐阅读