百科问答小站 logo
百科问答小站 font logo



为什么人工智能用 Python? 第1页

  

user avatar   davidtsang 网友的相关建议: 
      

因为ai深度学习算法需要编程语言有高度的灵活性,所以动态语言编写更合适,而python是动态语言老大。所以不用python用什么呢?


user avatar   ling-jian-94 网友的相关建议: 
      

这属于一种误解,人工智能的核心算法是完全依赖于C/C++的,因为是计算密集型,需要非常精细的优化,还需要GPU、专用硬件之类的接口,这些都只有C/C++能做到。所以某种意义上其实C/C++才是人工智能领域最重要的语言。

Python是这些库的API binding,使用Python是因为CPython的胶水语言特性,要开发一个其他语言到C/C++的跨语言接口,Python是最容易的,比其他语言的ffi门槛要低不少,尤其是使用Cython的时候。其他语言的ffi许多都只能导入C的函数入口点,复杂的数据结构大多只能手工用byte数组拼起来,如果还需要回调函数输入那就无计可施了。而CPython的C API是双向融合的,可以直接对外暴露封装过的Python对象,还可以允许用户通过继承这些自定义对象来引入新特性,甚至可以从C代码当中再调用Python的函数(当然,也有一定的条件限制)。不过这也是PyPy这样的JIT解释器的一个障碍。

而且Python历史上也一直都是科学计算和数据分析的重要工具,有numpy这样的底子,因为行业近似所以选择API binding语言的时候会首选Python,同时复用numpy这样的基础库既减少了开发工作量,也方便从业人员上手。




  

相关话题

  如何评价浙江大学发布的“绝影”四足机器人? 
  假如达到强人工智能,岂不是可以认为人也是由代码构成,甚至能由代码解析? 
  2019 年人工智能行业又进入冬天了吗? 
  计算机系学生应该怎样正确管理自己的电脑? 
  为什么人工智能在围棋上几乎击败全人类,仍然不能完全解决交易问题? 
  旷视(Face++)完成C轮1亿美元融资,是否说明旷视已经进入独角兽阵营? 
  AlphaGo 战胜了李世石,人工智能突破了围棋领域,这意味着什么? 
  为什么很多程序员不用 switch,而是大量的 if...else if ...? 
  Alice 和 Bob 各有一个 0-9 的数,他们怎样能在不暴露自己数的前提下知道双方数字是否相同? 
  如果用计算机按照物理模型完模拟一个小型世界,是否需要模拟人的眼睛呢? 

前一个讨论
怎么看待在如今的大学中,许多漂亮的女生善用颜值变现?
下一个讨论
有没有一个公司匿名吐槽的平台,而且只有老板能看到?





© 2025-04-13 - tinynew.org. All Rights Reserved.
© 2025-04-13 - tinynew.org. 保留所有权利