专栏名称: StuQ
实践驱动的IT教育平台
目录
相关文章推荐
天津日报  ·  不到一个月,都江堰两任市长被查! ·  昨天  
天津日报  ·  李祖宝,任上被查 ·  2 天前  
51好读  ›  专栏  ›  StuQ

为什么学机器学习要选择 Python?

StuQ  · 公众号  ·  · 2017-10-11 19:30

正文

请到「今天看啥」查看全文


作为机器学习、模式识别等方面经常使用的工具,MATLAB 被放在了第一个分析。Raschka 认为,MATLAB 在实现机器学习算法时要比 Python 或者 NumPy 更加自然。很多高校也在计算机科学相关的课程中教授 MATLAB 语言。然而,MATLAB 也存在很多的缺点:价格昂贵、非开源、性能表现平平、语法不符合程序员的习惯等。例如,MATLAB中矩阵乘积运算操作为 X.dot(Y),而 Python 为 X@W ,更加简洁、明了。


各种语言相对于 C 的测试性能—— C 的性能为1.0,越小越好

从上图可以看出,MATLAB 的性能比 Python、Go、Java 等语言要差很多。 Raschka 也提到,上图中 Python 的性能也表现不好。但是,现在性能强劲的 GPU为Python 提供了强大的后盾。在2010年的时候, Python 中的 Theano 库在 CPU 上运行时,其速度是 NumPy 的1.8倍。而 Theano 在 GPU 上运行时,其速度就是 NumPy 的11倍。因此,在目前更高性能的 GPU 的帮助下, Python 性能已经有了更大的改进。

貌似很强大的 Julia

作为一门新型的语言,Julia 在设计之处就充分借鉴了 C/Ruby/Python 等语言的经验,试图重新融合众家之长,为科学计算提供一个有力的工具。Raschka 充分认可了该语言。然而,对于其未来 Julia 是否会流行,Raschka 持保留态度。

Bjarne Stroustrup:世界上只有两种语言——大家一直在抱怨的和无人问津的。

Raschka 认为一个语言是否有用又很大程度上取决于其是否流行。只有被广大编程人员所熟知的编程语言,相关的库才会更多,遇到问题时也能够方便的找到答案,且易于团队合作和代码分享。语言本身也会随着社区的关注不断得以改善。在流行度上,Julia 并没有什么优势。







请到「今天看啥」查看全文