摘要: 为什么Python会在这股深度学习浪潮中成为编程语言的头牌?听听大牛如何解释吧!

原文地址:http://click.aliyun.com/m/43988/

1.Python网络编程框架Twisted的创始人Glyph Lefkowitz(glyph):

编程是一项社交活动——Python社区已经认识到了这一点!

人工智能是一个全面的技术术语,通常意味着当前计算机科学研究中最先进的领域。

有一段时间,我们理所当然的认为基本图遍历是AI。那时候,Lisp是人工智能的专属语言,仅仅是因为研究人员更容易用它来做快速原型。我认为Python已经在很大程度上取代了它,因为除了类似的高层次功能之外,它还拥有出色的第三方库生态库和框架以及操作系统设施的完美集成。

Lispers可能会反对我的看法,所以我应该说清楚,我没有对Python在应用层次中的位置做出精确的陈述,只是说Python和Lisp都处于相同的语言类别中,像内存安全、模块、名称空间和高级数据结构。

在更具体的机器学习意义上,这是人们最近说的关于AI的最多的领域,我认为还有更具体的答案。NumPy及其相应的生态系统的存在使得研究人员可以对高级别内容进行研究,并进行高性能的数字处理。如果不是有非常强的数字处理需求,机器学习是没有任何意义的。

Python社区致力于为非程序员提供友好的介绍和生态系统支持,这确实增加了其在数据科学和计算科学的应用。无数的统计工作人员、天文学家、生物学家和商业分析师已经成为Python程序员,并且他们对自己的工具也做了些许的改进。编程基本上成为了一种社交活动,Python社区比JavaScript以外的任何其他语言都承认这一点。

机器学习是一个特别集成度很高的学科,因为任何AI/机器学习系统都需要从现实世界中提取大量数据作为训练数据或系统输入,因此Python的框架库生态系统意味着它通常可以很好地访问和转换数据。

2.PSF联合创始人兼eGenix首席执行官Marc-Andre Lemburg(@malemburg)

Python允许用户关注真正的问题

对于没有受过计算机科学培训的科学家来说,Python非常容易理解。当你尝试驱动你需要执行研究的外部库时,它可以帮助你消除许多必须处理的事项。

在Numeric(现在是NumPy)开始开发之后,增加了IPython笔记本(现在是Jupyter笔记本)、matplotlib和许多其他工具以使事情更加直观,Python让科学家主要考虑解决问题的方法,而不是去考虑那么多推动这些解决方案所需的技术。

与其他领域一样,Python是一种理想的集成语言,它将技术轻松绑定在一起。Python允许用户关注真正的问题,而不是花时间在实现细节上。除了为用户提供更方便的功能之外,Python还可以作为开发与外部库进行低级集成的理想平台。这主要是由于Python可以提供一个非常完整的API访问。

3.研究人员和Python机器学习的作者Sebastian Raschka(@rasbt):

对于数学和面向数据的人来说,Python非常容易使用。

我认为Python更适合做AI有两个主要原因。第一个原因是Python非常容易理解和学习。

我认为大多数从事机器学习和人工智能的人员都希望以最快捷的方式实现自己的想法。人工智能的重点是研究和应用程序,编程只是一个让你到达那里的工具。对于需要更多的数学和以数据为导向的人来说,编程语言学习起来越舒服,进入壁垒越低。Python也是非常容易理解的,这有助于保持最新的机器学习和AI的现状,例如,阅读算法的代码实现时。尝试人工智能和机器学习的新思路往往需要实现相对复杂的算法,语言越简单,调试就越容易。

第二个主要原因是,虽然Python本身就是一种非常易于访问的语言,但我们在其之上有很多优秀的库,这使得我们的工作变得更容易。没有人愿意花时间从头开始重新实现基本算法(除了研究机器学习和人工智能)。大量已经存在的Python库帮助我们专注于更令人兴奋的事情。

