Depuis que Google a publié une bibliothèque d'apprentissage automatique qui inclut le Deep Learning, etc., je l'ai immédiatement touchée. http://japanese.engadget.com/2015/11/09/google-tensorflow/
ubuntu 14.04 GeForce GTX 580 CUDA 7.0 Cuda est déjà installé par la procédure de ici
Installez simplement avec pip.
pip install https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow-0.5.0-cp27-none-linux_x86_64.whl
Assurez-vous que vous l'avez installé correctement.
$ python
Python 2.7.6 (default, Jun 22 2015, 17:58:13)
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow as tf
I tensorflow/stream_executor/dso_loader.cc:77] LD_LIBRARY_PATH: /usr/local/cuda-7.0/lib64:
I tensorflow/stream_executor/cuda/cuda_dnn.cc:1062] Unable to load cuDNN DSO.
>>> hello = tf.constant('Hello, TensorFlow!')
>>> sess = tf.Session()
I tensorflow/core/common_runtime/local_device.cc:25] Local device intra op parallelism threads: 8
I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:888] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
I tensorflow/core/common_runtime/gpu/gpu_init.cc:88] Found device 0 with properties:
name: GeForce GTX 580
major: 2 minor: 0 memoryClockRate (GHz) 1.544
pciBusID 0000:01:00.0
Total memory: 1.50GiB
Free memory: 1023.72MiB
I tensorflow/core/common_runtime/gpu/gpu_init.cc:112] DMA: 0
I tensorflow/core/common_runtime/gpu/gpu_init.cc:122] 0: Y
I tensorflow/core/common_runtime/gpu/gpu_device.cc:611] Ignoring gpu device (device: 0, name: GeForce GTX 580, pci bus id: 0000:01:00.0) with Cuda compute capability 2.0. The minimum required Cuda capability is 3.5.
I tensorflow/core/common_runtime/local_session.cc:45] Local session inter op parallelism threads: 8
>>> print sess.run(hello)
Hello, TensorFlow!
>>> a = tf.constant(10)
>>> b = tf.constant(32)
>>> print sess.run(a+b)
42
>>> exit()
Quelque chose a été dit, mais cela semble fonctionner pour le moment. Cela semble être l'effet du support GPU.
Afin d'effectuer des calculs sur le GPU, il est nécessaire d'installer un GPU compatible et d'installer Cuda Toolkit 7.0 et CUDNN 6.5 V2. Puisque CUDA a été installé lorsque le chainer a été installé, je pensais que c'était uniquement CUDNN, mais mon GPU ne le supportait pas. Officiel
TensorFlow GPU support requires having a GPU card with NVidia Compute Capability >= 3.5. Supported cards include but are not limited to:
Il est écrit. Qu'est-ce que la capacité de calcul? Cela a été indiqué dans NVIDIA Questions and Answers.
Q: Qu'est-ce que la capacité de calcul? Existe-t-il également une liste de capacités de calcul GPU? R: Tout d'abord, Compute Capability est une version de l'architecture GPU. Par exemple, la capacité de calcul 2.0, 2.1 est Fermi, 3.0, 3.5 est Kepler et 5.0 est Maxwell.
Dans ma GeForce GTX 580, cette version est 2.0, je ne pouvais donc pas l'utiliser pour le calcul GPU dans TensorFlow. Par conséquent, cette fois, nous exécuterons MNIST uniquement sur le processeur.
Pour l'explication de MNIST, officiellement, Explication pour ceux qui connaissent MNIST et [Explication pour ceux qui ne savent pas]( Il y en avait deux (http://tensorflow.org/tutorials/mnist/beginners/index.md), veuillez donc vous y référer. En termes simples, c'est la reconnaissance des chiffres manuscrits.
Récupérez la source et exécutez l'exemple MNIST. Voici les étapes pour exécuter l'exemple MNIST.
git clone --recurse-submodules https://github.com/tensorflow/tensorflow
python tensorflow/models/image/mnist/convolutional.py
Lorsque vous faites cela, vous obtiendrez un fichier numérique manuscrit de MNIST et commencerez à apprendre avec la convolution NN. Je regarderai la situation d'apprentissage telle qu'elle s'écoule à chaque fois.
I tensorflow/core/common_runtime/local_session.cc:45] Local session inter op parallelism threads: 8
Initialized!
Epoch 0.00
Minibatch loss: 12.054, learning rate: 0.010000
Minibatch error: 90.6%
Validation error: 84.6%
Epoch 0.12
Minibatch loss: 3.285, learning rate: 0.010000
Minibatch error: 6.2%
Validation error: 7.0%
Epoch 0.23
Minibatch loss: 3.473, learning rate: 0.010000
Minibatch error: 10.9%
Validation error: 3.7%
Epoch 0.35
Minibatch loss: 3.221, learning rate: 0.010000
Minibatch error: 4.7%
Validation error: 3.2%
J'ai pu le faire avec juste ça, alors j'ai raté le rythme. Eh bien, CUDA est une porte démoniaque, donc la prochaine fois, j'aimerais l'exécuter sur GPU.
Recommended Posts