好像是已经过时的函数, 在pytorch0.4之前, view()进行改变形状时, 这个变量tensor的内存必须是连续的, 否则会失败, 但是现在可以了, 举例如下:
import torch
x = torch.tensor([[1, 2, 0], [0, 0, 0], [0, 0, 0], [0, 2, 3]])
mask = x != 0
print("mask:\n", mask)
x = x[mask]
print("\nx:", x)
print("\nx内存是否连续:", x.is_contiguous()) # 是否连续
# 如果不连续, 需要这样操作一下, 使其连续
x2 = x.contiguous()
print("\n变性后:\n", x2.view(2, 2))
结果如下