AI VIDEO BRIEFING

MIT 6.S191 합성곱 신경망(CNN) 강의 정리 - 필터, 풀링, 객체 검출까지 한 번에

MIT 6.S191 딥러닝 입문 3강이 컴퓨터 비전의 기본기를 정리했다. 이미지를 숫자 행렬로 보는 관점부터 패치 단위 합성곱과 풀링, 분류에서 객체 검출·의미 분할·자율주행 제어로 확장되는 흐름까지 짚는다.

MIT 딥러닝 입문 3강: 컴퓨터가 '보는 법'을 배우는 합성곱 신경망의 원리 영상 대표 이미지

핵심 메시지

  • 컴퓨터에게 이미지는 밝기 값이 채워진 2차원 행렬일 뿐이고, 컬러 이미지는 빨강·초록·파랑 세 장의 행렬을 겹친 3차원 배열이다.
  • 이미지를 1차원으로 납작하게 펴서 완전연결망에 넣으면 공간 정보가 사라지고 100×100 픽셀만 해도 입력 차원이 1만이 되어 학습이 비효율적이다.
  • 합성곱은 작은 필터를 이미지 전체에 미끄러뜨리며 곱하고 더하는 연산으로, 국소적인 특징을 잡아내면서도 공간 구조를 그대로 보존한다.
  • 합성곱 신경망은 합성곱, 비선형 활성화, 풀링을 반복해 선과 모서리에서 시작해 점점 더 큰 구조로 특징을 쌓아 올린다.
  • 특징 추출부는 그대로 두고 뒷부분만 바꾸면 같은 구조를 분류, 객체 검출, 픽셀 단위 분할, 자율주행 제어까지 확장할 수 있다.

쉽게 이해하기

강의는 '본다는 것'이 무엇인지 되묻는 데서 출발한다. 강연자는 도로 사진 한 장을 예로 들며, 차와 사람을 알아보는 것만이 시각이 아니라고 말한다. 길 위에 멈춰 선 차는 횡단보도를 건너려는 보행자 때문에 잠시 선 것이고 곧 다시 움직이겠지만, 갓길의 차는 주차된 상태라 계속 그대로일 것이다. 사람은 사진을 보는 순간 이런 인과 관계까지 한꺼번에 읽어내지만, 컴퓨터에게는 이 모든 것이 숫자의 배열에서 시작한다.

컴퓨터가 보는 이미지는 밝기 값이 들어찬 2차원 행렬이다. 흑백 이미지는 행렬 한 장, 컬러 이미지는 빨강·초록·파랑 세 장을 겹친 3차원 배열로 표현된다. 문제는 이 2차원 정보를 어떻게 신경망에 넣느냐다. 예전처럼 이미지를 한 줄로 펴서 완전연결망에 밀어 넣으면 픽셀 사이의 위치 관계가 통째로 사라지고, 100×100 픽셀짜리 작은 이미지조차 입력이 1만 차원이 되어 첫 번째 행렬 곱부터 파라미터가 폭발한다. 학습을 시작하기도 전에 모델의 손발을 묶는 셈이다.

그래서 강의는 이미지를 2차원 그대로 두고, 픽셀 전체가 아니라 작은 패치만 다음 층의 뉴런 하나에 연결하는 방식을 제안한다. 이 패치를 이미지 전체에 미끄러뜨리며 같은 가중치를 반복 적용하는 연산이 바로 합성곱이다. 필터의 가중치와 패치의 픽셀을 하나씩 곱해 더하고, 편향을 더한 뒤 비선형 함수를 적용한다. 결과로 나오는 '특징 맵'에서 값이 크게 튀는 위치는 그 필터가 찾던 무늬가 실제로 있는 자리다.

