SlideShare a Scribd company logo
1 of 39
Download to read offline
Energy-Based Models 
and Boltzmann Machines 
Learning Deep Architectures for AI - Ch 5
목차 
● Energy-Based Models 
● Boltzmann Machines 
● Restricted Boltzmann Machines 
● Contrastive Divergence 
● Examples
Energy-Based Models 
Definition 
● 각 상태(x)에 대해 에너지를 정의하고, 모든 원하는 상태들의 에너지가 최소 
가 되도록 에너지 함수의 파라미터들을 학습하는 모델 
● 에너지 기반의 확률 모델에서는 에너지 함수를 이용해 확률 분포를 다음과 
같이 정의 
○ 자연계(물리학)에서의 볼츠만 분포 법칙을 신경망에 적용한 것 
○ 이 관점에서 본다면 뉴런은 볼츠만 분포 하에서 운동하는 분자라고 볼 수 있고 뉴 
런의 state는 분자의 에너지 상태라고 해석할 수 있다
Energy-Based Models 
Introducing Hidden Variables 
● 모델의 표현력(expressive power)을 증가시키기 위해 관측되지 않는 (non-observed) 
변수들을 추가하면 확률 분포를 아래와 같이 쓸 수 있음
Energy-Based Models 
Free Energy 
● 확률 분포를 아래와 같은 형태로 만들기 위해 자유 에너지(Free Energy)라 
는 개념을 도입한다. 
○ 즉, hidden 변수들이 포함된 확률 모델을 간단히 다루기 위한 수학적 테크닉으로 
이해하면 된다. 
○ 대부분의 설명에서는 이처럼 수학적 테크닉으로써의 자유 에너지를 설명하는데 
그 이름은 물리학에서 말하는 깁스의 자유 에너지에서 이름을 가져왔다고 한다. 
● 자유 에너지를 계산하면 다음과 같은 형태가 된다.
Energy-Based Models 
Log-likelihood gradient 
● EBM은 데이터의 log-likelihood를 이용해서 gradient descent 방법으로 학습 
가능하다. 
● Log-likelihood를 계산하면 다음과 같다. (계산 생략) 
○ 첫번째 항은 input vector(x)가 주어졌을 때 쉽게 구할 수 있지만 두번째 항은 모든 
가능한 input에 대해 계산해야 하므로 정확하게 계산하는 것은 시간이 매우 오래 
걸린다.
Energy-Based Models 
Average log-likelihood gradient 
● 앞서 구한 Log-likelihood의 Average를 구하면 다음과 같다. (이 논문에서의 
표현) 
○ ^P 는 traing set에 의해 경험적으로 결정되는 분포(empirical distribution)를 의미 
한다. 
○ P는 모델 자체의 분포를 의미한다. 에너지의 관점에서 본다면 모델이 에너지 평 
형 상태에 있을 때의 분포라고 해석할 수 있음. 
● 많은 논문과 튜토리얼에서는 위 식을 알아보기 쉽게 다음과 같이 표현한다.
Energy-Based Models 
The idea of stochastic estimator of the log-likelihood gradient 
● EBM의 학습을 위해서는 위 식의 두 번째 항을 빠르게 계산해야 한다. 
● 만약 모델의 분포 P로부터 샘플링을 해서 자유 에너지를 빠르게 (tractably) 
계산할 수 있다면 Monte-Carlo 방법을 사용해서 gradient 값을 추정할 수 있 
다.
Energy-Based Models 
Approach overview 
● 모델에 맞는 에너지 함수 정의 
● 자유 에너지 정의 
● 에너지 함수로부터 확률 분포 전개 
● Log-likelihood gradient 전개 
● MCMC method를 이용해 모델의 기대값을 계산하고 결과적으로 gradient 
추정
Boltzmann Machines 
Definition 
● Boltzmann Machine 은 hidden unit을 추가한 EBM의 일종이다. 또 MRF 
(Markov Random Field, Markov Network)의 일종이기도 하다. 
● Unit들간의 연결에 제약이 없이 모두 연결될 수 있는 모델이다.
Boltzmann Machines 
Energy Function 
● 에너지 함수는 아래와 같다. 
● 이 에너지 함수는 어떻게 정의된 것일까? 
○ BM의 에너지 함수는 Hopfield Network와 Ising Model로부터 정의된다(고 한다..). 
BM & RBM 뿐만 아니라 RBM의 변형, 다른 EBM은 대부분 자연(물리학, 열역학 
등)을 모델링하는 것으로부터 얻어진다.
Boltzmann Machines 
Problems 
● 모델이 대칭적이고 유닛이 Binary Unit이라는 가정 하에 EBM에서 했던 논 
의를 그대로 이어나갈 수 있다. 
● 즉, 에너지로부터 확률을 구하고 Log-likelihood gradient를 계산한 다음 
MCMC Sampling을 통해 stochastic 하게 gradient를 추정할 수 있다. 
○ 뒤에 RBM에서 자세히 다룰 것이다. 
● 하지만 Stochastic하게 gradient를 추정한다고 해도 너무 많은 (제약이 없는) 
연결때문에 일반적으로 계산이 비싸고 오래 걸린다. 
○ 에너지 평형 상태의 표본을 수집하는 시간이 모델의 사이즈, 연결 강도의 크기에 
대해 지수적으로 증가한다.
Restricted Boltzmann Machines 
Definition 
● 기존의 BM에서 유닛들간의 연결에 특별한 제한을 걸어 학습 시간을 크게 
줄여 실질적인 사용이 가능하도록 변형한 신경망 
● visible layer 1개, hidden layer 1개로 구성된 완전 이분 그래프 모델로 
visible-visible, hidden-hidden 유닛들간의 연결이 없음 
○ BM의 식에서 U와 V가 0벡터
Restricted Boltzmann Machines 
Energy, Free Energy 
● RBM에서는 에너지가 다음과 같이 정의된다. 
● RBM도 EBM의 일종이기 때문에 FreeEnergy와 Distribution은 그대로 따라 
간다. 
○ 여전히 Partition function Z는 intractable하다.
Restricted Boltzmann Machines 
Conditional Distribution 
● RBM의 구조에 의해 input이 주어지면 hidden unit들 간에는 conditionally 
independent하며 그 역도 동일하게 성립 
○ 이 속성이 계산 시간을 크게 줄여주는 이유가 됨
Restricted Boltzmann Machines 
RBMs with Binary units 
● Binary unit이라고 가정하면 P(h|x) 식을 전개하고 conditionally independent 
하다는 속성을 이용해 P(h_i = 1|x) 을 얻을 수 있음. 그 역도 마찬가지. (계산 
생략) 
○ 이 두 식은 뒤에서 Sampling을 할 때의 update rule이 된다. 
○ 각 unit이 0과 1 사이의 실수값인 경우로 확장한 것이 Gaussian-Bernoulli RBM 
(GBRBM) 이다.
Restricted Boltzmann Machines 
Negative Log-likelihood gradient 
● 학습을 위해 Negative Log-likelihood gradient를 계산하면 다음과 같다. 
● 첫번째 항을 positive phase, 두번째 항을 negative phase라고 한다.앞서 논 
의와 마찬가지로 negative phase는 계산하기 어렵다. 
○ RBM에서는 Sampling을 통해 값을 추정한다.
Restricted Boltzmann Machines 
Update Equations with Binary Units 
● RBM의 에너지 함수로부터 각 파라미터에 대한 편미분을 계산하면 다음과 
같다. 
○ 에너지 함수가 선형이기 때문에 미분값이 매우 간단해진다. 
● RBM의 최종적인 Update Equation을 다음과 같이 얻을 수 있다.
Restricted Boltzmann Machines 
Gibbs Sampling in RBMs 
● 두 확률 변수의 조건부 확률 분포가 주어졌으므로 Gibbs Sampling을 통해 
서 모델 자체의 분포에 의한 표본을 수집할 수 있다. 
○ 임의의 데이터에서 출발해서 표집을 하면 초기에는 처음 값에 의존하지만 충분한 
시간이 지난 후에는 초기 상태에 관계없이 모델 자체에 기반한 표본을 수집할 수 
있다. 
● 에너지 관점에서 설명하면 Gibbs Sampling을 충분히 많이 하면 RBM이 에 
너지 평형 상태에 도달하게 된다.
Contrastive Divergence 
Definition 
● negative phase를 모든 가능한 입력 데이터에 대한 기대값으로 계산하지 않 
고 모델의 에너지 평형 상태에서의 샘플값 하나로만 근사한다. 
○ 모델이 에너지 평형 상태에 있다면 그 때의 샘플값은 평균에 가까울 가능성이 높 
기 때문에 Reasonable 하다. 
● Gibbs Sampling을 이용해 샘플을 얻는다. 
● Update rule을 다음과 같이 다시 쓸 수 있다.
Contrastive Divergence 
CD-k with Alternative Gibbs Sampling [Hinton 02] 
● Gibbs Sampling의 시작을 임의의 값이 아니라 training data로 한다. 
● Gibbs Sampling을 무한번 하지 않고 k번만 한다. 
● 실질적으로는 1번만 해도 충분히 좋은 샘플을 얻을 수 있다. 
○ Training을 할수록 모델이 가지는 분포는 training set의 분포를 따라간다. 즉, 
training data가 이미 모델의 분포를 어느 정도 표현하고 있다는 것이다. 따라서 
training data로부터 샘플링을 시작하면 이미 어느 정도 수렴된 지점부터 샘플링 
을 시작하는 것이라고 볼 수 있어서 1번만에 좋은 샘플을 얻을 수 있다. 
● 1번 샘플링해서 얻어진 visible data를 reconstrunction이라고 하고 트레이닝 
이 제대로 되고 있다면 reconstruction error가 감소한다. 즉, 이상적인 RBM 
은 input data를 집어넣으면 동일한 reconstruction visible data를 얻을 수 있 
다.
Contrastive Divergence 
persistent CD [Tieleman 08] 
● Gibbs Sampling을 할 때 기존 CD-k 에서는 매번 각각의 training data에 대 
해 샘플링하지만 persistent CD에서는 이전 Gibbs Sampling에서 계산된 
data (reconstruction data)를 다음 번 Sampling의 시작으로 사용한다. 즉, 첫 
번째 training data가 persistent chain의 시작이 되고 전번의 Gibbs Sampling 
결과를 다음 번 training의 시작으로 사용하여 Chain을 이어나간다. 
○ 이렇게 Chain을 이어 나가면 무한번 Sampling하는 것과 비슷해지는 효과를 갖게 
된다. 물론 매 Gibbs Sampling마다 파라미터가 Update 되어서 모델이 변하긴 하 
지만 매우 작은 값이기 때문에 근사적으로 성립한다.
Examples [Hinton’s lecture] 
숫자 2를 학습하는 예제 
● 16 x 16 크기의 이미지 (256 개의 visible 뉴런) 
● 50개의 binary hidden 뉴런 
○ 이 경우 Hidden unit = Feature detector = Feature Extractor 
● CD-1으로 학습 
● 각 뉴런의 Weight는 랜덤값으로 초기화
Examples [Hinton’s lecture] 
50개의 Hidden Unit의 Weight를 이미지로 그린 것
Examples [Hinton’s lecture]
Examples [Hinton’s lecture]
Examples [Hinton’s lecture]
Examples [Hinton’s lecture]
Examples [Hinton’s lecture]
Examples [Hinton’s lecture]
Examples [Hinton’s lecture]
Examples [Hinton’s lecture] 
각 뉴런이 숫자 2의 서로 다른 Feature를 잡아내는 것을 볼 수 있음
Examples [Hinton’s lecture] 
테스트 이미지로 Reconstruction을 해보면.. 
테스트용 이미지 Reconstruction 테스트용 이미지 Reconstruction 
● 이 네트워크는 숫자 2에 대해서만 훈련되어 있기 때문에 모든 이미지를 숫 
자 2로 이해하려고 한다.
Examples [Larochelle 09] 
MNIST
Examples [Larochelle 09] 
MNIST 
● 각 Hidden unit이 Edge(펜스트로크)를 뽑아내는 것을 볼 수 있음.
Extensions 
Unsupervised Learning 
● Feature Extractor 
● 다른 Supervised Learning의 pre-training 
○ Deep Belief Network [Hinton Neural Computation 06] 
○ Deep Auto-Encoder [Hinton Science 06] 
● Collaborative Filtering (Netflix Prize 2007 winner) [Salakhutdinov 07] 
○ Conditional RBM (with Gaussian Unit) 
○ Conditional Factored RBM 
● Generator (Human motion modeling) [Taylor 06] 
○ Conditional RBM
Extensions 
Supervised Learning 
● Classifier [Larochelle 08] 
○ Classification RBM 
○ Discriminitive RBM 
○ Hybrid Discriminitive RBM
References 
● [Bengio 09] Learning Deep Architectures for AI 
● [Deeplearning.net] Deep learning tutorial - RBM 
● [Hinton 02] Training Products of Experts by Minimizing Contrastive Divergence 
● [Tieleman 08] Training Restricted Boltzmann Machines using Approximations to the 
Likelihood Gradient 
● [Larochelle 09] Exploring Strategies for Training Deep Neural Networks 
● [Hinton Neural Computation 06] A Fast Learning Algorithm for Deep Belief Network 
● [Hinton Science 06] Reducing the Dimensionality of Data with Neural Networks 
● [Salakhutdinov 07] Restricted Boltzmann machines for collaborative filtering 
● [Taylor 06] Modeling Human Motion Using Binary Latent Variables 
● [Larochelle 08] Classification using Discriminative Restricted Boltzmann Machines
감사합니다.

