SlideShare une entreprise Scribd logo
1  sur  31
Télécharger pour lire hors ligne
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 
● 모델에 맞는 에너지 함수 정의 
● (Hidden unit이 있다면) 자유 에너지 정의 
● 에너지 함수로부터 확률 분포 전개 
● 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 
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
Examples 
Supervised Learning 
● Classifier [Larochelle 08] 
○ Classification RBM 
○ Discriminitive RBM 
○ Hybrid Discriminitive RBM
Examples - Feature Extractor 
MNIST [Larochelle 09]
Examples - Feature Extractor 
MNIST [Larochelle 09] 
● 각 Hidden Unit에 연결된 Weight를 그린 것. Input으로부터 Edge(펜스트로 
크)를 뽑아낸다고 해석할 수 있음.
Examples - Recommender [Edwin Chen] 
Modeling 
● 6 visible units (movies), 2 hidden units (latent factors) 
● Binary units (영화를 좋아하면 1, 아니면 0)
Examples - Recommender [Edwin Chen] 
Training data 
● Alice: (Harry Potter = 1, Avatar = 1, LOTR 3 = 1, Gladiator = 0, Titanic = 0, Glitter = 0) 
● Bob: (Harry Potter = 1, Avatar = 0, LOTR 3 = 1, Gladiator = 0, Titanic = 0, Glitter = 0) 
● Carol: (Harry Potter = 1, Avatar = 1, LOTR 3 = 1, Gladiator = 0, Titanic = 0, Glitter = 0) 
● David: (Harry Potter = 0, Avatar = 0, LOTR 3 = 1, Gladiator = 1, Titanic = 1, Glitter = 0) 
● Eric: (Harry Potter = 0, Avatar = 0, LOTR 3 = 1, Gladiator = 1, Titanic = 1, Glitter = 0) 
● Fred: (Harry Potter = 0, Avatar = 0, LOTR 3 = 1, Gladiator = 1, Titanic = 1, Glitter = 0) 
Training Results
Examples - Recommender [Edwin Chen] 
Latent factors 
● Hidden 1은 Oscar winner 작품에 대한 선호를 나타내고 Hidden 2는 
SF/fantasy 장르 영화에 대한 선호를 나타내는 Unit이라고 볼 수 있다. 
● 즉, Training을 통해 Hidden 1은 Oscar winners 라는 Feature를 학습하였고 
Hidden 2는 SF/fantasy 장르라는 Feature를 학습하였다. 
State Activation 
● 만약 어떤 사람이 6개의 영화에 대한 선호를 입력하면 RBM은 그 사람의 선 
호 성향을 말해줄 수 있다. 
● 어떤 사람이 SF/fantasy 장르를 좋아한다고 하면 RBM은 그 사람이 좋아할 
만한 영화를 추천해줄 수 있다.
Examples - Recommender [Edwin Chen] 
Stochastic property 
● RBM은 stochastic neural network이다. 
● 즉, 어떤 사람이 해리포터, 반지의 제왕, 아바타를 모두 좋아한다고 해서 반 
드시 Hidden 2 (SF/fantasy unit) 가 on 되는 것은 아니라는 것이다. 그럴 가 
능성은 크지만. 
● 반대로, 어떤 사람이 SF/fantasy 장르를 선호한다고 해도 해리포터, 반지의 
제왕, 아바타 unit이 모두 on 되지 않을 수도 있다. 
Models of people in the messy (?) 
● 이러한 속성은 오히려 현실을 더 잘 모델링할 수도 있다. 
● 예를 들면 SF/fantasy 장르를 선호하는 사람이 (어떤 다른 이유때문에 = 적 
당히 낮은 확률로) 해리포터는 좋아하지 않을 수도 있다. 
● 또 어떤 사람이 해리포터, 반지의 제왕, 아바타를 모두 좋아한다면 
SF/fantasy 영화를 좋아할 가능성은 매우 높으나 무조건 SF/fantasy를 좋아 
하는 사람이라고 단정지을 수는 없다.
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 
● [Edwin Chen] Introduction Restricted Boltzmann Machines

Contenu connexe

Tendances

