|

Deep Belief Network (DBN) 완벽 분석: AI 겨울을 끝낸 신비로운 기계의 탄생


2006년, Geoffrey Hinton은 한 권의 논문으로 AI 역사를 바꿨습니다. A fast learning algorithm for deep belief nets라는 제목의 이 논문은 “AI 겨울”이라 불린 암흑기를 종식시키고 현대 딥러닝의 토대를 마련했습니다.

그 이전까지 신경망은 “가망 없는” 기술이었습니다. 1969년 Perceptrons 책으로 퍼셉트론의 한계가 증명된 후, 30년 동안 아무도 깊은 신경망을 학습시킬 수 없었으니까요. 그러던 중 Hinton은 “보수적 선행(Complementary Priors)”라는 신비로운 개념으로 이 불가능의 벽을 깨뜨렸습니다.

DBN은 단순한 신경망이 아닙니다. 마치 “생성 모델”과 “판별 모델”이 합쳐진 하이브리드 같은 구조로, MNIST 손글씨 인식에서 1.25% 오류율을 달성했습니다. 이는 당시 SVM(서포트 벡터 머신)의 1.4%보다 우수한 성능이었죠. 더 놀라운 점은 “네트워크의 마음을 들여다볼 수 있다”는 것입니다. 생성 모델을 통해 네트워크가 무엇을 생각하고 있는지 직접 시각화할 수 있었으니까요.

이 글에서는 “AI 겨울을 끝낸 신비로운 기계” Deep Belief Network의 모든 것을 파헤칩니다. RBM(제한 볼츠만 머신)의 마법부터 그리디 학습 알고리즘, 웨이크-슬립 알고리즘의 비밀까지, 현대 딥러닝의 아버지가 어떻게 불가능을 가능하게 만들었는지 낱낱이 분석합니다.




🌑 AI 겨울: 신경망의 가장 긴 밤

1969년: 퍼셉트론의 몰락

1957년, Frank Rosenblatt퍼셉트론(Perceptron)을 발명했습니다. 단순하지만 우아한 이 기계는 선형 분류 문제를 완벽히 풀어냈죠.

입력 (x1, x2) → 가중치 × 입력 + 편향 → 활성화 함수 → 출력 (0 또는 1)

그런데 1969년, MIT의 Marvin MinskySeymour PapertPerceptrons 책을 출판했습니다. 이 책은 한 가지 단순한 사실을 증명했습니다:

퍼셉트론은 XOR 문제를 풀 수 없다.

입력출력
(0, 0)0
(0, 1)1
(1, 0)1
(1, 1)0

이 간단한 표는 퍼셉트론에게 불가능의 벽이 되었습니다. 선형 직선으로는 절대 이 패턴을 분리할 수 없거든요.

30년의 암흑기: 1969-1999

이 증명 이후, 신경망 연구는 30년 동안 거의 중단되었습니다. 왜일까요?

“은닉층을 여러 개 쌓으면 XOR을 풀 수 있다”는 것은 알았습니다. 하지만 문제는 “어떻게 학습시킬 것인가”였습니다. 역전파(Backpropagation)라는 방법이 있었지만, 깊은 네트워크에서는 작동하지 않았습니다:

  1. 기울기 소실 문제(Vanishing Gradient): 역전파 신호가 깊은 층을 통과하면서 0으로 수렴
  2. 계산 비용: 1969년 컴퓨터로는 몇 층만 쌓아도 학습 불가능
  3. 학습 불안정: 가중치 초기화에 매우 민감

그 와중에 SVM(Support Vector Machine)이 등장했습니다. 1995년 Vladimir Vapnik이 발명한 SVM은:

  • 수학적으로 우아함
  • 작은 데이터에서도 작동
  • 신경망보다 빠름

결국 신경망은 “옛날 것”이라는 낙인이 찍혔습니다. 자금도 끊겼고, 논문도 안 나왔습니다. 이것이 AI 겨울입니다.

2006년 이전: 마지막 시도들

이 암흑기 동안 몇몇 용감한 연구자들은 계속 시도했습니다:

그러던 중 Geoffrey Hinton이 나타났습니다.


🎲 RBM 제한 볼츠만 머신: 확률의 마법

RBM의 정체

DBN을 이해하려면 먼저 RBM(Restricted Boltzmann Machine)을 알아야 합니다.

RBM은:

  • 생성 모델(Generative Model): 새로운 데이터를 만들 수 있음
  • 확률 기반: 모든 활성화가 확률로 정의됨
  • 에너지 기반: 시스템의 에너지를 최소화하면서 학습

