5 minutes to #DeepLearning on #Azure #DataScience VM with #Docker #NVidiaDigits #Caffe–CPU version

Quick post following previous one , for anyone who can’t have a GPU for any reason you can still use the code & Docker images below to do the same, but yes it will take a lot more time to train models. Sad smile

Started from Digits CPU Docker image here (amazing work with these Docker files by Kai Arulkumaran) and just added volume configuration for digits data & jobs.

So you can use, on Docker/Ubuntu :

docker run –rm –name digits-cpu -d -v $PWD/digits-data/:/data -v $PWD/digits-jobs:/jobs -p 5000:5000 rquintino/digits-cpu && \

docker exec -it digits-cpu python -m digits.download_data mnist /data/mnist

 

On Docker/Windows:

docker run –rm –name digits-cpu -d -v "%cd:\=/%/digits-data"/:/data -v "%cd:\=/%/digits-jobs":/jobs -p 5000:5000 rquintino/digits-cpu

start http://localhost:5000

docker exec -it digits-cpu python -m digits.download_data mnist /data/mnist

One issue you’ll probably have with docker windows data volumes is performance. Think there are some known issues regarding some operations on volumes on Docker Windows, which the mnist prepare script should be triggering (60k images).

CPU Train Performance

Using the GPU on the Azure Data Science VM NC series model full train for 30 epochs is around 1-2mins, using the CPU version like above I had to wait ~19 minutes. So 5 minutes won’t be enough!

image

image

Image docker hub/github

https://hub.docker.com/r/rquintino/digits-cpu/

https://github.com/rquintino/ml-dockerfiles

Rui