Aprender AI si apestas en matemáticas – P3 – Construyendo una máquina de ensueño AI o un presupuesto especial amigable

Bienvenido a la tercera entrega de Learning AI if You Suck at Math . Si te perdiste los artículos anteriores, asegúrate de revisar la parte 1, parte 2, parte 4, parte 5, parte 6 y parte 7. Hoy vamos a construir nuestro propio Deep Learning Dream Machine .

  • Buscaremos las mejores partes y las juntaremos en un monstruo rompedor de números.
  • También vamos a repasar paso a paso la instalación de los últimos frameworks de aprendizaje profundo en Ubuntu Linux 16.04.

Esta máquina cortará las redes neuronales como un láser caliente con mantequilla. Aparte de pagar más de $129,000 por el DGX-1 de Nvidia, la supercomputadora AI en una caja, simplemente no se puede obtener un mejor rendimiento que el que le mostraré aquí mismo.

  • Por último, si usted está trabajando con un presupuesto más ajustado, no se desespere, también voy a esbozar alternativas muy amigables con el presupuesto.

Primero, una opción de actualización de TL;DR, Ultracheap

Antes de excavar en la construcción de una bestia DL, quiero darle el camino más fácil de actualización. Si no quieres construir una máquina completamente nueva, todavía tienes una opción perfectamente impresionante. Simplemente actualice su GPU (con una Titan X o una GTX 1080 y get VMware Workstation o utilizar otro software de virtualización compatible con Aceleración de la GPU ! O simplemente puedes instalar Ubuntu bare metal y si necesitas una máquina Windows ejecutarlo en una VM, así que maximizas tu rendimiento para un aprendizaje profundo. instala Ubuntu y los frameworks DL usando el tutorial al final del artículo y ¡bam! acabas de comprar una superestrella de aprendizaje profundo a bajo precio:

  • MINO (El dinero no es un objeto) = Dream Machine
  • ADAD (Un dólar y un sueño) = Alternativa presupuestaria

Dream Machine Parts Extravaganza

Las CPUs ya no son el centro del universo. Las aplicaciones de IA han cambiado el guión. Si alguna vez has construido un equipo a medida para juegos, probablemente lo bombeaste con los mejores chips de Intel que pudiste tener en tus manos. Nvidia es el nuevo Intel . El componente más importante de cualquier destructor del mundo del aprendizaje profundo es la(s) GPU(s). Aunque AMD ha progresado en la minería de ciptocoinas en los últimos años, aún no ha dejado su huella en la IA. Eso cambiará pronto, ya que ellos corren para capturar un pedazo de este campo que explota, pero por ahora Nvidia es la reina. Y no te duermas con Intel tampoco. Compraron Nervana Systems y planean lanzar sus propios ASIC de aprendizaje profundo en 2017. El rey de las GPUs DL Empecemos por MINO. La GPU definitiva es la Titan X. No tiene competencia. Está lleno de 3584 núcleos CUDA a 1531 MHz, 12GB de G5X y cuenta con una velocidad de memoria de 10 Gbps. en DL, los núcleos son importantes y también lo es más la memoria cercana a esos núcleos. DL no es más que un montón de álgebra lineal. Piensa en ello como una hoja de Excel increíblemente grande. Mover datos dentro y fuera de la memoria es un cuello de botella masivo, así que más memoria en la tarjeta hace toda la diferencia, que es por lo que el Titan X es el rey del mundo. Puede obtener Titan X directamente de Nvidia por $1,200 MSRP. Desafortunadamente, usted está limitado a dos. Pero esto es una Máquina de Sueños y vamos a comprar cuatro. ¡Eso es SLI cuádruple! Para eso tendrás que pagar una pequeña prima de un tercero vendedor . Siéntete libre de conseguir dos de Nvidia y dos de Amazon. Eso le traerá a usted $5300, por mucho la mayor parte del costo de esta estación de trabajo. Ahora, si estás planeando ejecutar Minecraft, seguirá pareciendo bloqueado, pero si quieres entrenar a un modelo para vencer al cáncer, estas son tus cartas. :)Los sitios de referencia de hardware de juegos te dirán que cualquier cosa que tenga más de dos cartas está muy por debajo del punto de disminución de los beneficios , pero eso es sólo para los juegos de azar! Cuando se trata de la IA querrás lanzarle tantas cartas como puedas. Por supuesto, la IA también tiene su punto de disminución de devoluciones, pero está más cerca de docenas o cientos de cartas (dependiendo del algo), no de cuatro. Por favor, ten en cuenta que NO necesitarás un puente SLI, a menos que también estés planeando usar esta máquina para jugar. Eso es estrictamente para la renderización de gráficos y estamos haciendo muy pocos gráficos aquí, aparte de graficar unos cuantos gráficos en matplotlib.Budget-Friendly Alternative GPUs Tu tarjeta ADAD es la GeForce GTX 1080 Founders Edition. El 1080 contiene 2560 núcleos CUDA, mucho menos que el Titan X, pero a mitad de precio, con un precio de venta al público de 699 dólares. También cuenta con menos RAM, a 8GB frente a 12.EVGA siempre me ha servido bien, así que agarra cuatro de ellos para tu máquina. La segunda mejor opción para ADAD es la GeForce GTX 1070. Contiene 1920 núcleos CUDA, por lo que sigue siendo una gran elección. Viene en alrededor de $499 MSRP pero superclocked EVGA 1070s le costará sólo $389 dólares de modo que lleva el precio a un precio más económico de $1556 dólares. Por supuesto, si no tienes tanto dinero para gastar, siempre puedes conseguir dos o tres cartas. Vamos a hacer las cuentas sobre el mejor golpe por el dólar con dos o tres cartas:

  • 3 x Titan X = 10.752 núcleos CUDA, 36 GB de RAM de la GPU = 3.800 $
  • 2 x Titan X = 7.167 núcleos CUDA, 24 GB de RAM de la GPU = 2.400 $
  • 3 x GTX 1080 = 7.680 núcleos CUDA, 24 GB de RAM de la GPU = 2.097 $
  • 2 x GTX 1080 = 5.120 núcleos CUDA, 16 GB de RAM de la GPU = 1398 USD
  • 3 x GTX 1070 = 5.760 núcleos CUDA, 24 GB de RAM de la GPU = 1167 USD
  • 2 x GTX 1070 = 3.840 núcleos CUDA, 16 GB de RAM de la GPU = 778 USD

