Da Google eine Bibliothek für maschinelles Lernen veröffentlicht hat, die Deep Learning usw. enthält, habe ich sie sofort berührt. http://japanese.engadget.com/2015/11/09/google-tensorflow/
ubuntu 14.04 GeForce GTX 580 CUDA 7.0 Cuda wurde gemäß dem Verfahren [hier] installiert (http://qiita.com/bohemian916/items/a48e6496b04bbbf09fb3).
Einfach mit pip installieren.
pip install https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow-0.5.0-cp27-none-linux_x86_64.whl
Stellen Sie sicher, dass Sie es richtig installiert haben.
$ 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()
Es wurde etwas gesagt, aber es scheint vorerst zu funktionieren. Dies scheint der Effekt der GPU-Unterstützung zu sein.
Um Berechnungen auf der GPU durchführen zu können, muss eine kompatible GPU installiert und Cuda Toolkit 7.0 und CUDNN 6.5 V2 installiert werden. Da CUDA installiert wurde, als Chainer installiert wurde, dachte ich, es sei nur CUDNN, aber meine GPU unterstützte es nicht. Offiziell
TensorFlow GPU support requires having a GPU card with NVidia Compute Capability >= 3.5. Supported cards include but are not limited to:
Es steht geschrieben. Was ist Rechenfähigkeit? Dies wurde in NVIDIA-Fragen und -Antworten angegeben.
F: Was ist Rechenfähigkeit? Gibt es auch eine Liste der GPU-Rechenfunktionen? A: Zunächst einmal ist Compute Capability eine Version der GPU-Architektur. Beispielsweise ist die Rechenfähigkeit 2.0, 2.1 Fermi, 3.0, 3.5 Kepler und 5.0 Maxwell.
In meiner GeForce GTX 580 ist diese Version 2.0, daher konnte ich sie nicht für die GPU-Berechnung in TensorFlow verwenden. Daher werden wir dieses Mal MNIST nur auf der CPU ausführen.
Zur Erklärung von MNIST offiziell Erklärung für diejenigen, die MNIST kennen und [Erklärung für diejenigen, die es nicht wissen]( Es gab zwei (http://tensorflow.org/tutorials/mnist/beginners/index.md). Bitte beziehen Sie sich auf diese. Einfach ausgedrückt ist es die Erkennung handgeschriebener Zahlen.
Holen Sie sich die Quelle und führen Sie das MNIST-Beispiel aus. Hier sind die Schritte zum Ausführen des MNIST-Beispiels.
git clone --recurse-submodules https://github.com/tensorflow/tensorflow
python tensorflow/models/image/mnist/convolutional.py
Wenn Sie dies tun, erhalten Sie eine handschriftliche Nummerndatei von MNIST und beginnen mit dem Falten NN zu lernen. Ich werde die Lernsituation beobachten, wie sie jedes Mal fließt.
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%
Ich konnte es genau damit machen, also habe ich den Beat verpasst. Nun, CUDA ist ein Dämonentor, also würde ich es das nächste Mal gerne auf einer GPU ausführen.
Recommended Posts