최근 인공지능(AI) 기술이 우리 일상 깊숙이 파고들면서, 챗GPT(ChatGPT)와 같은 생성형 AI부터 자율주행 자동차, 의료 진단 시스템에 이르기까지 놀라운 혁신이 이어지고 있습니다. 이러한 기술적 진보의 이면에는 인간의 뇌 구조를 모방한 인공신경망(Artificial Neural Network, ANN)이라는 강력한 알고리즘이 자리 잡고 있습니다. 딥러닝을 처음 공부하는 분들이라면 반드시 거쳐야 할 관문이자, 가장 기본적이면서도 핵심적인 모델이 바로 오늘 다룰 MLP(Multi-Layer Perceptron, 다층 퍼셉트론)입니다.
많은 입문자가 딥러닝의 복잡한 수식과 용어 앞에서 좌절하곤 합니다. 하지만 MLP의 구조와 데이터가 흐르는 방식인 순전파(Forward Propagation) 알고리즘을 명확히 이해한다면, 이후 배우게 될 CNN(합성곱 신경망)이나 Transformer(트랜스포머)와 같은 최신 아키텍처를 이해하는 데 아주 탄탄한 기반을 다질 수 있습니다. 이번 포스트에서는 MLP 다층 퍼셉트론 구조와 순전파 알고리즘 작동 프로세스를 초심자의 눈높이에서 아주 상세하게, 그리고 깊이 있게 분석해 보겠습니다.
1. 퍼셉트론(Perceptron): 인공신경망의 기원과 진화
MLP를 제대로 이해하기 위해서는 그 가장 작은 구성 단위인 '퍼셉트론'의 개념부터 짚고 넘어가야 합니다. 퍼셉트론은 1957년 프랭크 로젠블라트(Frank Rosenblatt)가 고안한 알고리즘으로, 생물학적 뉴런의 동작 방식을 수학적으로 모델링한 것입니다.
1.1. 생물학적 뉴런의 모방
우리 뇌 속의 뉴런은 가지돌기(Dendrite)를 통해 여러 신호를 받아들이고, 이 신호들의 합이 특정 임계치(Threshold)를 넘어서면 축삭돌기(Axon)를 통해 다음 뉴런으로 전기 신호를 전달합니다. 퍼셉트론은 이 과정을 다음과 같이 수학적으로 구현합니다.
- 입력(Input): 외부로부터 들어오는 데이터 신호입니다.
- 가중치(Weight): 각 입력 신호가 결과에 미치는 영향력(중요도)을 나타냅니다. 생물학적 시냅스의 연결 강도에 해당합니다.
- 편향(Bias): 뉴런이 얼마나 쉽게 활성화될지를 결정하는 임계값 조절 파라미터입니다.
- 활성화 함수(Activation Function): 입력 신호의 총합을 출력 신호로 변환하는 함수입니다.
1.2. 단층 퍼셉트론의 한계와 극복
초기의 단층 퍼셉트론은 AND나 OR 게이트와 같은 단순한 선형 분류 문제는 훌륭하게 해결했습니다. 하지만, XOR 문제(배타적 논리합)와 같은 비선형 문제를 해결할 수 없다는 치명적인 한계가 밝혀지면서 인공지능 연구는 한동안 'AI의 겨울'이라 불리는 침체기를 겪게 됩니다. 직선 하나로는 흑과 백을 완벽하게 나눌 수 없는 상황에 봉착한 것입니다.
그러나 연구자들은 포기하지 않았고, 퍼셉트론을 여러 층(Layer)으로 쌓으면 비선형 문제를 해결할 수 있다는 사실을 발견했습니다. 입력층과 출력층 사이에 '은닉층'을 추가함으로써 직선이 아닌 곡선으로 영역을 구분할 수 있게 된 것입니다. 이것이 바로 MLP 다층 퍼셉트론의 탄생 배경이며, 딥러닝 시대의 서막을 알리는 계기가 되었습니다.
2. MLP 다층 퍼셉트론의 구조적 해부
MLP 다층 퍼셉트론은 입력층(Input Layer), 은닉층(Hidden Layer), 출력층(Output Layer)으로 구성된 계층적 구조를 가집니다. 이 구조는 데이터가 입력되어 출력될 때까지 거치는 일련의 필터와 같습니다.
2.1. 입력층 (Input Layer): 데이터의 관문
데이터가 신경망 내부로 처음 들어오는 입구입니다. 입력층의 노드(뉴런) 개수는 입력 데이터의 특성(Feature) 개수와 동일합니다. * 예를 들어, 집값을 예측하기 위해 [평수, 방 개수, 역세권 점수]라는 3가지 데이터를 사용한다면 입력층의 노드는 3개가 됩니다. * 입력층은 별도의 연산을 수행하지 않고, 들어온 값을 그대로 다음 층인 은닉층으로 전달하는 역할만 수행합니다.
2.2. 은닉층 (Hidden Layer): 딥러닝의 핵심 엔진
입력층과 출력층 사이에 위치하며, 밖에서는 보이지 않기 때문에 '은닉층'이라 불립니다. 딥러닝(Deep Learning)이라는 용어는 바로 이 은닉층이 깊게(Deep) 쌓여 있다는 뜻에서 유래했습니다.
- 특징 추출(Feature Extraction): 은닉층의 각 노드들은 입력 데이터로부터 유의미한 패턴과 특징을 찾아냅니다. 층이 깊어질수록 앞단에서 찾은 단순한 특징들을 조합하여 더 추상적이고 고차원적인 특징을 학습합니다.
- 완전 연결 계층(Fully Connected Layer): MLP에서는 이전 층의 모든 노드가 다음 층의 모든 노드와 촘촘하게 연결되어 있습니다. 이를 'Dense Layer'라고도 부르며, 파라미터(가중치) 수가 가장 많은 구조이기도 합니다.
2.3. 출력층 (Output Layer): 최종 판단의 장
신경망이 처리한 정보를 바탕으로 최종 결괏값을 내놓는 층입니다. 풀고자 하는 문제의 유형에 따라 출력층의 노드 개수와 활성화 함수가 결정됩니다.
- 이진 분류: 합격/불합격과 같은 문제에서는 1개의 노드와 시그모이드 함수를 사용합니다.
- 다중 분류: 손글씨 숫자(0~9) 분류와 같은 문제에서는 클래스 개수만큼의 노드(10개)와 소프트맥스 함수를 사용합니다.
- 회귀(Regression): 집값 예측과 같이 연속된 숫자를 맞추는 문제에서는 활성화 함수 없이 선형 값을 그대로 출력합니다.
3. 핵심 구성 요소: 가중치, 편향, 활성화 함수
MLP가 마법처럼 작동하는 이유는 내부의 수학적 장치들 덕분입니다. 순전파 알고리즘을 이해하기 위해 꼭 알아야 할 3대 요소를 살펴보겠습니다.
가중치 (Weight, w)
입력 신호가 출력에 미치는 중요도를 나타내는 파라미터입니다. 가중치가 크다는 것은 해당 입력 정보가 결과 예측에 결정적인 역할을 한다는 뜻입니다. 학습(Training)이란 결국 데이터를 가장 잘 설명하는 최적의 가중치 조합을 찾아내는 과정입니다.
편향 (Bias, b)
뉴런이 활성화되기 위한 임계점을 조절하는 파라미터입니다. 가중치만으로는 원점(0,0)을 지나는 그래프만 그릴 수 있지만, 편향이 더해지면 그래프를 상하좌우로 이동시킬 수 있어 데이터 표현력이 비약적으로 상승합니다.
활성화 함수 (Activation Function)
입력 신호의 가중 합계를 출력 신호로 변환할 때 사용하는 함수로, 신경망에 비선형성(Non-linearity)을 부여하는 핵심 역할을 합니다.
- 왜 비선형성이 중요한가? 만약 활성화 함수가 선형(Linear)이라면, 아무리 층을 깊게 쌓아도 수학적으로는 결국 하나의 선형 함수로 귀결됩니다. 즉, 층을 쌓는 의미가 사라집니다. 비선형 함수를 사용해야만 신경망이 복잡한 곡선 형태의 결정 경계를 그려낼 수 있습니다.
- 주요 활성화 함수:
- Sigmoid: 출력을 0~1 사이로 변환합니다. 과거에 많이 쓰였으나, 층이 깊어지면 학습이 안 되는 '기울기 소실(Vanishing Gradient)' 문제가 있어 최근에는 출력층 외에는 잘 쓰이지 않습니다.
- ReLU (Rectified Linear Unit): 입력이 0보다 크면 그대로, 0 이하면 0을 출력합니다. 연산이 매우 빠르고 기울기 소실 문제를 해결하여 현대 딥러닝의 표준이 되었습니다.
- Softmax: 다중 분류 문제의 출력층에서 사용되며, 출력값들의 합이 1이 되도록 정규화하여 '확률'처럼 해석할 수 있게 해줍니다.
4. 순전파(Forward Propagation) 알고리즘 작동 프로세스 상세
이제 데이터가 입력되어 예측값이 나오기까지의 여정, 즉 순전파 알고리즘의 전체 프로세스를 단계별로 시뮬레이션해 보겠습니다. 순전파는 입력층에서 출력층 방향(Forward)으로 신호가 전파되는 과정입니다.
Step 1: 입력 데이터 주입 (Input Feeding)
준비된 데이터가 벡터(Vector) 또는 행렬(Matrix) 형태로 입력층에 들어옵니다. 이 단계에서 데이터는 정규화(Normalization) 등의 전처리가 되어 있는 상태가 좋습니다.
Step 2: 선형 결합 (Linear Combination)
입력층에서 은닉층으로 신호가 넘어갈 때, 각 입력값($X$)에 대응하는 가중치($W$)가 곱해지고 편향($b$)이 더해집니다. 이를 수식으로 표현하면 $Z = WX + b$가 됩니다.
- 이 과정은 컴퓨터가 가장 잘하는 행렬 곱셈(Matrix Multiplication) 연산을 통해 한 번에 효율적으로 처리됩니다.
- 각 뉴런은 자신에게 연결된 이전 층의 모든 정보를 가중 합산하여 받아들입니다.
Step 3: 비선형 변환 (Non-linear Transformation)
선형 결합의 결과인 $Z$ 값은 즉시 활성화 함수를 통과합니다. 예를 들어 ReLU 함수를 통과한다면, $Z$가 양수일 때는 그 값을 그대로 다음 층으로 넘기고, 음수일 때는 0으로 만들어 신호를 차단합니다.
- 이 과정을 통해 신경망은 단순한 선형 계산을 넘어, 데이터 내재된 복잡하고 비선형적인 패턴을 인식할 수 있는 능력을 갖추게 됩니다.
- 활성화 함수를 통과한 값($A$)은 다음 은닉층의 새로운 입력 데이터가 됩니다.
Step 4: 계층별 반복 (Layer-wise Iteration)
위의 '선형 결합 -> 비선형 변환' 과정은 출력층에 도달할 때까지 모든 은닉층에서 반복됩니다. * 첫 번째 은닉층은 이미지의 엣지(Edge) 같은 단순한 특징을 찾습니다. * 두 번째 은닉층은 엣지를 조합해 눈, 코, 입 같은 형태를 찾습니다. * 마지막 은닉층은 전체적인 얼굴 모양을 인식합니다. 이처럼 층을 거칠수록 정보는 점점 더 고차원적으로 추상화됩니다.
Step 5: 최종 출력 산출 (Output Generation)
마지막 출력층에 도달한 신호는 문제 유형에 맞는 활성화 함수(Sigmoid, Softmax 등)를 거쳐 최종 예측값($Rhat{y}$)으로 변환됩니다.
- 예시: "이 사진은 고양이일 확률이 85%, 강아지일 확률이 15%입니다."
이 모든 과정이 눈 깜짝할 사이에 이루어지며, 이것이 바로 AI가 무언가를 판단하고 추론하는 순전파의 실체입니다.
5. 순전파 그 이후: 학습의 완성, 역전파(Backpropagation)
순전파 알고리즘만으로는 진정한 의미의 '지능'이 완성되지 않습니다. 순전파는 현재 설정된 가중치로 예측값을 내놓는 과정일 뿐, 그 예측이 맞았는지 틀렸는지는 알지 못하기 때문입니다. 따라서 학습을 위해서는 다음 두 단계가 필수적으로 뒤따라야 합니다.
- 손실 함수(Loss Function) 계산: 순전파로 얻은 예측값과 실제 정답(Label) 사이의 차이, 즉 오차(Loss)를 계산합니다.
- 역전파(Backpropagation): 계산된 오차를 줄이는 방향으로 가중치를 수정하기 위해, 출력층에서 입력층 방향으로 거슬러 올라가며 미분(기울기)을 계산하고 파라미터를 업데이트합니다.
결국 MLP의 학습 사이클은 '순전파(예측) -> 오차 계산 -> 역전파(가중치 수정)'의 무한 반복을 통해 오차를 최소화하는 최적의 모델을 만들어가는 과정이라고 정의할 수 있습니다.
6. 결론: 딥러닝 마스터를 위한 첫걸음
지금까지 MLP 다층 퍼셉트론 구조와 순전파 알고리즘 작동 프로세스에 대해 심도 있게 알아보았습니다. 요약하자면, MLP는 인간의 뉴런을 모방한 퍼셉트론을 깊게 쌓아 비선형 문제를 해결하는 구조이며, 순전파는 입력 데이터가 가중치와 활성화 함수라는 필터를 거쳐 최종 예측값으로 변환되는 정보의 흐름입니다.
이 개념은 아무리 복잡하고 거대한 최신 AI 모델이라 할지라도 변하지 않는 근본적인 원리입니다. 오늘 다룬 내용을 확실히 내 것으로 만든다면, 앞으로 마주하게 될 딥러닝의 더 깊은 바다를 항해하는 데 있어 든든한 나침반이 되어줄 것입니다. 이제 순전파를 넘어 역전파와 최적화 알고리즘의 세계로 학습을 확장해 보시기를 강력히 추천합니다.