6. 第六个方法
torch.set_default_dtype(d)
- 此方法不是很直观,但是比较好理解,意思是设置pytorch中浮点数的默认类型。pytorch中有很多浮点类型,例如
torch.float16、torch.float32、torch.float64
这些在初始化一个浮点tensor的时候是可以指定的,如果我们不指定,那么pytorch就是默认给其一个类型,此方法的作用就是指定pytorch默认给不指定浮点类型的浮点数哪个类型。我们先来看个例子。
import torch
a = torch.tensor([1., 2.])
a.dtype
- 我们没有指定其类型,结果为
- pytorch中浮点类型默认为
torch.float32
,而复数(复数只有pytorch1.7.0及以上才有)的默认类型为torch.complex64
,这个很好理解,因为我们复数需要浮点数组成实部和虚部,每一个都是32,所以复数默认就是64。
import torch
b = torch.tensor([1., 2.j])
b.dtype
- 输出为:
如果我们设置了默认浮点类型为64的话,那么以上就会改成torch.float64
和torch.complex128
如下所示:
- 值得注意的是,这个改变不是永久的,它只作用于当前环境,我们重新启动jupyter或者更换另一个python文件然后运行的话,浮点类型的默认值还是
torch.float32
。