More Related Content

What's hot

I3D and Kinetics datasets (Action Recognition)
I3D and Kinetics datasets (Action Recognition)I3D and Kinetics datasets (Action Recognition)
I3D and Kinetics datasets (Action Recognition)Susang Kim
 
PR-395: Variational Image Compression with a Scale Hyperprior
PR-395: Variational Image Compression with a Scale HyperpriorPR-395: Variational Image Compression with a Scale Hyperprior
PR-395: Variational Image Compression with a Scale HyperpriorHyeongmin Lee
 
Wasserstein GAN 수학 이해하기 I
Wasserstein GAN 수학 이해하기 IWasserstein GAN 수학 이해하기 I
Wasserstein GAN 수학 이해하기 ISungbin Lim
 
【ICLR2023】論文紹介: Image as Set of Points
【ICLR2023】論文紹介: Image as Set of Points【ICLR2023】論文紹介: Image as Set of Points
【ICLR2023】論文紹介: Image as Set of PointsShoki Miyagawa
 
boosting 기법 이해 (bagging vs boosting)
boosting 기법 이해 (bagging vs boosting)boosting 기법 이해 (bagging vs boosting)
boosting 기법 이해 (bagging vs boosting)SANG WON PARK
 
Normalization 방법
Normalization 방법 Normalization 방법
Normalization 방법 홍배 김
 