Soft Actor-Critic Algorithms and Applications 한국어 리뷰
Soft Actor-Critic Algorithms and Applications 한국어 리뷰Soft Actor-Critic Algorithms and Applications 한국어 리뷰
Soft Actor-Critic Algorithms and Applications 한국어 리뷰태영 정
 
PR-302: NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis
PR-302: NeRF: Representing Scenes as Neural Radiance Fields for View SynthesisPR-302: NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis
PR-302: NeRF: Representing Scenes as Neural Radiance Fields for View SynthesisHyeongmin Lee
 
실무에서 활용하는 A/B테스트
실무에서 활용하는 A/B테스트실무에서 활용하는 A/B테스트
실무에서 활용하는 A/B테스트JeongMin Kwon
 
쫄지말자딥러닝2 - CNN RNN 포함버전
쫄지말자딥러닝2 - CNN RNN 포함버전쫄지말자딥러닝2 - CNN RNN 포함버전
쫄지말자딥러닝2 - CNN RNN 포함버전Modulabs
 
[0410 박민근] 기술 면접시 자주 나오는 문제들
[0410 박민근] 기술 면접시 자주 나오는 문제들[0410 박민근] 기술 면접시 자주 나오는 문제들
[0410 박민근] 기술 면접시 자주 나오는 문제들MinGeun Park
 
딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기 DEVIEW 2016
딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기 DEVIEW 2016딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기 DEVIEW 2016
딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기 DEVIEW 2016Taehoon Kim
 
CNN 초보자가 만드는 초보자 가이드 (VGG 약간 포함)
CNN 초보자가 만드는 초보자 가이드 (VGG 약간 포함)CNN 초보자가 만드는 초보자 가이드 (VGG 약간 포함)
CNN 초보자가 만드는 초보자 가이드 (VGG 약간 포함)Lee Seungeun
 
為何學數學 ? (Libre office 原稿)
為何學數學 ? (Libre office 原稿)為何學數學 ? (Libre office 原稿)
為何學數學 ? (Libre office 原稿)鍾誠 陳鍾誠
 
인공신경망
인공신경망인공신경망
인공신경망종열 현
 
Warsaw Data Science - Factorization Machines Introduction
Warsaw Data Science -  Factorization Machines IntroductionWarsaw Data Science -  Factorization Machines Introduction
Warsaw Data Science - Factorization Machines IntroductionBartlomiej Twardowski
 
가깝고도 먼 Trpo
가깝고도 먼 Trpo가깝고도 먼 Trpo
가깝고도 먼 TrpoWoong won Lee
 
Multi-Armed Bandit and Applications
Multi-Armed Bandit and ApplicationsMulti-Armed Bandit and Applications
Multi-Armed Bandit and ApplicationsSangwoo Mo
 
자습해도 모르겠던 딥러닝, 머리속에 인스톨 시켜드립니다.
자습해도 모르겠던 딥러닝, 머리속에 인스톨 시켜드립니다.자습해도 모르겠던 딥러닝, 머리속에 인스톨 시켜드립니다.
자습해도 모르겠던 딥러닝, 머리속에 인스톨 시켜드립니다.Yongho Ha
 
[MLOps KR 행사] MLOps 춘추 전국 시대 정리(210605)
[MLOps KR 행사] MLOps 춘추 전국 시대 정리(210605)[MLOps KR 행사] MLOps 춘추 전국 시대 정리(210605)
[MLOps KR 행사] MLOps 춘추 전국 시대 정리(210605)Seongyun Byeon
 
지적 대화를 위한 깊고 넓은 딥러닝 PyCon APAC 2016
지적 대화를 위한 깊고 넓은 딥러닝 PyCon APAC 2016지적 대화를 위한 깊고 넓은 딥러닝 PyCon APAC 2016
지적 대화를 위한 깊고 넓은 딥러닝 PyCon APAC 2016Taehoon Kim
 
딥러닝 - 역사와 이론적 기초
딥러닝 - 역사와 이론적 기초딥러닝 - 역사와 이론적 기초
딥러닝 - 역사와 이론적 기초Hyungsoo Ryoo
 
Deep Learning for Recommender Systems
Deep Learning for Recommender SystemsDeep Learning for Recommender Systems
Deep Learning for Recommender SystemsJustin Basilico
 
