� Convolutional Neural Networks
딥러닝을 처음 배우는 수강생들이 CNN(Convolutional Neural Networks)을
이해할 때 가장 어려워하는 부분은 **“필터가 이미지를 어떻게 인식하느냐”**는 점입니다.
그럴 때 저는 이렇게 묻습니다:
“선형대수에서 벡터를 특정 방향으로 정사영(projection)시키는 개념, 기억나시죠?�”
놀랍게도 이 질문 하나가 CNN을 해석하는 열쇠�가 됩니다.
이번 글에서는 CNN 필터를 선형대수학의 시선으로 풀어보겠습니다.
우리는 이미지에서 특정 패턴(예: 수직선 �, 모서리 �, 텍스처 �)을 인식하고 싶어합니다.
CNN의 필터는 다음과 같이 동작합니다:
1️⃣ 이미지에서 작은 부분(예: 3×3 패치)을 잘라냅니다
2️⃣ 해당 패치와 필터를 원소별 곱 후 더함 (dot product)
3️⃣ 그 결과는, 그 영역이 필터 방향과 얼마나 닮았는지를 나타냅니다 �️
→ 이건 곧 **입력 벡터를 필터 방향으로 정사영(projection)**하는 연산입니다.
CNN의 기본 필터 연산은 이렇게 이해할 수 있습니다:
Let: x = 입력 이미지의 패치 (벡터 형태)
w = 필터 또는 커널 (벡터 형태)
y = w와 x의 내적 결과 (출력값)
Then: y = wᵗ · x
즉, x를 w 방향으로 투영(projection)한 값입니다.
이 값이 클수록, 입력은 w 방향에 강하게 정렬되어 있다는 의미입니다.
숫자 “1” 이미지에서 수직선을 감지한다고 생각해보세요.
CNN 필터는 수직 방향을 강조하는 벡터로 초기화됩니다.\
이미지의 각 부분과 이 필터를 내적하면, 수직 성분이 강한 영역에서 큰 값이 나옵니다.
즉, 해당 패치를 수직 방향으로 정사영한 결과가 필터 출력입니다.
CNN을 “박스가 움직이며 이미지 처리한다”로 설명하면 개념이 피상적으로 전달됩니다.
“projection onto a vector”라는 키워드를 넣으면, 수학적 직관과 딥러닝 구조가 연결됩니다. �
벡터 공간 해석을 배운 수강생에게 특히 강력한 설명 방식입니다.
딥러닝을 가르칠 때, CNN은 시각적으로 직관적인 구조지만
그 안에서 일어나는 수학적 연산은 꽤 정교합니다.
� 필터는 이미지를 보는 눈이고,
� 그 눈은 특정 방향으로 이미지를 투영합니다.
이렇게 설명하면, 수강생은 CNN을 단순한 블랙박스가 아닌
수학적 구조물로 이해하게 됩니다.
다음 수업에서 CNN을 설명할 때
� “정사영(projection)”이라는 말을 꼭 사용해보세요.
학생의 눈빛이 바뀌는 순간을 경험하실 겁니다.�✨
#DeepLearning #LinearAlgebra #CNN #MachineLearning #딥러닝 #벡터공간 #딥러닝강의 #Convolution #수학과AI