강연자는 X자를 알아보는 예로 이 원리를 설명한다. 두 개의 X 이미지는 픽셀을 하나씩 비교하면 전혀 다르지만, 한쪽으로 기운 대각선·교차점·반대쪽 대각선이라는 세 개의 필터로 보면 두 이미지가 거의 똑같이 반응한다. 합성곱 신경망이 등장하기 전에는 사람이 직접 경계선 검출용 필터의 숫자를 손으로 써넣었지만, 이제는 그 숫자 자체를 데이터로부터 학습한다는 것이 핵심 차이다.

완성된 합성곱 신경망은 합성곱, ReLU 같은 비선형 활성화, 그리고 풀링이라는 세 연산의 반복으로 이뤄진다. 풀링은 패치 안의 최댓값만 남기는 식으로 가로·세로 해상도를 줄이는데, 이미지가 작아질수록 같은 크기의 필터가 상대적으로 더 넓은 영역을 보게 되어 자연스럽게 더 큰 구조를 잡아낸다. 강연자는 최대 풀링이 채널 수는 그대로 두고 공간 축만 줄인다는 점을 질문에 답하며 분명히 했다.

주요 인사이트

  • 사람이 특징을 손으로 정의하는 방식이 무너지는 지점은 '집이란 무엇인가'처럼 같은 부류 안의 변이가 너무 클 때다. 시점, 조명, 크기가 조금만 달라져도 규칙이 깨지기 때문에 특징을 찾는 일 자체를 학습에 맡기게 됐다.
  • 필터를 겹쳐 가며 미끄러뜨릴지 여부는 정답이 있는 규칙이 아니라 설계자의 선택이다. 겹치게 하면 필터 경계에서 잘린 무늬도 모델이 이어서 판단할 수 있다는 장점이 있다.
  • 패치를 무작정 키워 다운샘플링 효과를 노리면 국소성이라는 장점을 스스로 버리게 된다. 작은 패치로 세밀한 정보를 잡고 풀링으로 크기를 줄이는 조합이 두 마리 토끼를 잡는 방식이다.
  • 객체 검출에서 무작위 후보 상자를 던지거나 사람이 만든 휴리스틱으로 상자를 뽑는 방식은 느리고 취약하다. 특징 맵에서 후보 영역을 제안하게 만들면 잘못된 상자에 대한 신호가 입력까지 역전파되어 상자 제안 자체가 학습된다.
  • 합성곱은 2차원 이미지 전용이 아니다. 1차원 벡터 위에서 패치를 미끄러뜨리면 시퀀스 모델이 되고, 3차원으로 확장하면 볼륨 스캔 같은 다른 데이터에도 같은 발상이 적용된다.

자주 묻는 질문

합성곱 신경망은 어떤 연산들로 구성되나요?

합성곱, 비선형 활성화, 풀링 세 가지가 반복되는 특징 추출부와, 그 결과를 펼쳐 완전연결층으로 최종 분류를 수행하는 분류부로 나뉩니다. 활성화 함수로는 음수를 0으로 눌러 주는 ReLU가 흔히 쓰입니다.

최대 풀링은 이미지의 어떤 축을 줄이나요?

가로와 세로, 즉 공간 축만 줄입니다. 특징 맵이 32장이었다면 풀링 후에도 32장 그대로 유지되고 각 장의 해상도만 작아집니다.

합성곱 신경망을 분류 말고 다른 작업에도 쓸 수 있나요?

네. 앞쪽 특징 추출부는 그대로 두고 뒷부분만 바꾸면 됩니다. 강의는 경계 상자를 출력하는 객체 검출, 픽셀마다 클래스를 매기는 의미 분할, 카메라 영상과 저해상도 지도를 함께 넣어 주행 명령을 예측하는 자율주행 제어를 예로 들었습니다.

이미지를 그냥 1차원으로 펴서 넣으면 왜 안 되나요?

픽셀 사이의 공간 관계가 학습을 시작하기도 전에 사라지고, 100×100 픽셀만 해도 입력이 1만 차원이 되어 완전연결층의 파라미터가 감당하기 어려울 만큼 늘어나기 때문입니다.

원문과 출처

이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.

YouTube 원본 영상 보기 ↗

관련 AI 소식