SlideShare uma empresa Scribd logo
1 de 33
Baixar para ler offline
GMM to VGMM
feat. PRML

박수철
Goal
Dataset을 여러개의 Gaussian distribution으로
표현한다.
1. 분류
주어진 feature를 바탕으로 다른 그룹으로 나눔
2. 생성 모델
주어진 feature를 닮은 synthetic 데이터를 만들어 냄
Solution
μ =
1
N
N
∑
n=1
xn
For single gaussian
Σ =
1
N
N
∑
n=1
(x − μ)(x − μ)T
arg maxμ,Σ
N
∑
n=1
lnN(xn ∣ μ, Σ)
Solution
For gaussian mixtures
arg maxπ,μ,Σ
N
∑
n=1
ln
K
∑
k=1
πkN(xn ∣ μ, Σ)
를 고정하면γ(znk)
μk, Σk, πk 를 closed form으로 구할 수 있다
에 대해 미분해보자μk, Σk
Where
는 무엇인가?γ(znk)
는 Data point xn 이 zk에 속할 확률로 정의할 수 있다.
Bayes’ rule
γ(znk)
E.M. expectation-maximization
Graph Representation
GMM VGMM
Latent
Visible given latent
Visible
Latent
Visible given latent
(for each single point) (for multiple points)
Goal
GMM VGMM
Find
πk : mixing coefficients
μk : gaussian means
Σk : gaussian covariance matrices
-> γ(znk) : responsibilities
Find
πk : mixing coefficient random variables
(αk : πk’s parameter)
μk : gaussian mean random variables
(mk, βk : μk’s parameters)
Λk : gaussian precision random variables
(Wk, 𝛎k : Λk’s parameters)
-> rnk : responsibilities
Big picture
VGMM
1. pi, Z와 mu, Lambda가 독립이라고 가정
2. pi, mu, Lambda가 고정된 상태서 Z를 최적화 (E-step)
3. Z가 고정된 상태에서 pi, mu, Lambda를 최적화 (M-step)
Z를 고정하면 (observed) pi와 mu, Lambda가 독립
4. 2. 3. step을 반복
Graph Representation
VGMM
p(zn |π) =
K
∏
k=1
πznk
k
π = {π1, π1, . . . , πK}
zn = {1 − to − K representaion}
pi : Components 각각이 선택될 확률 (mixing coefficients)
z_n : x_n이 속하는 component의 indicator 역할
pi가 주어졌을 때 z_n이란 데이터가 일어날 probability (categorical dist.)
z가 여러개 일 때 probability
ex) π = {0.1, 0.3, 0.6}
ex) z1 = {0, 1, 0}, z2 = {1, 0, 0} . . .
Z = {z1, z2, z3, . . . zN}
Graph Representation
VGMM
각각의 Component가 선택될 확률에 대한 prior distribution
alpha_0 : 각 component가 선택될 믿음을 갯수로 표현
α0 = {a00, a01, a02, . . . , a0K}
원래 alpha_0는 K개의 값을 가진 벡터로 표현되나, 벡터의 각 값을 같은 것으로 정해서 전개하고 있다.
α0 = {a0, a0, a0, . . . , a0}
Dir(1, 1, 1) : 3번 시행에서 동등하게 1, 1, 1번씩 component들이 선택될 것 같다.
Dir(10, 10, 10) : 30번 시행에서 동등하게 10, 10, 10번씩 component들이 선택될 것 같다.
Dir(10, 10, 10)은 Dir(1, 1, 1)보다 더 동등하게 각 component들이 선택될 것이라는 믿음을 나타낸다.
Posterior (N_1, N_2, …, N_K개 데이터 관측 후의 분포)
p(π|α0, N) ∝ Mult(N1, N2, . . . , NK)Dir(α0)
N = {N1, N2, . . . , Nk} data points에서 각 components들이 선택된 횟수
= Dir(α0 + N1, α0 + N2, . . . , α0 + Nk)
Graph Representation
Posterior : Dir(4, 3, 5) - 이 동물원에서 13번 동물을 마주칠 경우,
고양이, 강아지, 토끼가 4, 3, 6번 꼴로 나타날꺼야.
Prior : Dir(1, 1, 1) - 이 동물원에서 3번 동물을 마주칠 경우,
고양이, 강아지, 토끼가 1, 1, 1번 꼴로 나타날꺼야.
Likelihood : Mult(3, 2, 4) - 이 동물원에서 9번 동물을 마주쳤더니,
고양이, 강아지, 토끼가 3, 2, 4번 나타났다.
Graph Representation
VGMM component indicator, mean, precision가 주어졌을 때,
data point x_n의 likelihood
p(xn |zn, μ, Λ) =
K
∏
k=1
N(xn |μk, Λ−1
k )znk
data points X의 likelihood
X = {x1, x2, x3, . . . , xN}, N = number of datapoints
xn = (xn1, xn2, . . . xnD), D = dimension of data space
μ = (μ1, μ2, . . . , μK), K = number of components
Λ = (Λ1, Λ2, . . . , ΛK)
data points X
a single point x_n
Means of components
precisions of components
Graph Representation
VGMM Conjugate prior for
unknown mean, unknown precision normal distribution
Posterior (n개 데이터 관측 후의 분포)
p(μ, Λ|X) = N(μ|mn, (βnΛ)−1
)W(Λ|Wn, νn)
where
βn = β0 + N, N = number of datapoints
mn =
1
βn
(β0m0 + N¯x), ¯x = average of datapoints
W−1
n = W−1
0 + NS +
β0N
β0 + N
(¯x − m0)(¯x − m0)T
νn = ν0 + N
Sn = covariance matrix of datapoints
Gaussian-Wishart Distribution
prior mean의 precision은 prior precision에 비례하는 것으로 모델링
Wishart Distribution
Wishart Distribution
W(
[
1 0
0 1]
, 2)
Wishart Distribution
W(
[
1 0
0 1]
, 100)
Graph Representation
Prior : datapoint들의 mean과 covariance는
N(μ|0,1Λ) W(Λ|
[
1 0
0 1]
,2) 의 분포를 따를꺼야.
Graph Representation
Likelihood : 1000개의 datapoint들이 N(x|[2, 3],
[
2 1.5
1.5 2 ]
)
의 분포에서 최대 likelihood를 갖는것을 발견했다.
Graph Representation
posterior : datapoint들의 mean과 covariance는
와 같은 분포를 따를꺼야.p(μ, Λ|X) = N(μ|mn, (βnΛ)−1
)W(Λ|Wn, νn)
where
βn = β0 + N, N = number of datapoints
mn =
1
βn
(β0m0 + N ¯x), ¯x = average of datapoints
W−1
n = W−1
0 + NS +
β0N
β0 + N
(¯x − m0)(¯x − m0)T
νn = ν0 + N
Sn = covariance matrix of datapoints
βn = 1 + 1000
mn =
1
βn
(1 + [0,0]T
+ 1000[2,3]T
)
W−1
n =
[
1 0
0 1]
−1
+ 1000
[
2 1.5
1.5 2 ]
+
1 ⋅ 1000
1 + 1000
([2,3] − [0,0])([2,3] − [0,0])T
νn = 2 + 1000
Graph Representation
posterior : datapoint들의 mean과 covariance는
와 같은 분포를 따를꺼야.p(μ, Λ|X) = N(μ|mn, (βnΛ)−1
)W(Λ|Wn, νn)
Variational Distribution
Factorization
Mean-Field Assumption
latent distributions
General Result
EM에서와 같이 Z에 대해 pi, mu, precision을 독립으로 가정
Joint dist.에 ln를 취하고, 구하고자 하는 latent variable Z_j을 제외한 모든 latent에 대한 expectation을 구하고, exponent…
Expectation Step
GMM
p(znk = 1|xn, πk, μk, Σk) ≡
General Result
Variational Distribution q*(Z)
EM의 responsibility와 비교
q⋆
(Z) =
N
∏
n=1
K
∏
k=1
ρznk
nk
+ const .
Expectation Step
mixing coeff.에 비례
data likelihood에 비례
component precision에 비례
Expectation Step
expectation step에서 구한 r_nk는 responsibility에 해당하고,
maximization step에서 쓰일 수 있도록 몇가지 통계값을 구해놓는다.
(data nums, means, covariances)
(categorical dist.의 expected value)
Maximization Step
GMM
Maximization Step
General Result
Variational Distribution
ln q⋆
(π, μ, Λ) = EZ[ln p(X, Z, π, μ, Λ)] + const .
= EZ[ln [p(X|Z, μ, Λ)p(Z|π)p(π)p(μ|Λ)p(Λ)]] + const .
= EZ[ln p(X|Z, μ, Λ) + ln p(Z|π) + ln p(π) + ln p(μ|Λ)p(Λ)] + const .
= EZ[ln p(X|Z, μ, Λ)] + EZ[ln p(Z|π)] + EZ[ln p(π)] + EZ[ln p(μ|Λ)p(Λ)] + const .
q⋆
(π, μ, Λ)
by factorization (10.41)
by property of log
by linearity of expectation
자세히 살펴보면 pi에 대한 식과, mu, Lambda에 대한 식으로 분리 가능
왜 이런일 일어나는가?
E-step에서 구한 Z에 대해 pi, mu, Lambda가 독립이라 가정하면,
pi와 mu, Lambda는 독립이 되기 때문이다. (D-separation)
ln q⋆
(π) = ln p(π) + EZ[ln p(Z|π)] + const .
ln q⋆
(μ, Λ) =
K
∑
k=1
ln p(μk, Λk) + Ez[ln p(Z|π)] +
K
∑
k=1
N
∑
n=1
E[znk]ln N(xn |muk, Λ−1
k ) + const .
Maximization Step
ln q⋆
(π) = ln p(π) + EZ[ln p(Z|π)] + const .
by prior of pi (10.39) and
Conditional distribution Z given pi (10.37)
양 변에 exponential 취하면 q^star(pi)를 디리클레 분포로 볼 수 있다.
pi가 Lambda, mu와 독립이라고 가정했으므로, 단지 prior와 N_1, N_2, N_3개의
데이터가 주어졌을 때의 posterior와 같다.
p(π|α0, N) ∝ Cat(N1, N2, . . . , NK)Dir(α0)
= Dir(α0 + N1, α0 + N2, . . . , α0 + Nk)
Maximization Step
EM의 mixing coeff.와 비교
N개의 데이터 중 N_k개 속함
N_1 + N_2 +. … + N_k개 데이터가 관측됐을 때,
k클래스는 alpha_0 + N_k개 관측될 것이라는 믿음으로 업데이트!
ln q⋆
(μ, Λ) =
K
∑
k=1
ln p(μk, Λk) +
K
∑
k=1
N
∑
n=1
E[znk]ln N(xn |μk, Λ−1
k ) + const .
mu, Lambda가 pi, Z와 독립이라고 가정했으므로,
Z가 정해진 상황에서, mu, Lambda에 대한 prior와
N_1, N_2, …, N_k개의 데이터가 주어졌을 때의 posterior와 같다.
EM의 mu, Sigma와 비교
N_k가 클수록 mean의 precision 증가
N_k가 클수록 data mean에 가까워짐
N_k가 클수록
precision matrix의
자유도 증가
N_k가 클수록 data precision의 영향력이 커지며,
N_k가 클수록 data mean과 prior mean의 차이만큼
variance가 커지는 것으로 보상
ln q⋆
(μk, Λk) = ln p(μk, Λk) +
N
∑
n=1
E[znk]ln N(xn |μk, Λ−1
k ) + const .
Prior Likelihood (resposibility로 weight되어 있음)
Maximization Step
Maximization Step
M-step에서 구한 pi, mu, Lambda를 고정하고,
E-step에서 rho_nk를 구하기 위해 필요한 expectation들을 구한다.
Responsibility
Likelihood
Likelihood
Prior
Prior
prior에 비례
Data에 대한 Likehood에 비례
precision의 크기(determinant)에 비례
Degree of freedom of precision에 비례
precision coeff. of mean에 반비례

Mais conteúdo relacionado

Mais procurados

Support Vector Machine Tutorial 한국어
Support Vector Machine Tutorial 한국어Support Vector Machine Tutorial 한국어
Support Vector Machine Tutorial 한국어Jungkyu Lee
 
알기쉬운 Variational autoencoder
알기쉬운 Variational autoencoder알기쉬운 Variational autoencoder
알기쉬운 Variational autoencoder홍배 김
 
Murpy's Machine Learing: 10. Directed Graphical Model
Murpy's Machine Learing: 10. Directed Graphical ModelMurpy's Machine Learing: 10. Directed Graphical Model
Murpy's Machine Learing: 10. Directed Graphical ModelJungkyu Lee
 
Focal loss의 응용(Detection & Classification)
Focal loss의 응용(Detection & Classification)Focal loss의 응용(Detection & Classification)
Focal loss의 응용(Detection & Classification)홍배 김
 
머피's 머신러닝: Latent Linear Model
머피's 머신러닝: Latent Linear Model머피's 머신러닝: Latent Linear Model
머피's 머신러닝: Latent Linear ModelJungkyu Lee
 
MNIST for ML beginners
MNIST for ML beginnersMNIST for ML beginners
MNIST for ML beginners홍배 김
 
Visualizing data using t-SNE
Visualizing data using t-SNEVisualizing data using t-SNE
Visualizing data using t-SNE홍배 김
 
