OS: Windows10 Home Processeur: Intel Core i7-4790 GPU: GTX1660 Super (n'importe quel GPU NVIDIA) Python: 3.6.10 Keras: 2.2.4 Tensorflow: 1.14.0 Cuda: 10.0 numpy: 1.16.4 sklearn: 0.22.2
Page d'installation https://docs.microsoft.com/ja-jp/visualstudio/install/install-visual-studio?view=vs-2019 À partir de là, installez Visual Studio. Cette fois, installez la version 2019. Veillez à sélectionner "Développement de bureau avec des charges de travail C ++" lors de l'installation.
https://www.nvidia.co.jp/Download/index.aspx?lang=jp Sélectionnez votre GPU à partir de cette URL et téléchargez le pilote NVIDIA. Exécutez le fichier exe téléchargé pour l'installer.
https://developer.nvidia.com/cuda-10.0-download-archive
https://developer.nvidia.com/rdp/cudnn-download Téléchargez "cuDNN v7.6.5 pour CUDA 10.0" à partir de ce site Ensuite, ouvrez "C: \ Program Files \ NVIDIA GPU Computing Toolkit \ CUDA \ v.10.0" dans le dossier. Il existe trois dossiers, bin, include et lib, dans le dossier décompressé. Enregistrez les fichiers dans bin dans le dossier bin, les fichiers dans include dans le dossier include et les fichiers dans lib dans le dossier lib.
Premièrement, si vous avez installé un tensorflow régulier Doit être désinstallé puis installé.
pip uninstall tensorflow
pip install numpy==1.16.4
pip install tensorflow-gpu==1.14.0
pip install keras==2.2.4
pip install sklearn
Installez également ceux qui sont susceptibles d'être utilisés pour le dessin graphique et le traitement des données. Ci-dessous, vous n'avez pas à l'installer.
pip install matplotlib
pip install pandas
pip install pillow
pip install opencv-python
pip install opencv-contrib-python
from tensorflow.python.client import device_lib
device_lib.list_local_devices()
Je pense qu'une longue phrase sera sortie,
C'est OK s'il y a des caractères tels que `device_type:" GPU "` `ʻand
name: "/ device: GPU: 0" `` `sur une ligne.
MNIST est le test. Vérification de la vitesse avec MNIST.
import time
import keras
from keras.datasets import mnist
from keras.models import Sequential
from keras.layers import Dense, Dropout, Flatten
from keras.layers import Conv2D, MaxPooling2D
from keras.optimizers import RMSprop
(x_train, y_train), (x_test, y_test) = mnist.load_data()
model = Sequential()
model.add(Conv2D(32, kernel_size=(3, 3), activation='relu', input_shape=(28, 28, 1)))
model.add(Conv2D(64, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(128, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(10, activation='softmax'))
x_train = x_train.reshape(x_train.shape[0], 28, 28, 1)
x_test = x_test.reshape(x_test.shape[0], 28, 28, 1)
x_train = x_train.astype('float32')
x_test = x_test.astype('float32')
x_train /= 255
x_test /= 255
y_train = keras.utils.to_categorical(y_train, 10)
y_test = keras.utils.to_categorical(y_test, 10)
start_time = time.time()#Mesure de l'heure de début
model.compile(loss='categorical_crossentropy',
optimizer=RMSprop(),
metrics=['accuracy'])
history = model.fit(x_train, y_train,
batch_size=128,
epochs=10,
verbose=1,
validation_data=(x_test, y_test))
score = model.evaluate(x_test, y_test, verbose=0)
print('loss:', score[0])
print('accuracy:', score[1])
end_time = time.time() - start_time#Mesurer l'heure de fin
print("Temps d'étude:", str(round(end_time, 3)), "C'était une seconde.")
Résultat de sortie sur la version GPU: 48,13 secondes Résultat de sortie sur la version du processeur: 530,26 secondes
La vitesse était différente de plus de 10 fois! !!
J'ai mis en place une machine IA en plongeant Gravo dans un vieux PC car je voulais faire du Deep Learning individuellement. Aussi, si j'ai assez d'argent, j'aimerais utiliser un GPU avec plus de mémoire ou deux coups. à plus.
Recommended Posts