flatten(input, start_dim=0, end_dim=-1) → Tensor¶
inputby reshaping it into a one-dimensional tensor. If
end_dimare passed, only dimensions starting with
start_dimand ending with
end_dimare flattened. The order of elements in
Unlike NumPy’s flatten, which always copies input’s data, this function may return the original object, a view, or copy. If no dimensions are flattened, then the original object
inputis returned. Otherwise, if input can be viewed as the flattened shape, then that view is returned. Finally, only if the input cannot be viewed as the flattened shape is input’s data copied. See
torch.Tensor.view()for details on when a view will be returned.
Flattening a zero-dimensional tensor will return a one-dimensional view.
>>> t = torch.tensor([[[1, 2], ... [3, 4]], ... [[5, 6], ... [7, 8]]]) >>> torch.flatten(t) tensor([1, 2, 3, 4, 5, 6, 7, 8]) >>> torch.flatten(t, start_dim=1) tensor([[1, 2, 3, 4], [5, 6, 7, 8]])