El punto dulce es 3 GTX 1080s. Por la mitad del precio, sólo has perdido 3072 núcleos. Revelación total: Así es como construí mi estación de trabajo. SSD y Spinning Drive Querrá una SSD, especialmente si está construyendo redes neuronales convolucionales y trabajando con muchos datos de imagen. El Samsung 850 EVO 1 TB es el mejor de los mejores en este momento. Aún mejor, los precios de las SSD se han desplomado en el último año, por lo que no romperá la banca. El 850 1 TB actualmente viene en alrededor de $319 dólares. La versión ADAD de la 850 es la versión de 250GB . Es muy fácil para la billetera a $98. También necesitará una unidad de eje para almacenar las descargas. Los conjuntos de datos pueden ser masivos en DL. Un Seagate Barracuda de 4 TB servirá. Motherboard Como queremos rellenar cuatro GPUs en esta caja, las opciones de tu placa madre se reducen a un conjunto muy pequeño de opciones. Para soportar cuatro tarjetas a velocidades de bus completas queremos el MSI Extreme Gaming X99A SLI Plus . También puede ir con la ASUS X99 Deluxe II. si va con menos de cuatro tarjetas tiene muchas más opciones. Cuando se trata de placas base, estoy a favor de la estabilidad. Aprendí esto de la manera difícil construyendo plataformas mineras con criptocoinas. Si ejecutas tus GPUs constantemente, quemarán tu máquina hasta los cimientos en un abrir y cerrar de ojos. Gigabyte hacer una excelente línea de placas base muy duraderas. El X99 Ultra Gaming es absolutamente sólido y viene en $237. Caso El Cooler Master Cosmos II es el último caso de torre completa. Es elegante y con estilo el diseño de coche de carreras de aluminio cepillado y acero hacer una máquina hermosa.si desea una caja de media torre, usted no puede ir mal con el enfriador Master Maker 5T.I nunca favorecen obtener un caso de culo barato para cualquier máquina. Tan pronto como tenga que abrirlo para solucionar el problema, su error se vuelve evidentemente claro. Los estuches sin herramientas son ideales. Pero hay un montón de casos de presupuesto decente por ahí, así que haga su tarea. CPU Su máquina de aprendizaje profundo no necesita mucha potencia de CPU. La mayoría de las aplicaciones tienen un único subproceso, ya que cargan los datos en las GPUs en las que trabajan con varios núcleos, así que no te molestes en gastar mucho capital aquí. Dicho esto, es mejor que obtengas la velocidad de reloj más rápida para tu procesador, que es de 4 GHz en el i7-6700K. Puedes engancharlo aquí con un ventilador. Francamente, es ridículo, pero los precios han bajado drásticamente y yo buscaba un rendimiento con un solo hilo. Esta es la CPU a batir. Si quieres ir más silencioso entonces puedes ir con el enfriamiento por agua pero no estarás corriendo la CPU tan duro. La mayor parte del ruido de los ventiladores proviene de las GPUs, por lo que no hay una gran alternativa para ADAD. El i5 a 3.5GHz con un enfriador de agua tiene el mismo costo que el de 4GHz, así que ¿por qué molestarse? Potencia La fuente de alimentación EVGA Modular Supernova G2 de 1600W es su mejor opción para una configuración SLI cuádruple. Te costará alrededor de $305. El Titan X tiene una potencia de 250 vatios cada uno, lo que te da una potencia de 1000 vatios. Esto no deja mucho espacio para la CPU, la memoria y la energía de los sistemas, así que vaya con la fuente más grande para dejar un poco de espacio en la cabeza. Configuración del software Ahora que hemos terminado con el hardware, vayamos a la configuración del software:

  • Contenedor Docker
  • Máquina virtual
  • Bare Metal installDocker

