好像是已经过时的函数, 在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))

结果如下

pytorch 中 contiguous()_contiguous