20 年前的 AI 教学,多用 Prolog, Lisp。如今,盛行使用 Python。这是为什么?
一方面,谈一下Prolog与Python之间的差异。Prolog是一种针对逻辑的陈述性语言,它用来描述事实和规则,定义好事实和规则以后,Prolog利用自身的逻辑推演机制进行推理获得结果,相当于用户所做的只是界定了最初的事实和事实之间的内部逻辑,求解的主动权在Prolog本身。举个通俗点的例子就是我要生产某种糖果,在流水线入口提供原材料以及各材料的配比,流水线能自动地生产出我要的糖果。而Python作为一门编程语言,只是实现用户目标的一种工具,用户自己设计解决目标问题的整体流程,之后用这种工具实现出来供计算机解析得到结果,举个通俗点的例子,我觉得像是出门旅游时的路线规划,用户自己把路线规划好之后,至于各目的地之间用什么交通工具,可以根据用户喜好自己决定,比如飞机或者高铁,就像实现同一个解决方案,可以选择java也可以选择python是相似的。
另一方面,从Prolog到Python的转变的另一个重要原因,是随着大数据技术的普及和硬件计算能力的提高,现在的人工智能概念与20年前的人工智能概念相比已经发生了重大转变。现在人工智能之所以如此火热,是因为其在应用上取得了巨大突破,而这一突破的取得,得益于大数据技术所带来的解决AI问题的思维方式的变革,不再像IBM的深蓝一样拘泥于穷举可能的结果,而是像Google的Alpha Go一样通过机器学习等AI算法使模型本身具有自我学习和优化的能力。从这个角度看,能够实现用户算法思想的Python(包括java、C++等高级编程语言)更能满足当前AI研究的需要,而在高级编程语言中,Python之所以如此流行,又跟他丰富的类库、较平缓有关
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。