Home [PyTorch] F.pad()
Post
Cancel

[PyTorch] F.pad()

F.pad()

원하는대로 패딩을 줄 수 있는 함수이다.

  • input : 패딩할 텐서
  • pad : 패딩할 위치
  • mode : 패딩 방법
  • value : 패딩할 값
1
2
# 사용법
torch.nn.funcional.pad(input, pad, mode="constant", value=0.0)
  • pad 부분에서 (좌, 우, 상, 하)로 패ㅇ을 한다는 걸 알 수 있다.
  • 패딩 방식에는 reflect, constant 등 여러가지 방식이 존재한다.
1
2
import torch
import torch.nn.functional as F
1
2
3
4
a = torch.ones(2, 3)

print(a)
print(a.shape)
1
2
3
tensor([[1., 1., 1.],
        [1., 1., 1.]])
torch.Size([2, 3])
1
2
3
4
b = F.pad(input=a, pad=(1, 2, 3, 4), mode="constant", value=0)

print(b)
print(b.shape)
1
2
3
4
5
6
7
8
9
10
11
# 결과
tensor([[0., 0., 0., 0., 0., 0.],
        [0., 0., 0., 0., 0., 0.],
        [0., 0., 0., 0., 0., 0.],
        [0., 1., 1., 1., 0., 0.],
        [0., 1., 1., 1., 0., 0.],
        [0., 0., 0., 0., 0., 0.],
        [0., 0., 0., 0., 0., 0.],
        [0., 0., 0., 0., 0., 0.],
        [0., 0., 0., 0., 0., 0.]])
torch.Size([9, 6])
This post is licensed under CC BY 4.0 by the author.