PyTorch中torch.ones((2, 3,))与torch.ones(2, 3)的区别是什么?
PyTorch中两种创建全1张量写法的区别
这两种写法没有功能上的本质差异,最终都会生成形状为(2, 3)的全1张量,核心区别仅在于参数的传递方式:
写法一:
ones_tensor = torch.ones((2, 3,))
这里是将张量的形状以元组形式作为单个参数传入函数,元组末尾的逗号是可选写法,不影响元组的定义,本质就是传递(2, 3)这个形状元组。写法二:
ones_tensor = torch.ones(2, 3)
这里是将形状的各个维度值作为多个独立的位置参数直接传入,torch.ones()内部会自动把这些零散的维度值打包成形状元组来处理。
你可以通过打印ones_tensor.shape验证,两种写法生成的张量形状完全一致,输出均为torch.Size([2, 3])。
内容的提问来源于stack exchange,提问作者Đỗ Như Vỹ
相关产品推荐
相关产品推荐

