[PYTHON] [PyTorch] Überprüfen Sie, ob sich Modell und Datensatz im Cuda-Modus befinden

Einführung

PyTorch kann mit `` hoge.to (device) `usw. problemlos zwischen CPU- und GPU-Modus für Tensoren wechseln, aber ich weiß oft nicht, ob es sich bei diesem Datensatz oder Modell um CPU oder GPU handelt. Überprüfen Sie es daher. Ich werde aufschreiben, wie es geht.

Bestätigungsmethode

Voraussetzung ist der Datensatz und die Modellvorbereitung

IMAGE_SIZE=224
BATCH_SIZE=20
TRAIN = 'train'
DATA_DIR = 'dataset/predata/'
DEVICE = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")

data_transforms = {
    TRAIN: transforms.Compose([
        transforms.Resize(IMAGE_SIZE),
        transforms.ToTensor(),
    ])
}

#Datenvorverarbeitung
image_datasets = {x: datasets.ImageFolder(os.path.join(DATA_DIR, x), data_transforms[x]) for x in [TRAIN]}
dataloaders = {x: torch.utils.data.DataLoader(image_datasets[x], 
                                              batch_size=BATCH_SIZE, shuffle=True, num_workers=4) for x in [TRAIN]}

is_Wenn Sie cuda verwenden, wird es als Bool-Typ zurückgegeben.[Hier](https://discuss.pytorch.org/t/how-to-check-if-model-is-on-cuda/180/2?u=kazuki_hamaguchi)(1)Mit Bezug auf



```python
data, label = iter(dataloaders[TRAIN]).next()
data = data.to(DEVICE)
label = label.to(DEVICE)
print(data.is_cuda)
print(label.is_cuda)

model = model.to(DEVICE)
print(next(model.parameters()).is_cuda)

Sie können dies damit überprüfen.

schließlich

Was passiert mit dem Modus vor und nach dem Beenden der lokalen Variablen? Es könnte interessant sein, dies zu überprüfen

Referenzmaterial

(1) How to check if Model is on cuda

Recommended Posts

[PyTorch] Überprüfen Sie, ob sich Modell und Datensatz im Cuda-Modus befinden
Machen Sie einen beliebigen Schlüssel zum Primärschlüssel im Django-Modell
Stellen Sie sicher, dass die Vorverarbeitung zum Zeitpunkt der Erstellung und Vorhersage des Vorhersagemodells ausgerichtet ist
Das verallgemeinerte lineare Modell (GLM) und das neuronale Netz sind gleich (1)
Speichern Sie das Pystan-Modell und erhalten Sie eine Pickle-Datei
Das verallgemeinerte lineare Modell (GLM) und das neuronale Netz sind gleich (2)
Falten Sie den Pytorch-Datensatz in Schichten
So überprüfen Sie, ob sich der angegebene Schlüssel im angegebenen Bucket in Boto 3 befindet
Wirf etwas mit Python in Kinesis und stelle sicher, dass es drin ist
Stellen Sie das in Python unter SQL Server erstellte Vorhersagemodell bereit und verwenden Sie es
Was sind die "Pipeline" und "{...}" in der Jenkins-Pipeline-Pipeline {...} (für Groovy-Anfänger, für erfahrene Sprachen)
Ich habe das VGG16-Modell mit Keras implementiert und versucht, CIFAR10 zu identifizieren