[딥논읽] Meta-Transfer Learning for Zero-Shot Super-Resolution paper review
[딥논읽] Meta-Transfer Learning for Zero-Shot Super-Resolution paper review[딥논읽] Meta-Transfer Learning for Zero-Shot Super-Resolution paper review
[딥논읽] Meta-Transfer Learning for Zero-Shot Super-Resolution paper reviewtaeseon ryu
 
[DL輪読会]Randomized Prior Functions for Deep Reinforcement Learning
[DL輪読会]Randomized Prior Functions for Deep Reinforcement Learning[DL輪読会]Randomized Prior Functions for Deep Reinforcement Learning
[DL輪読会]Randomized Prior Functions for Deep Reinforcement LearningDeep Learning JP
 
Variational inference intro. (korean ver.)
Variational inference intro. (korean ver.)Variational inference intro. (korean ver.)
Variational inference intro. (korean ver.)Kiho Hong
 
Chapter 8 ボルツマンマシン - 深層学習本読み会
Chapter 8 ボルツマンマシン - 深層学習本読み会Chapter 8 ボルツマンマシン - 深層学習本読み会
Chapter 8 ボルツマンマシン - 深層学習本読み会Taikai Takeda
 
[DLHacks 実装]Perceptual Adversarial Networks for Image-to-Image Transformation
[DLHacks 実装]Perceptual Adversarial Networks for Image-to-Image Transformation[DLHacks 実装]Perceptual Adversarial Networks for Image-to-Image Transformation
[DLHacks 実装]Perceptual Adversarial Networks for Image-to-Image TransformationDeep Learning JP
 
IIBMP2016 深層生成モデルによる表現学習
IIBMP2016 深層生成モデルによる表現学習IIBMP2016 深層生成モデルによる表現学習
IIBMP2016 深層生成モデルによる表現学習Preferred Networks
 
Brief intro : Invariance and Equivariance
Brief intro : Invariance and EquivarianceBrief intro : Invariance and Equivariance
Brief intro : Invariance and Equivariance홍배 김
 
[DL輪読会]Set Transformer: A Framework for Attention-based Permutation-Invariant...
[DL輪読会]Set Transformer: A Framework for Attention-based Permutation-Invariant...[DL輪読会]Set Transformer: A Framework for Attention-based Permutation-Invariant...
[DL輪読会]Set Transformer: A Framework for Attention-based Permutation-Invariant...Deep Learning JP
 
【論文読み会】Alias-Free Generative Adversarial Networks(StyleGAN3)
【論文読み会】Alias-Free Generative Adversarial Networks(StyleGAN3)【論文読み会】Alias-Free Generative Adversarial Networks(StyleGAN3)
【論文読み会】Alias-Free Generative Adversarial Networks(StyleGAN3)ARISE analytics
 
Krylov Subspace Methods in Model Order Reduction
Krylov Subspace Methods in Model Order ReductionKrylov Subspace Methods in Model Order Reduction
Krylov Subspace Methods in Model Order ReductionMohammad Umar Rehman
 
