Thursday, August 15, 2019

AI 從頭學(二):Popular Deep Learning Software Tools

AI 從頭學(二):Popular Deep Learning Software Tools

2016/12/08

-----


Fig. Framework(圖片來源:Pixabay)。

-----

下面四種是有支援 OpenCL 的:

1. Caffe
2. Torch
3. Theano
4. DeepCL

下面四種是 Python 可用的 machine learning library 前四名 :

1. Scikit-learn
2. TensorFlow
3. Theano
4. Caffe

-----

‧Caffe, developed by the Berkeley Vision and Learning Center, has unofficial support for OpenCL under the name project GreenTea [2]. There is also an AMD version of Caffe that supports OpenCL [1].

‧Torch, a scientific computing framework written in Lua, is widely used and has unofficial support for OpenCL under the project CLTorch [6].

‧Theano, developed by the University of Montreal, has unofficial support for OpenCL under the work-in-progress gpuarray backend [5].

‧DeepCL is an OpenCL library to train deep convolutional neural networks, developed by Hugh Perkins [3].

-----

出版說明:

2019/08/15

Framework 基本上是分類的 libraries。簡單說就是先寫好一堆 APIs 讓你 call。白話說,就是不用重頭造輪子。 早在很久以前 Visual C++ 推出後,微軟就推出了 MFC,不過 MFC 是給 Windows 程式用,不是給深度學習用。

2020 年如果你要進入深度學習,主要就是 TensorFlow(Keras)跟 PyTorch 兩個選擇。TensorFlow 功能強大但被認為有點混亂,Keras 把 TensorFlow 包的很好用。PyTorch 的代碼很漂亮,我看到後就立刻愛上了,後來還成立了 PyTorch Taiwan 的 FB 社團。

下方則是兩年半前,我剛接觸深度學習時,蒐集到的資料。目前 Theano 已經退出舞台了,不過它的精神留在後續其他的深度學習框架中。 老兵不死,只是凋零。

-----

資料來源:

Lacey, Griffin, Graham W. Taylor, and Shawki Areibi. "Deep Learning on FPGAs: Past, Present, and Future." arXiv preprint arXiv:1602.04283 (2016).

References

[1] Caffe-OpenCL.
https://github.com/amd/OpenCL-caffe/wiki, 2015.

[2] Caffe: project greentea.
https://github.com/BVLC/caffe/pull/2195, 2015.

[3] DeepCL.
https://github.com/hughperkins/DeepCL, 2015.

[5] Theano: gpuarray backend.
http://deeplearning.net/software/libgpuarray/index.html, 2015.

[6] Torch: cltorch.
https://github.com/hughperkins/cltorch, 2015.

-----

Table 1: Overview of Deep Learning Frameworks with OpenCL Support

Tool / Core Language / Bindings / OpenCL / User Base
Caffe / C++ / Python, MATLAB / Partial Support / Large
Torch / Lua / - / Partial Support / Large
Theano / Python / - / Minimal Support / Large
DeepCL / C++ / Python, Lua /Full Support / Moderate

-----

Top 20 Python Machine Learning Open Source Projects, 2016 ...

https://www.linkedin.com/pulse/top-20-python-machine-learning-open-source-projects-2016-prasad-pore?articleId=8126016610130529727 

前四名比較常見。 

1. Scikit-learn
2. TensorFlow
3. Theano
4. Caffe

No comments: