[PYTHON] Aufbau einer Umgebung für maschinelles Lernen von Grund auf neu (Windows 10 + Anaconda + VSCode + Tensorflow + GPU-Version)

Nach einer Weile musste ich das Betriebssystem neu installieren, um die Umgebung neu zu erstellen. Es ist ein Memorandum zu dieser Zeit.

Überblick

Vorbereiten der Verwendung der Tensorflow-GPU-Version

Die Elemente sind wie folgt.

Die Version ist ziemlich wichtig. Wenn Sie eine nicht unterstützte Version verwenden, müssen Sie diese möglicherweise separat festlegen, da sie sonst möglicherweise nicht funktioniert.

·Referenz

Gravo Compute Capability Check und Treiberaktualisierung

Tensorflow scheint mit denen mit einer Rechenkapazität von 3,5 oder höher kompatibel zu sein. Die Korrespondenztabelle finden Sie hier [https://developer.nvidia.com/cuda-gpus#compute]. Das Gravo auf diesem PC ist "NVIDIA GeForce GTX 1060", also 6.1.

Wenn Sie dies bestätigen können, halten Sie den Treiber auf dem neuesten Stand. Treiberseite: https://www.nvidia.co.jp/Download/index.aspx?lang=jp

Installation von CUDA v10.0

Download-Seite für CUDA v10.0: https://developer.nvidia.com/cuda-10.0-download-archive Wählen Sie bei der Auswahl des Installationsprogramms "Hohe Geschwindigkeit (empfohlen)" und installieren Sie standardmäßig.

Zum Zeitpunkt des Schreibens (2019/11) ist v10.2 übrigens die neueste Version. Wenn ich jedoch Version 10.2 einfüge, scheint sich Tensorflow auf den Pfad von Version 10.0 zu beziehen, und ich erhalte später den folgenden Fehler.

> python -c "import tensorflow as tf; print(tf.__version__)"
2019-11-28 19:22:20.012829: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library 'cudart64_100.dll'; dlerror: cudart64_100.dll not found
2.0.0

Es scheint eine Problemumgehung zu geben, aber ich habe es vorerst nicht mit Priorität für den Betrieb versucht. Problemumgehung: Zusätzliches Verfahren, wenn Sie es mit CUDA 10.1 verwenden möchten

CuDNN installieren

CuDNN-Download-Seite: https://developer.nvidia.com/rdp/cudnn-download Es ist kostenlos, aber eine Registrierung der Mitgliedschaft ist erforderlich. Laden Sie nach dem Anmelden die folgende Version für CUDA herunter.

Download cuDNN v7.6.5 (November 5th, 2019), for CUDA 10.0

CuDNN ist eine Zip-Datei. Entpacken Sie sie und stecken Sie sie in den CUDA-Ordner. Standardmäßig lautet der CUDA-Ordner:

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\

Installation von Anaconda

Ich habe Anaconda aufgenommen, weil ich die Umgebung für CPU und GPU trennen wollte. DL-Seite: https://www.anaconda.com/distribution/

Die installierte Anaconda ist wie folgt. (Sie müssen sich keine Sorgen um die Version machen)

Anaconda 2019.10 for Windows Installer
Python 3.7 version

Fügen Sie bei der Installation Umgebungsvariablen hinzu. (Die Standardeinstellung ist deaktiviert.) Aktivieren Sie "Anaconda zu meiner PATH-Umgebungsvariablen hinzufügen" in "Erweiterte Optionen".

Da wir Umgebungsvariablen hinzugefügt haben, ist es möglicherweise besser, nach der Installation neu zu starten.

Erstellen einer Ausführungsumgebung (python3.7)

Starten Sie Anaconda Navigator.

Programmliste → Anaconda3(64-bit) → Anaconda Navigater (Anaconda3)

Wählen Sie nach dem Start im Menü links die Option Umgebungen aus und klicken Sie auf Erstellen. Hier werden wir die Umgebung für den tatsächlichen Betrieb erstellen.

Klicken Sie auf Erstellen, um die Umgebung zu erstellen.

Wenn die Umgebung erstellt ist, klicken Sie auf (py37-gpu) und dann auf ▶ → Wählen Sie "Terminal öffnen". Dann startet das Terminal.

Wenn Sie in Zukunft ein Paket mit pip usw. hinzufügen möchten, gehen Sie wie folgt vor. (Es scheint einen einfacheren Weg zu geben ...)

Installieren Sie Tensorflow

・ Bei Verwendung der CPU

> pip install tensorflow

・ Bei Verwendung der GPU

> pip install tensorflow-gpu

Bestätigung

Überprüfen Sie den Tensorflow

Geben Sie den folgenden Befehl in Terminal ein. (Einzeiler)

> python -c "import tensorflow as tf; print(tf.__version__)"

・ Ergebnis der Anzeige der CPU-Version

>python -c "import tensorflow as tf; print(tf.__version__)"
2.0.0

-GPU Version Anzeige Ergebnis (DLL muss erfolgreich sein)

> python -c "import tensorflow as tf; print(tf.__version__)"
2019-11-28 19:59:12.696817: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cudart64_100.dll
2.0.0

Überprüfen Sie das GPU-Gerät (nur GPU-Version).

Geben Sie den folgenden Befehl in Terminal ein.

> python
>>> from tensorflow.python.client import device_lib
>>> device_lib.list_local_devices()

Dies ist das Ausführungsergebnis.

(py37-gpu) C:\Users\poco> python
Python 3.7.5 (default, Oct 31 2019, 15:18:51) [MSC v.1916 64 bit (AMD64)] :: Anaconda, Inc. on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>
>>>
>>> from tensorflow.python.client import device_lib
2019-11-28 21:33:00.714942: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cudart64_100.dll
>>>
>>>
>>> device_lib.list_local_devices()
2019-11-28 21:33:05.777537: I tensorflow/core/platform/cpu_feature_guard.cc:142] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2
2019-11-28 21:33:05.790386: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library nvcuda.dll
2019-11-28 21:33:05.813090: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1618] Found device 0 with properties:
name: GeForce GTX 1060 3GB major: 6 minor: 1 memoryClockRate(GHz): 1.7085
pciBusID: 0000:01:00.0
2019-11-28 21:33:05.818802: I tensorflow/stream_executor/platform/default/dlopen_checker_stub.cc:25] GPU libraries are statically linked, skip dlopen check.
2019-11-28 21:33:05.823869: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1746] Adding visible gpu devices: 0
2019-11-28 21:33:06.275014: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1159] Device interconnect StreamExecutor with strength 1 edge matrix:
2019-11-28 21:33:06.279606: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1165]      0
2019-11-28 21:33:06.282091: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1178] 0:   N
2019-11-28 21:33:06.285366: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1304] Created TensorFlow device (/device:GPU:0 with 2108 MB memory) -> physical GPU (device: 0, name: GeForce GTX 1060 3GB, pci bus id: 0000:01:00.0, compute capability: 6.1)
[name: "/device:CPU:0"
device_type: "CPU"
memory_limit: 268435456
locality {
}
incarnation: 15688037898080382701
, name: "/device:GPU:0"
device_type: "GPU"          #Wenn die GPU angezeigt wird, k
memory_limit: 2210712780
locality {
  bus_id: 1
  links {
  }
}
incarnation: 506641733629436041
physical_device_desc: "device: 0, name: GeForce GTX 1060 3GB, pci bus id: 0000:01:00.0, compute capability: 6.1"
]