Implementing sobol's quasirandom sequence generator
Implementing sobol's quasirandom sequence generatorImplementing sobol's quasirandom sequence generator
Implementing sobol's quasirandom sequence generatorMasashi Shibata
 

What's hot (20)

I3D and Kinetics datasets (Action Recognition)
I3D and Kinetics datasets (Action Recognition)I3D and Kinetics datasets (Action Recognition)
I3D and Kinetics datasets (Action Recognition)
 
PR-395: Variational Image Compression with a Scale Hyperprior
PR-395: Variational Image Compression with a Scale HyperpriorPR-395: Variational Image Compression with a Scale Hyperprior
PR-395: Variational Image Compression with a Scale Hyperprior
 
Wasserstein GAN 수학 이해하기 I
Wasserstein GAN 수학 이해하기 IWasserstein GAN 수학 이해하기 I
Wasserstein GAN 수학 이해하기 I
 
【ICLR2023】論文紹介: Image as Set of Points
【ICLR2023】論文紹介: Image as Set of Points【ICLR2023】論文紹介: Image as Set of Points
【ICLR2023】論文紹介: Image as Set of Points
 
boosting 기법 이해 (bagging vs boosting)
boosting 기법 이해 (bagging vs boosting)boosting 기법 이해 (bagging vs boosting)
boosting 기법 이해 (bagging vs boosting)
 
Normalization 방법
Normalization 방법 Normalization 방법
Normalization 방법
 
[딥논읽] Meta-Transfer Learning for Zero-Shot Super-Resolution paper review
[딥논읽] Meta-Transfer Learning for Zero-Shot Super-Resolution paper review[딥논읽] Meta-Transfer Learning for Zero-Shot Super-Resolution paper review
[딥논읽] Meta-Transfer Learning for Zero-Shot Super-Resolution paper review
 
Topological sort
Topological sortTopological sort
Topological sort
 
[DL輪読会]Randomized Prior Functions for Deep Reinforcement Learning
[DL輪読会]Randomized Prior Functions for Deep Reinforcement Learning[DL輪読会]Randomized Prior Functions for Deep Reinforcement Learning
[DL輪読会]Randomized Prior Functions for Deep Reinforcement Learning
 
Variational inference intro. (korean ver.)
Variational inference intro. (korean ver.)Variational inference intro. (korean ver.)
Variational inference intro. (korean ver.)
 
Chapter 8 ボルツマンマシン - 深層学習本読み会
Chapter 8 ボルツマンマシン - 深層学習本読み会Chapter 8 ボルツマンマシン - 深層学習本読み会
Chapter 8 ボルツマンマシン - 深層学習本読み会
 
[DLHacks 実装]Perceptual Adversarial Networks for Image-to-Image Transformation
[DLHacks 実装]Perceptual Adversarial Networks for Image-to-Image Transformation[DLHacks 実装]Perceptual Adversarial Networks for Image-to-Image Transformation
[DLHacks 実装]Perceptual Adversarial Networks for Image-to-Image Transformation
 
IIBMP2016 深層生成モデルによる表現学習
IIBMP2016 深層生成モデルによる表現学習IIBMP2016 深層生成モデルによる表現学習
IIBMP2016 深層生成モデルによる表現学習
 
Introduction of VAE
Introduction of VAEIntroduction of VAE
Introduction of VAE
 
Brief intro : Invariance and Equivariance
Brief intro : Invariance and EquivarianceBrief intro : Invariance and Equivariance
Brief intro : Invariance and Equivariance
 
[DL輪読会]Set Transformer: A Framework for Attention-based Permutation-Invariant...
[DL輪読会]Set Transformer: A Framework for Attention-based Permutation-Invariant...[DL輪読会]Set Transformer: A Framework for Attention-based Permutation-Invariant...
[DL輪読会]Set Transformer: A Framework for Attention-based Permutation-Invariant...
 
【論文読み会】Alias-Free Generative Adversarial Networks(StyleGAN3)
【論文読み会】Alias-Free Generative Adversarial Networks(StyleGAN3)【論文読み会】Alias-Free Generative Adversarial Networks(StyleGAN3)
【論文読み会】Alias-Free Generative Adversarial Networks(StyleGAN3)
 
Krylov Subspace Methods in Model Order Reduction
Krylov Subspace Methods in Model Order ReductionKrylov Subspace Methods in Model Order Reduction
Krylov Subspace Methods in Model Order Reduction
 
Zero shot learning
Zero shot learning Zero shot learning
Zero shot learning
 
Implementing sobol's quasirandom sequence generator
Implementing sobol's quasirandom sequence generatorImplementing sobol's quasirandom sequence generator
Implementing sobol's quasirandom sequence generator
 

Viewers also liked

에너지진단제도
에너지진단제도에너지진단제도
에너지진단제도활 김
 
[모두의연구소] 쫄지말자딥러닝
[모두의연구소] 쫄지말자딥러닝[모두의연구소] 쫄지말자딥러닝
[모두의연구소] 쫄지말자딥러닝Modulabs
 
Deep Belief Networks
Deep Belief NetworksDeep Belief Networks
Deep Belief NetworksHasan H Topcu
 
Brief Introduction to Boltzmann Machine
Brief Introduction to Boltzmann MachineBrief Introduction to Boltzmann Machine
Brief Introduction to Boltzmann MachineArunabha Saha
 
쫄지말자딥러닝2 - CNN RNN 포함버전
쫄지말자딥러닝2 - CNN RNN 포함버전쫄지말자딥러닝2 - CNN RNN 포함버전
쫄지말자딥러닝2 - CNN RNN 포함버전Modulabs
 
[NDC 2010] 그럴듯한 랜덤 생성 컨텐츠 만들기
[NDC 2010] 그럴듯한 랜덤 생성 컨텐츠 만들기[NDC 2010] 그럴듯한 랜덤 생성 컨텐츠 만들기
[NDC 2010] 그럴듯한 랜덤 생성 컨텐츠 만들기Yongha Kim
 
[세미나] 특이점이 온다
[세미나] 특이점이 온다[세미나] 특이점이 온다
[세미나] 특이점이 온다Yongha Kim
 
