首先人工智能的语言不仅仅是python,确切的说凡是跟高性能挂钩的,基本都是用C++语言来编程,而python语言其实是就一种api 绑定,其背后调用的人工智能平台软件都是C或者C++来写的,例如tensorflow,xgboost, caffe等等,当我们用python编写好了一些算法逻辑时,背后真正计算的还是C++,例如我们用python写完了一个简单的cnn分类程序,那么实际上python只是调用了c++编写的tensorflow core api,实际的图的绘制,数据的流动都是c++来完成的。
其次,python语言因为其简洁、易懂的特性深受初学者喜爱,简洁到什么地步呢?当你使用python时,你不用去仔细的考虑引用、对象、垃圾回收等伤脑筋的问题,你指需要关注你的算法逻辑本身就好。同时python拥有良好的统计基础,例如numpy,scipy等工具包,让机器学习和人工智能的很多操作变的简单。例如对于矩阵的运算处理,在C++里面可能得写一大波操作才能实现一个矩阵的基础操作,而在python中可以直接调用numpy里面对应的接口来直接实现。
最后,是python跨平台、开源和社区。python基本上可以在任何一个平台上使用,且安装极为简单,这使得python面对任何一个用户都是开发的。在社区上,python的社区建设相对其他语言来说较为成熟,开发者的活跃度较高。比如你想读取doc文件,直接导入docx包就可以了,你想写一个网页,直接调用flask就好了,你想跑分布式计算,直接运行pyspark就好了,这一切的社区的完善,帮助python成为数据科学中常用的语言。
一点点的小建议是python虽然很好用,但是使用久了,往往会让人对于数据本身或者系统本身的一些基础操作产生遗忘,所以还是建议从业人员可以多多使用C++来编写相关的人工只能程序,或者多对基础问题反问,巩固知识点。鲁楠,数据挖掘师,京东集团-智能技术部