VSCode Installation und Konfiguration

Ich verwende VSCode als IDE. DL-Seite: https://code.visualstudio.com/

Extentions

Nach dem Start von VSCode können Sie es hinzufügen, indem Sie in den Erweiterungen im linken Menü nach jedem Namen suchen.

Name Bemerkungen
Japanese Language Pack for Visual Studio Code Ich bin Japaner
Python Für Python

Ansonsten machen Sie bitte, was Sie wollen.

Zusammenarbeit zwischen Anaconda und VSCode

Es gibt viele Möglichkeiten, dies zu tun, daher ist dies nur ein Beispiel.

1. Erstellen Sie einen Ordner

Erstellen Sie einen Arbeitsordner. Geben Sie in VSCode den Arbeitsordner mit "Datei-> Ordner öffnen" an.

2. Erstellen Sie eine Testdatei

Erstellen Sie als Nächstes eine entsprechende Python-Datei unter dem Arbeitsordner. Beschreibe hallo Welt als Testdatei.

hello.py


import tensorflow as tf
msg = tf.constant('TensorFlow 2.0 Hello World')
tf.print(msg)

Öffnen Sie dann diese Datei mit VSCode.

3. Beschreibung der Einstellungsdatei

Führen Sie "Menü-> Debug-> Konfiguration hinzufügen-> Python-Datei" aus. Dann wird launch.json geöffnet, also bearbeiten Sie es.

Ich muss jedoch den Python-Pfad vor dem Bearbeiten überprüfen, also überprüfe ihn mit Anaconda. Öffnen Sie Anacondas Terminal und führen Sie den Befehl conda info -e aus.

(py37-gpu) C:\Users\poco> conda info -e
# conda environments:
#
base                     C:\Users\poco\Anaconda3
py37-cpu                 C:\Users\poco\Anaconda3\envs\py37-cpu
py37-gpu              *  C:\Users\poco\Anaconda3\envs\py37-gpu

Ich möchte Python in der Umgebung des hier angegebenen Pfads ausführen Fügen Sie nach der Überprüfung "pythonPath" wie folgt zu "launch.json" hinzu.

launch.json


{
    //Mit IntelliSense können Sie die verfügbaren Attribute kennenlernen.
    //Bewegen Sie den Mauszeiger und zeigen Sie die Beschreibung der vorhandenen Attribute an.
    //Überprüfen Sie das Folgende für weitere Informationen: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Python: Current File",
            "type": "python",
            "request": "launch",
            "program": "${file}",
            "console": "integratedTerminal",

            // ↓ python.Addiere und füge exe hinzu
            "pythonPath": "C:\\Users\\poco\\Anaconda3\\envs\\py37-gpu\\python.exe"
        }
    ]
}