Si quieres ir con la opción Docker, deberías empezar con el proyecto oficial de Nvidia-Docker como base. Sin embargo, para obtener realmente todos los frameworks, librerías y lenguajes, tendrás que hacer una gran cantidad de instalación encima de esta imagen. Puedes ir con un contenedor de aprendizaje profundo todo en uno, como este en GitHub . Me ha gustado mucho la imagen todo-en-uno de Docker, pero tiene algunos problemas, no me sorprende la complejidad de la configuración. he encontrado la respuesta a un problema (libopenjpeg2 es ahora libopenjpeg5 en Ubuntu 16.04 LTS), pero me he cansado de tener que solucionar un segundo problema. Todavía estoy esperando los arreglos. Si eres el tipo de persona a la que le gusta arreglar Dockerfiles y enviar correcciones a GitHub, te animo a que apoyes el proyecto «todo en uno», un segundo gran reto es que es una imagen muy, muy grande, por lo que no cabrá en Dockerhub debido a los tiempos muertos. Eso significa que tendrás que construirlo tú mismo y eso puede llevarte varias horas de compilación, tirar de las capas y depurar, lo cual es el tiempo que necesites para hacerlo sin nada de metal.Al final decidí usar el tutorial «todo en uno» como guía, mientras lo actualizaba y añadía mi propia salsa especial. Virtual MachineAs anoté en la sección TL;DR al principio del documento, que se puede actualizar absolutamente una máquina de juego actual, añadir VMware Workstation Pro, que es compatible con el paso de la GPU, y tener una buena forma de empezar a trabajar con un cordón de zapatos. Se trata de una estrategia sólida que respeta el presupuesto. También tiene varias ventajas, en el sentido de que puede realizar fácilmente copias de seguridad de la máquina virtual, tomar instantáneas y hacerlas retroceder. No arranca tan rápido como un contenedor Docker, pero la tecnología de VM es muy madura en este punto y eso le da muchas herramientas y mejores prácticas. Bare Metal Esta es la opción con la que terminé en mi máquina. Es un poco de la vieja escuela, pero como administrador de sistemas desde hace mucho tiempo tenía más sentido para mí, ya que me daba el máximo nivel de control.Algunas cosas a tener en cuenta sobre el software para el aprendizaje profundo antes de que empecemos. Esto se debe a que es un idioma fácil de aprender y configurar. No estoy seguro de que Python termine siendo el idioma principal una vez que la IA entre en producción, pero por ahora Python es el camino a seguir. Un número de los principales frameworks se ejecutan encima de él y sus librerías científicas no tienen rival. El lenguaje R también recibe mucho amor, así como Scala, por lo que los añadiremos a la ecuación:

  • LanguagesPython 2.x
  • Anaconda (y por extensión Python 3.6) – Anaconda es una distribución de alto rendimiento de Python e incluye más de 100 de los paquetes Python, R y Scala más populares para la ciencia de datos.
  • R – Un lenguaje y un entorno para la computación estadística y los gráficos.
  • Scala – Scala es un acrónimo de «Scalable Language». Es similar a Java pero de alto rendimiento y modular.

