对机器学习开源框架的一些认识

开源框架有:Theano、Tensorflow、Caffe、Torch、SciKit-learn等

各自的应用:

1.Theano开发于2007年,擅长处理多维数组的库,偏底层,需要从底层建立模型。与后来出现的Tensorflow非常相似。它的优点有:使用计算图,RNN 与计算图兼容良好,有 Keras 和 Lasagne 这样高层的库,门槛比Tensorflow 低,缺点有:底层,较Torch臃肿,对事先训练过的模型支持不足,大模型需要时间较长。

2.Caffe:convolution architecture for feather extration特征提取卷积框架,用于计算机视觉,进行图像分类,对语音识别、文字识别、处理时间序列数据不支持。但能在Model Zool事先训练好的模型中挑选自己需要的直接下载使用。其中Alex’s CIFAR-10 tutorial with Caffe、Training LeNet on MNIST with Caffe、ImageNet with Caffe是世界一流的。适合于基础算法为主的工业应用,适用于前馈神经网络,Python的交互界面也不错,但是对于特殊的应用,可能需要加入C++和CUDA,灵活性会差一些,对于递归神经网络,表现也不太好,对大型神经网络也比较繁琐,无商业支持。

3.Torch:Lua语言支持的,原生交互界面对卷积神经网络友好,扩展工具提供了丰富的递归神经网络的模型,不需要写C++代码,灵活性较高。在增强学习领域,卷积神经网络和代理处理图像问题方面应用热门。但它需要自己训练代码,不适合循环神经网络。无商业支持。

4.SciKit-learn:提供一系列监督学习和无监督学习算法。用于数据挖掘和数据分析,几乎涵盖了机器学习的主流算法,相对于Tensorflow的底层,SciKit-learn用的模块化的方式,很多算法模型直接能用。但是其灵活性较低。

5.MXNet:亚马逊的御用平台,拥有Theano和Tensorflow的数据流图,为多GPU提供了良好配置。可以在很多硬件上运行。

 

参考文献:https://www.leiphone.com/news/201701/Lutmxs35U8ZNF7p6.html

                    https://baike.baidu.com/item/mxnet/22228269

架构:https://blog.csdn.net/l18930738887/article/details/50629962

你可能感兴趣的:(机器学习,开源框架,机器学习)