美文网首页
机器学习 | 深度学习框架流行度浅析

机器学习 | 深度学习框架流行度浅析

作者: AxsPlayer | 来源:发表于2018-07-09 19:13 被阅读51次

背景:在学习深度学习的时候,往往需要做的一个决策是:现在深度学习框架这么多,我应该使用哪种?选取一件趁手的兵器,总是西天取经的第一步。


Who the Super Star?

  1. Tensorflow
    • Github star: 104K
    • Github fork: 65,022
    • Language: C++
    • API Language: Python/Java/C++/Go/JavaScript/Swift
    • Author: Google
    • Community: 38K Repos
    • Companies using TF: https://www.tensorflow.org/
  2. Keras
    • Github star: 31.3K
    • Github fork: 11,712
    • Language: Python (Based on Tensorflow, Theano or CNTK)
    • API Language: Python/R/
    • Author: François Chollet (From Google)
    • Community: 12K Repos
  3. Caffe
    • Github star: 24.7K
    • Github fork: 15,159
    • Language: C++
    • API Language: C++/Python/Matlab
    • Author: Yangqing Jia (From Google/UC Berkeley)
    • Community: 5K Repos
  4. Pytorch
    • Github star: 16.9K
    • Github fork: 3,894
    • Language: C++ (Based on Torch)
    • API Language: Python
    • Author: Facebook
    • Community: 8K Repos
  5. Theano
    • Github star: 8.3K
    • Github fork: 2,450
    • Language: Python
    • API Language: Python
    • Author: Université de Montréal
    • Community: 2K Repos
  6. Paddle
    • Github star: 7.2K
    • Github fork: 1,966
    • Language: C++
    • API Language: Python/C++
    • Author: Baidu
    • Community: 1K Repos
结论:
  • 流行度评比:从上面的数据可以看到,Tensorflow和基于Tensorflow/Theano/CHTK的Keras的受欢迎流行度是属于Super Star级别的。
  • 框架选择
    Tensorflow作为底层框架首选,其他上层框架根据自身具体情况选择。
    • Why Tensorflow
      Tensorflow的流行度和社区活跃度都是最高的,同时因为活跃上层框架Keras也有基于Tensorflow的实现,Tensorflow的流行决定了Tensorflow的框架完善性和进化能力都是有底层保障的。同时,由于Tensorflow背后有Google大佬的支持,所以工业界工程的实现都是有支持,也保证了Tensorflow的长久完善维护,不至于出现因为作者不更新维护导致整个框架被主流抛弃的顾虑。
    • Others?
      在其他框架中,需要考虑到的因素包括:1. 框架背后的公司支持和社区热度,不至于不再维护导致巨大的机会成本;2. 对于具体任务不同框架的优劣势;3. 不同框架开源项目的多少;个人对于框架的喜好,对于框架语言的适应性。以上考虑因素的主要目的是综合考虑目标框架的长期可持续发展,以及对于自身项目实现的高效便捷,根据自身的实际情况定制选取合适的框架。

相关文章

网友评论

      本文标题:机器学习 | 深度学习框架流行度浅析

      本文链接:https://www.haomeiwen.com/subject/abbpuftx.html