인공지능 실습

딥러닝 (Deep Learning) 시뮬레이터

수많은 뉴런이 모여 어떻게 스스로 학습할까요? 눈으로 보며 직관적으로 이해하는 딥러닝의 핵심 원리

경사하강법
준비

지금 계산하는 식

다음 단계를 누르면 오차를 측정하고, 기울기를 구하고, w를 옮기는 과정을 하나씩 봅니다.

경사하강법

무엇을 최소화하나

학습률 (Learning Rate) 0.050

걸음 0
손실 —
기울기 —

「데이터와 모델」 그림의 점을 끌어 옮기면 오차 함수의 모양과 가장 낮은 자리가 함께 바뀝니다.

신경망 구조 (Neural Network)

딥러닝은 데이터를 입력받는 입력층, 패턴을 분석하는 은닉층, 결과를 내놓는 출력층으로 구성됩니다. 각 노드들은 가중치(선)로 연결되어 정보를 전달합니다.

Guide 관찰 포인트

  • 버튼을 눌러 입력 노드, 은닉층, 뉴런 수를 실시간으로 조절해 보세요.
  • 정보 전달 버튼 클릭 시 데이터가 층(Layer)을 통과하는 과정을 볼 수 있습니다.

Architecture

신경망 구조 설계 및 시뮬레이션

2

데이터의 특징(Feature) 개수

2

모델의 복잡성과 학습 깊이

4

각 층이 가질 연산 유닛의 개수

설정을 변경하면 신경망 구조 그림이 즉시 업데이트됩니다. 준비가 되면 아래 버튼을 눌러 연산을 시작하세요.

순전파
준비

지금 계산하는 식

「다음 단계」를 누르면 값이 한 층씩 앞으로 흘러갑니다.

뉴런의 계산

x₁ x₂ 정답

줄을 눌러 신경망에 넣을 데이터를 고릅니다.

은닉층 활성화 함수

출력층은 0~1 사이 값으로 답하도록 시그모이드로 고정했습니다.

역전파
준비

지금 계산하는 식

파라미터 9개 — 한 줄이 뉴런 하나(은닉1 · 은닉2 · 출력), 화살표 앞이 바뀌기 전 값

순전파로 나온 예측을 정답과 비교하는 것부터 시작합니다.

가중치 갱신

학습률 (Learning Rate) 0.50
에포크 0
평균 손실 —
맞힌 개수 —

결정 경계 학습 (Decision Boundary)

딥러닝은 비선형 데이터(단순한 직선으로 나눌 수 없는 데이터)를 구불구불한 경계선을 만들어 분류해냅니다. 학습이 반복(Epoch)될수록 경계가 정교해집니다.

실험해 보기

  • 원형 데이터가 파란색/주황색 영역으로 나뉘어 가는 과정을 확인하세요. 데이터에 노이즈가 섞여 있어 경계에 걸친 점 몇 개는 끝까지 맞히지 못합니다. 노이즈를 올릴수록 더 많이 틀립니다.
  • 뉴런 수가 적으면(예: 2개) 복잡한 모양을 만들기 어렵습니다. 뉴런 수를 늘려 차이를 관찰하세요.
4 개
1.1
Epoch 0
Loss —

과적합 (Overfitting)

모델이 너무 복잡하면 훈련 데이터(Train)의 사소한 노이즈까지 다 외워 버립니다. 이 경우 오히려 새로운 시험 데이터(Validation)를 예측할 때 오차가 커지는 현상이 발생합니다.

관찰 포인트

  • 「모델 복잡도」를 높게 설정하고 실행해 보세요.
  • 파란 선(훈련 오차)은 0에 가깝게 줄어들지만, 빨간 선(검증 오차)은 중간부터 오히려 다시 솟아오르는(Overfitting) 것을 볼 수 있습니다.
  • 복잡도를 「매우 낮음」으로 두면 두 선이 나란히 내려가 벌어지지 않습니다. 두 설정을 번갈아 실행해 비교해 보세요.
  • 이 그래프의 값은 실제 학습 기록이 아니라, 과적합이 나타나는 전형적인 모양을 보여 주려고 수업용으로 지어낸 값입니다.
모델 복잡도 (Network Size) 매우 높음

복잡할수록 과적합 위험 상승