为什么机器学习的框架都偏向于Python
展开全部
首先python是解释语言,写程序很方便,所以做研究的人喜欢用它。正如为什么很多做研究的人用Matlab那样。出成果才是研究者关心的事情,实现只要方便就行。
然而在性能方面,我拿 python 和 c++ 做个比较。
c++ 的cpu效率是远远高于 python 的,这点大家都承认吧。不过 python 是一门胶水语言,它可以和任何语言结合,基于这个优点,很多数据处理的python 库底层都是 c++ 实现的,意思就是说:你用python写code,但效率是c++的。只有那些for 循环,还是用python的效率。
近年来机器学习最要是深度学习,而深度学习使用cuda gpu加速远比cpu要快,而cuda 是c++写的。所以现在TensorLayer、theano 等深度学习库都是 python 编程、底层c++。
而那些for 循环的效率,在整体耗时里面完全可以忽略!
有的人就会说,那为什么不直接用c++ 写cuda?不是更快吗?我想告诉大家,如果没有多年的cuda经验,写出来的代码效率绝对是个问题。
然而在性能方面,我拿 python 和 c++ 做个比较。
c++ 的cpu效率是远远高于 python 的,这点大家都承认吧。不过 python 是一门胶水语言,它可以和任何语言结合,基于这个优点,很多数据处理的python 库底层都是 c++ 实现的,意思就是说:你用python写code,但效率是c++的。只有那些for 循环,还是用python的效率。
近年来机器学习最要是深度学习,而深度学习使用cuda gpu加速远比cpu要快,而cuda 是c++写的。所以现在TensorLayer、theano 等深度学习库都是 python 编程、底层c++。
而那些for 循环的效率,在整体耗时里面完全可以忽略!
有的人就会说,那为什么不直接用c++ 写cuda?不是更快吗?我想告诉大家,如果没有多年的cuda经验,写出来的代码效率绝对是个问题。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询