코드와 실습으로 이해하는 인공지능
코드와 실습으로 이해하는 인공지능코드와 실습으로 이해하는 인공지능
코드와 실습으로 이해하는 인공지능도형 임
 
Reinforcement Learning with Deep Energy-Based Policies
Reinforcement Learning with Deep Energy-Based PoliciesReinforcement Learning with Deep Energy-Based Policies
Reinforcement Learning with Deep Energy-Based PoliciesSangwoo Mo
 

Tendances (20)

Soft Actor-Critic Algorithms and Applications 한국어 리뷰
Soft Actor-Critic Algorithms and Applications 한국어 리뷰Soft Actor-Critic Algorithms and Applications 한국어 리뷰
Soft Actor-Critic Algorithms and Applications 한국어 리뷰
 
PR-302: NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis
PR-302: NeRF: Representing Scenes as Neural Radiance Fields for View SynthesisPR-302: NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis
PR-302: NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis
 
실무에서 활용하는 A/B테스트
실무에서 활용하는 A/B테스트실무에서 활용하는 A/B테스트
실무에서 활용하는 A/B테스트
 
쫄지말자딥러닝2 - CNN RNN 포함버전
쫄지말자딥러닝2 - CNN RNN 포함버전쫄지말자딥러닝2 - CNN RNN 포함버전
쫄지말자딥러닝2 - CNN RNN 포함버전
 
[0410 박민근] 기술 면접시 자주 나오는 문제들
[0410 박민근] 기술 면접시 자주 나오는 문제들[0410 박민근] 기술 면접시 자주 나오는 문제들
[0410 박민근] 기술 면접시 자주 나오는 문제들
 
딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기 DEVIEW 2016
딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기 DEVIEW 2016딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기 DEVIEW 2016
딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기 DEVIEW 2016
 
CNN 초보자가 만드는 초보자 가이드 (VGG 약간 포함)
CNN 초보자가 만드는 초보자 가이드 (VGG 약간 포함)CNN 초보자가 만드는 초보자 가이드 (VGG 약간 포함)
CNN 초보자가 만드는 초보자 가이드 (VGG 약간 포함)
 
為何學數學 ? (Libre office 原稿)
為何學數學 ? (Libre office 原稿)為何學數學 ? (Libre office 原稿)
為何學數學 ? (Libre office 原稿)
 
인공신경망
인공신경망인공신경망
인공신경망
 
Warsaw Data Science - Factorization Machines Introduction
Warsaw Data Science -  Factorization Machines IntroductionWarsaw Data Science -  Factorization Machines Introduction
Warsaw Data Science - Factorization Machines Introduction
 
가깝고도 먼 Trpo
가깝고도 먼 Trpo가깝고도 먼 Trpo
가깝고도 먼 Trpo
 
Multi-Armed Bandit and Applications
Multi-Armed Bandit and ApplicationsMulti-Armed Bandit and Applications
Multi-Armed Bandit and Applications
 
자습해도 모르겠던 딥러닝, 머리속에 인스톨 시켜드립니다.
자습해도 모르겠던 딥러닝, 머리속에 인스톨 시켜드립니다.자습해도 모르겠던 딥러닝, 머리속에 인스톨 시켜드립니다.
자습해도 모르겠던 딥러닝, 머리속에 인스톨 시켜드립니다.
 
[MLOps KR 행사] MLOps 춘추 전국 시대 정리(210605)
[MLOps KR 행사] MLOps 춘추 전국 시대 정리(210605)[MLOps KR 행사] MLOps 춘추 전국 시대 정리(210605)
[MLOps KR 행사] MLOps 춘추 전국 시대 정리(210605)
 
지적 대화를 위한 깊고 넓은 딥러닝 PyCon APAC 2016
지적 대화를 위한 깊고 넓은 딥러닝 PyCon APAC 2016지적 대화를 위한 깊고 넓은 딥러닝 PyCon APAC 2016
지적 대화를 위한 깊고 넓은 딥러닝 PyCon APAC 2016
 
딥러닝 - 역사와 이론적 기초
딥러닝 - 역사와 이론적 기초딥러닝 - 역사와 이론적 기초
딥러닝 - 역사와 이론적 기초
 
20191019 sinkhorn
20191019 sinkhorn20191019 sinkhorn
20191019 sinkhorn
 
