스킬캠퍼스
Day 2 · MLP와 역전파
강의

오늘 끝나면

MLP와 역전파

  • MLP와 역전파의 핵심 문제를 한 문장으로 설명한다
  • 오른쪽 실습에서 MLP와이 어떻게 움직이는지 관찰한다
  • 다음 강의와 이어지는 한계를 말할 수 있다

실습 미션

1986 럼멜하트·힌튼·윌리엄스 — 은닉층의 부활, XOR을 푸는 법 이 문장이 실제로 무슨 뜻인지 실습에서 한 번 손으로 확인한다.

성공 조건

  • 실습의 기본값을 먼저 관찰
  • 입력값이나 모드를 한 번 이상 바꿔 결과 비교
  • 왜 결과가 바뀌었는지 한 문장으로 설명

AI · Day 2 / 지도학습 · 생성 DL

MLP와 역전파

Day 1 퍼셉트론은 XOR에서 무너짐. 뉴런 한 층 더 쌓고 오차를 거꾸로 흘리니 벽이 사라짐. 오늘은 그 둘 — 다층 퍼셉트론과 역전파를 바닥부터 봄.

P.01AI · Day 2

XOR이 남긴 빚

Day 1: 퍼셉트론은 직선 하나밖에 못 그음. 그래서 XOR 못 풂.

퍼셉트론은 w·x + b 한 줄이 전부임. 출력이 입력의 선형 결합이라, 가중치를 바꿔도 평면을 직선으로 자르는 게 한계임. XOR은 대각선으로 떨어진 두 무리라 직선 한 개로 못 가름.

1969년, 민스키·페퍼트가 이 한계를 책으로 증명함. 그 한 권 때문에 신경망은 10년 넘게 겨울을 맞음. 해법은 단순함 — 뉴런을 한 층 더 쌓는 것. 중간층이 입력을 비선형으로 휘어주면, 안 갈라지던 게 갈라짐.

단층 vs 다층 — 결정 경계
단층 · 직선 1개XOR 분리 실패다층 · 휜 경계XOR 분리 성공
P.02AI · Day 2

층을 쌓는다는 것

MLP(Multi-Layer Perceptron)는 퍼셉트론을 여러 층 쌓은 것임. 입력층 / 은닉층 / 출력층. 각 층 뉴런은 앞 층 전부와 연결됨.

핵심은 층 사이에 끼우는 활성화 함수임. 선형 변환만 쌓으면 백 층을 쌓아도 결국 한 줄짜리 선형 변환과 똑같아짐. 그래서 매 층 뒤에 σ(z) 같은 비선형을 넣어 “휘어줌”.

왜 이게 전부를 바꾸나

비선형 은닉층이 하나만 있어도 MLP는 임의의 연속 함수를 원하는 만큼 가깝게 흉내 냄. 이걸 보편 근사 정리라 함. 직선밖에 못 긋던 기계가 어떤 곡선이든 그릴 수 있게 된 것임.

2-3-1 다층 퍼셉트론
입력 2은닉 3 · σ출력 1
P.03AI · Day 2

순전파 — 신호가 흐른다

입력 x가 들어오면 각 층은 “곱하고 더하고 휘는” 일을 반복함. 이걸 순전파(forward pass)라 함.

한 층 계산은 딱 두 줄임.z = W·x + b로 선형 결합을 만듦.a = σ(z)로 비선형을 입힘. 이 출력 a가 다음 층 입력이 되어 똑같이 반복됨.

오른쪽은 2-3-1 MLP가 XOR 4개 점을 배우는 실제 학습임. ▶ 재생을 누르면 순전파→손실→역전파→보정 사이클이 돌며 결정 경계가 직선에서 휜 곡선으로 바뀜. 학습률 η와 초기값 seed를 바꿔가며 직접 굴려보자.

파이썬 코드 보기
import numpy as np

def sigmoid(z):
    return 1 / (1 + np.exp(-z))

def forward(x, W1, b1, W2, b2):
    z1 = W1 @ x + b1     # 은닉층 가중합
    a1 = sigmoid(z1)     # 비선형 활성화
    z2 = W2 @ a1 + b2    # 출력층 가중합
    return sigmoid(z2)   # 최종 예측

x → (W1·x+b1) → σ → (W2·a1+b2) → σ → ŷ

MLP가 XOR을 직접 배운다 · 만져보기
MLP가 XOR을 학습 · TensorFlow.js
epoch 0
Day 1 퍼셉트론은 이 XOR을 못 풀었음. MLP로 직접 학습시켜볼 것.
P.04AI · Day 2

역전파 — 오차를 거꾸로

답을 냈으면 얼마나 틀렸는지 따져야 함. 정답과의 차이가 손실(loss)임. 문제는 “이 손실을 줄이려면 수만 개 가중치를 각각 어느 방향으로 얼마나 움직이나”임.

가중치 하나씩 흔들면 영원히 안 끝남.역전파는 이걸 단 한 번의 역방향 패스로 해결함. 비결은 미적분의 연쇄 법칙임. 출력단 오차를 층을 거꾸로 타고 곱해 내려보내면, 각 가중치가 손실에 얼마나 기여했는지(∂L/∂w)가 자동으로 나옴.

한 사이클

순전파로 예측 → 손실 계산 → 역전파로 기울기 → w ← w − η·∂L/∂w로 살짝 보정. 이 사이클을 수천 번 돌리면 네트워크가 “학습”됨. 1986년, 럼멜하트·힌튼이 이걸 대중화함. 신경망의 겨울 끝.

Q. 역전파의 “역(backward)”은 정확히 뭐가 거꾸로 가는 것일까?데이터(입력)가 아니라 오차의 기울기가 거꾸로 흐름. 순전파에서 출력 쪽으로 흐른 신호 경로를 그대로 되짚음. 출력단 오차를 연쇄 법칙으로 곱해가며 입력 쪽 가중치까지 “책임”을 분배함.
chain rule · 오차의 역류
입력은닉출력forwardbackward · ∂L/∂wL연쇄 법칙 · chain rule∂L/∂w = ∂L/∂a · ∂a/∂z · ∂z/∂w
P.05AI · Day 2

가중치가 내려간다

역전파가 “어느 방향”을 알려주면, 경사 하강은 “그 방향으로 한 걸음” 내딛음. 손실이라는 골짜기를 더듬어 내려감. 한 걸음 크기가 η, 학습률임.

너무 크면 골짜기를 뛰어넘어 발산함. 너무 작으면 평생 못 내려옴. 그래서 학습률은 실무에서 가장 먼저 만지는 손잡이임. 다음 Day 3에서 이 손잡이들(활성화·손실·옵티마이저)을 제대로 다룸.

비즈니스로 옮기면

역전파는 “결과의 오차를 원인까지 거꾸로 분배하는” 기계임. 매출이 떨어졌을 때 그 책임을 가격·마케팅·재고에 비례 배분해 다음 분기 액션을 조정하는 일과 구조가 같음. 좋은 의사결정도 결국 오차를 원인으로 되돌리는 루프임.

Q. 학습률 η를 100배 키우면 학습이 100배 빨라질까?아님. 보통은 손실이 골짜기를 가로질러 튕기다 발산함. 기울기는 “방향”만 믿을 수 있음. 한 걸음 거리는 작게 잡아 여러 번 내려가는 편이 안전함.
손실 곡선 · 경사 하강
Lw최소w ← w − η·∂L/∂w

3줄 요약

  1. 11986 럼멜하트·힌튼·윌리엄스 — 은닉층의 부활, XOR을 푸는 법
  2. 2MLP와 역전파은 준비운동 → 지도학습 → 시퀀스 → 생성모델 → 실무 적용 흐름 안의 한 칸이다.
  3. 3개념을 외우는 것보다 입력을 바꾸면 무엇이 달라지는지 보는 것이 우선이다.

완료 전 점검

복습 카드

MLP와

1986 럼멜하트·힌튼·윌리엄스 — 은닉층의 부활, XOR을 푸는 법

모델

입력을 받아 예측이나 출력을 만드는 계산 규칙

손실

예측이 정답에서 얼마나 빗나갔는지 재는 숫자