RBM의 구조:

입력층 (Visible Layer)      은닉층 (Hidden Layer)
v1 ───────────────────── h1
v2 ───────────────────── h2
v3 ───────────────────── h3
v4 ───────────────────── h4

특징: 
- 같은 층 내 연결 없음 (No intra-layer connections)
- 다른 층과만 연결 (Bipartite graph)

왜 “제한”일까?

일반 볼츠만 머신은 모든 노드가 서로 연결되어 있습니다. 이러면:

  • 학습이 매우 복잡
  • 계산이 엄청 오래 걸림
  • 실제로는 불가능

RBM은 제한을 둡니다:

  • 같은 층 내 연결 제거 → 같은 층 노드들이 조건부 독립(Conditionally Independent)
  • 이 때문에 확률 계산이 인수분해(Factorize)
  • 학습이 가능해짐!

비유하자면, “모두가 싸우는 회의실”을 “부서별 따로 모임”으로 바꾼 것입니다.

RBM 학습: Contrastive Divergence

RBM은 Contrastive Divergence(대조 발산)이라는 알고리즘으로 학습합니다:

양의 단계 (Positive Phase):

1. 입력 데이터를 보이는 층에 고정
2. 은닉층 활성화 확률 계산: P(h_j = 1 | v)
3. 은닉층에서 샘플 추출

음의 단계 (Negative Phase):

4. 은닉층에서 보이는 층 재구성: P(v_i = 1 | h)
5. 보이는 층 샘플 추출
6. 다시 은닉층 활성화 계산

가중치 업데이트:

Δwij=학습률×([양의 단계 상관][음의 단계 상관])\Delta w_{ij} = \text{학습률} \times ([\text{양의 단계 상관}] – [\text{음의 단계 상관}])

이것이 가능한 이유는 입력과 은닉층이 조건부 독립이기 때문입니다. 이것이 RBM의 마법입니다!


🏗️ DBN의 구조: 하이브리드 신경망의 정체

일반적인 깊은 신경망의 문제점

일반적인 깊은 신경망(Deep Neural Network)을 생각해봅시다:

입력 → [은닉층 1] → [은닉층 2] → [은닉층 3] → 출력

이 구조를 역전파로 학습하려면:

  1. 전체 네트워크를 동시에 학습
  2. 깊은 층의 기울기가 소실
  3. 가중치 초기화가 매우 중요
  4. 학습이 불안정

Hinton은 다르게 생각했습니다:

“깊은 층들을 한 층씩 학습시킬 수 있다면?”

DBN의 하이브리드 구조

DBN은 두 부분으로 나뉩니다:

상단 2개 층: 무향(Undirected) 연결 = RBM (연관 메모리)
하단 레이어: 유향(Directed) 연결 = 생성 모델

이것이 왜 중요한가?

상단의 RBM은 “무언가 다른”:

  • 독립적으로 학습 가능
  • 효율적인 확률 계산
  • 하위 층을 위한 완벽한 초기값 제공

🎯 그리디 학습: 한 층씩 학습하는 혁신

그리디 알고리즘이란

“그리디(Greedy)”는 “탐욕스러운”이라는 의미입니다. 최적화에서 이것은:

각 단계에서 국소적 최선을 선택

일반적으로는 전역 최적을 못 찾지만, Hinton은 수학적 보증을 제시했습니다:

“각 층을 추가할 때마다 전체 생성 모델이 개선된다

DBN의 그리디 학습 절차

단계 1: 첫 번째 RBM 학습

입력층과 은닉층 1을 RBM으로 학습
- 모든 높은 층의 가중치가 동일하다고 가정
- Contrastive Divergence로 30 에포크 학습

단계 2: 첫 번째 층 고정 및 재표현

은닉층 1의 출력 → 다음 입력층이 됨
(데이터를 "다시 표현")

단계 3: 다음 RBM 학습

은닉층 1의 활성화를 "데이터"로 삼아
은닉층 1과 은닉층 2 사이의 RBM 학습

단계 4: 반복

계속해서 위로 올라가며 반복

왜 작동하는가?

이것이 작동하는 핵심은 변분 자유 에너지(Variational Free Energy)입니다:

logp(v0)h0Q(h0|v0)[logp(h0)+logp(v0|h0)]h0Q(h0|v0)logQ(h0|v0)\log p(v^0) \geq \sum_{h^0} Q(h^0|v^0) [\log p(h^0) + \log p(v^0|h^0)] – \sum_{h^0} Q(h^0|v^0) \log Q(h^0|v^0)

복잡해 보이지만, 의미는 간단합니다:

“새로운 층을 추가하면 하한이 올라간다” = 모델이 개선된다

이것이 그리디 알고리즘이 보증되는 유일한 경우입니다!


🔮 보수적 선행(Complementary Priors): 설명 제거 현상 극복

설명 제거(Explaining Away) 현상

이것이 DBN의 가장 깔끔한 개념입니다.

예제: 집이 흔들린다

두 가지 가능한 원인:

  1. 지진 (사전확률: 0.001)
  2. 트럭 (사전확률: 0.001)

만약 지진이 일어나면 “아, 그래서 흔들린 거구나”라고 생각하면서, 트럭 가능성을 무시해버립니다.

이것이 설명 제거입니다. 한 원인이 관찰을 설명하면, 다른 원인의 신뢰도가 떨어집니다.

보수적 선행의 마법

Hinton의 아이디어는 엄청났습니다:

상위 층의 가중치를 아래로 반대로 복사하면, 설명 제거가 완전히 사라진다

일반 신경망:         DBN (보수적 선행):
W (아래)             W (아래)
↑                   ↑
[은닉층]            [은닉층]
↑                   ↑
[입력]              [입력]

                    + W^T (위의 역함수)
                    → 설명 제거 제거!

수학적으로:

만약:

  • 사전확률 P(h)P(h) = 높은 층이 만드는 것 (복잡)
  • 우도 P(v|h)P(v|h) = 일반적인 것

그리고 보수적 선행을 택하면:

  • 사후확률 P(h|v)P(h|v) = 완벽히 인수분해됨 (독립!)

이것이 가능한 이유는 무한 깊이의 RBM 스택과 동등하기 때문입니다.


🌙 웨이크-슬립 알고리즘: 미세 조정의 과정

그리디 학습의 한계

그리디 학습이 좋지만, 완벽하지는 않습니다:

  • 각 층을 독립적으로 학습
  • 높은 층의 변화가 낮은 층에 영향을 주지 못함
  • 최종 모델이 “서브옵티마”일 수 있음

해결책: 웨이크-슬립 알고리즘

이것은 1995년 Hinton이 발명했지만, DBN에서는 개선된 버전(대조 웨이크-슬립)을 사용합니다.

웨이크 단계 (상향식 인식)

입력 → [인식 가중치] → 은닉층 활성화 → ... → 최상위층

목표: 입력을 세밀한 표현으로 변환

  1. 아래에서 위로 진행
  2. 각 층에서 이진 샘플 추출
  3. 하향식 “생성 가중치” 업데이트

슬립 단계 (하향식 생성)

최상위층 → [생성 가중치] → 재구성 → ... → 입력 층

목표: 네트워크가 “생각한 것” 재구성

  1. 최상위 RBM에서 시작 (Gibbs 샘플링)
  2. 위에서 아래로 진행
  3. 각 층을 재구성
  4. 상향식 “인식 가중치” 업데이트

대조 웨이크-슬립의 개선점

표준 웨이크-슬립은 문제가 있었습니다:

  • 모드 평균화(Mode Averaging): 여러 좋은 설명 중 하나만 배움
  • 비효율적

대조 버전은:

  • 웨이크 단계 후 몇 번의 Gibbs 샘플링만 수행
  • 슬립 단계를 상향식 활성화에서 시작
  • 이것이 훨씬 빠르고 효과적

📊 MNIST에서의 성능: 1.25% 오류율의 비밀

아키텍처

Hinton의 네트워크:

