← 개념서모바일 버전
3과목 · 빅데이터 모델링·8장

인공신경망과 딥러닝

퍼셉트론과 XOR 문제, 활성화 함수, 역전파와 기울기 소실, CNN의 합성곱·패딩·스트라이드·풀링과 출력 크기 계산, RNN·LSTM을 다룹니다.

노란 밑줄n회 기출에 나온 지점(숫자는 등장 문항 수)✎ 는 덧붙인 필기

출제 비중 — 인공신경망11회 과 역전파6회·기울기 소실5회, CNN 출력 크기 계산이 고정 출제된다.

인공신경망의 구조

사람 뉴런을 본떠 만든 모형으로, 입력층 → 은닉층 → 출력층으로 구성됩니다.

요소 대응
가중치(weight) 입력의 중요도. 학습으로 갱신되는 모수
편향(bias) 활성화 임계값을 조절하는 상수항
활성화 함수 가중합을 비선형으로 변환해 다음 층에 전달
은닉층 2개 이상이면 심층 신경망(DNN) = 딥러닝

퍼셉트론과 XOR 문제

단층 퍼셉트론은 입력층과 출력층만 있는 최초의 신경망으로, 선형 분리가 가능한 문제만 풀 수 있습니다.

논리 연산 단층 퍼셉트론
AND, OR, NAND 가능 (하나의 직선으로 분리 가능)
XOR 불가능 (직선 하나로 분리 불가)

XOR 문제는 은닉층을 추가한 다층 퍼셉트론(MLP) 으로 해결되었고, 다층 신경망의 학습법이 오차 역전파입니다.

"XOR 문제는 활성화 함수를 바꿔서 해결했다"는 오답입니다. 해법은 은닉층 추가(다층화) 이고, 그 다층 구조를 학습시키는 방법이 역전파입니다. 이 사건이 1차 AI 겨울과 그 극복의 서사로 자주 출제됩니다.

활성화 함수

함수 식/출력 범위 주 용도 특징
계단 함수(Step) 0 또는 1 초기 퍼셉트론 미분 불가 → 역전파 불가
시그모이드4회 1/(1+e⁻ˣ), 0 ~ 1 이진 분류 출력층 미분값 최대 0.25 → 기울기 소실
하이퍼볼릭 탄젠트(tanh) -1 ~ 1 은닉층 출력이 0 중심이라 시그모이드보다 학습이 빠름. 여전히 기울기 소실
ReLU3회 max(0, x) 은닉층 기본값 기울기 소실 완화. dying ReLU 문제
Leaky ReLU 음수 구간에 작은 기울기 은닉층 dying ReLU 보완
소프트맥스(Softmax) 합이 1인 확률 벡터 다중 분류 출력층 각 클래스의 확률로 해석

은닉층 = ReLU, 이진 분류 출력 = 시그모이드, 다중 분류 출력 = 소프트맥스, 회귀 출력 = 항등 함수. "소프트맥스를 은닉층에 쓴다"는 오답입니다.

손실함수도 짝지어 외웁니다. 회귀 = MSE, 이진 분류 = 이진 교차 엔트로피, 다중 분류 = 범주형 교차 엔트로피.

학습 — 순전파와 역전파

  1. 순전파: 입력 → 가중합 → 활성화 → 출력, 그리고 손실(오차) 계산
  2. 역전파: 출력층에서 입력층 방향으로 연쇄법칙(chain rule) 을 적용해 각 가중치의 기울기를 구함
  3. 경사하강법으로 가중치를 갱신 — 새 가중치 = 기존 가중치 - 학습률 × 기울기
경사하강 방식 갱신 단위
배치 경사하강법 전체 데이터로 한 번 갱신 — 안정적이지만 느림
확률적 경사하강법(SGD) 관측치 하나마다 갱신 — 빠르지만 진동
미니배치 경사하강법 소집단(예: 32·64개)마다 갱신 — 실무 표준

옵티마이저는 SGD → 모멘텀 → AdaGrad → RMSProp → Adam(모멘텀 + RMSProp) 순으로 발전했습니다. 1 에폭(epoch) 은 전체 데이터를 한 번 다 학습한 것을 뜻하고, 에폭 수 / 배치 크기 / 학습률은 모두 초매개변수입니다.

학습률이 너무 크면 최적점을 지나쳐 발산하고, 너무 작으면 학습이 느리고 지역 최솟값에 갇힙니다. 학습률은 학습되는 값이 아니라 사람이 정하는 초매개변수입니다.

기울기 소실과 대응

역전파에서 층을 거슬러 갈수록 기울기가 곱해지며 0에 수렴해 앞쪽 층이 학습되지 않는 현상이 기울기 소실입니다. 시그모이드의 미분값이 최대 0.25라 층이 깊을수록 급격히 작아집니다.

문제 대응
기울기 소실 ReLU 계열 활성화 함수, 배치 정규화, 잔차 연결(ResNet), LSTM/GRU
기울기 폭주 기울기 클리핑, 가중치 초기화 조정
과대적합 드롭아웃, L1·L2 규제, 조기 종료, 데이터 증강

드롭아웃5회은 학습 중 은닉 노드의 일부를 무작위로 비활성화해 특정 노드 의존을 막는 기법이며, 예측 시에는 적용하지 않습니다. 가중치 초기화는 Xavier(시그모이드·tanh), He(ReLU) 를 씁니다.

CNN — 합성곱 신경망

이미지 처리에 특화된 구조로, 합성곱층(Convolution) → 활성화 → 풀링층(Pooling) 을 반복한 뒤 완전연결층(FC) 으로 분류합니다.

요소 역할
필터(커널) 입력을 훑으며 특징 맵(feature map) 을 생성. 가중치 역할
스트라이드(Stride) 필터가 이동하는 간격. 크면 출력이 작아짐
패딩(Padding) 가장자리에 0을 덧대 출력 크기 축소를 막고 경계 정보를 보존
풀링3회(Pooling) 특징 맵을 다운샘플링. 최대 풀링·평균 풀링. 학습 파라미터가 없음
완전연결층 평탄화(flatten) 후 분류 수행

CNN의 장점은 가중치 공유(파라미터 수 감소) 와 지역 수용영역을 통한 공간 정보 보존입니다.

출력 크기 계산식 — 반드시 계산 문제로 나옵니다

출력 크기 = (입력 크기 − 필터 크기 + 2 × 패딩) / 스트라이드 + 1

예제 ① 패딩 없음, 스트라이드 1 입력 32×32, 필터 5×5, 패딩 0, 스트라이드 1 → (32 - 5 + 0) / 1 + 1 = 27 + 1 = 28 → 출력 28 × 28

예제 ② 패딩 사용(크기 유지) 입력 32×32, 필터 5×5, 패딩 2, 스트라이드 1 → (32 - 5 + 2×2) / 1 + 1 = (32 - 5 + 4) + 1 = 31 + 1 = 32 → 출력 32 × 32 (크기 유지)

예제 ③ 스트라이드 2 입력 7×7, 필터 3×3, 패딩 0, 스트라이드 2 → (7 - 3 + 0) / 2 + 1 = 4/2 + 1 = 2 + 1 = 3 → 출력 3 × 3

예제 ④ 풀링 입력 28×28에 2×2 최대 풀링, 스트라이드 2 → (28 - 2) / 2 + 1 = 13 + 1 = 14 → 출력 14 × 14 (가로·세로가 절반)

계산의 함정 셋 — ① 마지막 +1 빠뜨리기, ② 패딩은 양쪽이라 2P, ③ 나눗셈이 정수가 아니면 버림.

RNN과 LSTM

RNN(순환 신경망) 은 은닉층의 출력을 다음 시점의 입력으로 되먹임해 순서·문맥을 기억하는 구조로, 시계열·음성·자연어에 씁니다.

한계는 시점이 길어질수록 앞쪽 정보가 사라지는 장기 의존성 문제(기울기 소실) 입니다.

모형 게이트 특징
LSTM 입력 · 삭제(망각) · 출력 게이트 3개 + 셀 상태 장기 의존성 해결
GRU 업데이트 · 리셋 게이트 2개 LSTM보다 단순하고 빠름

LSTM의 게이트는 3개, GRU는 2개이고, LSTM에만 셀 상태가 있습니다. "LSTM은 기울기 소실을 완화한다"는 맞는 서술입니다.

그 밖의 딥러닝 구조

구조 용도
오토인코더(AutoEncoder) 입력을 압축(인코더)했다가 복원(디코더). 비지도 차원 축소·이상탐지
GAN 생성자(Generator) 와 판별자(Discriminator) 의 경쟁 학습으로 새로운 데이터 생성
DBN 제한 볼츠만 머신(RBM)을 쌓아 사전학습
전이학습(Transfer Learning) 사전학습 모형을 새로운 과제에 재사용

오토인코더는 정답 레이블 없이 입력 자신을 복원하도록 학습하는 비지도학습입니다.

마무리 체크

  • XOR 은 은닉층 추가로 해결
  • 활성화 함수의 용도 배치와 손실함수 짝
  • 배치·확률적·미니배치 경사하강
  • 기울기 소실의 원인과 대응(ReLU·배치 정규화)
  • CNN 출력 크기 공식과 풀링
  • LSTM(3게이트) vs GRU(2게이트) GAN의 생성자와 판별자 역할을 뒤바꾼 선택지도 단골이니, 생성자는 속이는 쪽, 판별자는 가려내는 쪽으로 기억합니다.