밑바닥부터시작하는딥러닝 Ch05
밑바닥부터시작하는딥러닝 Ch05밑바닥부터시작하는딥러닝 Ch05
밑바닥부터시작하는딥러닝 Ch05HyeonSeok Choi
 
딥러닝 제대로시작하기 Ch04
딥러닝 제대로시작하기 Ch04딥러닝 제대로시작하기 Ch04
딥러닝 제대로시작하기 Ch04HyeonSeok Choi
 
머피의 머신러닝 : Gaussian Processes
머피의 머신러닝 : Gaussian Processes머피의 머신러닝 : Gaussian Processes
머피의 머신러닝 : Gaussian ProcessesJungkyu Lee
 
Recurrent Neural Net의 이론과 설명
Recurrent Neural Net의 이론과 설명Recurrent Neural Net의 이론과 설명
Recurrent Neural Net의 이론과 설명홍배 김
 
The Art of Computer Programming 2.3.2 Tree
The Art of Computer Programming 2.3.2 TreeThe Art of Computer Programming 2.3.2 Tree
The Art of Computer Programming 2.3.2 Treehyun soomyung
 
Unsupervised anomaly detection with generative model
Unsupervised anomaly detection with generative modelUnsupervised anomaly detection with generative model
Unsupervised anomaly detection with generative modelTaeKang Woo
 
2021 2학기 정기 세미나 4주차
2021 2학기 정기 세미나 4주차2021 2학기 정기 세미나 4주차
2021 2학기 정기 세미나 4주차Moonki Choi
 
Data Visualization and t-SNE
Data Visualization and t-SNEData Visualization and t-SNE
Data Visualization and t-SNEHyeongmin Lee
 
8. Logistic Regression
8. Logistic Regression8. Logistic Regression
8. Logistic RegressionJungkyu Lee
 
2021 2학기 정기 세미나 5주차
2021 2학기 정기 세미나 5주차2021 2학기 정기 세미나 5주차
2021 2학기 정기 세미나 5주차Moonki Choi
 
Chapter 19 Variational Inference
Chapter 19 Variational InferenceChapter 19 Variational Inference
Chapter 19 Variational InferenceKyeongUkJang
 

Mais procurados (20)

Support Vector Machine Tutorial 한국어
Support Vector Machine Tutorial 한국어Support Vector Machine Tutorial 한국어
Support Vector Machine Tutorial 한국어
 
알기쉬운 Variational autoencoder
알기쉬운 Variational autoencoder알기쉬운 Variational autoencoder
알기쉬운 Variational autoencoder
 
Murpy's Machine Learing: 10. Directed Graphical Model
Murpy's Machine Learing: 10. Directed Graphical ModelMurpy's Machine Learing: 10. Directed Graphical Model
Murpy's Machine Learing: 10. Directed Graphical Model
 
Focal loss의 응용(Detection & Classification)
Focal loss의 응용(Detection & Classification)Focal loss의 응용(Detection & Classification)
Focal loss의 응용(Detection & Classification)
 
머피's 머신러닝: Latent Linear Model
머피's 머신러닝: Latent Linear Model머피's 머신러닝: Latent Linear Model
머피's 머신러닝: Latent Linear Model
 
MNIST for ML beginners
MNIST for ML beginnersMNIST for ML beginners
MNIST for ML beginners
 
Visualizing data using t-SNE
Visualizing data using t-SNEVisualizing data using t-SNE
Visualizing data using t-SNE
 
밑바닥부터시작하는딥러닝 Ch05
밑바닥부터시작하는딥러닝 Ch05밑바닥부터시작하는딥러닝 Ch05
밑바닥부터시작하는딥러닝 Ch05
 
딥러닝 제대로시작하기 Ch04
딥러닝 제대로시작하기 Ch04딥러닝 제대로시작하기 Ch04
딥러닝 제대로시작하기 Ch04
 
머피의 머신러닝 : Gaussian Processes
머피의 머신러닝 : Gaussian Processes머피의 머신러닝 : Gaussian Processes
머피의 머신러닝 : Gaussian Processes
 
Recurrent Neural Net의 이론과 설명
Recurrent Neural Net의 이론과 설명Recurrent Neural Net의 이론과 설명
Recurrent Neural Net의 이론과 설명
 
Variational AutoEncoder(VAE)
Variational AutoEncoder(VAE)Variational AutoEncoder(VAE)
Variational AutoEncoder(VAE)
 
The Art of Computer Programming 2.3.2 Tree
The Art of Computer Programming 2.3.2 TreeThe Art of Computer Programming 2.3.2 Tree
The Art of Computer Programming 2.3.2 Tree
 
Unsupervised anomaly detection with generative model
Unsupervised anomaly detection with generative modelUnsupervised anomaly detection with generative model
Unsupervised anomaly detection with generative model
 
