AlphaGo用语言是最接近 AI 的编程语言?

来自通约智库
江南仁讨论 | 贡献2019年3月23日 (六) 10:55的版本
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳转至: 导航搜索

来源:数字尾巴

最近浙江省教育局对其信息技术课程进行了改革,将原 Visual Basic 语言从教材中移除,更换为 Python 语言教学内容,甚至还将 Python 语言纳入了浙江省信息技术高考内容。

或许知道的人并不多,屡次战胜人类围棋手的 AlphaGo,背后的程序很大一部分就是由 Python 编程语言编写的。

Python03.jpeg

那么连 AlphaGo 都在使用的 Python 编程语言,是编写人工智能最佳的编程语言吗?回答这个问题前,我们需要了解 Python 相比起其它编程语言有什么优势。

作为一门面向对象的编程语言,Python 相比起其他编程语言,具有语法简练、可读性强、易学易读,且开源、可移植、可拓展、可嵌入等优势,其面向对象也更加安全,是如今最为高效的编程语言之一。

对于人工智能系统的编写,Python 天生拥有许多方便开发的「工具库」,满足开发数值计算、机器学习、神经网络以及数据可视化使用,大大提高了程序编写的效率。

Python 语言的战略定位,也一定程度地造就了如今的它。Python 追求的是一种易用且严谨专业的通用组成语言,让语言本身更容易入门,能将各种基本程序原件拼装协调运作。Python 追求的是开发效率,优先级甚至高于 CPU 效率;不过也正因如此,在使用 Python 开发时,开发者常常会使用别的编程语言进行配合,让整个程序运行得更快。

另外,Python 还拥有非常好的包装能力、可组合性以及可嵌入性,极易形成可用性高的接口 – 这恰很好满足了人工智能系统开发的需求。

话说回来,AI 作为一个泛形且整体性较强的系统,在为 AI 项目选择编程语言时,不应只考虑部分功能,而应顾全大局。Python 的特性很好地满足了人工智能开发的需求;它拥有不少的优势,但 Prolog、Lisp 等语言的独特性,在 AI 领域又发挥着 Python 不能很好满足的效能,这就需要按实际 AI 项目需求来选择使用不同的编程语言了。