Popular Deep Learning Tools – a review

Deep Learning is the hottest trend now in AI and Machine Learning. We review the popular software for Deep Learning, including Caffe, Cuda-convnet, Deeplearning4j, Pylearn2, Theano, and Torch.

By Ran Bi.

Deep Learning is now of the hottest trends in Artificial Intelligence and Machine Learning, with daily reports of amazing new achievements, like doing better than humans on IQ test.

In 2015 KDnuggets Software Poll, a new category for Deep Learning Tools was added, with most popular tools in that poll listed below.

  • Pylearn2 (55 users)
  • Theano (50)
  • Caffe (29)
  • Torch (27)
  • Cuda-convnet (17)
  • Deeplearning4j (12)
  • Other Deep Learning Tools (106)

I haven’t used all of them, so this is a brief summary of these popular tools based on their homepages and tutorials.

Theano & Pylearn2:

Theano and Pylearn2 are both developed at University of Montreal with most developers in the LISA group led by Yoshua Bengio. Theano is a Python library, and you can also consider it as a mathematical expression compiler. It is good for making algorithms from scratch. Here is an intuitive example of Theano training.

If we want to use standard algorithms, we can write Pylearn2 plugins as Theano expressions, and Theano will optimize and stabilize the expressions. It includes all things needed for multilayer perceptron/RBM/Stacked Denoting Autoencoder/ConvNets. Here is a quick start tutorial to walk you through some basic ideas on Pylearn2.

Caffe:

Caffe is developed by the Berkeley Vision and Learning Center, created by Yangqing Jia and led by Evan Shelhamer. It is a fast and readable implementation of ConvNets in C++. As shown on its official page, Caffe can process over 60M images per day with a single NVIDIA K40 GPU with AlexNet. It can be used like a toolkit for image classification, while not for other deep learning application such as text or speech.

Torch & OverFeat:

Torch is written in Lua, and used at NYU, Facebook AI lab and Google DeepMind. It claims to provide a MATLAB-like environment for machine learning algorithms. Why did they choose Lua/LuaJIT instead of the more popular Python? They said in Torch7 paper that “Lua is easily to be integrated with C so within a few hours’ work, any C or C++ library can become a Lua library.” With Lua written in pure ANSI C, it can be easily compiled for arbitrary targets.

OverFeat is a feature extractor trained on the ImageNet dataset with Torch7 and also easy to start with.

Cuda:

There is no doubt that GPU accelerates deep learning researches these days. News about GPU especially Nvidia Cuda is all over the Internet. Cuda-convnet/CuDNNsupports all the mainstream softwares such as Caffe, Torch and Theano and is very easy to enable.

Deeplearning4j:

Unlike the above packages, Deeplearning4j is designed to be used in business environments, rather than as a research tool. As on its introduction, DL4J is a “Java-based, industry-focused, commercially supported, distributed deep-learning framework.”

Comparison

These tools seem to be in a friendly competition of speed and ease of use.

Caffe developers say that “Caffe is the fastest convnet implementation available.”

Torch7 is proved to be faster than Theano on most benchmarks as shown inTorch7 paper.

Soumith gave his convnet benchmarks of all public open-source implementations.

A comparison table of some popular deep learning tools is listed in the Caffe paper.

There is a thread on reddit about “best framework for deep neural nets”. DL4J also gives DL4J vs. Torch vs. Theano vs. Caffe on its website.

Related:

What is your favorite Deep Learning package?

 


Most popular last 30 days

Most viewed last 30 days

  1. Top 20 Python Machine Learning Open Source Projects - Jun 1, 2015.
  2. R vs Python for Data Science: The Winner is ... - May 26, 2015.
  3. R leads RapidMiner, Python catches up, Big Data tools grow, Spark ignites - May 25, 2015.
  4. Top 10 Data Mining Algorithms, Explained - May 21, 2015.
  5. Which Big Data, Data Mining, and Data Science Tools go together? - Jun 11, 2015.
  6. 9 Must-Have Skills You Need to Become a Data Scientist - Nov 22, 2014.
  7. 7 Steps for Learning Data Mining and Data Science - Oct 10, 2013.
  8. Top 10 Data Analysis Tools for Business - Jun 13, 2014.

Most shared last 30 days

  1. Top 20 Python Machine Learning Open Source Projects - Jun 1, 2015.
  2. R vs Python for Data Science: The Winner is ... - May 26, 2015.
  3. Which Big Data, Data Mining, and Data Science Tools go together? - Jun 11, 2015.
  4. R leads RapidMiner, Python catches up, Big Data tools grow, Spark ignites - May 25, 2015.
  5. Popular Deep Learning Tools - a review - Jun 18, 2015.
  6. 150 Most Influential People in Big Data & Hadoop - May 27, 2015.
  7. Exclusive Interview: Matei Zaharia, creator of Apache Spark, on Spark, Hadoop, Flink, and Big Data in 2020 - May 22, 2015.
  8. 21 Essential Data Visualization Tools - May 28, 2015.

