torch.ones和torch.new_ones和torch.ones_like区别和联系


官方文档解释:
To create a tensor with pre-existing data, use torch.tensor().

To create a tensor with specific size, use torch.* tensor creation ops (see Creation Ops).

To create a tensor with the same size (and similar types) as another tensor, use torch.*_like tensor creation ops (see Creation Ops).

To create a tensor with similar type but different size as another tensor, use tensor.new_* creation ops.
简单来说,
torch.tensor() 用的最多,一般都用它;
torch.* 用于创建特殊形式的 tensor,包括 torch.ones()torch.zeros()等;
torch.*_like() 用于创建一个与已知 tensor 形状相同的 tensor;
torch.new_* 用于创建一个与已知 tensor 类型相同的 tensor
最后放一下参数表
torch.tensor(data, dtype=None, device=None, requires_grad=False, pin_memory=False) → Tensor
torch.ones(*size, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False) → Tensor
torch.ones_like(input, dtype=None, layout=None, device=None, requires_grad=False) → Tensor
torch.new_ones(size, dtype=None, device=None, requires_grad=False) → Tensor


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM