28. Deep Learning

28.1. Introduction

기계학습의 최근 트렌드는 심층 학습으로, 계층화된 망을 통해 학습이 이루어진다. 예로는 대뇌 피질의 표준 모델이 심층적이라고 여겨진다.

28.2. Deep generative models

매개변수가 많은 모델에 쓸 라벨링된 데이터를 얻는 것은 어려우므로 여기서는 우선 비지도학습을 위한 생성적 심층 모델을 다룬다. 세 종류 – 방향, 비방향, 혼합 모델로.

28.2.1. Deep directed networks

계층화된 방향그래프 모델을 심층 방향 망이라 하며, 모든 노드가 이진이고 조건부 확률분포가 로지스틱이면 이를 시그모이드 믿음 망이라 한다. 이때 결합분포는 다음과 같다.

p(\mathbf{h}_{1}, \mathbf{h}_{2}, \mathbf{h}_{3}, \mathbf{v} | \mathbf{\theta}) = \prod_{i} \mathrm{Ber}(v_{i} | \mathrm{sigm}(\mathbf{h}_{1}^{T} \mathbf{w}_{0i})) \prod_{j} \mathrm{Ber}(h_{1j} | \mathrm{sigm}(\mathbf{h}_{2}^{T} \mathbf{w}_{1j})) \prod_{k} \mathrm{Ber}(h_{2k} | \mathrm{sigm}(\mathbf{h}_{3}^{T} \mathbf{w}_{2k})) \prod_{l} \mathrm{Ber}(h_{3l} | w_{3l})

이 경우 추론은 계산가능하지 않은데, 은닉 노드간 사후분포가 상호 연관되어 있기 때문이다. 평균 장 근사를 이용할 수 있으나 부정확하고, 마르코프 연쇄 몬테 카를로 추론을 이용할 수 있으나 느리다는 단점이 있다.

28.2.2. Deep Boltzmann machines

제한된 볼츠만 기계를 쌓은 모델을 심층 볼츠만 기계(DBM)이라 한다. 은닉층이 3개인 경우엔 모델은 다음과 같다.

p(\mathbf{h}_{1}, \mathbf{h}_{2}, \mathbf{h}_{3}, \mathbf{v} | \mathbf{\theta}) = \frac{1}{Z(\mathbf{\theta})} e^{\sum_{ij}v_{i}h_{1j}W_{1ij} + \sum_{jk} h_{1j}h_{2j}W_{2jk} + \sum_{kl} h_{2k} h_{3l} W_{3kl}}

이의 이점은 효율적인 블록 깁스 샘플링이나 블록 평균 장 법을 수행할 수 있다는 것이다. 단점은 분할 함수로 인해 학습이 어렵다는 점이다.

26.2.3. Deep belief networks

방향 그래프 모델과 비방향 그래프 모델을 섞은 계층화된 모델을 심층 믿음 망(DBN)이라 한다. 은닉층이 3개인 경우엔 모델은 다음과 같다.

p(\mathbf{h}_{1}, \mathbf{h}_{2}, \mathbf{h}_{3}, \mathbf{v} | \mathbf{\theta}) = \prod_{i} \mathrm{Ber}(v_{i} | \mathrm{sigm}(\mathbf{h}_{1}^{T} \mathbf{w}_{1i}))\prod_{j} \mathrm{Ber}(h_{1j} | \mathrm{sigm}(\mathbf{h}_{2}^{T} \mathbf{w}_{2j})) \frac{1}{Z(\mathbf{\theta})} e^{\sum_{kl} h_{2k} h_{3l} W_{3kl}}

이 구조의 장점은 은닉 상태를 빠르게 추론할 수 있다는 것이다. 이 때 인수분해된 사후분포를 얻을 수 있는 경우는 사전분포 p(\mathbf{h}_{1} | \mathbf{W}_{1})상호보완적 사전분포, 즉, 가능도 p(\mathbf{v} | \mathbf{h}_{1})을 곱했을 때 완전히 인수분해되는 사후분포를 얻을 수 있는 경우가 된다. 즉, 이 경우에는 맨 위층의 제한된 볼츠만 기계가 상호보완적 사전분포의 역할을 하는 것이다.

은닉층이 여러 개면 이 대응 관계가 정확히 성립하지는 않는다. 하지만, 인수분해화된 추론 방식은 여전히 유효하다.

28.2.4. Greedy layer-wise learning of DBNs

