-
[NumPy] np.pad에 대한 이해Machine Learning/numpy & pandas & maplotlib 2023. 10. 3. 01:15
* np.pad
numpy에 padding을 적용하는 메서드이다.
z축, y축, x축 axis에 대한 이해가 필요하다. (axis에 대한 이해)
numpy.pad(array, pad_width, mode='constant', **kwargs)
1. array
array는 padding을 적용할 배열
2. pad_width
- pad_width는 ((before_1, after_1), ... (before_N, after_N))의 형태이다. (before,after)는 해당 배열의 해당 축에 패딩을 (앞,뒤)로 덧붙이는 패딩의 갯수를 의미한다. 예를들면,
- pad_width가 ((0,0), (3,3), (3,3),(0,0))라고 할 때 각각, m(샘플 수)축, z축, y축, x축의 (앞, 뒤)를 의미한다.
- m축은 (0,0)이므로 패딩을 덧붙이지 않는다 -> No padding
- z축은 (3,3)이므로 해당 배열의 위 아래 row에 pad를 덧붙인다.
- y축은 (3,3)이므로 해당 배열의 좌 우 column에 pad를 덧붙인다.
- x축은 (0,0)이므로 해당 channels의 앞 뒤에 pad를 덧붙인다.
3. constant_values
constant_values=(before,after)
constant mode에서 배열에 덧붙일 상수값을 지정해준다. (앞, 뒤)에 어떤 값을 덧붙일지 지정할 수 있다. (0,0)은 해당 배열의 앞, 뒤로 0값을 padding한다는 의미로, zero-padding을 의미한다.
* 참고
https://numpy.org/doc/stable/reference/generated/numpy.pad.html
'Machine Learning > numpy & pandas & maplotlib' 카테고리의 다른 글
[NumPy] type()과 dtype, np.sum()과 np.multiply() (0) 2023.10.03 [numpy] axis, rank 이해. (n,)와(n,1)의 차이. keepdims (0) 2023.09.05 [Pandas#1] Pandas 기초 (0) 2023.08.05 [NumPy] np.where() (0) 2023.08.04 [NumPy] np.random.rand(), RandomState(), randn(), randint(), random(), normal()정리 (0) 2023.08.04