2021 2학기 정기 세미나 4주차
2021 2학기 정기 세미나 4주차2021 2학기 정기 세미나 4주차
2021 2학기 정기 세미나 4주차
 
Data Visualization and t-SNE
Data Visualization and t-SNEData Visualization and t-SNE
Data Visualization and t-SNE
 
Generative adversarial network
Generative adversarial networkGenerative adversarial network
Generative adversarial network
 
8. Logistic Regression
8. Logistic Regression8. Logistic Regression
8. Logistic Regression
 
2021 2학기 정기 세미나 5주차
2021 2학기 정기 세미나 5주차2021 2학기 정기 세미나 5주차
2021 2학기 정기 세미나 5주차
 
Chapter 19 Variational Inference
Chapter 19 Variational InferenceChapter 19 Variational Inference
Chapter 19 Variational Inference
 

Semelhante a Gmm to vgmm

2012-12-25 사조사2급실기-공식
2012-12-25 사조사2급실기-공식2012-12-25 사조사2급실기-공식
2012-12-25 사조사2급실기-공식Seok-kyu Kong 공석규
 
Code로 이해하는 RNN
Code로 이해하는 RNNCode로 이해하는 RNN
Code로 이해하는 RNNSANG WON PARK
 
[기초수학] 미분 적분학
[기초수학] 미분 적분학[기초수학] 미분 적분학
[기초수학] 미분 적분학KyeongWon Koo
 
정수론적 알고리즘 - Sogang ICPC Team, 2020 Winter
정수론적 알고리즘 - Sogang ICPC Team, 2020 Winter정수론적 알고리즘 - Sogang ICPC Team, 2020 Winter
정수론적 알고리즘 - Sogang ICPC Team, 2020 WinterSuhyun Park
 
Quaternion and Rotation
Quaternion and RotationQuaternion and Rotation
Quaternion and RotationYoung-Min kang
 
Adversarial Attack in Neural Machine Translation
Adversarial Attack in Neural Machine TranslationAdversarial Attack in Neural Machine Translation
Adversarial Attack in Neural Machine TranslationHyunKyu Jeon
 
01.r 기초 확률분포
01.r 기초   확률분포01.r 기초   확률분포
01.r 기초 확률분포Yoonwhan Lee
 
제4강 명제와 논리-정보
제4강 명제와 논리-정보제4강 명제와 논리-정보
제4강 명제와 논리-정보csungwoo
 
1[1].2.10알고리즘 분석
1[1].2.10알고리즘 분석1[1].2.10알고리즘 분석
1[1].2.10알고리즘 분석Park Min Wook
 
Python Machine Learning - ML04 Artificial Neural Network(인공신경망)
Python Machine Learning - ML04 Artificial Neural Network(인공신경망)Python Machine Learning - ML04 Artificial Neural Network(인공신경망)
Python Machine Learning - ML04 Artificial Neural Network(인공신경망)건환 손
 
Semiconductor Fundamentals 2.3
Semiconductor Fundamentals 2.3Semiconductor Fundamentals 2.3
Semiconductor Fundamentals 2.3Je Hun Seo
 
4.convolutional neural networks
4.convolutional neural networks4.convolutional neural networks
4.convolutional neural networksHaesun Park
 
Eigendecomposition and pca
Eigendecomposition and pcaEigendecomposition and pca
Eigendecomposition and pcaJinhwan Suk
 
십분수학_Entropy and KL-Divergence
십분수학_Entropy and KL-Divergence십분수학_Entropy and KL-Divergence
십분수학_Entropy and KL-DivergenceHyunKyu Jeon
 
R 스터디 네번째
R 스터디 네번째R 스터디 네번째
R 스터디 네번째Jaeseok Park
 

Semelhante a Gmm to vgmm (20)

2012-12-25 사조사2급실기-공식
2012-12-25 사조사2급실기-공식2012-12-25 사조사2급실기-공식
2012-12-25 사조사2급실기-공식
 
Code로 이해하는 RNN
Code로 이해하는 RNNCode로 이해하는 RNN
Code로 이해하는 RNN
 
Tda jisu kim
Tda jisu kimTda jisu kim
Tda jisu kim
 
[기초수학] 미분 적분학
[기초수학] 미분 적분학[기초수학] 미분 적분학
[기초수학] 미분 적분학
 
06. graph mining
06. graph mining06. graph mining
06. graph mining
 
정수론적 알고리즘 - Sogang ICPC Team, 2020 Winter
정수론적 알고리즘 - Sogang ICPC Team, 2020 Winter정수론적 알고리즘 - Sogang ICPC Team, 2020 Winter
정수론적 알고리즘 - Sogang ICPC Team, 2020 Winter
 
