Caffe (Convolutional Architecture for Fast Feature Embedding) is an open source deep learning framework, originally developed at UC Berkeley.
The software is developed with cleanliness, readability, and speed in mind. Caffe powers academic research projects, startup prototypes, and large-scale industrial applications in vision, speech, and multimedia. The software has been adopted by many large corporations including Facebook, NVIDIA, Intel, Sony, Yahoo! Japan, Samsung, Adobe, A9, Siemens, Pinterest, the Embedded Vision Alliance, and more.
The software can process over 60M images per day with a single NVIDIA K40 GPU.
The next generation of the framework – Caffe2 – is under development.
Key Features
- Fast, well-tested code.
- Models and optimization are defined by configuration without hard-coding. Seamless switching between CPU and GPU.
- Supports many different types of deep learning architectures geared towards image classification and image segmentation.
- Supports GPU- and CPU-based acceleration computational kernel libraries such as NVIDIA cuDNN and Intel MKL
- Supports CNN, RCNN, LSTM and fully connected neural network designs.
- Provides model definitions, optimization setting, with pre-trained models. Caffe comes with models that are set up to use images from the ILSVRC12 challenge.
- Offers command line, Python, and MATLAB interfaces for day-to-day usage, interfacing with research code, and rapid prototyping:
- The command line interface – cmdcaffe – is the caffe tool for model training, scoring, and diagnostics.
- The Python interface – pycaffe – is the caffe module.
- The MATLAB interface – matcaffe – is the caffe package which you can integrate Caffe in Matlab code.
- Extensible code – good community support.
Website: caffe.berkeleyvision.org
Support: Mailing List, GitHub Code Repository
Developer: Berkeley AI Research (BAIR)
License: BSD 2-Clause license
Caffe needs the following software:
- CUDA is required for GPU mode:
- library version 7+ and the latest driver version are recommended, but 6.* also works.
- 5.5, and 5.0 are compatible but considered legacy.
- BLAS via ATLAS, MKL, or OpenBLAS.
- Boost >= 1.55.
- protobuf, glog, gflags, hdf5.
Optional dependencies:
- OpenCV >= 2.4 including 3.0.
- IO libraries: lmdb, leveldb (leveldb requires snappy).
- cuDNN for GPU acceleration (v7).
Caffe is written in C++, with a Python interface. Learn C++ with our recommended free books and free tutorials.
Related Software
| Deep Learning with Python | |
|---|---|
| TensorFlow | A very popular Deep Learning framework |
| PyTorch | Tensors and Dynamic neural networks in Python |
| Keras | High-level neural networks API |
| fastai | Simplifies training fast and accurate neural nets using modern best practices |
| PyTensor | Library for fast numerical computation |
| Elephas | Distributed deep learning with Keras and Spark |
| Chainer | Powerful, flexible, and intuitive framework for neural networks |
| Caffe | Convolutional Architecture for Fast Feature Embedding |
| TFlearn | Deep learning library featuring a higher-level API for TensorFlow |
| MXNet | Flexible and efficient library |
| CNTK | Distributed deep learning |
| Neupy | Python library for Artificial Neural Networks and Deep Learning |
Read our verdict in the software roundup.
Explore our comprehensive directory of recommended free and open source software. Our carefully curated collection spans every major software category.This directory is part of our ongoing series of informative articles for Linux enthusiasts. It features hundreds of detailed reviews, along with open source alternatives to proprietary solutions from major corporations such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. You’ll also find interesting projects to try, hardware coverage, free programming books and tutorials, and much more. Discovered a useful open source Linux program that we haven’t covered yet? Let us know by completing this form. |

