Caffe is a deep learning framework. See the Caffe homepage for more info.
This was created for the elastic-thought project, which is a REST api wrapper around Caffe, but should be useful for anyone running Caffe.
There are CPU and GPU versions of this image:
This docker image is part of the following images generated from a single template:
Verify CPU Version:
$ cd /opt/caffe/data/mnist $ ./get_mnist.sh $ cd ../../examples/mnist $ sed -i 's/solver_mode: GPU/solver_mode: CPU/' lenet_solver.prototxt $ cd ../../ $ ./examples/mnist/create_mnist.sh $ ./examples/mnist/train_lenet.sh
libdc1394 error: Failed to initialize libdc1394 I1018 17:02:23.552733 66 caffe.cpp:90] Starting Optimization I1018 17:02:23.553583 66 solver.cpp:32] Initializing solver from parameters: ... lots of output ... I1207 03:17:50.054651 57 solver.cpp:247] Iteration 10000, Testing net (#0) I1207 03:17:55.369581 57 solver.cpp:298] Test net output #0: accuracy = 0.9904 I1207 03:17:55.370614 57 solver.cpp:298] Test net output #1: loss = 0.029635 (* 1 = 0.029635 loss) I1018 17:17:58.684598 66 caffe.cpp:102] Optimization Done.
How to launch GPU instances:
- You will to run on hardware that has the nvidia kernel module installed
- You will need to pass in the nvidia devices in the
See Running Caffe on AWS GPU Instance via Docker for instructions.
Verify GPU Version:
$ cd /opt/caffe/data/mnist $ ./get_mnist.sh $ ./examples/mnist/create_mnist.sh $ ./examples/mnist/train_lenet.sh
If you get the error "error while loading shared libraries: libglog.so.0: cannot open shared object file: No such file or directory", try running:
Why do you build Glog and Gflags? this container is based on ubuntu:14.04 which has precompiled packages for those libraries
this works fine and is saves some container build time :
sudo apt-get install libgflags-dev libgoogle-glog-dev