입력층:      784개 (28×28 픽셀)
은닉층 1:    500개 (RBM #1)
은닉층 2:    500개 (RBM #2)
은닉층 3:    2000개 (RBM #3, 부분 무향)
라벨층:      10개 (소프트맥스)

총 가중치:   약 1.7백만개

학습 과정

Phase 1: 그리디 레이어 학습 (몇 시간)

1. RBM #1 학습 (784 → 500)
   - 30 에포크, Contrastive Divergence
   - 실수값 입력, 이진 은닉층

2. RBM #2 학습 (500 → 500)
   - 은닉층 1의 활성화를 입력으로

3. RBM #3 학습 (500 → 2000)
   - 라벨도 입력의 일부로 (softmax)

Phase 2: 웨이크-슬립 미세조정 (약 1주일)

300 에포크, 변화하는 Gibbs 반복:
- 첫 100 에포크: 3 Gibbs 반복
- 다음 100 에포크: 6 Gibbs 반복
- 마지막 100 에포크: 10 Gibbs 반복

최종 테스트 오류: 1.25%

성능 비교

방법오류율비고
DBN (본 논문)1.25%가장 우수
SVM1.4%전통적 방법
역전파 (2 은닉층)1.51%교차엔트로피 + 가중치감소
역전파 (1 은닉층)1.53%교차엔트로피 + 조기 종료
최근접 이웃2.8%기본적 방법
손코딩 인식0.63%특수화된 CNN

핵심: SVM을 이겼습니다! 이것은 당시로서는 혁명이었습니다.

네트워크의 “마음” 들여다보기

DBN의 가장 신비로운 특징:

생성 모델이므로 네트워크가 무엇을 생각하는지 직접 볼 수 있습니다!

최상위 RBM에서 각 숫자를 “고정”하고, Gibbs 샘플링으로 생성하면:

라벨 0: ░░░░░░░░░░░░░░░░░░░░
        ░░░███████░░░░░░░░░
        ░░██░░░░░███░░░░░░░  (생성된 0)
        ░██░░░░░░░░███░░░░░
        ...

라벨 1: ░░░░░███░░░░░░░░░░░
        ░░░░░████░░░░░░░░░░  (생성된 1)
        ░░░░░░███░░░░░░░░░░
        ...

네트워크가 실제로 “숫자를 알고 있다”는 증거입니다!


🚀 현대 AI로의 진화: DBN 이후의 세상

DBN의 유산과 한계

DBN은 역사적으로 중요하지만, 실용적 한계가 있었습니다:

한계:

  • 학습이 느림 (1주일)
  • 큰 이미지에 적응 어려움
  • 구조가 복잡함
  • 수렴 보장 불명확

하지만 아이디어는 영원:

  • 그리디 사전학습 개념
  • 생성 모델의 가능성
  • 깊은 네트워크 학습의 길

2012년: AlexNet과 새로운 시대

DBN (2006):         AlexNet (2012):
생성 모델 기반      판별 모델 기반
그리디 학습         엔드-투-엔드 학습
느린 학습          GPU로 빠른 학습
ImageNet 없음       ImageNet 우승

AlexNet은 DBN의 아이디어를 버렸지만:

  • GPU 컴퓨팅 파워 (1000배 향상)
  • 대규모 데이터 (ImageNet)
  • ReLU 활성화 (기울기 소실 문제 해결)

현대 해석: 사전학습(Pre-training)

DBN의 핵심 아이디어는 사전학습(Pre-training)으로 다시 부활했습니다:

2018년 BERT:

  • 마스크 언어 모델 사전학습
  • DBN의 정신 (무지도 학습 후 미세조정)

2022년 대규모 언어 모델:

  • 초기 사전학습 → 미세 조정
  • 매우 깊은 네트워크 (100+ 층)

결론: DBN의 그리디 학습은 직접 쓰지 않지만, 사전학습 개념은 모든 최신 AI의 표준입니다.


🎓 결론: 왜 2006년이 딥러닝의 시작인가

역사적 의의

2006년 Geoffrey Hinton의 논문은:

  1. AI 겨울을 종식시킴
  • 신경망이 다시 가능함을 증명
  • 자금과 관심 회복
  1. 이론적 돌파
  • 보수적 선행으로 설명 제거 제거
  • 그리디 알고리즘에 수학적 보증
  • 생성 모델의 힘 입증
  1. 실용적 증명
  • MNIST에서 SVM 격파 (1.25%)
  • 실제 이미지에서 생성 가능
  • 네트워크 시각화 가능
  1. 현대 AI의 DNA
  • 사전학습 개념의 시초
  • 깊은 구조의 정당성
  • 무지도 학습의 가능성

DBN의 유산: 우리는 모두 “Hinton의 제자”

오늘날 모든 딥러닝 실무자들은:

직접적으로:

  • DBN을 거의 사용하지 않음
  • 역전파가 지배적

간접적으로:

  • 그리디 사전학습 개념 사용
  • 생성 모델(VAE, GAN, Diffusion) 활용
  • 깊은 네트워크가 “자연스럽다”고 생각

마지막 통찰: 신경망의 복원력

AI 겨울은 35년 동안:

  • 70년대 후반: 첫 AI 겨울
  • 80년대 초: 좀비 상태
  • 2006년: 부활

이것이 보여주는 것은:

“좋은 아이디어는 결국 빛난다”

DBN은 완벽하지 않지만, 원리가 옳으면 다른 형태로든 부활합니다.


🔗 참고 자료

📄 원본 논문 및 공식 자료

🌐 외부 참고 링크


🔍 같이 보기 (내부 링크)

AI 기초 이론:

고급 주제:

최신 딥러닝:

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다