Deep Learning for Recommender Systems
Deep Learning for Recommender SystemsDeep Learning for Recommender Systems
Deep Learning for Recommender Systems
 
코드와 실습으로 이해하는 인공지능
코드와 실습으로 이해하는 인공지능코드와 실습으로 이해하는 인공지능
코드와 실습으로 이해하는 인공지능
 
Reinforcement Learning with Deep Energy-Based Policies
Reinforcement Learning with Deep Energy-Based PoliciesReinforcement Learning with Deep Energy-Based Policies
Reinforcement Learning with Deep Energy-Based Policies
 

En vedette

Brief Introduction to Boltzmann Machine
Brief Introduction to Boltzmann MachineBrief Introduction to Boltzmann Machine
Brief Introduction to Boltzmann MachineArunabha Saha
 
P05 deep boltzmann machines cvpr2012 deep learning methods for vision
P05 deep boltzmann machines cvpr2012 deep learning methods for visionP05 deep boltzmann machines cvpr2012 deep learning methods for vision
P05 deep boltzmann machines cvpr2012 deep learning methods for visionzukun
 
Basic Understanding of the Deep
Basic Understanding of the DeepBasic Understanding of the Deep
Basic Understanding of the DeepMad Scientists
 
Searching for magic formula by deep learning
Searching for magic formula by deep learningSearching for magic formula by deep learning
Searching for magic formula by deep learningJames Ahn
 
Paper Reading : Learning from simulated and unsupervised images through adver...
Paper Reading : Learning from simulated and unsupervised images through adver...Paper Reading : Learning from simulated and unsupervised images through adver...
Paper Reading : Learning from simulated and unsupervised images through adver...정훈 서
 
Deep Belief Networks
Deep Belief NetworksDeep Belief Networks
Deep Belief NetworksHasan H Topcu
 
랩탑으로 tensorflow 도전하기 - tensorflow 설치
랩탑으로 tensorflow 도전하기 - tensorflow 설치랩탑으로 tensorflow 도전하기 - tensorflow 설치
랩탑으로 tensorflow 도전하기 - tensorflow 설치Lee Seungeun
 
랩탑으로 tensorflow 도전하기 - tutorial
랩탑으로 tensorflow 도전하기 - tutorial랩탑으로 tensorflow 도전하기 - tutorial
랩탑으로 tensorflow 도전하기 - tutorialLee Seungeun
 
텐서플로우 설치도 했고 튜토리얼도 봤고 기초 예제도 짜봤다면 TensorFlow KR Meetup 2016
텐서플로우 설치도 했고 튜토리얼도 봤고 기초 예제도 짜봤다면 TensorFlow KR Meetup 2016텐서플로우 설치도 했고 튜토리얼도 봤고 기초 예제도 짜봤다면 TensorFlow KR Meetup 2016
텐서플로우 설치도 했고 튜토리얼도 봤고 기초 예제도 짜봤다면 TensorFlow KR Meetup 2016Taehoon Kim
 
Tutorial on Deep learning and Applications
Tutorial on Deep learning and ApplicationsTutorial on Deep learning and Applications
Tutorial on Deep learning and ApplicationsNhatHai Phan
 

En vedette (11)

Brief Introduction to Boltzmann Machine
Brief Introduction to Boltzmann MachineBrief Introduction to Boltzmann Machine
Brief Introduction to Boltzmann Machine
 
P05 deep boltzmann machines cvpr2012 deep learning methods for vision
P05 deep boltzmann machines cvpr2012 deep learning methods for visionP05 deep boltzmann machines cvpr2012 deep learning methods for vision
P05 deep boltzmann machines cvpr2012 deep learning methods for vision
 
Basic Understanding of the Deep
Basic Understanding of the DeepBasic Understanding of the Deep
Basic Understanding of the Deep
 
restrictedboltzmannmachines
restrictedboltzmannmachinesrestrictedboltzmannmachines
restrictedboltzmannmachines
 
Searching for magic formula by deep learning
Searching for magic formula by deep learningSearching for magic formula by deep learning
Searching for magic formula by deep learning
 
Paper Reading : Learning from simulated and unsupervised images through adver...
Paper Reading : Learning from simulated and unsupervised images through adver...Paper Reading : Learning from simulated and unsupervised images through adver...
Paper Reading : Learning from simulated and unsupervised images through adver...
 
