Mixture of Experts Instructor : Saeed Shiry مقدمه 2 ایده اصلی در این است که نواحی مختلف ورودی با یادگیرهای مختلفی پوشش داده شوند .
Download
Report
Transcript Mixture of Experts Instructor : Saeed Shiry مقدمه 2 ایده اصلی در این است که نواحی مختلف ورودی با یادگیرهای مختلفی پوشش داده شوند .
Mixture of Experts
Instructor : Saeed Shiry
1
مقدمه
2
ایده اصلی در این است که نواحی مختلف ورودی با یادگیرهای
مختلفی پوشش داده شوند.
روش
.سه روش در ادامه مورد بحث قرار خواهند گرفت
Mixtures of linear regression models
Mixtures of logistic regression models
Mixture of experts model
3
Maximum Likelihood
Estimation
: ارائه میشودMLE قبل از ادامه بحث مقدماتی در مورد
P( Data | Model) P( Model)
P( Model| Data)
P( Data)
Likelihood Function
Likelihood = Probability (Data | Model)
Maximum likelihood:
Best estimate is the set of parameter values
which gives the highest possible likelihood.
در واقع میخواهیم بهترین مدلی را پیدا کنیم که باعث بوجود آمدن
در یک تابع درستنمائی داده ثابت فرض شده و.داده شده است
بدنبال بهترین مدل ( در حقیقت بهترین پارامترهای یک مدل از
.پیش فرض شده) هستیم
4
مثال
Suppose the following are marks in a course
55.5, 67, 87, 48, 63
Marks typically follow a Normal distribution
whose density function is
Now, we want to find the best , such that
مثال
Suppose we have data about heights of
people (in cm)
185,140,134,150,170
Heights follow a normal (log normal)
distribution but men on average are taller
than women. This suggests a mixture of two
distributions
A Mixture Distribution
Maximum Likelihood
Estimation
در عمل مسئله انتخاب بهترین مدل به مسئله انتخاب بهترین پارامتر
برای مدل از پیش فرض شده تقلیل داده میشود .چرا؟
لذا قصد داریم پارمتری مثل pرا که احتمال تولید داده توسط مدل
را حداکثر میکند بدست آوریم .پارامتر pرا maximum
likelihood estimatorمینامند.
برای پیدا کردن مقدار ماکزیمم میتوان از مشتق گیری استفاده نمود.
Example of MLE
Now, choose p which maximizes L(p). Instead
we will maximize l(p)= LogL(p)
Two Important Facts
If A1,,An are independent then
The log function is monotonically increasing.
x · y ! Log(x) · Log(y)
Therefore if a function f(x) >= 0, achieves a
maximum at x1, then log(f(x)) also achieves a
maximum at x1.
Properties of MLE
There are several technical properties of the
estimator but lets look at the most intuitive
one:
As the number of data points increase we
become more sure about the parameter p
Properties of MLE
r is the number of data points. As the number of data points increase the
confidence of the estimator increases.
Matlab commands
[phat,ci]=mle)Data,’distribution’,’Bernoulli’(;
[phi,ci]=mle)Data,’distribution’,’Normal’(;
راه حل مسئله
Problem:
Describe data with Mixture Model(MM)
Approach:
Decide on MM, e.g.
Gauss distribution
Mix of two
Estimate parameters
1
p( x | , )
e
2
2
( x )2
2 2
p( x | ) 1 p1 ( x | 1,12 ) 2 p2 ( x | 2 , 22 )
(1, 2 ,
1,12 , 2 , 22 )
Gaussian Mixture Model
(GMM)
Assume that the dataset is generated by two
mixed Gaussian distributions
Gaussian model 1: 1 1 , 1; p1
Gaussian model 2: 2 2 , 2 ; p2
If we know the memberships for each bin,
estimating the two Gaussian models is easy.
How to estimate the two Gaussian models
without knowing the memberships of bins?
Review
Stochastically independent
Bayes’ rule
Logarithm
Expectation
p( A, B) p( A) p( B)
p( X | )
p( X , Y | )
p(Y | X , )
ln ab ln a ln b
E Y | X x y fY |X ( x, y ) dy
Types of classification data
K-means: Data set is incomplete,
but we complete it using a specific
Data set is complete.
cost function.
x y z
x y z
x (1) 2 0 1 0
x (2) 3 0 0 1
x (3) 1 1 0 0
x (1) ? 0 1 0
x (2) ? 0 0 1
x (3) ? 1 0 0
EM: data set is incomplete, but we complete it using
posterior probabilities )a “soft” class membership(.
y
x
z
x(1)
?
P z1 1 x(1) ,
P z2 1 x(1) ,
P z3 1 x(1) ,
x(2)
?
P z1 1 x(2) , P z2 1 x(2) , P z3 1 x(2) ,
x(3)
?
P z1 1 x(3) , P z2 1 x(3) , P z3 1 x(3) ,
Motivation
Likelihood of parameter Θ given data X:
L ( | X ) : p ( X | )
Maximize expectation of L by tweaking Θ:
Analytically hard
Use “Expectation Maximization” method and algorithm
A.P.Dempster, et al 1977:
“Maximum likelihood from incomplete data via the EM algorithm”
General statement of the algorithm
Prove convergence
Coin the term ”EM algorithm”
EM as A Bound Optimization
EM algorithm in fact maximizes the log-likelihood
function of training data
Likelihood for a data point x
p( x) p( x,1 ) p( x, 2 ) p( x | 1 , 1 ) p1 p( x | 2 , 2 ) p2
p( x | 1 , 1 )
x 2
1
, p( x | 1 , 1 )
exp
2
2 1
2 12
1
x 2
2
exp
2
2 2
2 22
1
Log-likelihood of training data
l i 1 p( xi ) i 1 log{1 p1 ( xi | 1 , 1 ) 2 p2 ( xi | 2 , 2 )}
n
n
EM as A Bound Optimization
EM algorithm in fact maximizes the log-likelihood
function of training data
Likelihood for a data point x
p( x) p( x,1 ) p( x, 2 ) p( x | 1 , 1 ) p1 p( x | 2 , 2 ) p2
p( x | 1 , 1 )
x 2
1
, p( x | 1 , 1 )
exp
2
2 1
2 12
1
x 2
2
exp
2
2 2
2 22
1
Log-likelihood of training data
l i 1 p( xi ) i 1 log{1 p1 ( xi | 1 , 1 ) 2 p2 ( xi | 2 , 2 )}
n
n
EM as A Bound Optimization
EM algorithm in fact maximizes the log-likelihood
function of training data
Likelihood for a data point x
p( x) p( x,1 ) p( x, 2 ) p( x | 1 , 1 ) p1 p( x | 2 , 2 ) p2
p( x | 1 , 1 )
x 2
1
, p( x | 1 , 1 )
exp
2
2 1
2 12
1
x 2
2
exp
2
2 2
2 22
1
p1 = p(1) = p(z1 = 1) and p2 = p(2) = p(z2 =1)
1=(µ1, 1) and 2=(µ2, 2)
Data Likelihood
Remember:
We have unlabeled data X = {x1 x2 … xR}
We know there are k classes
We know P( 1) P( 2) P( 3( … P) k)
We don’t know μ1 μ2 .. μk
We can write P( X | μ1…. μk) = P( data | μ1…. μk)
px1...xR μ1...μ k
pxi μ1...μ k
R
i 1
p xi j , μ1...μ k P j
R
k
i 1 j 1
1
2
K exp 2 xi μ j P j
2σ
i 1 j 1
R
k
EM algorithm: log-likelihood increases with each step
log p x(1) ,
log p x
, x( N ) log p x(1) p x(2)
p x( N )
N
(i )
i 1
N
log P z1 1 N x(i ) 1 , 1 P z2 1 N x(i ) 2 , 2
i 1
-870
-880
log p x(1) ,
, x( N ) ( k )
-890
-900
-910
-920
-930
0
10
20
30
k
40
Maximize GMM Model
l i 1 log p( xi ) i 1 log p( x | 1,1 ) p1 p( x | 2 , 2 ) p2
n
p( x | 1 , 1 )
n
x 2
1
exp
2 12
2 12
1
1 x1 , 1 0, 1
, p( x | 1 , 1 )
n
x
i 1 i
n
x 2
2
exp
2 22
2 22
1
, 2 1, p1 p2 0.5
The simplest data to model:
a set of 1–d samples
Fit this distribution with a Gaussian
How find the parameters of the
best-fitting Gaussian?
Posterior probability
Likelihood function
mean
data points
std. dev.
By Bayes rule
Evidence
Prior probability
How find the parameters of the
best-fitting Gaussian?
Posterior probability
Likelihood function
mean
data points
std. dev.
Prior probability
Evidence
Maximum likelihood parameter estimation:
Derivation of MLE for Gaussians
Observation density
Log likelihood
Maximisation
Basic Maximum Likelihood Estimate
(MLE) of a Gaussian distribution
Mean
Variance
Covariance Matrix
Basic Maximum Likelihood Estimate
(MLE) of a Gaussian distribution
Mean
Variance
For vector-valued
data,
we have the
Covariance Matrix
EM Algorithm for GMM
Let memberships to be hidden variables
{x1, x2 ,..., xn } x1, m1 , x2 , m2 ,..., xn , mn
EM algorithm for Gaussian mixture model
Unknown memberships:
x1, m1 , x2 , m2 ,..., xn , mn
Unknown Gaussian models: 1 1 , 1 ; p1
2 2 , 2 ; p2
Learn these two sets of parameters iteratively
Start with A Random Guess
20
18
16
14
12
10
8
6
4
2
0
1
0
5
10
15
20
25
0
5
10
15
20
25
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
Random assign the
memberships to
each point
Start with A Random Guess
20
18
16
14
12
10
8
6
4
2
0
1
0
5
10
15
20
25
0
5
10
15
20
25
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
Random assign the
memberships to
each point
Estimate the means
and variance of
each Gaussian
model
E-step
Fixed the two Gaussian models
Estimate the posterior for each data point
p ( x,1 )
p ( x | 1 , 1 ) p1
p ( x, m 1)
p(m 1| x)
p( x)
p ( x,1 ) p( x, 2 ) p( x | 1 , 1 ) p1 p ( x | 2 , 2 ) p2
p (m 2 | x)
p( x | 1 , 1 )
p ( x, 2 )
p( x | 2 , 2 ) p2
p ( x, m 2)
p( x)
p( x,1 ) p( x, 2 ) p( x | 1 , 1 ) p1 p( x | 2 , 2 ) p2
2
x
1
1
exp
2 12
2 12
, p( x | 1 , 1 )
2
x
1
2
exp
2 22
2 22
EM Algorithm for GMM
20
Re-estimate the
memberships for
each point
18
16
14
12
10
8
6
4
2
01
0
5
10
15
20
25
5
10
15
20
25
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0
M-Step
Fixed the memberships
Re-estimate the two model Gaussian
n
l pˆ (mi 1| xi ) log p( xi ,1 ) pˆ (mi 2 | xi ) log p( xi , 2 )
i 1
n
pˆ (mi 1| xi ) log p1 log p( xi | 1 , 1 ) pˆ (mi 2 | xi ) log p2 log p( xi | 2 , 2 )
i 1
pˆ (mi 1| xi )
i 1
,
2
ˆ
ˆ
p
(
m
1|
x
)
x
p
(
m
1|
x
)
x
i
i
i
i
i
i
2
2
i 1
i 1
p1
,
1
1
1
n
n
n
i 1 pˆ (mi 1| xi )
i 1 pˆ (mi 1| xi )
n
n
n
2
ˆ
ˆ
ˆ
p
(
m
2
|
x
)
p
(
m
2
|
x
)
x
p
(
m
2
|
x
)
x
i
i
i
i
i
i
i
i
2
p2 i 1
, 2 i n1
, 2 i n1
22
n
i 1 pˆ (mi 2 | xi )
i 1 pˆ (mi 2 | xi )
n
n
n
Q
EM Algorithm for GMM
20
18
16
14
12
10
8
6
4
2
10
0
5
10
15
20
25
0
5
10
15
20
25
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
Re-estimate the
memberships for
each point
Re-estimate the
models
At the 5-th Iteration
20
18
16
14
12
10
8
6
4
2
0
0.9
0
5
10
15
0
5
10
15
20
25
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
20
25
Red Gaussian
component slowly
shifts toward the left
end of the x axis
At the10-th Iteration
20
18
16
14
12
10
8
6
4
2
0
0.9
0
5
10
15
20
25
5
10
15
20
25
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0
Red Gaussian
component still
slowly shifts toward
the left end of the x
axis
At the 20-th Iteration
20
18
16
14
12
10
8
6
4
2
0
1
0
5
10
0
5
10
15
20
25
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
15
20
25
Red Gaussian
component make
more noticeable shift
toward the left end of
the x axis
At the 50-th Iteration
20
18
16
14
12
10
8
6
4
2
01
0
5
10
15
20
25
5
10
15
20
25
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0
Red Gaussian
component is close
to the desirable
location
At the 100-th Iteration
20
18
16
14
12
10
8
6
4
2
01
0
5
10
15
20
25
5
10
15
20
25
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0
The results are
almost identical to
the ones for the
50-th iteration
0.5
p(x)
0.4
Component 1
Component 2
0.3
0.2
0.1
0
-5
0
5
10
5
10
0.5
p(x)
0.4
Mixture Model
0.3
0.2
0.1
0
-5
0
x
ANEMIA PATIENTS AND CONTROLS
Red Blood Cell Hemoglobin Concentration
4.4
4.3
4.2
4.1
4
3.9
3.8
3.7
3.3
3.4
3.5
3.6
3.7
Red Blood Cell Volume
3.8
3.9
4
EM ITERATION 1
Red Blood Cell Hemoglobin Concentration
4.4
4.3
4.2
4.1
4
3.9
3.8
3.7
3.3
3.4
3.5
3.6
3.7
Red Blood Cell Volume
3.8
3.9
4
EM ITERATION 3
Red Blood Cell Hemoglobin Concentration
4.4
4.3
4.2
4.1
4
3.9
3.8
3.7
3.3
3.4
3.5
3.6
3.7
Red Blood Cell Volume
3.8
3.9
4
EM ITERATION 5
Red Blood Cell Hemoglobin Concentration
4.4
4.3
4.2
4.1
4
3.9
3.8
3.7
3.3
3.4
3.5
3.6
3.7
Red Blood Cell Volume
3.8
3.9
4
EM ITERATION 10
Red Blood Cell Hemoglobin Concentration
4.4
4.3
4.2
4.1
4
3.9
3.8
3.7
3.3
3.4
3.5
3.6
3.7
Red Blood Cell Volume
3.8
3.9
4
EM ITERATION 15
Red Blood Cell Hemoglobin Concentration
4.4
4.3
4.2
4.1
4
3.9
3.8
3.7
3.3
3.4
3.5
3.6
3.7
Red Blood Cell Volume
3.8
3.9
4
EM ITERATION 25
Red Blood Cell Hemoglobin Concentration
4.4
4.3
4.2
4.1
4
3.9
3.8
3.7
3.3
3.4
3.5
3.6
3.7
Red Blood Cell Volume
3.8
3.9
4
LOG-LIKELIHOOD AS A FUNCTION OF EM ITERATIONS
490
480
Log-Likelihood
470
460
450
440
430
420
410
400
0
5
10
15
EM Iteration
20
25
ANEMIA DATA WITH LABELS
Red Blood Cell Hemoglobin Concentration
4.4
4.3
4.2
Control Group
4.1
4
Anemia Group
3.9
3.8
3.7
3.3
3.4
3.5
3.6
3.7
Red Blood Cell Volume
3.8
3.9
4
Mixtures of linear regression
models
54
میتوان با تعبیر احتماالتی رگراسیون خطی آنرا بعنوان ابزاری در
مدلهای پیچیده تر احتماالتی بکار برد.
تعداد kعدد مدل رگراسیون خطی را در نظر بگیرید که هر یک
ضرایب wkخود را دارند.
در بسیاری مسایل عملی برای در نظر گرفتن واریانس نویز از پارامتر
دقت βاستفاده میشود که برای همه Kمدل یکسان در نظر گرفته میشود.
برای مقدار هدف tمیتوان دسته بندی کننده ها را با ضریب πkبا هم
ترکیب نمود:
θمجموعه تمام پارامترهای قابل تنظیم در مدل است نظیر w, π, β
Mixtures of linear regression
models
برای مجموعه ای از داده های آموزشی }{φn, tnمقدار log
likelihoodاین تابع را میتوان بصورت زیر نوشت:
که در آن t = {t1, . . . , tN}Tبردار هدف است.
برای ماکزیمم کردن مقدار فوق میتوان از روش EMاستفاده نمود.
یک متغیر باینری پنهان بصورت } Z = {znدر نظر گرفته میشود.
}znk ∈ {0, 1
برای یک داده ورودی nهمه مقادیر k = 1, . . . , Kصفر هستند
بجز یکی که نشان میدهد کدام عضو باعث بوجود آمدن داده شده
است.
55
مدل گرافیکی
56
ترکیب مدل های رگراسیون خطی فوق را میتوان بصورت مدل
گرافیکی زیر نشان داد:
تابع بصورت زیر درخواهد آمد:
الگوریتم EM
الگوریتم EMابتدا یک مقدار اولیه برای پارامترهای مدل یعنی
θoldانتخاب میکند.
در مرحله Eاز این پارامترها برای محاسبه مقادیر احتمال
ثانویه و یا سهم هر مدل kدر داده nاستفاده میشود
از این مقدار برای محاسبه Expectationاستفاده میشود.
57
مرحله Maximation
در مرحله Mمقدار ) Q(θ, θoldنسبت به θحداکثر میشود در حالیکه
γnkثابت نگه داشته میشود.
برای بهینه سازی نسبت به پارامتر πkباید شرط
برقرار باشد .از اینرو از ضریبی با نام ضریب الگرانژ استفاده میشود.
58
برای ماکزیمم کردن نسبت به پارامتر wkمدل kام مقدار تابع Qبر
اساس این پارامتر بصورت زیر نوشته میشود.
که این رابطه مشابه شکل استانداردمجموع مربعات خطاست .وجود
ضریب باعث میشود تا این رابطه بصورت weighted least
squaresتبدیل شود.
مرحله Maximation
با مشتق گیری از رابطه فوق خواهیم داشت
که بصورت ماتریسی زیر قابل نمایش است.
با حل این رابطه خواهیم داشت
59
مرحله Maximation
برای ماکزیمم کردن مقدار Qبر حسب پارامتر βداریم
که با مشتق گیری آن خواهیم داشت.
60
مثالی از اجرای الگوریتم بر روی داده
نتیجه اعمال مدل بر روی یک داده
مقدار میانگین دو مدل بتدریج در شکلهای باال بر داده ها تنظیم میشود.
در شکل پائین مقدار احتمال ثانویه مربوط به هرداده نشان داده شده است.
61
Mixtures of logistic models
از آنجائیکه مدل الجستیک رگراسیون یک توزیع شرطی برای تابع هدف
تعیین میکند استفاده از آن در مدل مخلوط تواناتر از رگراسیون خطی
است.این توزیع برای تعداد kمدل بصورت زیر است:
برای مجموعه داده
برای ماکزیمم کردن رابطه فوق از روش EMاز یک متغیر نهان استفاده
میشود:
62
مقدار درست نمائی برابر است با
اجرای الگوریتم EM
ابتدا مقدار θoldمقدار دهی اولیه میشود .سپس در مرحله E
با استفاده از این مقدار برای هر مدل مقدار احتمال ثانویه زیر
بازای هر داده ورودی محاسبه میشود:
در مرحله Mبا استفاده از مقادیر فوق log likelihoodداده
برحسب θمحاسبه میگردد.
63
مرحله M
ماکزیمم کردن نسبت به πkبا استفاده از ضریب الگرانژ انجام
برقرار گردد .نتیجه رابطه زیر خواهد بود:
میشود تا
ماکزیمم کردن نسبت به wبا استفاده از روش تکراری
reweighted least squares(IRLS) algorithm
انجام میشود.
64
مثال
65
در شکل سمت چپ دو کالس مختلف با رنگ های آبی و قرمز مشخص
شده اند .رنگ زمینه احتمال تعلق هر نقطه به دسته مربوطه را نشان
میدهد.
در شکل از یک مدل الجستیک برای جدا سازی داده استفاده شده است.
در شکل سمت راست ترکیبی از دومدل الجستیک اعمال شده است.
Mixtures of experts
برا ی افزایش کارائی مدل های مخلوط میتوان ضریب ترکیب را
بصورت ترکیبی از ورودیها در نظر گرفت.
این روش mixture of experts modelنامیده میشود و
ضرایب ) πk(xتوابع gatingو ) pk(t|xخبره ) (expertنامیده
میشوند.
در این حالت نیز روابط زیر باید صادق باشد:
درحالتیکه خبره ها رگراسیون خطی و یا الجستیک باشند میتوان از
EMبرای یافتن مدل استفاده کرد.
66
Mixtures of experts
μ
Ellipsoidal
Gating function
g1
Gating
Network
x
g2
μ1
Expert
Network
x
g3
μ2
Expert
Network
x
μ3
Expert
Network
x
67
Hierarchical mixture of experts
مدل خطی قبلی برای ترکیب کردن خبره ها محدودیت های
عملی زیادی دارد از اینرو از یک مدل سلسله مراتبی برای
اینکار استفاده میشود.
این مدل شبیه یک مدل احتماالتی از درخت تصمیم عمل میکند.
این روش از الگوریتم back-propagationسریعتر
است.
برای مسایل onlineهم استفاده شده است.
68
Hierarchical mixture of experts
Linear Gating
function
69
محدودیت های مدل مخلوط و الگوریتم EM
70
در این روش فرض شده است که ویژگی ها ازهم مستقل
باشند.
عالوه بر آن الگوریتم EMممکن است که در مینمیم محلی
گیر کند.
برای آموزش این روش راه حل بسته ای وجود ندارد.
برای یک داده واحد مدل های مخلوط متفاوتی بدست می
آیند که باعث میشود تعبیر راه حل مشکل شود.
برای مسایل گسسته همیشه مناسب نیستند.
انتخاب تعداد خبره ها
یک راه ساده برای انتخاب تعداد خبره ها ،ایجاد یک تابع هزینه
است که به تعداد پارامترهای مدل و همچنین log-likelihood
بستگی داشته باشد .از آنجائیکه با افزایش پارامترهای استفاده شده
در مدل ،مقدار log-likelihoodنیز افزایش می یابد باید تابع
هزینه تعادلی بین تغییر این دو مقدار بوجود آورد.
یک تابع معمول تابع description lengthاست.
The effective number of
parameters in the model
dm
log N
2
Number of data points
71
, x( N ) m
DL log p x (1) , x (2) ,
Maximum likelihood
estimate of parameters
for m mixture
components