기계학습 / 딥러닝이란 무엇인가
기계학습 / 딥러닝이란 무엇인가기계학습 / 딥러닝이란 무엇인가
기계학습 / 딥러닝이란 무엇인가Yongha Kim
 

Viewers also liked (9)

에너지진단제도
에너지진단제도에너지진단제도
에너지진단제도
 
restrictedboltzmannmachines
restrictedboltzmannmachinesrestrictedboltzmannmachines
restrictedboltzmannmachines
 
[모두의연구소] 쫄지말자딥러닝
[모두의연구소] 쫄지말자딥러닝[모두의연구소] 쫄지말자딥러닝
[모두의연구소] 쫄지말자딥러닝
 
Deep Belief Networks
Deep Belief NetworksDeep Belief Networks
Deep Belief Networks
 
Brief Introduction to Boltzmann Machine
Brief Introduction to Boltzmann MachineBrief Introduction to Boltzmann Machine
Brief Introduction to Boltzmann Machine
 
쫄지말자딥러닝2 - CNN RNN 포함버전
쫄지말자딥러닝2 - CNN RNN 포함버전쫄지말자딥러닝2 - CNN RNN 포함버전
쫄지말자딥러닝2 - CNN RNN 포함버전
 
[NDC 2010] 그럴듯한 랜덤 생성 컨텐츠 만들기
[NDC 2010] 그럴듯한 랜덤 생성 컨텐츠 만들기[NDC 2010] 그럴듯한 랜덤 생성 컨텐츠 만들기
[NDC 2010] 그럴듯한 랜덤 생성 컨텐츠 만들기
 
[세미나] 특이점이 온다
[세미나] 특이점이 온다[세미나] 특이점이 온다
[세미나] 특이점이 온다
 
기계학습 / 딥러닝이란 무엇인가
기계학습 / 딥러닝이란 무엇인가기계학습 / 딥러닝이란 무엇인가
기계학습 / 딥러닝이란 무엇인가
 

Similar to Energy based models and boltzmann machines - v2.0

The fastalgorithmfordeepbeliefnets
The fastalgorithmfordeepbeliefnetsThe fastalgorithmfordeepbeliefnets
The fastalgorithmfordeepbeliefnetsLee Gyeong Hoon
 
Coursera Machine Learning (by Andrew Ng)_강의정리
Coursera Machine Learning (by Andrew Ng)_강의정리Coursera Machine Learning (by Andrew Ng)_강의정리
Coursera Machine Learning (by Andrew Ng)_강의정리SANG WON PARK
 
Restricted Boltzmann Machine
Restricted Boltzmann MachineRestricted Boltzmann Machine
Restricted Boltzmann MachineJungwon Kim
 
Improved techniques for grid mapping with rao blackwellized particle filters 번역
Improved techniques for grid mapping with rao blackwellized particle filters 번역Improved techniques for grid mapping with rao blackwellized particle filters 번역
Improved techniques for grid mapping with rao blackwellized particle filters 번역jdo
 
