코드: Padding 추가한 합성곱
핵심: 같은 합성곱 연산, padding 추가 한 줄 차이로 깊이 13층까지 가능해짐.
📖 Padding 구현 핵심
pad = K // 2 # 3x3 → pad 1
padded = np.zeros((H + 2*pad, W + 2*pad, Cin))
padded[pad:pad+H, pad:pad+W, :] = image
입력을 zero-padded 큰 배열에 복사. 합성곱이 가장자리도 처리할 수 있게.
💡 Same vs Valid padding
- Same padding (위의 것): 출력 크기 = 입력 크기. 가장자리 0 채움.
- Valid padding: padding 없음. 출력이 작아짐 (위 "padding 없이" 예).
알파고는 "Same" 사용 — 13층 거쳐도 19x19 유지. 자리별 출력이 의미 있음.
다음 페이지에서 완성된 7x7 CNN을 만든다.
PYTHON