Popular Deep Learning Tools – a review的更多相关文章

  1. What are some good books/papers for learning deep learning?

    What's the most effective way to get started with deep learning?       29 Answers     Yoshua Bengio, ...

  2. (转) Learning Deep Learning with Keras

    Learning Deep Learning with Keras Piotr Migdał - blog Projects Articles Publications Resume About Ph ...

  3. 如何选择分类器?LR、SVM、Ensemble、Deep learning

    转自:https://www.quora.com/What-are-the-advantages-of-different-classification-algorithms There are a ...

  4. 【CS-4476-project 6】Deep Learning

    AlexNet / VGG-F network visualized by mNeuron. Project 6: Deep LearningIntroduction to Computer Visi ...

  5. Review of Semantic Segmentation with Deep Learning

    In this post, I review the literature on semantic segmentation. Most research on semantic segmentati ...

  6. (转) Deep Learning Research Review Week 2: Reinforcement Learning

      Deep Learning Research Review Week 2: Reinforcement Learning 转载自: https://adeshpande3.github.io/ad ...

  7. (转)Deep Learning Research Review Week 1: Generative Adversarial Nets

    Adit Deshpande CS Undergrad at UCLA ('19) Blog About Resume Deep Learning Research Review Week 1: Ge ...

  8. 论文笔记:A Review on Deep Learning Techniques Applied to Semantic Segmentation

    A Review on Deep Learning Techniques Applied to Semantic Segmentation 2018-02-22  10:38:12   1. Intr ...

  9. Deep learning for visual understanding: A review 视觉理解中的深度学习:回顾 之一

    Deep learning for visual understanding: A review 视觉理解中的深度学习:回顾 ABSTRACT: Deep learning algorithms ar ...

随机推荐

  1. win10亮度不能调节的解决方法

    如果大家遇到Win10屏幕亮度调不了,该如何解决呢?以下是电脑百事网小编亲测比较有用的几种方法,希望能够帮助大家. 修改注册表解决Win10屏幕亮度无法调节 1.首先使用 Win+R 组合快捷键打开W ...

  2. [Reactive Programming] Async requests and responses in RxJS

    We will learn how to perform network requests to a backend using RxJS Observables. A example of basi ...

  3. android 43 SQLite数据库

    SQLite数据库很小,占用内存只有几百K,安卓和IOS都是用的SQLite数据库. 页面: <LinearLayout xmlns:android="http://schemas.a ...

  4. Qt 学习之路 :Qt Quick Controls

    自 QML 第一次发布已经过去一年多的时间,但在企业应用领域,QML 一直没有能够占据一定地位.很大一部分原因是,QML 缺少一些在企业应用中亟需的组件,比如按钮.菜单等.虽然移动领域,这些组件已经变 ...

  5. unity3D与网页的交互

    由于项目需要,要求用unity来展示三维场景,并在三维中能够方便的查询数据库等.一开始尝试在unity中直接连接数据库,当时连的xml,然而每次发布成网页后都会出现路径找不到等问题,所以迫不得已采用了 ...

  6. j2ee安全介绍--转

    一.简介 现在越来越多的企业应用构建在j2ee平台上,这得益于j2ee为企业应用的开发提供了良好的框架和服务的支持.j2ee为企业应用提供了多方面的服务(Security.Transaction.Na ...

  7. iOS-UIScrollView的delaysContentTouches与canCencelContentTouches属性

    UIScrollView工作原理 在滚动过程当中,其实是在修改原点坐标 UIScrollView有一个BOOL类型的tracking属性,用来返回用户是否已经触及内容并打算开始滚动,我们从这个属性开始 ...

  8. Apple-Watch开发

    Apple Watch界面设计规范(4) - 通知 Apple Watch界面设计规范(3) - Glance Apple Watch界面设计规范(2) - 应用解析 Apple Watch界面设计规 ...

  9. JDK5-可变参数

    如:public void function(int arg, int... args) 注意: 可变参数必须出现在参数列表的最后,否则使用数组 可变参数隐式地创建一个数组 如下程序: public ...

  10. VS 2015 update2 装xamarin后,编辑axml文件无智能提示的解决方法。

    1.从github网上下载xsd文件.地址:https://github.com/atsushieno/monodroid-schema-gen: 2.如果你是以ie或edge浏览器下载的,一定要又键 ...