Rdatamining
Rdatamining Rdatamining
Rdatamining
 
Quaternion and Rotation
Quaternion and RotationQuaternion and Rotation
Quaternion and Rotation
 
Adversarial Attack in Neural Machine Translation
Adversarial Attack in Neural Machine TranslationAdversarial Attack in Neural Machine Translation
Adversarial Attack in Neural Machine Translation
 
01.r 기초 확률분포
01.r 기초   확률분포01.r 기초   확률분포
01.r 기초 확률분포
 
제4강 명제와 논리-정보
제4강 명제와 논리-정보제4강 명제와 논리-정보
제4강 명제와 논리-정보
 
Digit recognizer
Digit recognizerDigit recognizer
Digit recognizer
 
R_datamining
R_dataminingR_datamining
R_datamining
 
1[1].2.10알고리즘 분석
1[1].2.10알고리즘 분석1[1].2.10알고리즘 분석
1[1].2.10알고리즘 분석
 
Python Machine Learning - ML04 Artificial Neural Network(인공신경망)
Python Machine Learning - ML04 Artificial Neural Network(인공신경망)Python Machine Learning - ML04 Artificial Neural Network(인공신경망)
Python Machine Learning - ML04 Artificial Neural Network(인공신경망)
 
Semiconductor Fundamentals 2.3
Semiconductor Fundamentals 2.3Semiconductor Fundamentals 2.3
Semiconductor Fundamentals 2.3
 
4.convolutional neural networks
4.convolutional neural networks4.convolutional neural networks
4.convolutional neural networks
 
Eigendecomposition and pca
Eigendecomposition and pcaEigendecomposition and pca
Eigendecomposition and pca
 
십분수학_Entropy and KL-Divergence
십분수학_Entropy and KL-Divergence십분수학_Entropy and KL-Divergence
십분수학_Entropy and KL-Divergence
 
R 스터디 네번째
R 스터디 네번째R 스터디 네번째
R 스터디 네번째
 

