Error: tipo de Entrada (de la antorcha.FloatTensor) y tipo de peso (de la antorcha.cuda.FloatTensor) debe ser el mismo

0

Pregunta

Estoy tratando de entrenar a un DNN modelo de uso de la pytorch, y quiero utilizar la GPU para entrenar a mi modelo. Soy capaz de copiar correctamente mi modelo a la GPU usando model.to(device), donde device = cuda:0.

Sin embargo, los métodos estándar para la copia de entrada para la GPU, (RuntimeError: tipo de Entrada (de la antorcha.FloatTensor) y tipo de peso (de la antorcha.cuda.FloatTensor) debe ser el mismo), que es, X.to(device) y X.cuda() no me dan el resultado deseado. El siguiente es el método actualmente estoy implementando:

def train_loop(self, dataloader, device):
    size = len(dataloader.dataset)
    for batch, (X, y) in enumerate(dataloader):
        # Compute prediction and loss
        print(device)
        X.to(device)
        print(X.is_cuda)
        y.to(device)
        
        pred = self.model(X)
        loss = self.loss_fn(pred, y)

En la impresión del valor de dispositivo print(device) se muestra como: cuda:0. Pero cuando voy a ejecutar print(X.is_cuda) devuelve false. (Captura de pantalla adjunta a continuación).

Error Message

Por favor, hágamelo saber donde estoy pasando mal. Gracias!

1

Mejor respuesta

0

X.to(device) no hace nada. cambiar a:

x=x.to(device)

Por supuesto, esto debe hacerse a cualquier parámetro\variable que desea en la GPU

2021-11-20 16:11:49

Oh, está bien. Gracias! Este problema se ha resuelto
Vatsala Prasad

En otros idiomas

Esta página está en otros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Slovenský
..................................................................................................................