[인공지능] 완전한 합성곱 계층

라떼뚜이·2025년 4월 25일

인공지능

목록 보기
13/23

3D Convolution 구조

  • 입력(3D input feature map) : RGB 이미지라면 3개의 채널이 있고, 각 채널별로 픽셀값이 있다.
  • 3D 필터 : 이 필터도 3채널(입력 채널과 동일)을 가짐
    이거를 하나의 덩어리로 취급해서 곱하고 더함
  • 출력 : 곱하고 더한 결과를 하나의 값으로 만들어서 출력 맵 한 칸에 넣음

Sliding Window

  • 위에서 본 필터를 왼쪽 위에서부터 오른쪽 아래까지 계속 옮기면서 계산한다.
  • 필터의 크기만큼 '창'을 움직여서 겹치는 부분마다 연산을 반복하는 것을 보여줌

→ 이게 CNN의 핵심 동작 !

Output Channel

  • CNN에서는 필터를 하나만 쓰지 않고 여러 개를 쓴다.
  • 그래서 출력도 깊이(channel)이 생김
  • 입력 → 필터 여러 개 → 출력도 3D → 이 출력 채널 하나하나가 각각 다른 특징(엣지, 곡선 등)을 잡아냄

요약

입력

  • 크기는 W1 × H1 × C
  • 하이퍼파라미터
    1. 필터 개수 K
    2. 필터 크기 F
    3. 이동 간격 S (stride)
    4. 패딩 P

출력의 너비와 높이 계산하는 공식이고, 필터 개수 K가 출력의 깊이가 된다.



Neuron 표현

이건 위 수식을 뉴런 형태로 시각화한 것

  • 입력 픽셀 여러 개 × 커널의 가중치 → 하나의 출력 뉴런 계산
  • 그림에서 화살표는 가중치 곱셈을 의미한다.
  • Receptive field : 하나의 출력값을 만들기 위해 보는 입력의 영역

→ 필터가 움직이면서 각각의 출력을 만들고 있다는 걸 뉴런 관점에서 설명한 것.


Pooling (Subsampling)

  • 폴링은 정보를 압축해서 계산량을 줄이기 위한 단계
  • Max pooling : 2 * 2 안에서 가장 큰 값만 가져감 → 중요한 특징만 유지
  • Average pooling : 평균값을 사용

→ 이것을 통해서 특징 유지하면서 크기 줄이기 가능함


AlexNet

  • AlexNet 은 CNN 구조 중 대표적인 예시
  • 구조
  1. 입력 이미지
  2. 합성곱 레이어 + ReLU
  3. Max Pooling
  4. 완전연결층 (fully connected layers)

  • AlexNet은 총 8개의 학습 가능한 레이어 (5conv + 3fc)
  • 각 layer마다 kernel size, padding, stride가 적혀 있음
  • ReLU, dropout 등도 들어가서 성능과 일반화 능력을 향상시킴

0개의 댓글