view()具有跟reshape()相同的功能,都能去重塑矩阵的形状,但是区别在于,view()可以通过在某一维度输入为-1,来动态调整这个矩阵的维度的size,而且,view()用于pytorch中对张量进行处理,而reshape则是对数组进行处理,且无动态调整的功能
代码演示
ysh=np.arange(16)
ysh=torch.arange(16)
print(ysh)
#ysh.reshape(4,-1)
print('reshape的演示',ysh.shape)
ysh=ysh.view(4,-1)
print('view的演示',ysh.shape)
结果显示
tensor([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15])
reshape的演示 torch.Size([16])
view的演示 torch.Size([4, 4])
这篇博客探讨了PyTorch中reshape和view函数在重塑张量形状时的不同。view()允许在某个维度设置-1,自动计算该维度的大小,而reshape则不支持这种动态调整。文章通过代码示例展示了view()如何在保持数据不变的情况下改变张量的维度,强调了view()主要用于张量操作,而reshape适用于数组。

3万+

被折叠的 条评论
为什么被折叠?



