Data type | dtype | CPU tensor | GPU tensor |
32位浮点数 | torch.float32 or torch.float | torch.FloatTensor | torch.cuda.FloatTensor |
64位浮点数 | torch.float64 or torch.double | torch.DoubleTensor | torch.cuda.DoubleTensor |
16位浮点数 | torch.float16 or torch.half | torch.HalfTensor | torch.cuda.HalfTensor |
8位无符号整数 | torch.uint8 | torch.ByteTensor | torch.cuda.ByteTensor |
8位有符号整数 | torch.int8 | torch.CharTensor | torch.cuda.CharTensor |
16位有符号整数 | torch.int16 or torch.short | torch.ShortTensor | torch.cuda.ShortTensor |
32位有符号整数 | torch.int32 or torch.int | torch.intTensor | torch.cuda.intTensor |
64位有符号整数 | torch.int64 or torch.long | torch.LongTensor | torch.cuda.LongTensor |
张量的类型转换
(1)函数原型:
torch.to(device,dtype,non_blocking,copy,memory_format)
(2)主要参数:
参数名称 | 参数类型 | 参数含义 |
device | torch.device | 需要将原张量迁移到的设备名称,例如torch.device("cuda:0")以及torch.device("cpu") |
dtype | torch.dtype | 需要将原张量转换为的数据类型,可取值参见上表 |
(3)函数功能:
将调用该方法的张量Tensor迁移到指定的设备上并转换为指定的数据类型
是一种in-place的方法,调用后原有张量的属性会发生改变