Your output should already be on the GPU.
Could you remove the .cuda() call on your output:
criterion(outputs.cuda(), ...)

Also, Variables are deprecated. You don’t have to warp your tensors in Variables anymore.