Bag of Tricks for Image Classification with Convolutional Neural Networks (C...
Bag of Tricks for Image Classification  with Convolutional Neural Networks (C...Bag of Tricks for Image Classification  with Convolutional Neural Networks (C...
Bag of Tricks for Image Classification with Convolutional Neural Networks (C...gohyunwoong
 
대칭가중치와 심층신뢰네트워크
대칭가중치와 심층신뢰네트워크대칭가중치와 심층신뢰네트워크
대칭가중치와 심층신뢰네트워크Sunggon Song
 
230806_캡스톤디자인 경진대회.pptx
230806_캡스톤디자인 경진대회.pptx230806_캡스톤디자인 경진대회.pptx
230806_캡스톤디자인 경진대회.pptxssuserab765f
 
"From image level to pixel-level labeling with convolutional networks" Paper ...
"From image level to pixel-level labeling with convolutional networks" Paper ..."From image level to pixel-level labeling with convolutional networks" Paper ...
"From image level to pixel-level labeling with convolutional networks" Paper ...LEE HOSEONG
 
PR12 Season3 Weight Agnostic Neural Networks
PR12 Season3 Weight Agnostic Neural NetworksPR12 Season3 Weight Agnostic Neural Networks
PR12 Season3 Weight Agnostic Neural NetworksKyunghoon Jung
 
K means 알고리즘을 이용한 영화배우 클러스터링
K means 알고리즘을 이용한 영화배우 클러스터링K means 알고리즘을 이용한 영화배우 클러스터링
K means 알고리즘을 이용한 영화배우 클러스터링Edward Yoon
 
Soft Actor-Critic Algorithms and Applications 한국어 리뷰
Soft Actor-Critic Algorithms and Applications 한국어 리뷰Soft Actor-Critic Algorithms and Applications 한국어 리뷰
Soft Actor-Critic Algorithms and Applications 한국어 리뷰태영 정
 
논문-정규분포변환
논문-정규분포변환논문-정규분포변환
논문-정규분포변환jdo
 
Guided policy search
Guided policy searchGuided policy search
Guided policy searchJaehyeon Park
 
2019 5-5-week-i-learned-generative model
2019 5-5-week-i-learned-generative model2019 5-5-week-i-learned-generative model
2019 5-5-week-i-learned-generative modelstrutive07
 
Pose Graph based SLAM
Pose Graph based SLAMPose Graph based SLAM
Pose Graph based SLAMEdwardIm1
 
3.unsupervised learing(epoch#2)
3.unsupervised learing(epoch#2)3.unsupervised learing(epoch#2)
3.unsupervised learing(epoch#2)Haesun Park
 
A Beginner's guide to understanding Autoencoder
A Beginner's guide to understanding AutoencoderA Beginner's guide to understanding Autoencoder
A Beginner's guide to understanding AutoencoderLee Seungeun
 
[컴퓨터비전과 인공지능] 7. 합성곱 신경망 2
[컴퓨터비전과 인공지능] 7. 합성곱 신경망 2[컴퓨터비전과 인공지능] 7. 합성곱 신경망 2
[컴퓨터비전과 인공지능] 7. 합성곱 신경망 2jdo
 
SAGAN_2024seminar announce_seoultech.pptx
SAGAN_2024seminar announce_seoultech.pptxSAGAN_2024seminar announce_seoultech.pptx
SAGAN_2024seminar announce_seoultech.pptxssuser4b2fe7
 
PRML Chapter 7 SVM supplementary files
PRML Chapter 7 SVM supplementary filesPRML Chapter 7 SVM supplementary files
PRML Chapter 7 SVM supplementary filesSunwoo Kim
 

Similar to Energy based models and boltzmann machines - v2.0 (20)

The fastalgorithmfordeepbeliefnets
The fastalgorithmfordeepbeliefnetsThe fastalgorithmfordeepbeliefnets
The fastalgorithmfordeepbeliefnets
 
Coursera Machine Learning (by Andrew Ng)_강의정리
Coursera Machine Learning (by Andrew Ng)_강의정리Coursera Machine Learning (by Andrew Ng)_강의정리
Coursera Machine Learning (by Andrew Ng)_강의정리
 
Restricted Boltzmann Machine
Restricted Boltzmann MachineRestricted Boltzmann Machine
Restricted Boltzmann Machine
 
Improved techniques for grid mapping with rao blackwellized particle filters 번역
Improved techniques for grid mapping with rao blackwellized particle filters 번역Improved techniques for grid mapping with rao blackwellized particle filters 번역
Improved techniques for grid mapping with rao blackwellized particle filters 번역
 
Bag of Tricks for Image Classification with Convolutional Neural Networks (C...
Bag of Tricks for Image Classification  with Convolutional Neural Networks (C...Bag of Tricks for Image Classification  with Convolutional Neural Networks (C...
Bag of Tricks for Image Classification with Convolutional Neural Networks (C...
 
대칭가중치와 심층신뢰네트워크
대칭가중치와 심층신뢰네트워크대칭가중치와 심층신뢰네트워크
대칭가중치와 심층신뢰네트워크
 
230806_캡스톤디자인 경진대회.pptx
230806_캡스톤디자인 경진대회.pptx230806_캡스톤디자인 경진대회.pptx
230806_캡스톤디자인 경진대회.pptx
 
"From image level to pixel-level labeling with convolutional networks" Paper ...
"From image level to pixel-level labeling with convolutional networks" Paper ..."From image level to pixel-level labeling with convolutional networks" Paper ...
"From image level to pixel-level labeling with convolutional networks" Paper ...
 
PR12 Season3 Weight Agnostic Neural Networks
PR12 Season3 Weight Agnostic Neural NetworksPR12 Season3 Weight Agnostic Neural Networks
PR12 Season3 Weight Agnostic Neural Networks
 
K means 알고리즘을 이용한 영화배우 클러스터링
K means 알고리즘을 이용한 영화배우 클러스터링K means 알고리즘을 이용한 영화배우 클러스터링
K means 알고리즘을 이용한 영화배우 클러스터링
 
Soft Actor-Critic Algorithms and Applications 한국어 리뷰
Soft Actor-Critic Algorithms and Applications 한국어 리뷰Soft Actor-Critic Algorithms and Applications 한국어 리뷰
Soft Actor-Critic Algorithms and Applications 한국어 리뷰
 
논문-정규분포변환
논문-정규분포변환논문-정규분포변환
논문-정규분포변환
 
Guided policy search
Guided policy searchGuided policy search
Guided policy search
 
2019 5-5-week-i-learned-generative model
2019 5-5-week-i-learned-generative model2019 5-5-week-i-learned-generative model
2019 5-5-week-i-learned-generative model
 
Pose Graph based SLAM
Pose Graph based SLAMPose Graph based SLAM
Pose Graph based SLAM
 
3.unsupervised learing(epoch#2)
3.unsupervised learing(epoch#2)3.unsupervised learing(epoch#2)
3.unsupervised learing(epoch#2)
 
A Beginner's guide to understanding Autoencoder
A Beginner's guide to understanding AutoencoderA Beginner's guide to understanding Autoencoder
A Beginner's guide to understanding Autoencoder
 
[컴퓨터비전과 인공지능] 7. 합성곱 신경망 2
[컴퓨터비전과 인공지능] 7. 합성곱 신경망 2[컴퓨터비전과 인공지능] 7. 합성곱 신경망 2
[컴퓨터비전과 인공지능] 7. 합성곱 신경망 2
 
SAGAN_2024seminar announce_seoultech.pptx
SAGAN_2024seminar announce_seoultech.pptxSAGAN_2024seminar announce_seoultech.pptx
SAGAN_2024seminar announce_seoultech.pptx
 
PRML Chapter 7 SVM supplementary files
PRML Chapter 7 SVM supplementary filesPRML Chapter 7 SVM supplementary files
PRML Chapter 7 SVM supplementary files
 

Energy based models and boltzmann machines - v2.0

  • 1. Energy-Based Models and Boltzmann Machines Learning Deep Architectures for AI - Ch 5
  • 2. 목차 ● Energy-Based Models ● Boltzmann Machines ● Restricted Boltzmann Machines ● Contrastive Divergence ● Examples
  • 3. Energy-Based Models Definition ● 각 상태(x)에 대해 에너지를 정의하고, 모든 원하는 상태들의 에너지가 최소 가 되도록 에너지 함수의 파라미터들을 학습하는 모델 ● 에너지 기반의 확률 모델에서는 에너지 함수를 이용해 확률 분포를 다음과 같이 정의 ○ 자연계(물리학)에서의 볼츠만 분포 법칙을 신경망에 적용한 것 ○ 이 관점에서 본다면 뉴런은 볼츠만 분포 하에서 운동하는 분자라고 볼 수 있고 뉴 런의 state는 분자의 에너지 상태라고 해석할 수 있다
  • 4. Energy-Based Models Introducing Hidden Variables ● 모델의 표현력(expressive power)을 증가시키기 위해 관측되지 않는 (non-observed) 변수들을 추가하면 확률 분포를 아래와 같이 쓸 수 있음
  • 5. Energy-Based Models Free Energy ● 확률 분포를 아래와 같은 형태로 만들기 위해 자유 에너지(Free Energy)라 는 개념을 도입한다. ○ 즉, hidden 변수들이 포함된 확률 모델을 간단히 다루기 위한 수학적 테크닉으로 이해하면 된다. ○ 대부분의 설명에서는 이처럼 수학적 테크닉으로써의 자유 에너지를 설명하는데 그 이름은 물리학에서 말하는 깁스의 자유 에너지에서 이름을 가져왔다고 한다. ● 자유 에너지를 계산하면 다음과 같은 형태가 된다.
  • 6. Energy-Based Models Log-likelihood gradient ● EBM은 데이터의 log-likelihood를 이용해서 gradient descent 방법으로 학습 가능하다. ● Log-likelihood를 계산하면 다음과 같다. (계산 생략) ○ 첫번째 항은 input vector(x)가 주어졌을 때 쉽게 구할 수 있지만 두번째 항은 모든 가능한 input에 대해 계산해야 하므로 정확하게 계산하는 것은 시간이 매우 오래 걸린다.
  • 7. Energy-Based Models Average log-likelihood gradient ● 앞서 구한 Log-likelihood의 Average를 구하면 다음과 같다. (이 논문에서의 표현) ○ ^P 는 traing set에 의해 경험적으로 결정되는 분포(empirical distribution)를 의미 한다. ○ P는 모델 자체의 분포를 의미한다. 에너지의 관점에서 본다면 모델이 에너지 평 형 상태에 있을 때의 분포라고 해석할 수 있음. ● 많은 논문과 튜토리얼에서는 위 식을 알아보기 쉽게 다음과 같이 표현한다.
  • 8. Energy-Based Models The idea of stochastic estimator of the log-likelihood gradient ● EBM의 학습을 위해서는 위 식의 두 번째 항을 빠르게 계산해야 한다. ● 만약 모델의 분포 P로부터 샘플링을 해서 자유 에너지를 빠르게 (tractably) 계산할 수 있다면 Monte-Carlo 방법을 사용해서 gradient 값을 추정할 수 있 다.
  • 9. Energy-Based Models Approach overview ● 모델에 맞는 에너지 함수 정의 ● 자유 에너지 정의 ● 에너지 함수로부터 확률 분포 전개 ● Log-likelihood gradient 전개 ● MCMC method를 이용해 모델의 기대값을 계산하고 결과적으로 gradient 추정
  • 10. Boltzmann Machines Definition ● Boltzmann Machine 은 hidden unit을 추가한 EBM의 일종이다. 또 MRF (Markov Random Field, Markov Network)의 일종이기도 하다. ● Unit들간의 연결에 제약이 없이 모두 연결될 수 있는 모델이다.
  • 11. Boltzmann Machines Energy Function ● 에너지 함수는 아래와 같다. ● 이 에너지 함수는 어떻게 정의된 것일까? ○ BM의 에너지 함수는 Hopfield Network와 Ising Model로부터 정의된다(고 한다..). BM & RBM 뿐만 아니라 RBM의 변형, 다른 EBM은 대부분 자연(물리학, 열역학 등)을 모델링하는 것으로부터 얻어진다.
  • 12. Boltzmann Machines Problems ● 모델이 대칭적이고 유닛이 Binary Unit이라는 가정 하에 EBM에서 했던 논 의를 그대로 이어나갈 수 있다. ● 즉, 에너지로부터 확률을 구하고 Log-likelihood gradient를 계산한 다음 MCMC Sampling을 통해 stochastic 하게 gradient를 추정할 수 있다. ○ 뒤에 RBM에서 자세히 다룰 것이다. ● 하지만 Stochastic하게 gradient를 추정한다고 해도 너무 많은 (제약이 없는) 연결때문에 일반적으로 계산이 비싸고 오래 걸린다. ○ 에너지 평형 상태의 표본을 수집하는 시간이 모델의 사이즈, 연결 강도의 크기에 대해 지수적으로 증가한다.
  • 13. Restricted Boltzmann Machines Definition ● 기존의 BM에서 유닛들간의 연결에 특별한 제한을 걸어 학습 시간을 크게 줄여 실질적인 사용이 가능하도록 변형한 신경망 ● visible layer 1개, hidden layer 1개로 구성된 완전 이분 그래프 모델로 visible-visible, hidden-hidden 유닛들간의 연결이 없음 ○ BM의 식에서 U와 V가 0벡터
  • 14. Restricted Boltzmann Machines Energy, Free Energy ● RBM에서는 에너지가 다음과 같이 정의된다. ● RBM도 EBM의 일종이기 때문에 FreeEnergy와 Distribution은 그대로 따라 간다. ○ 여전히 Partition function Z는 intractable하다.
  • 15. Restricted Boltzmann Machines Conditional Distribution ● RBM의 구조에 의해 input이 주어지면 hidden unit들 간에는 conditionally independent하며 그 역도 동일하게 성립 ○ 이 속성이 계산 시간을 크게 줄여주는 이유가 됨
  • 16. Restricted Boltzmann Machines RBMs with Binary units ● Binary unit이라고 가정하면 P(h|x) 식을 전개하고 conditionally independent 하다는 속성을 이용해 P(h_i = 1|x) 을 얻을 수 있음. 그 역도 마찬가지. (계산 생략) ○ 이 두 식은 뒤에서 Sampling을 할 때의 update rule이 된다. ○ 각 unit이 0과 1 사이의 실수값인 경우로 확장한 것이 Gaussian-Bernoulli RBM (GBRBM) 이다.
  • 17. Restricted Boltzmann Machines Negative Log-likelihood gradient ● 학습을 위해 Negative Log-likelihood gradient를 계산하면 다음과 같다. ● 첫번째 항을 positive phase, 두번째 항을 negative phase라고 한다.앞서 논 의와 마찬가지로 negative phase는 계산하기 어렵다. ○ RBM에서는 Sampling을 통해 값을 추정한다.
  • 18. Restricted Boltzmann Machines Update Equations with Binary Units ● RBM의 에너지 함수로부터 각 파라미터에 대한 편미분을 계산하면 다음과 같다. ○ 에너지 함수가 선형이기 때문에 미분값이 매우 간단해진다. ● RBM의 최종적인 Update Equation을 다음과 같이 얻을 수 있다.
  • 19. Restricted Boltzmann Machines Gibbs Sampling in RBMs ● 두 확률 변수의 조건부 확률 분포가 주어졌으므로 Gibbs Sampling을 통해 서 모델 자체의 분포에 의한 표본을 수집할 수 있다. ○ 임의의 데이터에서 출발해서 표집을 하면 초기에는 처음 값에 의존하지만 충분한 시간이 지난 후에는 초기 상태에 관계없이 모델 자체에 기반한 표본을 수집할 수 있다. ● 에너지 관점에서 설명하면 Gibbs Sampling을 충분히 많이 하면 RBM이 에 너지 평형 상태에 도달하게 된다.
  • 20. Contrastive Divergence Definition ● negative phase를 모든 가능한 입력 데이터에 대한 기대값으로 계산하지 않 고 모델의 에너지 평형 상태에서의 샘플값 하나로만 근사한다. ○ 모델이 에너지 평형 상태에 있다면 그 때의 샘플값은 평균에 가까울 가능성이 높 기 때문에 Reasonable 하다. ● Gibbs Sampling을 이용해 샘플을 얻는다. ● Update rule을 다음과 같이 다시 쓸 수 있다.
  • 21. Contrastive Divergence CD-k with Alternative Gibbs Sampling [Hinton 02] ● Gibbs Sampling의 시작을 임의의 값이 아니라 training data로 한다. ● Gibbs Sampling을 무한번 하지 않고 k번만 한다. ● 실질적으로는 1번만 해도 충분히 좋은 샘플을 얻을 수 있다. ○ Training을 할수록 모델이 가지는 분포는 training set의 분포를 따라간다. 즉, training data가 이미 모델의 분포를 어느 정도 표현하고 있다는 것이다. 따라서 training data로부터 샘플링을 시작하면 이미 어느 정도 수렴된 지점부터 샘플링 을 시작하는 것이라고 볼 수 있어서 1번만에 좋은 샘플을 얻을 수 있다. ● 1번 샘플링해서 얻어진 visible data를 reconstrunction이라고 하고 트레이닝 이 제대로 되고 있다면 reconstruction error가 감소한다. 즉, 이상적인 RBM 은 input data를 집어넣으면 동일한 reconstruction visible data를 얻을 수 있 다.
  • 22. Contrastive Divergence persistent CD [Tieleman 08] ● Gibbs Sampling을 할 때 기존 CD-k 에서는 매번 각각의 training data에 대 해 샘플링하지만 persistent CD에서는 이전 Gibbs Sampling에서 계산된 data (reconstruction data)를 다음 번 Sampling의 시작으로 사용한다. 즉, 첫 번째 training data가 persistent chain의 시작이 되고 전번의 Gibbs Sampling 결과를 다음 번 training의 시작으로 사용하여 Chain을 이어나간다. ○ 이렇게 Chain을 이어 나가면 무한번 Sampling하는 것과 비슷해지는 효과를 갖게 된다. 물론 매 Gibbs Sampling마다 파라미터가 Update 되어서 모델이 변하긴 하 지만 매우 작은 값이기 때문에 근사적으로 성립한다.
  • 23. Examples [Hinton’s lecture] 숫자 2를 학습하는 예제 ● 16 x 16 크기의 이미지 (256 개의 visible 뉴런) ● 50개의 binary hidden 뉴런 ○ 이 경우 Hidden unit = Feature detector = Feature Extractor ● CD-1으로 학습 ● 각 뉴런의 Weight는 랜덤값으로 초기화
  • 24. Examples [Hinton’s lecture] 50개의 Hidden Unit의 Weight를 이미지로 그린 것
  • 32. Examples [Hinton’s lecture] 각 뉴런이 숫자 2의 서로 다른 Feature를 잡아내는 것을 볼 수 있음
  • 33. Examples [Hinton’s lecture] 테스트 이미지로 Reconstruction을 해보면.. 테스트용 이미지 Reconstruction 테스트용 이미지 Reconstruction ● 이 네트워크는 숫자 2에 대해서만 훈련되어 있기 때문에 모든 이미지를 숫 자 2로 이해하려고 한다.
  • 35. Examples [Larochelle 09] MNIST ● 각 Hidden unit이 Edge(펜스트로크)를 뽑아내는 것을 볼 수 있음.
  • 36. Extensions Unsupervised Learning ● Feature Extractor ● 다른 Supervised Learning의 pre-training ○ Deep Belief Network [Hinton Neural Computation 06] ○ Deep Auto-Encoder [Hinton Science 06] ● Collaborative Filtering (Netflix Prize 2007 winner) [Salakhutdinov 07] ○ Conditional RBM (with Gaussian Unit) ○ Conditional Factored RBM ● Generator (Human motion modeling) [Taylor 06] ○ Conditional RBM
  • 37. Extensions Supervised Learning ● Classifier [Larochelle 08] ○ Classification RBM ○ Discriminitive RBM ○ Hybrid Discriminitive RBM
  • 38. References ● [Bengio 09] Learning Deep Architectures for AI ● [Deeplearning.net] Deep learning tutorial - RBM ● [Hinton 02] Training Products of Experts by Minimizing Contrastive Divergence ● [Tieleman 08] Training Restricted Boltzmann Machines using Approximations to the Likelihood Gradient ● [Larochelle 09] Exploring Strategies for Training Deep Neural Networks ● [Hinton Neural Computation 06] A Fast Learning Algorithm for Deep Belief Network ● [Hinton Science 06] Reducing the Dimensionality of Data with Neural Networks ● [Salakhutdinov 07] Restricted Boltzmann machines for collaborative filtering ● [Taylor 06] Modeling Human Motion Using Binary Latent Variables ● [Larochelle 08] Classification using Discriminative Restricted Boltzmann Machines