Python也可以用于处理高效的C/C ++算法和CUDA/cuDNN实现的优秀包装语言,这就是为什么现有的机器学习和深度学习库在Python中高效运行的原因。这对于机器学习和AI领域的工作是非常重要的。

总而言之,我会说Python是一种伟大的语言,它可以让研究人员和从业者专注于机器学习和AI,并且比其他语言更少分心。

4.ThoughtWorks的技术负责人Luciano Ramalho(@ramalhoorg):

Python对科学计算有吸引力。

最重要和最直接的原因是NumPy和SciPy库支持scikit-learn这样的项目,因为它目前几乎是所有机器学习任务的标准工具。

创建NumPy,SciPy,scikit-learn和其他许多库的原因是因为Python有一些功能使其对科学计算非常有吸引力。Python有其简单而一致的语法,可以让软件工程师以外的人更易于使用编程。

另一个原因是运算符重载,它使代码可读和简洁。然后就是Python的缓冲协议(PEP 3118),这是外部库在处理类似数组的数据结构时与Python高效互操作的标准。最后,Python为科学计算提供了丰富的库生态系统,吸引了更多的科学家并创造了良性循环。

5.Mike Bayer,Red Hat的高级软件工程师和SQLAlchemy的创建者:

Python是严格和高度一致性的。

我们正在Python这个领域中开发我们的库。我们将有一定希望保留和优化的算法放入一个库中,如scikit-learn。然后我们继续迭代并分享关于我们如何组织和思考数据的笔记。

高级脚本语言非常适合人工智能和机器学习,因为我们可以快速移动并重试。我们创建的大部分代码代表的是实际的数学和数据结构,而不是模板。

像Python这样的脚本语言更好,因为它是严格的和高度一致性的。每个人都可以更好地理解彼此的Python代码。

IPython笔记本等工具的可用性使得我们可以在全新的水平上迭代和分享我们的数学和算法。Python强调了我们正在努力完成的工作的核心,并且完全最小化了我们如何给计算机指令的所有其他内容,这就是它应该如何实现的,自动完成任何你不需要考虑的事情。

识别以下二维码,干货

五位专家跟你讲讲为啥Python更适合做AI/机器学习相关推荐

  1. python和lisp学哪个好_五位专家跟你讲讲为啥Python更适合做AI/机器学习

    摘要: 为什么Python会在这股深度学习浪潮中成为编程语言的头牌?听听大牛如何解释吧! 1.Python网络编程框架Twisted的创始人Glyph Lefkowitz(glyph): 编程是一项社 ...

  2. Mac 更适合做开发?从零把 Mac 打造成开发利器

    点击我爱计算机视觉标星,更快获取CVML新技术 本文作者:guoweiye,腾讯 PCG 开发工程师 很多人都说 Mac 比 Windows 更适合做开发,那关键是要把 Mac 配置好,下面就来和大家 ...

  3. 哪种语言更适合做自动化测试?

    经常有测试新手问我:Python和Java语言,哪个更适合做自动化测试?本来想简单的回答一下的,但又觉得对不起大家对小编的信任.因此,小编今天专门写了一篇文章来回答这个问题.欢迎各位大佬补充~ 1.什 ...

  4. IBM SPSS Statistics为什么更适合做大数据分析

    在这个大数据的时代,数据每时每刻都在产生.如何高效从这些数据中筛选.分析.提炼出有用的信息,成了当下世界的一个共同课题.我们对数据进行分析最重要的是得到想要的结果,这其中的过程当然是希望软件能够帮助我 ...

  5. 下列哪个适合做链栈_很多朋友在问:多层实木生态板和颗粒板哪个更适合做衣柜呢?...

    多层实木生态板和颗粒板哪个更适合做衣柜呢?这是很多消费者非常关心的问题,济南定制家具为你解答. 考虑到衣柜一般是家庭使用,所以我们一般看好衣柜的质量和环保,当消费者去板材市场选购济南定制家具板材,商家 ...

  6. 链表!比数组更适合做增删操作的数据结构

    什么是链表? 链表和数组的对比:在大多数语言中,数组的大小是固定的,从数组的起点或中间添加或删除元素的成本很高,因为需要移动元素. 链表中的每一个元素在内存中不是连续放置的,和它左右两侧元素是没有关系 ...

  7. 下列哪个适合做链栈_朋友圈人格图鉴:三天可见 vs 全部可见,哪个更适合做恋人?...

    你们的朋友圈里有没有这样几种人? << 朋友圈大赏 >> 你可能已经对这些朋友圈的风格习以为常,其实,每个人在朋友圈展示的语言.行为,可能默默揭示着一个人自己原本是怎样的人.想 ...

  8. 你觉得你有那些特质让你比别人更适合做产品经理?

    面试中我们可能会被问到这样一个问题,你觉得你有哪些特质让你比别人更适合做产品经理?产品小白尤其会被问到这个问题.那针对这个问题我们该如何回答呢?今天就来和大家聊聊这个话题. 面试题分析: 面试官一是想 ...

  9. 传统到敏捷的转型中,谁更适合做Scrum Master?

    摘要:本文主要讲述的是从传统到敏捷Scrum团队转型中,对Scrum Master这一角色的分析. 本文分享自华为云社区<传统到敏捷的转型中,谁更适合做Scrum Master?>,作者: ...