Controladores y APIs

  • Controladores de Nvidia
  • CUDA : plataforma de cálculo paralelo y modelo de interfaz de programación de aplicaciones (API) patentados creados por Nvidia.
  • cuDNN – Librería acelerada de primitivas para GPUs Nvidia de Deep Neural Network. Helper apps Jupyter – Esta es una aplicación web impresionante que le permite compartir documentación y código en vivo en un solo archivo. Frameworks/Libraries TensorFlow : el marco de trabajo OpenSource DL de Google que potencia cosas como Google Translate. Theano – Un marco de aprendizaje de máquina robusto y popular. Caffe – Un marco de aprendizaje profundo que surge de Berkley. Torch : un marco de cálculo científico con una amplia compatibilidad con los algoritmos de aprendizaje de la máquina que da prioridad a las GPU. MXNET – Sistema DL altamente escalable respaldado por Amazon y varias universidades. High Level Abstraction Libraries Keras – Una biblioteca de redes neuronales de alto nivel, escrita en Python que se ejecuta sobre TensorFlow o Theano. Lasagne – Una biblioteca ligera para construir y entrenar redes neuronales. Bibliotecas Python

Hay muchas bibliotecas en el área que prácticamente cualquier sistema de computación científica necesitará para funcionar de manera efectiva. Así que vamos a instalar los más comunes fuera del murciélago. Pip = instalador y sistema de embalaje de Python Pandas = análisis de datos de alto rendimiento Scikit-learn = una popular y potente biblioteca de aprendizaje de máquina NumPy = numérico Python Matplotlib = biblioteca de visualización Scipy = matemáticas y computación científica IPython = interactivo Python Scrappy = web crawling framework NLTK = natural language toolkit Pattern = a web mining library Seaborn = statistical visualization OpenCV = a computer vision library Rpy2 = an R interface Py-graphviz = graficación estadística OpenBLAS = álgebra lineal Linux Workstation Setup Para un trabajo de vanguardia, querrás obtener la última versión de Ubuntu LTS, que es la 16.04 en el momento de escribir este artículo. Estoy deseando que lleguen los días en que la mayoría de los tutoriales cubran los derivados de Red Hat y Red Hat como CentOS y Scientific Linux, pero a partir de ahora Ubuntu es el lugar en el que se encuentra para un aprendizaje profundo. También puedo hacer un seguimiento con una compilación centrada en RH, quemar Ubuntu en una memoria USB a través de Rufus e instalarlo en modo UEFI. Primer arranque Su primer arranque irá a una pantalla negra. Esto se debe a que los controladores de código abierto no están actualizados con los últimos y mejores conjuntos de chips. Para solucionarlo, tendrás que hacer lo siguiente:Mientras la máquina arranca, ve a un TTY:

Ctrl + Alt + F1

Obtener los últimos controladores de Nvidia y reiniciar:Accede a tu cuenta de root en el TTY.Ejecute sudo apt-get purge nvidia-*Run sudo add-apt-repository ppa:graphicss-drivers/ppa y luego sudo apt-get updateRun sudo apt-get install nvidia-375Reboot y su problema de gráficos debería ser corregido. Actualizar la máquina Abra un terminal y escriba lo siguiente:

sudo apt-get update -y
sudo apt-get upgrade -
sudo apt-get install - build-esencial cmake g+++ gfortran git pkg-config python-dev software-properties-common wget
sudo apt-get autoremove
sudo rm -rf /var/lib/apt/lists/*

CUDA Descargar CUDA 8 desde Nvidia. Vaya al directorio de descargas e instale CUDA:

sudo dpkg -i cuda-repo-ubuntu1604-8-0-local.deb
sudo apt-get update -
sudo apt-get install -y cuda

Añadir CUDA a las variables de entorno:

echo export PATH=/usr/local/cuda/bin:$PATH>> ~/.bashrc
echo export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH>> ~/.bashrc
source ~/.bashrc

Check to make sure the correct version of CUDA is installed:

nvcc -V

Restart your computer:

sudo shutdown -r now

Check your CUDA Installation First install the CUDA samples:

/usr/local/cuda/bin/cuda-install-samples-*.sh ~/cuda-samples
cd ~/cuda-samples/NVIDIA*Samples
make -j $(($(nproc) + 1))

Nota que la sección make de este comando utiliza +1 para indicar el número de GPUs que tienes, por lo que si tienes más de una puedes aumentar el número e instalar/compilar se moverá mucho más rápido.Ejecute deviceQuery y asegúrese de que detecta su tarjeta gráfica y de que las pruebas pasan:

bin/x86_64/linux/release/deviceQuery

cuDNNcuDNcuDNNN es una biblioteca acelerada en la GPU para DNNs. Desafortunadamente, no puedes simplemente tomarla de un repo. Necesitarás registrarte con Nvidia para tener acceso a él, lo cual puedes hacer aquí mismo . Pueden pasar unas horas o unos días antes de que se apruebe el acceso. Coge la versión 4 y la versión 5. He instalado 5 en este tutorial, pero es mejor que esperes a tenerlo instalado antes de seguir adelante, ya que otros frameworks dependen de él y pueden fallar a la hora de instalarlo.
tar xvf cudnn*.tgz
cd cuda
sudo cp */*.h /usr/local/cuda/include/
sudo cp */libcudnn* /usr/local/cuda/lib64/
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*Haga una comprobación escribiendo:nvidia-smiEso debería producir algunas estadísticas de la GPU. Python

