背景:在學(xué)習(xí)深度學(xué)習(xí)的時(shí)候,往往需要做的一個(gè)決策是:現(xiàn)在深度學(xué)習(xí)框架這么多斤彼,我應(yīng)該使用哪種范抓?選取一件趁手的兵器纸型,總是西天取經(jīng)的第一步拇砰。
Who the Super Star?
-
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/
-
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
-
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
-
Pytorch
- Github star: 16.9K
- Github fork: 3,894
- Language: C++ (Based on Torch)
- API Language: Python
- Author: Facebook
- Community: 8K Repos
-
Theano
- Github star: 8.3K
- Github fork: 2,450
- Language: Python
- API Language: Python
- Author: Université de Montréal
- Community: 2K Repos
-
Paddle
- Github star: 7.2K
- Github fork: 1,966
- Language: C++
- API Language: Python/C++
- Author: Baidu
- Community: 1K Repos
結(jié)論:
- 流行度評(píng)比:從上面的數(shù)據(jù)可以看到,Tensorflow和基于Tensorflow/Theano/CHTK的Keras的受歡迎流行度是屬于Super Star級(jí)別的狰腌。
-
框架選擇:
Tensorflow作為底層框架首選除破,其他上層框架根據(jù)自身具體情況選擇。-
Why Tensorflow
Tensorflow的流行度和社區(qū)活躍度都是最高的癌别,同時(shí)因?yàn)榛钴S上層框架Keras也有基于Tensorflow的實(shí)現(xiàn)皂岔,Tensorflow的流行決定了Tensorflow的框架完善性和進(jìn)化能力都是有底層保障的。同時(shí)展姐,由于Tensorflow背后有Google大佬的支持躁垛,所以工業(yè)界工程的實(shí)現(xiàn)都是有支持剖毯,也保證了Tensorflow的長(zhǎng)久完善維護(hù),不至于出現(xiàn)因?yàn)樽髡卟桓戮S護(hù)導(dǎo)致整個(gè)框架被主流拋棄的顧慮教馆。 -
Others?
在其他框架中逊谋,需要考慮到的因素包括:1. 框架背后的公司支持和社區(qū)熱度,不至于不再維護(hù)導(dǎo)致巨大的機(jī)會(huì)成本土铺;2. 對(duì)于具體任務(wù)不同框架的優(yōu)劣勢(shì)胶滋;3. 不同框架開源項(xiàng)目的多少;個(gè)人對(duì)于框架的喜好悲敷,對(duì)于框架語(yǔ)言的適應(yīng)性究恤。以上考慮因素的主要目的是綜合考慮目標(biāo)框架的長(zhǎng)期可持續(xù)發(fā)展,以及對(duì)于自身項(xiàng)目實(shí)現(xiàn)的高效便捷后德,根據(jù)自身的實(shí)際情況定制選取合適的框架部宿。
-
Why Tensorflow