📌 합성곱
- 모든 특성에 대해x, 특성 3개씩에 가중치/절편 연산 (필터)
-> 가중치(=커널) 3개, 절편 1개
- 10개 입력 -> 8개 출력
- 2차원 합성곱 (3x3 필터)
- 특성맵 (특징맵) : 2차원 합성곱의 출력(2x2)
필터 여러개 적용 -> 특성맵 여러개
- 패딩 : 입력을 0으로 둘러싸서 필터가 적용이 증가
-> 입력과 출력의 크기가 동일
-> 최대 4배 차이 났던 기여도를 2배로 줄여줌
- 풀링 : 특성맵 차원 축소 2x2x3 -> 1x1x3
최대 풀링 (최댓값 pick) : 2x2풀링 -> 2칸씩 이동. strides=2 (겹치지 않음)
📍 케라스 합성곱 층
- padding='same' : 입력, 출력의 크기 동일
from tensorflow import keras
keras.layers.Conv2D(10, kernel_size=(3,3), activation='relu', padding='same')
📍 케라스 풀링 층
keras.layers.MaxPooling2D(2)
📌 합성곱 신경망
-
합성곱층
4x4 -> 6x6 (same)padding
3x3 filter 3개 -> 4x4 특성맵 3개
활성화 함수 -> 4x4x3 특성맵
-
풀링층
2x2 max pooling -> 2x2x3 특성맵
1차원으로 펼쳐서 12개의 뉴런으로 입력
-
밀집층
은닉/출력층 -> softmax/활성화 함수 -> 최종 예측
📌 3차원 합성곱
-
3차원 입력 -> 3차원 필터 (깊이 동일)
-
가중치 3x3x3개, 절편 1개
📍 다중 필터 3차원 합성곱
- 4x4x5 입력 -> 3x3x5 필터 10개 -> 2x2x10 특성맵
🔗 혼공 MLDL-20