当前位置: 首页 > 科技观察

打败Java、C-C++,为什么Python是机器学习的最佳语言!

时间:2023-03-16 18:36:42 科技观察

Python,一种面向对象的解释型计算机编程语言,由荷兰人GuidovanRossum于1989年发明,并于1991年首次公开发布。自1990年代初Python语言诞生以来,逐渐广泛应用于系统管理任务的处理和Web编程中。2011年1月,它被TIOBE编程语言排行榜评为2010年度语言。Python的使用量自2004年以来呈线性增长。去年7月20日,IEEE发布了2017年编程语言排行榜:Python高居榜首。是什么让Python成为当今最流行的机器学习语言!是大数据时代背景的契合,是其独特的生态系统,还是语言本身?首先,当然是因为每个人的生命都很短暂。作为一种解释型语言,Python虽然运行速度比谁都慢,但是却减轻了开发者的工作量。Python开发人员的哲学是“以一种方式做一件事,最好只用一种方式”。在设计Python语言时,如果面临多种选择,Python开发人员通常会拒绝花哨的语法,而选择清晰的语法,几乎没有或没有歧义。简单易学的特性催生了庞大的用户群和活跃的社区。机器学习框架的创造者也想走群众路线,让更多人使用。Python更接地气。Python成为机器学习主力军的第二个主要原因是因为Python为机器学习提供了大量的代码库和框架。使用python,你可以享受到很多方便的第三方数学运算库,比如NumPy、SciPy。可视化方面有MatplotLib和SeaBorn。您可以使用Pandas获得R在结构化数据操作方面的经验。面向图像、语音、文本等各个垂直领域。有非常成熟的库可以在预处理阶段调用。人们常说:“你有更多的图书馆”。Python标准库非常庞大。它可以帮助完成各种工作,包括正则表达式、文档生成、单元测试、线程、数据库、网络浏览器、CGI、FTP、电子邮件、XML、XML-RPC、HTML、WAV文件、密码系统、GUI、Tk和其他系统相关的操作。这被称为Python的“全功能”哲学。除了标准库之外,还有许多其他高质量的库,例如wxPython、Twisted和Python图像库等等。当然,这个编码系统还是有一些不足的,所以产生了很多workaround。Anaconda等发行版有自己的打包机制,可以很好地处理对不属于Python生态系统的可执行文件的依赖性。不过,总的来说,Python打包生态为机器学习提供了一定程度的便利,这符合Python一贯坚持的简单方便。最后,还有性能方面。当然Python性能不能满足大规模数据训练,所以大部分公司都是先用Python搭建原型,再用C++或JAVA实现工程化,再用Python封装留下接口。此外,得益于Python-to-C接口,许多高效且对Python友好的库,如gnumpy和theano可以加快程序的运行速度。在强大团队的支持下,这些库可能比一个不熟练的程序员更有效率。一个月的C写调调效率更高。因此,让Python在机器学习领域脱颖而出的不仅仅是单一的功能,而是Python的整个语言包:简单易学,更接地气,其生态有第三方代码库,可以涵盖广泛的机器学习用例和性能,可以帮助您很好地完成手头的工作。