심층 믿음 망과 제한된 볼츠만 기계간의 대응 관계는 심층 믿음 망을 학습하는 다음의 전략을 제시한다.

  • 제한된 볼츠만 기계를 피팅해 \mathbf{W}_{1}을 학습한다.
  • 제한된 볼츠만 기계를 은닉층 2개의 심층 믿음 망으로 풀어헤치고, \mathbf{W}_{1}을 고정시키고 \mathbf{W}_{2}\mathbf{W}_{1}^{T}와 같아야 한다는 제약을 푼다. 이후 두 번째 제한된 볼츠만 기계를 피팅해 p(\mathbf{h}_{1} | \mathbf{W}_{2})의 더 좋은 사전분포를 찾는다. 이 제한된 볼츠만 기계에 대한 입력은 은닉층의 활성 노드 \mathbb{E}[\mathbf{h}_{1} | \mathbf{v}, \mathbf{W}_{1}]로서 인수분해 근사로 계산될 수 있다.
  • 특정한 정지 기준에 도달할 때까지 은닉 층을 쌓아올린다.

이는 관측된 데이터 가능도에 대한 하한을 항상 증가시킨다. 과적합의 위험이 있기는 하지만 그것은 또 다른 문제이다. 실제로는 각 층마다 은닉 노드의 개수를 임의로 조정하는 것이 좋다. 이는 \mathbf{W}_{l} = \mathbf{W}_{l-1}^{T}로 초기화할 수 없음을 의미한다.

위의 전략을 쓴 뒤에는 가중치를 백피팅으로 미세 조정하는 것이 보편적이다. 이는 상방향 샘플링을 먼저 수행한 뒤에 최상층 제한된 볼츠만 기계에서 깁스 샘플링을 하고, 제한된 볼츠만 기계의 매개변수에 대한 대조 발상 업데이트를 수행한다. 이후, 하방향 샘플링을 수행하고, 로지스틱 조건부확률분포 매개변수를 업데이트한다. 이를 업-다운 과정이라 부르지만, 매우 느리다.

28.3. Deep neural networks

심층 신경 망(DNN)이 널리 쓰인다.

28.3.1. Deep multi-layer perceptrons

심층 신경망을 피팅할 때에는 경사 하강법을 쓸 수 있으나 경사 증발 문제가 있다. 최근에는 컴퓨터 성능의 발전과 생성적 사전학습 등의 방법으로 이에 대한 해결을 시도한다.

28.3.2. Deep auto-encoders

자가부호화기는 차원 감소와 특성 발견에 쓰이는 비지도 신경망이다. 정확히는, 입력 그 자체를 예측하는 데 학습되는 신경망이다. 항등 함수를 학습하는 것을 막기 위해, 중간의 병목 은닉층을 둔다. 선형 자가부호화기는 주성분 분석과 동일하나, 비선형 활성함수를 씀으로써 비선형 표현을 학습할 수 있다. 더 강력한 표현식은 심층 자가부호화기를 통해 학습될 수 있다.

28.3.3. Stacked denoising auto-encoders

자가부호화기를 학습하는 표준적 방법은 은닉 층을 가측 층보다 좁게 만드는 것이다. 다른 방법은 입력에 노이즈를 주어 노이즈 해제 자가부호화기를 학습시키는 것이다.

28.4. Applications of deep networks

심층 망의 용례를 알아보자.

28.4.1. Handwritten digit classification using DBNs

MNIST는 유명한 예제이다.

28.4.2. Data visualization and feature discovery using deep auto-encoders

심층 자가부호화기를 통해 데이터 시각화와 특성 발견을 할 수 있다.

28.4.3. Information retrieval using deep auto-encoders (semantic hashing)

심층 자가부호화기를 통해 정보 검색을 수행할 수 있다. 이 접근법을 의미론적 해싱이라 한다.

28.4.4. Learning audio features using 1d convolutional DBNs

1차원 컨볼루션 심층 믿음 망을 통해 음성 특성들을 학습할 수 있다. 이 때 변환 불변성을 이용한다. 컨볼루션 층 외에 최대 풀링 층을 더하는 접근법이 보편적이다.

28.4.5. Learning image features using 2d convolutional DBNs

컨볼루션 심층 믿음 망을 1차원에서 2차원으로 쉽게 확장할 수 있다. 이는 이미지 특성들을 학습하는 데 쓰인다.

28.5. Discussion

인간의 뇌를 모방하는 데 있어서 여러 흥미로운 문제들이 많다. 본질적으로는 신호-상징 변환 문제, 상징 기반 문제 등이다. 이 때 시각 단어 등을 형성할 수 있다.

요점 정리

  • 기계학습의 최근 트렌드는 심층 학습이다.
  • 비지도학습을 위한 생성적 심층 모델들이 존재한다. 제한된 볼츠만 기계와 대응 관계가 있다.
  • 심층 신경 망의 예로 다층 퍼셉트론, 심층 자가부호화기 등이 있다.
  • 심층 망의 여러 용례로 컨볼루션 신경망과 심층 자가부호화기 등이 있다.
  • 심층 학습에 대한 여러 난제가 컴퓨터의 발전으로 인해 빠르게 해결되고 있다.