Deep Belief Networks
Deep Belief NetworksDeep Belief Networks
Deep Belief Networks
 
랩탑으로 tensorflow 도전하기 - tensorflow 설치
랩탑으로 tensorflow 도전하기 - tensorflow 설치랩탑으로 tensorflow 도전하기 - tensorflow 설치
랩탑으로 tensorflow 도전하기 - tensorflow 설치
 
랩탑으로 tensorflow 도전하기 - tutorial
랩탑으로 tensorflow 도전하기 - tutorial랩탑으로 tensorflow 도전하기 - tutorial
랩탑으로 tensorflow 도전하기 - tutorial
 
텐서플로우 설치도 했고 튜토리얼도 봤고 기초 예제도 짜봤다면 TensorFlow KR Meetup 2016
텐서플로우 설치도 했고 튜토리얼도 봤고 기초 예제도 짜봤다면 TensorFlow KR Meetup 2016텐서플로우 설치도 했고 튜토리얼도 봤고 기초 예제도 짜봤다면 TensorFlow KR Meetup 2016
텐서플로우 설치도 했고 튜토리얼도 봤고 기초 예제도 짜봤다면 TensorFlow KR Meetup 2016
 
Tutorial on Deep learning and Applications
Tutorial on Deep learning and ApplicationsTutorial on Deep learning and Applications
Tutorial on Deep learning and Applications
 

Similaire à Energy based models and boltzmann machines

The fastalgorithmfordeepbeliefnets
The fastalgorithmfordeepbeliefnetsThe fastalgorithmfordeepbeliefnets
The fastalgorithmfordeepbeliefnetsLee Gyeong Hoon
 
Restricted Boltzmann Machine
Restricted Boltzmann MachineRestricted Boltzmann Machine
Restricted Boltzmann MachineJungwon Kim
 
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
 
SAGAN_2024seminar announce_seoultech.pptx
SAGAN_2024seminar announce_seoultech.pptxSAGAN_2024seminar announce_seoultech.pptx
SAGAN_2024seminar announce_seoultech.pptxssuser4b2fe7
 
Variational inference intro. (korean ver.)
Variational inference intro. (korean ver.)Variational inference intro. (korean ver.)
Variational inference intro. (korean ver.)Kiho Hong
 
[컴퓨터비전과 인공지능] 7. 합성곱 신경망 2
[컴퓨터비전과 인공지능] 7. 합성곱 신경망 2[컴퓨터비전과 인공지능] 7. 합성곱 신경망 2
[컴퓨터비전과 인공지능] 7. 합성곱 신경망 2jdo
 
대칭가중치와 심층신뢰네트워크
대칭가중치와 심층신뢰네트워크대칭가중치와 심층신뢰네트워크
대칭가중치와 심층신뢰네트워크Sunggon Song
 
(Book Summary) Classification and ensemble(book review)
(Book Summary) Classification and ensemble(book review)(Book Summary) Classification and ensemble(book review)
(Book Summary) Classification and ensemble(book review)MYEONGGYU LEE
 
[2023] Cut and Learn for Unsupervised Object Detection and Instance Segmentation
[2023] Cut and Learn for Unsupervised Object Detection and Instance Segmentation[2023] Cut and Learn for Unsupervised Object Detection and Instance Segmentation
[2023] Cut and Learn for Unsupervised Object Detection and Instance Segmentationtaeseon ryu
 
14장 입자 시스템과 스트림 출력.pptx
14장 입자 시스템과 스트림 출력.pptx14장 입자 시스템과 스트림 출력.pptx
14장 입자 시스템과 스트림 출력.pptxHolyTak
 
K means 알고리즘을 이용한 영화배우 클러스터링
K means 알고리즘을 이용한 영화배우 클러스터링K means 알고리즘을 이용한 영화배우 클러스터링
K means 알고리즘을 이용한 영화배우 클러스터링Edward Yoon
 
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
 
"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
 
230806_캡스톤디자인 경진대회.pptx
230806_캡스톤디자인 경진대회.pptx230806_캡스톤디자인 경진대회.pptx
230806_캡스톤디자인 경진대회.pptxssuserab765f
 
