比较与torch.randint_like的差异
torch.randint_like
torch.randint_like(input, low=0, high, *, dtype=None, layout=torch.strided, device=None, requires_grad=False, memory_format=torch.preserve_format)
更多内容详见torch.randint_like。
mindspore.ops.randint_like
mindspore.ops.randint_like(input, low, high, *, dtype=None, seed=None)
更多内容详见mindspore.ops.randint_like。
差异对比
PyTorch:low
为可选输入,默认值为0。
MindSpore:low
为必选输入,无默认值。
分类 |
子类 |
PyTorch |
MindSpore |
差异 |
---|---|---|---|---|
参数 |
参数1 |
input |
input |
无差异 |
参数2 |
low |
low |
PyTorch中 |
|
参数3 |
high |
high |
无差异 |
|
参数4 |
dtype |
dtype |
无差异 |
|
参数5 |
layout |
- |
通用差异 |
|
参数6 |
device |
- |
通用差异 |
|
参数7 |
requires_grad |
- |
通用差异 |
|
参数8 |
memory_format |
- |
通用差异 |
|
参数9 |
- |
seed |
通用差异 |
代码示例
# PyTorch
import torch
# PyTorch 无需传入low的值,相当于MindSpore中low=0。
x = torch.tensor([[2, 3], [1, 2]], dtype=torch.int32)
y = torch.randint_like(x, 10)
print(tuple(y.shape))
# (2, 2)
# MindSpore
import mindspore
# MindSpore 必须将torch中low的默认值(此处为0),作为输入传入。
x = mindspore.Tensor([[2, 3], [1, 2]], mindspore.int32)
x = mindspore.ops.randint_like(x, 0, 10)
print(x.shape)
# (2, 2)