sudo apt-get install -y python-pip python-dev
sudo apt-get update && apt-get install - python-numpy python-scipy python-nose python-h5py python-skimage python-matplotlib python-pandas python-sklearn python-sympy libfreetype6-dev libpng12-dev libopenjpeg5
sudo apt-get clean && sudo apt-get autoremove
rm -rf /var/lib/apt/lists/*

Ahora instale el resto de librerías con Pip

pip install seaborn rpy2 opencv-python pygraphviz pattern nltk scrappy

Tensorflow

pip install tensorflow-gpu

Eso es. ¡Increíble! Prueba Tensorflow

$ python
...
>>> Importar tensorflow como tf
>>> hola = tf.constant(Hola, TensorFlow!)
>>> sess = tf.Session()
>>> imprimir(sess.run(hello))
¡Hola, TensorFlow!
>>> a = constante tf.10
>>> b = constante tf.32
>>> imprimir(sess.run(a + b))
42
>>>OpenBLAS 
sudo apt-get install -y "markup--code markup--code markup--pre-code u-paddingRight0 u-marginRight0">libblas-test  libopenblas-base libopenblas-dev

JupyterJuypter es un formato de compartición de código asombroso que le permite compartir fácilmente "notebooks" con código y tutoriales. Voy a detallar su uso en el siguiente post.

pip install -U ipython[all] jupyter

TheanoInstall los prerrequisitos e instalar Theano.

sudo apt-get install -y python-numpy python-scipy python-dev python-python-python-nose g++ python-python-python-python-nose
sudo pip install Theano

Si que es una capital en Theano.prueba tu instalación de Theano. No debería haber advertencias/errores cuando se ejecuta el comando import.

python
>>> importar theano
>>> exit(> exit()
nosetests theano

Keras

Keras es un envoltorio de abstracción de alto nivel increíblemente popular que puede navegar sobre Theano y Tensorflow. Su instalación y uso son tan sencillos que ni siquiera es divertido.

sudo pip install keras

Lasaña

Lasaña es otra envoltura de alto nivel ampliamente utilizada que es un poco más flexible que Keras, ya que se puede colorear fácilmente fuera de las líneas. Piense en Keras como un aprendizaje profundo sobre rieles y Lasaña como el siguiente paso en su evolución. Las instrucciones para la instalación de Lasagne vienen de aquí.

pip install -r https://raw.githubusercontent.com/Lasagne/Lasagne/v0.1/requirements.txt

MXNET

MXNET es un framework altamente escalable y respaldado por Amazon. Sus instrucciones de instalación se pueden encontrar aquí. Puede encontrar un script de instalación de MXNet para Python aquí mismo, instalando MXNet en UbuntuDesde el sitio web:

MXNet actualmente soporta Python, R, Julia y Scala. Para los usuarios de los sistemas operativos Python y R en Ubuntu, MXNet proporciona un conjunto de scripts Git Bash que instalan todas las dependencias necesarias de MXNet y la biblioteca de MXNet.

Los sencillos scripts de instalación configuran MXNet para Python y R en ordenadores con Ubuntu 12 o posterior. Los scripts instalan MXNet en su carpeta de inicio ~/mxnet.

Instale MXNet para PythonClone en el repositorio MXNet. En el terminal, ejecute los comandos SIN "sudo":

git clone "https://github.com/dmlc/mxnet.git">https://github.com/dmlc/mxnet.git ~/mxnet--recursive

Estamos construyendo con GPUs, así que agregue configuraciones al archivo config.mk:

cd ~/mxnet
cp make/config.mk .
echo "USE_CUDA=1">>config.mk
echo "USE_CUDA_PATH=/usr/local/cuda">>config.mk
echo "USE_CUDNN=1">>config.mk

Install MXNet for Python with all dependencies:

cd ~/mxnet/setup-utils
bash install-mxnet-ubuntu-python.sh

Añádelo a tu ruta:

source ~/.bashrc

Install MXNet for RWell need R so lets do that now. El script de instalación para instalar MXNet para R se puede encontrar aquí. Los pasos siguientes llaman a ese script después de configurar el lenguaje R.Primero añada R repo:

sudo echo "deb "http://cran.rstudio.com/bin/linux/ubuntu">http://cran.rstudio.com/bin/linux/ubuntu xenial/" | sudo tee -a /etc/apt/sources.list

Add R to the Ubuntu Keyring:

gpg - keyserver keyserver.ubuntu.com - recv-key E084DAB9
gpg -a - exportar E084DAB9 | sudo apt-key add -

Install R-Base:

sudo apt-get install r-base r-base-dev

Install R-Studio (alterando el comando para el número de versión correcto):

sudo apt-get install -y gdebi-core
wget https://download1.rstudio.org/rstudio-0.99.896-amd64.deb
sudo gdebi -n rstudio-0.99.896-amd64.deb
rm rstudio-0.99.896-amd64.deb

Ahora instalar MXNet para R:

cd ~/mxnet/setup-utils
bash install-mxnet-ubuntu-r.sh

Caffe Estas instrucciones provienen del sitio web de Caffe. Los encontré un poco escamosos dependiendo de cómo soplaba el viento ese día, pero su kilometraje puede variar. Francamente, no uso mucho Caffe y muchos de los tutoriales para principiantes no se centran en él, así que si esta parte se estropea para ti, sólo tienes que omitirla por ahora y volver a ella. instalar los requisitos previos:

sudo apt-get install -y libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compililer
sudo apt-get install -y --no-install-recomienda libboost-all-dev
sudo apt-get install -y libgflags-dev libgoogle-glog-dev liblmdb-dev

Clone the Caffe repo:

cd ~/git
clon de git https://github.com/BVLC/caffe.git
cd café
cp Makefile.config.example Makefile.config

Para utilizar cuDNN se debe establecer la bandera USE_CUDNN := 1 en el Makefile:

sed -i s/# USE_CUDNN := 1/USE_CUDNN := 1/ Makefile.config

Modificar el valor de los parámetros de BLAS para abrir:

"markup--code markup--code markup--pre-code">sed -is/BLAS := atlas/BLAS := open/ Makefile.config

Instalar los requisitos, luego construir Caffe, construir las pruebas, ejecutar las pruebas y asegurar que todas las pruebas pasen. Tenga en cuenta que todo esto lleva algún tiempo. Ten en cuenta que el +1 indica el número de GPUs con las que construir Caffe, así que si tienes más de una.

sudo pip install -r python/requirements.txt
make all -j $(($(nproc) + 1))
hacer prueba -j $(($(nproc) + 1))
make runtest -j $(($(nproc) + 1))

Build PyCaffe, la interfaz de Python para Caffe:

make pycaffe -j $(($(nproc) + 1))

Añadir Café a su variable de entorno:

echo > ~/.bashrc
echo export PYTHONPATH=$CAFFE_ROOT/python:$PYTHONPATH>> ~/.bashrc
source ~/.bashrc

Test para asegurarse de que su instalación de Caffe sea exitosa. No debería haber advertencias/errores cuando se ejecuta el comando de importación.

ipython
>>> importación de café
>>> exit()