자바로 Mnist 구현하고_스프링웹서버붙이기
자바로 Mnist 구현하고_스프링웹서버붙이기자바로 Mnist 구현하고_스프링웹서버붙이기
자바로 Mnist 구현하고_스프링웹서버붙이기라한사 아
 
Pose Graph based SLAM
Pose Graph based SLAMPose Graph based SLAM
Pose Graph based SLAMEdwardIm1
 
PR12 Season3 Weight Agnostic Neural Networks
PR12 Season3 Weight Agnostic Neural NetworksPR12 Season3 Weight Agnostic Neural Networks
PR12 Season3 Weight Agnostic Neural NetworksKyunghoon Jung
 
Effective c++ 3
Effective c++ 3Effective c++ 3
Effective c++ 3현찬 양
 

Similaire à Energy based models and boltzmann machines (20)

The fastalgorithmfordeepbeliefnets
The fastalgorithmfordeepbeliefnetsThe fastalgorithmfordeepbeliefnets
The fastalgorithmfordeepbeliefnets
 
Restricted Boltzmann Machine
Restricted Boltzmann MachineRestricted Boltzmann Machine
Restricted Boltzmann Machine
 
Coursera Machine Learning (by Andrew Ng)_강의정리
Coursera Machine Learning (by Andrew Ng)_강의정리Coursera Machine Learning (by Andrew Ng)_강의정리
Coursera Machine Learning (by Andrew Ng)_강의정리
 
SAGAN_2024seminar announce_seoultech.pptx
SAGAN_2024seminar announce_seoultech.pptxSAGAN_2024seminar announce_seoultech.pptx
SAGAN_2024seminar announce_seoultech.pptx
 
Variational inference intro. (korean ver.)
Variational inference intro. (korean ver.)Variational inference intro. (korean ver.)
Variational inference intro. (korean ver.)
 
[컴퓨터비전과 인공지능] 7. 합성곱 신경망 2
[컴퓨터비전과 인공지능] 7. 합성곱 신경망 2[컴퓨터비전과 인공지능] 7. 합성곱 신경망 2
[컴퓨터비전과 인공지능] 7. 합성곱 신경망 2
 
대칭가중치와 심층신뢰네트워크
대칭가중치와 심층신뢰네트워크대칭가중치와 심층신뢰네트워크
대칭가중치와 심층신뢰네트워크
 
(Book Summary) Classification and ensemble(book review)
(Book Summary) Classification and ensemble(book review)(Book Summary) Classification and ensemble(book review)
(Book Summary) Classification and ensemble(book review)
 
[2023] Cut and Learn for Unsupervised Object Detection and Instance Segmentation
[2023] Cut and Learn for Unsupervised Object Detection and Instance Segmentation[2023] Cut and Learn for Unsupervised Object Detection and Instance Segmentation
[2023] Cut and Learn for Unsupervised Object Detection and Instance Segmentation
 
14장 입자 시스템과 스트림 출력.pptx
14장 입자 시스템과 스트림 출력.pptx14장 입자 시스템과 스트림 출력.pptx
14장 입자 시스템과 스트림 출력.pptx
 
K means 알고리즘을 이용한 영화배우 클러스터링
K means 알고리즘을 이용한 영화배우 클러스터링K means 알고리즘을 이용한 영화배우 클러스터링
K means 알고리즘을 이용한 영화배우 클러스터링
 
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 번역
 
Review MLP Mixer
Review MLP MixerReview MLP Mixer
Review MLP Mixer
 
"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 ...
 
230806_캡스톤디자인 경진대회.pptx
230806_캡스톤디자인 경진대회.pptx230806_캡스톤디자인 경진대회.pptx
230806_캡스톤디자인 경진대회.pptx
 
자바로 Mnist 구현하고_스프링웹서버붙이기
자바로 Mnist 구현하고_스프링웹서버붙이기자바로 Mnist 구현하고_스프링웹서버붙이기
자바로 Mnist 구현하고_스프링웹서버붙이기
 
Pose Graph based SLAM
Pose Graph based SLAMPose Graph based SLAM
Pose Graph based SLAM
 
Deep learning overview
Deep learning overviewDeep learning overview
Deep learning overview
 
