百科问答小站 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这样的基础库既减少了开发工作量,也方便从业人员上手。




  

相关话题

  使用yield可以做哪些很酷的事情? 
  程序员的bug解决不了怎么办? 
  如何看待 2019 年 12 月 10 日召开的 OPPO 未来科技大会,有哪些值得关注的信息? 
  机器学习,深度神经网络等方法是否是正确的方向? 
  研一刚入学,从未接触过神经网络,python也是才开始学,现在导师要我做LSTM,我应该去学什么? 
  什么叫做泛函空间的大数定律? 
  新手如何入门pytorch? 
  LeCun 为什么要卸任 FAIR(Facebook AI 实验室)负责人,工程和研究的矛盾可调和吗? 
  工作中只能使用C#的基本语法,根本用不到任何如ASP.NET等成熟.Net技术,个人应该如何提高呢? 
  在你的工作领域里,哪些岗位无法被 AI 取代? 

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





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