DEV Community

Super Kai (Kazuya Ito)
Super Kai (Kazuya Ito)

Posted on

atleast_2d in PyTorch

Buy Me a Coffee

*Memos:

atleast_2d() can get the view of the one or more 2D or more D tensors of zero or more elements by only changing one or more 0D or 1D tensors to one or more 2D tensors from the one or more 0D or more D tensors of zero or more elements as shown below:

*Memos:

  • atleast_2d() can be used with torch but not with a tensor.
  • The 1st or more arguments with torch are *tensors(Required-Type:tensor of int, float, complex or bool or tuple or list of tensor of int, float, complex or bool): *Memos:
    • If setting more than one tensors, a tuple of tensors is returned otherwise a tensor is returned.
    • Don't use any keyword like *tensors=, tensor or input.
  • Setting no arguments returns an empty tuple.
import torch tensor0 = torch.tensor(2) # 0D tensor  torch.atleast_2d(tensor0) # tensor([[2]])  tensor0 = torch.tensor(2) # 0D tensor tensor1 = torch.tensor([2, 7, 4]) # 1D tensor tensor2 = torch.tensor([[2, 7, 4], [8, 3, 2]]) # 2D tensor tensor3 = torch.tensor([[[2, 7, 4], [8, 3, 2]], # 3D tensor  [[5, 0, 8], [3, 6, 1]]]) tensor4 = torch.tensor([[[[2, 7, 4], [8, 3, 2]], # 4D tensor  [[5, 0, 8], [3, 6, 1]]], [[[9, 4, 7], [1, 0, 5]], [[6, 7, 4], [2, 1, 9]]]]) torch.atleast_2d(tensor0, tensor1, tensor2, tensor3, tensor4) torch.atleast_2d((tensor0, tensor1, tensor2, tensor3, tensor4)) # (tensor([[2]]), # tensor([[2, 7, 4]]), # tensor([[2, 7, 4], [8, 3, 2]]), # tensor([[[2, 7, 4], [8, 3, 2]], # [[5, 0, 8], [3, 6, 1]]]), # tensor([[[[2, 7, 4], [8, 3, 2]], # [[5, 0, 8], [3, 6, 1]]], # [[[9, 4, 7], [1, 0, 5]], # [[6, 7, 4], [2, 1, 9]]]]))  tensor0 = torch.tensor(2) # 0D tensor tensor1 = torch.tensor([2, 7, 4]) # 1D tensor tensor2 = torch.tensor([[2., 7., 4.], # 2D tensor  [8., 3., 2.]]) tensor3 = torch.tensor([[[2.+0.j, 7.+0.j, 4.+0.j], # 3D tensor  [8.+0.j, 3.+0.j, 2.+0.j]], [[5.+0.j, 0.+0.j, 8.+0.j], [3.+0.j, 6.+0.j, 1.+0.j]]]) tensor4 = torch.tensor([[[[True, False, True], [False, True, False]], [[True, False, True], [False, True, False]]], [[[True, False, True], [False, True, False]], [[True, False, True], [False, True, False]]]]) # 4D tensor torch.atleast_2d(tensor0, tensor1, tensor2, tensor3, tensor4) # (tensor([[2]]), # tensor([[2, 7, 4]]), # tensor([[2., 7., 4.], # [8., 3., 2.]]), # tensor([[[2.+0.j, 7.+0.j, 4.+0.j], # [8.+0.j, 3.+0.j, 2.+0.j]], # [[5.+0.j, 0.+0.j, 8.+0.j], # [3.+0.j, 6.+0.j, 1.+0.j]]]), # tensor([[[[True, False, True], [False, True, False]], # [[True, False, True], [False, True, False]]], # [[[True, False, True], [False, True, False]], # [[True, False, True], [False, True, False]]]]))  torch.atleast_2d() # () 
Enter fullscreen mode Exit fullscreen mode

Top comments (0)