PR12 Season3 Weight Agnostic Neural Networks
PR12 Season3 Weight Agnostic Neural NetworksPR12 Season3 Weight Agnostic Neural Networks
PR12 Season3 Weight Agnostic Neural Networks
 
Effective c++ 3
Effective c++ 3Effective c++ 3
Effective c++ 3
 

Energy based models and boltzmann machines

  • 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 ● 모델에 맞는 에너지 함수 정의 ● (Hidden unit이 있다면) 자유 에너지 정의 ● 에너지 함수로부터 확률 분포 전개 ● 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 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
  • 24. Examples Supervised Learning ● Classifier [Larochelle 08] ○ Classification RBM ○ Discriminitive RBM ○ Hybrid Discriminitive RBM
  • 25. Examples - Feature Extractor MNIST [Larochelle 09]
  • 26. Examples - Feature Extractor MNIST [Larochelle 09] ● 각 Hidden Unit에 연결된 Weight를 그린 것. Input으로부터 Edge(펜스트로 크)를 뽑아낸다고 해석할 수 있음.
  • 27. Examples - Recommender [Edwin Chen] Modeling ● 6 visible units (movies), 2 hidden units (latent factors) ● Binary units (영화를 좋아하면 1, 아니면 0)
  • 28. Examples - Recommender [Edwin Chen] Training data ● Alice: (Harry Potter = 1, Avatar = 1, LOTR 3 = 1, Gladiator = 0, Titanic = 0, Glitter = 0) ● Bob: (Harry Potter = 1, Avatar = 0, LOTR 3 = 1, Gladiator = 0, Titanic = 0, Glitter = 0) ● Carol: (Harry Potter = 1, Avatar = 1, LOTR 3 = 1, Gladiator = 0, Titanic = 0, Glitter = 0) ● David: (Harry Potter = 0, Avatar = 0, LOTR 3 = 1, Gladiator = 1, Titanic = 1, Glitter = 0) ● Eric: (Harry Potter = 0, Avatar = 0, LOTR 3 = 1, Gladiator = 1, Titanic = 1, Glitter = 0) ● Fred: (Harry Potter = 0, Avatar = 0, LOTR 3 = 1, Gladiator = 1, Titanic = 1, Glitter = 0) Training Results
  • 29. Examples - Recommender [Edwin Chen] Latent factors ● Hidden 1은 Oscar winner 작품에 대한 선호를 나타내고 Hidden 2는 SF/fantasy 장르 영화에 대한 선호를 나타내는 Unit이라고 볼 수 있다. ● 즉, Training을 통해 Hidden 1은 Oscar winners 라는 Feature를 학습하였고 Hidden 2는 SF/fantasy 장르라는 Feature를 학습하였다. State Activation ● 만약 어떤 사람이 6개의 영화에 대한 선호를 입력하면 RBM은 그 사람의 선 호 성향을 말해줄 수 있다. ● 어떤 사람이 SF/fantasy 장르를 좋아한다고 하면 RBM은 그 사람이 좋아할 만한 영화를 추천해줄 수 있다.
  • 30. Examples - Recommender [Edwin Chen] Stochastic property ● RBM은 stochastic neural network이다. ● 즉, 어떤 사람이 해리포터, 반지의 제왕, 아바타를 모두 좋아한다고 해서 반 드시 Hidden 2 (SF/fantasy unit) 가 on 되는 것은 아니라는 것이다. 그럴 가 능성은 크지만. ● 반대로, 어떤 사람이 SF/fantasy 장르를 선호한다고 해도 해리포터, 반지의 제왕, 아바타 unit이 모두 on 되지 않을 수도 있다. Models of people in the messy (?) ● 이러한 속성은 오히려 현실을 더 잘 모델링할 수도 있다. ● 예를 들면 SF/fantasy 장르를 선호하는 사람이 (어떤 다른 이유때문에 = 적 당히 낮은 확률로) 해리포터는 좋아하지 않을 수도 있다. ● 또 어떤 사람이 해리포터, 반지의 제왕, 아바타를 모두 좋아한다면 SF/fantasy 영화를 좋아할 가능성은 매우 높으나 무조건 SF/fantasy를 좋아 하는 사람이라고 단정지을 수는 없다.
  • 31. 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 ● [Edwin Chen] Introduction Restricted Boltzmann Machines