最新文章

  1. php 超长用省略号代替
  2. 绝对Linux服务器管理利器webmin
  3. 深度学习核心技术精讲100篇(八)-keras 实战系列之深度学习中的多任务学习(Multi-task learning)
  4. LeetCode题组:第169题-多数元素
  5. Redis-Session无状态会话技术
  6. android 判断byte值_Android开发之UDP可靠性传输
  7. Spring Web Service 学习之Hello World篇
  8. php webshell开源,[github开源]webshell连接器--Jeshell
  9. 重磅!滴滴全员会宣布过冬:将裁员15% 涉及员工超2000人
  10. 请君入瓮: 火眼自称遭某 APT 国家黑客组织攻击
  11. NoSQL数据库原理与应用
  12. 计算机毕设(附源码)JAVA-SSM基于JAVA宠物店管理系统
  13. MATLAB2017b libsvm安装教程
  14. 计算机技能培训工作计划,计算机培训教学计划范文
  15. JavaEE - 正则表达式、日期时间类、Math、Random、System、Runtime、大数值运算类
  16. 测试象棋水平用哪个软件好,最新象棋软件作弊名单公布,软件测试员都被封,哪些网络象棋主播...
  17. 7z怎么解压linux,7z 常用解压命令
  18. 6月6日重庆 减肥美容、无痕线雕提升技术精品班 (顾春英)
  19. 腾讯秀丽江山之长歌行服务器维护,37长歌行5月15日合服维护公告
  20. 每日辣评:快手和抖音、爱奇艺巨亏、搜狗输入法变声功能、贝佐斯

热门文章

  1. python3 gui tk代码_【基础】学习笔记30-python3 tkinter GUI编程-实操12
  2. mysql编程语法_MYSQL语法(一)
  3. 农委系统先进集体推荐报告_来自司法行政的他们,荣获上海档案系统表彰!
  4. armitage识别不了漏洞_Shiro RememberMe 漏洞检测的探索之路
  5. php 两个二维数组对比,php比较两二维数组求大神指教
  6. 手机投电脑_把王者荣耀投屏到电脑上玩更爽哦——投屏神器幕享
  7. mysql如何定位耗时较长的sql_Mysql实例mysql优化之定位效率较低的SQL
  8. 基于matlab的fisher线性判别及感知器判别_基于嵌入表示的网络实体对齐方法进展概述...
  9. 冒泡和快速排序的时间复杂度_三分钟快速记住冒泡排序算法
  10. 毕业典礼校长致辞金句频出:搬砖也要元气满满