torch.logspace
- torch.logspace(start, end, steps, base=10.0, *, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False) → Tensor
-
创建一个大小为
steps
的一维张量,其值在以base
为底的对数尺度上从${{\text{base}}}^{{\text{start}}}$到${{\text{base}}}^{{\text{end}}}$(包括两端)均匀分布。具体来说,这些值是:$(\text{base}^{\text{start}}, \text{base}^{(\text{start} + \frac{\text{end} - \text{start}}{ \text{steps} - 1})}, \ldots, \text{base}^{(\text{start} + (\text{steps} - 2) * \frac{\text{end} - \text{start}}{ \text{steps} - 1})}, \text{base}^{\text{end}})$从 PyTorch 1.11 版本开始,logspace 函数需要指定步骤参数 steps。使用 steps=100 可以恢复到之前的默认行为。
- 参数
- 关键字参数
-
-
out (Tensor, 可选) – 指定输出张量。
-
dtype (torch.dtype, 可选) – 执行计算的数据类型。默认情况下,如果为 None,则在
start
和end
均为实数时使用全局默认数据类型(参见 torch.get_default_dtype()),当其中一个为复数时则使用相应的复数数据类型。 -
layout (
torch.layout
, 可选) - 指定返回张量的布局。默认值为torch.strided
。 -
device (
torch.device
, 可选) – 返回张量所需的设备。默认情况下,如果未指定None
,则使用当前的默认张量类型设备(参见torch.set_default_device()
)。对于 CPU 张量类型,默认为 CPU 设备;对于 CUDA 张量类型,则为当前的 CUDA 设备。 -
requires_grad (bool, optional) – 是否启用自动求导记录返回的张量上的操作。默认值:
False
。
-
示例:
>>> torch.logspace(start=-10, end=10, steps=5) tensor([ 1.0000e-10, 1.0000e-05, 1.0000e+00, 1.0000e+05, 1.0000e+10]) >>> torch.logspace(start=0.1, end=1.0, steps=5) tensor([ 1.2589, 2.1135, 3.5481, 5.9566, 10.0000]) >>> torch.logspace(start=0.1, end=1.0, steps=1) tensor([1.2589]) >>> torch.logspace(start=2, end=2, steps=1, base=2) tensor([4.0])