常用深度学习框——Caffe/TensorFlow / Keras/ PyTorch/MXNet
一.概述
近几年来,深度学习的研究和应用的热潮持续高涨,各种开源深度学习框架层出不穷,包括TensorFlow,Keras,MXNet,PyTorch,CNTK,Theano,Caffe,DeepLearning4,Lasagne,Neon,等等。Google,Microsoft等商业巨头都加入了这场深度学习框架大战,当下最主流的框架当属TensorFlow,Keras,MXNet,PyTorch,Caffe接下来对这四种主流的深度学习框架从几个不同的方面进行简单的对比。
选择框架,建议几个点考虑:
1)框架能不能解决你的问题。比如某些框架对rnn或者lstm支持不足。
这个是必要条件。下面的都附加条件。
2)框架的资源是否足够。比如文档,社区,开源的项目支持。
3)框架是否易于上手,学习曲线如何。这个就因人而异了。
4)框架应用是否和现有系统匹配。这个也是根据你自己的具体情况了。
二. Caffe
Caffe作为入门级的深度学习框架,对于一般的深度学习任务,如图像分类/ 目标检测/ 实例分割等,存在已有的代码供大家参考,使得上手很快,需要新手修改的地方一般为配置文件,基本不需要书写代码。而且Caffe是基于C++的代码,因此训练方面很快。因此,作为新手入门这是一个很好的框架。适合新手作为入门,了解深度学习,以及深度学习任务中的各参数。