Gmm to vgmm

  • 1. GMM to VGMM feat. PRML 박수철
  • 2. Goal Dataset을 여러개의 Gaussian distribution으로 표현한다. 1. 분류 주어진 feature를 바탕으로 다른 그룹으로 나눔 2. 생성 모델 주어진 feature를 닮은 synthetic 데이터를 만들어 냄
  • 3. Solution μ = 1 N N ∑ n=1 xn For single gaussian Σ = 1 N N ∑ n=1 (x − μ)(x − μ)T arg maxμ,Σ N ∑ n=1 lnN(xn ∣ μ, Σ)
  • 4. Solution For gaussian mixtures arg maxπ,μ,Σ N ∑ n=1 ln K ∑ k=1 πkN(xn ∣ μ, Σ) 를 고정하면γ(znk) μk, Σk, πk 를 closed form으로 구할 수 있다 에 대해 미분해보자μk, Σk Where
  • 5. 는 무엇인가?γ(znk) 는 Data point xn 이 zk에 속할 확률로 정의할 수 있다. Bayes’ rule γ(znk)
  • 7. Graph Representation GMM VGMM Latent Visible given latent Visible Latent Visible given latent (for each single point) (for multiple points)
  • 8. Goal GMM VGMM Find πk : mixing coefficients μk : gaussian means Σk : gaussian covariance matrices -> γ(znk) : responsibilities Find πk : mixing coefficient random variables (αk : πk’s parameter) μk : gaussian mean random variables (mk, βk : μk’s parameters) Λk : gaussian precision random variables (Wk, 𝛎k : Λk’s parameters) -> rnk : responsibilities
  • 9. Big picture VGMM 1. pi, Z와 mu, Lambda가 독립이라고 가정 2. pi, mu, Lambda가 고정된 상태서 Z를 최적화 (E-step) 3. Z가 고정된 상태에서 pi, mu, Lambda를 최적화 (M-step) Z를 고정하면 (observed) pi와 mu, Lambda가 독립 4. 2. 3. step을 반복
  • 10. Graph Representation VGMM p(zn |π) = K ∏ k=1 πznk k π = {π1, π1, . . . , πK} zn = {1 − to − K representaion} pi : Components 각각이 선택될 확률 (mixing coefficients) z_n : x_n이 속하는 component의 indicator 역할 pi가 주어졌을 때 z_n이란 데이터가 일어날 probability (categorical dist.) z가 여러개 일 때 probability ex) π = {0.1, 0.3, 0.6} ex) z1 = {0, 1, 0}, z2 = {1, 0, 0} . . . Z = {z1, z2, z3, . . . zN}
  • 11. Graph Representation VGMM 각각의 Component가 선택될 확률에 대한 prior distribution alpha_0 : 각 component가 선택될 믿음을 갯수로 표현 α0 = {a00, a01, a02, . . . , a0K} 원래 alpha_0는 K개의 값을 가진 벡터로 표현되나, 벡터의 각 값을 같은 것으로 정해서 전개하고 있다. α0 = {a0, a0, a0, . . . , a0} Dir(1, 1, 1) : 3번 시행에서 동등하게 1, 1, 1번씩 component들이 선택될 것 같다. Dir(10, 10, 10) : 30번 시행에서 동등하게 10, 10, 10번씩 component들이 선택될 것 같다. Dir(10, 10, 10)은 Dir(1, 1, 1)보다 더 동등하게 각 component들이 선택될 것이라는 믿음을 나타낸다. Posterior (N_1, N_2, …, N_K개 데이터 관측 후의 분포) p(π|α0, N) ∝ Mult(N1, N2, . . . , NK)Dir(α0) N = {N1, N2, . . . , Nk} data points에서 각 components들이 선택된 횟수 = Dir(α0 + N1, α0 + N2, . . . , α0 + Nk)
  • 12. Graph Representation Posterior : Dir(4, 3, 5) - 이 동물원에서 13번 동물을 마주칠 경우, 고양이, 강아지, 토끼가 4, 3, 6번 꼴로 나타날꺼야. Prior : Dir(1, 1, 1) - 이 동물원에서 3번 동물을 마주칠 경우, 고양이, 강아지, 토끼가 1, 1, 1번 꼴로 나타날꺼야. Likelihood : Mult(3, 2, 4) - 이 동물원에서 9번 동물을 마주쳤더니, 고양이, 강아지, 토끼가 3, 2, 4번 나타났다.
  • 13. Graph Representation VGMM component indicator, mean, precision가 주어졌을 때, data point x_n의 likelihood p(xn |zn, μ, Λ) = K ∏ k=1 N(xn |μk, Λ−1 k )znk data points X의 likelihood X = {x1, x2, x3, . . . , xN}, N = number of datapoints xn = (xn1, xn2, . . . xnD), D = dimension of data space μ = (μ1, μ2, . . . , μK), K = number of components Λ = (Λ1, Λ2, . . . , ΛK) data points X a single point x_n Means of components precisions of components
  • 14. Graph Representation VGMM Conjugate prior for unknown mean, unknown precision normal distribution Posterior (n개 데이터 관측 후의 분포) p(μ, Λ|X) = N(μ|mn, (βnΛ)−1 )W(Λ|Wn, νn) where βn = β0 + N, N = number of datapoints mn = 1 βn (β0m0 + N¯x), ¯x = average of datapoints W−1 n = W−1 0 + NS + β0N β0 + N (¯x − m0)(¯x − m0)T νn = ν0 + N Sn = covariance matrix of datapoints
  • 15. Gaussian-Wishart Distribution prior mean의 precision은 prior precision에 비례하는 것으로 모델링
  • 19. Graph Representation Prior : datapoint들의 mean과 covariance는 N(μ|0,1Λ) W(Λ| [ 1 0 0 1] ,2) 의 분포를 따를꺼야.
  • 20. Graph Representation Likelihood : 1000개의 datapoint들이 N(x|[2, 3], [ 2 1.5 1.5 2 ] ) 의 분포에서 최대 likelihood를 갖는것을 발견했다.
  • 21. Graph Representation posterior : datapoint들의 mean과 covariance는 와 같은 분포를 따를꺼야.p(μ, Λ|X) = N(μ|mn, (βnΛ)−1 )W(Λ|Wn, νn) where βn = β0 + N, N = number of datapoints mn = 1 βn (β0m0 + N ¯x), ¯x = average of datapoints W−1 n = W−1 0 + NS + β0N β0 + N (¯x − m0)(¯x − m0)T νn = ν0 + N Sn = covariance matrix of datapoints βn = 1 + 1000 mn = 1 βn (1 + [0,0]T + 1000[2,3]T ) W−1 n = [ 1 0 0 1] −1 + 1000 [ 2 1.5 1.5 2 ] + 1 ⋅ 1000 1 + 1000 ([2,3] − [0,0])([2,3] − [0,0])T νn = 2 + 1000
  • 22. Graph Representation posterior : datapoint들의 mean과 covariance는 와 같은 분포를 따를꺼야.p(μ, Λ|X) = N(μ|mn, (βnΛ)−1 )W(Λ|Wn, νn)
  • 23. Variational Distribution Factorization Mean-Field Assumption latent distributions General Result EM에서와 같이 Z에 대해 pi, mu, precision을 독립으로 가정 Joint dist.에 ln를 취하고, 구하고자 하는 latent variable Z_j을 제외한 모든 latent에 대한 expectation을 구하고, exponent…
  • 24. Expectation Step GMM p(znk = 1|xn, πk, μk, Σk) ≡
  • 25. General Result Variational Distribution q*(Z) EM의 responsibility와 비교 q⋆ (Z) = N ∏ n=1 K ∏ k=1 ρznk nk + const . Expectation Step mixing coeff.에 비례 data likelihood에 비례 component precision에 비례
  • 26. Expectation Step expectation step에서 구한 r_nk는 responsibility에 해당하고, maximization step에서 쓰일 수 있도록 몇가지 통계값을 구해놓는다. (data nums, means, covariances) (categorical dist.의 expected value)
  • 28. Maximization Step General Result Variational Distribution ln q⋆ (π, μ, Λ) = EZ[ln p(X, Z, π, μ, Λ)] + const . = EZ[ln [p(X|Z, μ, Λ)p(Z|π)p(π)p(μ|Λ)p(Λ)]] + const . = EZ[ln p(X|Z, μ, Λ) + ln p(Z|π) + ln p(π) + ln p(μ|Λ)p(Λ)] + const . = EZ[ln p(X|Z, μ, Λ)] + EZ[ln p(Z|π)] + EZ[ln p(π)] + EZ[ln p(μ|Λ)p(Λ)] + const . q⋆ (π, μ, Λ) by factorization (10.41) by property of log by linearity of expectation
  • 29. 자세히 살펴보면 pi에 대한 식과, mu, Lambda에 대한 식으로 분리 가능 왜 이런일 일어나는가? E-step에서 구한 Z에 대해 pi, mu, Lambda가 독립이라 가정하면, pi와 mu, Lambda는 독립이 되기 때문이다. (D-separation) ln q⋆ (π) = ln p(π) + EZ[ln p(Z|π)] + const . ln q⋆ (μ, Λ) = K ∑ k=1 ln p(μk, Λk) + Ez[ln p(Z|π)] + K ∑ k=1 N ∑ n=1 E[znk]ln N(xn |muk, Λ−1 k ) + const . Maximization Step
  • 30. ln q⋆ (π) = ln p(π) + EZ[ln p(Z|π)] + const . by prior of pi (10.39) and Conditional distribution Z given pi (10.37) 양 변에 exponential 취하면 q^star(pi)를 디리클레 분포로 볼 수 있다. pi가 Lambda, mu와 독립이라고 가정했으므로, 단지 prior와 N_1, N_2, N_3개의 데이터가 주어졌을 때의 posterior와 같다. p(π|α0, N) ∝ Cat(N1, N2, . . . , NK)Dir(α0) = Dir(α0 + N1, α0 + N2, . . . , α0 + Nk) Maximization Step EM의 mixing coeff.와 비교 N개의 데이터 중 N_k개 속함 N_1 + N_2 +. … + N_k개 데이터가 관측됐을 때, k클래스는 alpha_0 + N_k개 관측될 것이라는 믿음으로 업데이트!
  • 31. ln q⋆ (μ, Λ) = K ∑ k=1 ln p(μk, Λk) + K ∑ k=1 N ∑ n=1 E[znk]ln N(xn |μk, Λ−1 k ) + const . mu, Lambda가 pi, Z와 독립이라고 가정했으므로, Z가 정해진 상황에서, mu, Lambda에 대한 prior와 N_1, N_2, …, N_k개의 데이터가 주어졌을 때의 posterior와 같다. EM의 mu, Sigma와 비교 N_k가 클수록 mean의 precision 증가 N_k가 클수록 data mean에 가까워짐 N_k가 클수록 precision matrix의 자유도 증가 N_k가 클수록 data precision의 영향력이 커지며, N_k가 클수록 data mean과 prior mean의 차이만큼 variance가 커지는 것으로 보상 ln q⋆ (μk, Λk) = ln p(μk, Λk) + N ∑ n=1 E[znk]ln N(xn |μk, Λ−1 k ) + const . Prior Likelihood (resposibility로 weight되어 있음) Maximization Step
  • 32. Maximization Step M-step에서 구한 pi, mu, Lambda를 고정하고, E-step에서 rho_nk를 구하기 위해 필요한 expectation들을 구한다.
  • 33. Responsibility Likelihood Likelihood Prior Prior prior에 비례 Data에 대한 Likehood에 비례 precision의 크기(determinant)에 비례 Degree of freedom of precision에 비례 precision coeff. of mean에 반비례