大家好,今天小编关注到一个比较有意思的话题,就是关于深度学习python 库的问题,于是小编就整理了1个相关介绍深度学习Python 库的解答,让我们一起看看吧。
深度学习框架都有哪些?
国际上广泛使用的开源框架包括谷歌的 TensorFlow、脸书的 Torchnet 和微软的 DMTK等, 美国仍是该领域发展水平最高的国家。我国基础理论体系尚不成熟,百度的 PaddlePaddle、 腾讯的 Angle 等国内企业的算法框架尚无法与国际主流产品竞争。
TensorFlow,Keras,PyTorch,MXNet,PaddlePaddle,Deeplearning4j,ONNX,Caffe,Theano
还有一些非主流的,比如MATLAB,Mathematica
作为资深玩家的我,前后使用了theano、caffe、tensoflow、pytorch、mxnet,完全凭自己的记忆和领悟回答一下这个问题:
深度学习框架有哪些:
深度学习框架作为算法工程师的必备工具,好比软件工程师的开发语言,前后至少有50多个,比较有名气的10来个,经过近10年的开发和发展,至今主要有两个框架,一个是google的tensorflow,一个是Facebook支持的pyTorch。有人喜欢拿keras和pytorch比,但事实上tensoflow完全支持keras。
如何选择
首先看你是什么群体,如果你是学生党,建议使用pytorch,因为你不需要太关心底层的实现,你只需要关注每个网络层的用法就行,最终把更多的时间用在模型网络优化和参数调整上面,这样Pytorch便于学生理解NN算法和快速实践。如果你是职业算法工程师,那我就建议tensorflow了,工作中基本上你对算法也熟悉了,更应该关注算法落地实现能力,比如,QPS性能、通信网络时延、网络结构优化、权重参数调优等等与计算机基础算法相关的工程能力。因为tensorflow本身就是先有工程需求再重构设计的,一般google大牛的理念还是很前沿的,这个可以参考theano的设计。
另外也要看你偏爱什么语言,虽然tensorflow和pytorch都有python接口调用,但tensorflow底层是c++写的,如果你很了解C++了,何必还去和只懂python的朋友争论哪个好用呢,果断是tensorflow啊,哦不,你应该两个都懂。
最后表明一下我的立场,我喜欢tensorflow,有问题随时骚扰。
深度学习(Deep Learning)是机器学习中一种基于对数据进行表征学习的方法,深度学习的好处是用非监督式或半监督式的特征学习、分层特征提取高效算法来替代手工获取特征(feature)。目前研究人员正在使用的深度学习框架不尽相同,有 TensorFlow、Torch 、Caffe、Theano、Deeplearning4j等,这些深度学习框架被应用于计算机视觉、语音识别、自然语言处理与生物信息学等领域,并获取了极好的效果。
TensorFlow无疑是当前人气最高的明星产品:
TensorFlow是一款开源的数学计算软件,使用数据流图(Data Flow Graph)的形式进行计算。图中的节点代表数学运算,而图中的线条表示多维数据数组(tensor)之间的交互。TensorFlow灵活的[_a***_]可以部署在一个或多个CPU、GPU的台式以及服务器中,或者使用单一的API应用在移动设备中。TensorFlow最初是由研究人员和Google Brain团队针对机器学习和深度神经网络进行研究所开发的,目前开源之后可以在几乎各种领域适用。
Data Flow Graph: 使用有向图的节点和边共同描述数学计算。graph中的nodes代表数学操作,也可以表示数据输入输出的端点。边表示节点之间的关系,传递操作之间互相使用的多位数组(tensors),tensor在graph中流动——这也就是TensorFlow名字的由来。一旦节点相连的边传来了数据流,节点就被到计算设备上异步的(节点间)、并行的(节点内)执行。
TensorFlow的特点:
机动性: TensorFlow并不只是一个规则的neural network库,事实上如果你可以将你的计算表示成data flow graph的形式,就可以使用TensorFlow。用户构建graph,写内层循环代码驱动计算,TensorFlow可以帮助装配子图。定义新的操作只需要写一个Python函数,如果缺少底层的数据操作,需要写一些C++代码定义操作。
可适性强: 可以应用在不同设备上,cpus,gpu,移动设备,云平台等
自动差分: TensorFlow的自动差分能力对很多基于Graph的机器学习算法有益
多种编程语言可选: TensorFlow很容易使用,有python接口和C++接口。其他语言可以使用SWIG工具使用接口。(SWIG—Simplified Wrapper and Interface Generator, 是一个非常优秀的开源工具,支持将 C/C++ 代码与任何主流脚本语言相集成。)
到此,以上就是小编对于深度学习python 库的问题就介绍到这了,希望介绍关于深度学习python 库的1点解答对大家有用。