Speichern Sie es nach dem Hinzufügen und drücken Sie F5 oder "Debug-> Debug starten", um zu sehen, ob Hallo Welt ausgeführt werden kann.

ChainerRL

Dieses Mal werde ich ChainerRL anstelle von Keras-RL verwenden. Weil die Bibliothek des verstärkenden Lernens hier umfangreicher zu sein schien.

Rohrinstallation

Legen Sie die erforderlichen Pakete im Anaconda-Terminal ab. Es ist ein Paket, das zuvor geschrieben wurde ([Stärkung des Lernens] Open AI Gym × Keras-rl implementiert den Algorithmus zur Stärkung des Lernens (Vorbereitung)) ..

# ChainerRL
> pip install chainerrl
> pip install cupy-cuda100  //Für die GPU ist 100 die Version. Passen Sie sie daher bitte an die CUDE-Version an.

# gym
> pip install gym
> pip install --no-index -f https://github.com/Kojoley/atari-py/releases atari_py

#Bildsystem
> pip install matplotlib
> pip install pillow
> pip install opencv-python

#Statistiken
> pip install pandas

Nachwort

Die Umgebungskonstruktion ist vorerst abgeschlossen. Nächstes Mal möchte ich ein ChainerRL-Tutorial machen.

Recommended Posts

Aufbau einer Umgebung für maschinelles Lernen von Grund auf neu (Windows 10 + Anaconda + VSCode + Tensorflow + GPU-Version)
Neuerstellung der Umgebung für maschinelles Lernen mit Miniconda (Windows-Version)
Lernmethode zum Lernen von maschinellem Lernen von Grund auf neu (Version März 2020)
Erstellen Sie mit Docker eine Umgebung für "Deep Learning von Grund auf neu"
Ich habe eine TensorFlow-Umgebung mit Windows 10 erstellt
[Windows 10] Aufbau einer "Deep Learning from Scratch" -Umgebung
[Definitive Edition] Erstellen einer Umgebung zum Erlernen des "maschinellen Lernens" mit Python unter Windows
Aufbau einer Python-Umgebung (Anaconda + VSCode) @ Windows10 [Version Januar 2020]
Erstellen Sie mit Python eine interaktive Umgebung für maschinelles Lernen
Erstellen Sie mit Winsows 10 eine maschinelle Lernumgebung von Grund auf neu
Ich habe versucht, mit Python (Mac OS X) eine Umgebung für maschinelles Lernen zu erstellen.
Erstellen Sie eine Umgebung für maschinelles Lernen mit Python unter MacOSX
Wie wäre es mit Anaconda zum Erstellen einer maschinellen Lernumgebung mit Python?
Erstellen einer Windows 7-Umgebung für eine Einführung in das maschinelle Lernen mit Python
Umgebungskonstruktion von TensorFlow + JupyterNotebook + Matplotlib unter Windows Version Anaconda (Version August 2017)
Errichtete eine Umgebung für Anaconda & Jupyter
Ich habe problemlos eine Betriebsumgebung für Python3 + Tornado unter AWS EC2 erstellt.
[Definitive Edition] Erstellen einer Umgebung zum Erlernen des "maschinellen Lernens" mit Python auf dem Mac
Realisieren Sie mit Docker und Vagrant die Umgebungskonstruktion für "Deep Learning von Grund auf neu"
Bis die Deep Learning-Umgebung (TensorFlow) mit GPU für Ubuntu 14.04 vorbereitet ist
Eine Einführung in OpenCV für maschinelles Lernen
Ich habe mit Docker eine Anaconda-Umgebung erstellt!
Ich habe versucht, TensorFlow (GPU-Version) unter Ubuntu zu installieren
Eine Einführung in Python für maschinelles Lernen
Erstellen einer Entwicklungsumgebung für maschinelles Lernen
Erstellen einer Umgebung für "Tello_Video" unter Windows
Bereiten Sie die Umgebung für das O'Reilly-Buch "Deep Learning from Grund neu" mit apt-get vor (Debian 8).
Hinweise von der Installation von Homebrew bis zum Erstellen einer Anaconda-Umgebung für Python mit pyenv
So installieren Sie das Deep Learning Framework Tensorflow 1.0 in der Windows Anaconda-Umgebung
Eine Einführung in maschinelles Lernen für Bot-Entwickler
Für Anfänger, um eine Anaconda-Umgebung aufzubauen. (Memo)
Maschinelles Lernen ab 0 für theoretische Physikstudenten # 1
Erstellen einer Anaconda-Umgebung für Python mit pyenv
Maschinelles Lernen von Grund auf neu (maschinelles Lernen mit Kaggle)
Maschinelles Lernen ab 0 für theoretische Physikstudenten # 2
[CodeIQ] Ich habe die Wahrscheinlichkeitsverteilung von Würfeln geschrieben (aus dem CodeIQ-Mathematikkurs für maschinelles Lernen [Wahrscheinlichkeitsverteilung]).