32
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Thuật toán Cực đại hóa Kì vọng (EM) Trần Quốc Long 1 1 Bộ môn Khoa học Máy tính Khoa Công nghệ Thông tin Trường Đại học Công nghệ Thứ Tư, 30/03/2016 Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 1 / 19

Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

  • Upload
    others

  • View
    15

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Thuật toán Cực đại hóa Kì vọng (EM)

Trần Quốc Long1

1Bộ môn Khoa học Máy tínhKhoa Công nghệ Thông tinTrường Đại học Công nghệ

Thứ Tư, 30/03/2016

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 1 / 19

Page 2: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Giới thiệu

Nội dung

1 Giới thiệu

2 Thuật toán cực đại hóa kì vọng (EM)

3 Mô hình Markov ẩn

4 Tổng kết

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 2 / 19

Page 3: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Giới thiệu

Bài toán ước lượng mật độ (có tham số)

Xét biến ngẫu nhiên X trên tập X .Ta không biết phân bố thật sự p(x) của X nhưng ta có dữ liệu là mộtmẫu lấy từ phân bố p(x)

x ∼ p(x).

Xét lớp hàm phân bố p(x; θ),x ∈ X phụ thuộc vào tham số θ ∈ Θ.Bài toán: Cho mẫu x ∼ p(x), tìm tham số θ để p(x; θ) xấp xỉ p(x).

Lưu ý: Khi X = Z × Z × . . .×Z và p(x) có thể phân tích thànhnhân tử

p(x) = p(z1, z2, . . . , zn) =n∏

i=1

p(zi), zi ∈ Z

thì x tương đương với n mẫu học độc lập có cùng phân bố zi, i = 1,n.

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 3 / 19

Page 4: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Giới thiệu

Phương pháp ước lượng hợp lý cực đại (MLE)Bài toán

Bài toán: Cho mẫu x ∼ p(x), tìm tham số θ để p(x; θ) xấp xỉ p(x).Sự hợp lý của tham số (likelihood function):

L(θ; x) = p(x; θ)

là hàm của θ.Ước lượng hợp lý cực đại:

θMLE = arg maxθL(θ; x)

= arg maxθ

logL(θ; x)

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 4 / 19

Page 5: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Giới thiệu

Phương pháp ước lượng hợp lý cực đại (MLE)Ví dụ

Giả sử n mẫu z1, z2, . . . , zn độc lập và có cùng phân bố p(z).Xét lớp hàm phân bố chuẩn p(z;µ, σ2) = N (z;µ, σ2).Sự hợp lý của tham số

L(µ, σ2︸ ︷︷ ︸θ

; z1:n︸︷︷︸x

) =n∏

i=1

1√2πσ2

e−(zi−µ)2

2σ2

logL(µ, σ2; z1:n) = n log 1√2πσ2

− 1

2σ2

n∑i=1

(zi − µ)2

Lấy đạo hàm và đặt bằng 0 được

µ = z = 1

n

n∑i=1

zi; σ2 =

∑ni=1 z2in − z2

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 4 / 19

Page 6: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Thuật toán cực đại hóa kì vọng (EM)

Nội dung

1 Giới thiệu

2 Thuật toán cực đại hóa kì vọng (EM)

3 Mô hình Markov ẩn

4 Tổng kết

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 5 / 19

Page 7: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Thuật toán cực đại hóa kì vọng (EM)

Biến ẩn

Trong đa số trường hợp, ta không có đầy đủ dữ liệu, một số thông tinđã bị ẩn đi.Ta chỉ quan sát được biến x mà không quan sát được biến y (ẩn).Bài toán: Cho mẫu x, ước lượng mật độ p(x,y) với lớp hàm phânbố p(x,y; θ).

Ước lượng hợp lý cực đại (MLE)

θMLE = arg maxθ

log p(x; θ)

= arg maxθ

log[∫

yp(x,y; θ)dy

]

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 6 / 19

Page 8: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Thuật toán cực đại hóa kì vọng (EM)

Bất đẳng thức biến phân cho EM (variational inequality)Xét một phân bố bất kì q(y), ta có

log p(x; θ) =∫

ylog p(x; θ)q(y)dy

=

∫y

log p(x,y; θ)q(y)dy−∫

ylog p(y|x; θ)q(y)dy∫

ylog p(x,y; θ)q(y)dy = Eq[log p(x,y; θ)]

−∫

ylog p(y|x; θ)q(y)dy =

∫y

log q(y)p(y|x; θ)q(y)dy︸ ︷︷ ︸

DKL[q∥p(y|x;θ)]

−∫

ylog q(y)q(y)dy︸ ︷︷ ︸

E[q]

Eq[log p(x,y; θ)]: kì vọng theo phân bố q(y).DKL[q∥p(y|x; θ)]: khoảng cách Kullback-Leibler.E [q]: entropy của phân bố q(y).

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 7 / 19

Page 9: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Thuật toán cực đại hóa kì vọng (EM)

Bất đẳng thức biến phân cho EM (variational inequality)

Xét một phân bố bất kì q(y), ta có

log p(x; θ)︸ ︷︷ ︸sự hợp lý

= Eq[log p(x,y; θ)]︸ ︷︷ ︸kì vọng

+DKL[q∥p(y|x; θ)]︸ ︷︷ ︸khoảng cách KL≥0

+ E [q]︸︷︷︸entropy

Sự hợp lý bị chặn dưới bởi kì vọng + entropy.Cận dưới này chặt nhất (dấu bằng xảy ra) khi

q(y) = p(y|x; θ)

Nếu cố định q(y) như trên thì chỉ cần cực đại hóa kì vọng

Ep(y|x;θ)[log p(x,y; θ)]

Bản chất thuật toán EM là cực đại hóa cận dưới của sự hợp lý.

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 7 / 19

Page 10: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Thuật toán cực đại hóa kì vọng (EM)

Thuật toán cực đại hóa kì vọng (EM)

Thuật toán 1 Cực đại hóa kì vọng (EM)1: Input: mẫu x (thông tin về y bị ẩn).2: Khởi tạo: chọn tham số θ(0) của phân bố p(x,y; θ) và k = 0.3: while chưa hội tụ do4: Bước E: tính phân bố hậu nghiệm p(y|x; θ(k)) và biểu thức kì vọng

Q(θ|θ(k)) = Ep(y|x;θ(k))[log p(x,y; θ)]

5: Bước M: cực đại hóa kì vọng

θ(k+1) = arg maxθ

Q(θ|θ(k))

6: k← k + 1.7: end while

Đặt tên bởi Arthur Dempster, Nan Laird, và Donald Rubin (1977).

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 8 / 19

Page 11: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Thuật toán cực đại hóa kì vọng (EM)

Thuật toán cực đại hóa kì vọng (EM)

Đặc biệt khi p(x,y; θ) có phân bố dạng mũ (exponential family)

p(x,y; θ) = h(x,y)g(θ) exp{⟨−−→η(θ),

−−−−→T(x,y)⟩}

Véc-tơ−−−−→T(x,y) gọi là thống kê đủ (sufficient statistics) của phân bố

dạng mũ.Bài toán MLE khi biết cả x và y

arg maxθ

log p(x,y; θ) = arg maxθ

[log g(θ) + ⟨−−→η(θ),

−−−−→T(x,y)⟩]

Thuật toán EM khi y bị ẩn đi

arg maxθ

Eq[log p(x,y; θ)] = arg maxθ

[log g(θ) + ⟨−−→η(θ),Eq[

−−−−→T(x,y)]⟩]

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 8 / 19

Page 12: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Thuật toán cực đại hóa kì vọng (EM)

Thuật toán cực đại hóa kì vọng (EM)

(MLE) : arg maxθ

[log g(θ) + ⟨−−→η(θ),

−−−−→T(x,y)⟩]

(EM) : arg maxθ

[log g(θ) + ⟨−−→η(θ),Eq[

−−−−→T(x,y)]⟩]

Rolf Sundberg (1974): Bước M của thuật toán EM chính là phươngpháp MLE sau khi thay thống kê đủ T(x,y) bằng kì vọng của nó theophân bố q(y).

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 8 / 19

Page 13: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Thuật toán cực đại hóa kì vọng (EM)

Ví dụTrộn phân bố chuẩn (mixture of gaussians)

Giả sử n mẫu z1, z2, . . . , zn độc lập và có cùng phân bố p(z).Xét lớp hàm phân bố là trộn của K phân bố chuẩn

p(z ; µ1:K, σ21:K) =

K∑k=1

pkN (z ; µk, σ2k)

Biến ẩn: gọi cik ∈ {0, 1} là biến nhị phân chỉ ra mẫu zi có thuộc phânbố chuẩn thứ k hay không.

p(z1:n, c ; µ1:K, σ21:K) =

n∏i=1

K∏k=1

(pkN (zi;µk, σ2k))

cik

︸ ︷︷ ︸Phân bố dạng mũ

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 9 / 19

Page 14: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Thuật toán cực đại hóa kì vọng (EM)

Ví dụTrộn phân bố chuẩn: MLE khi biết cik

Thống kê đủ

nk =n∑

i=1

cik, t1,k =n∑

i=1

cikzi, t2,k =n∑

i=1

cikz2i

MLE

pk =nkn

µk =t1,knk

σ2k =

t2,knk−

(t1,knk

)2

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 9 / 19

Page 15: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Thuật toán cực đại hóa kì vọng (EM)

Ví dụTrộn phân bố chuẩn: EM khi không biết cik

Bước E: tính xác suất hậu nghiệm và kì vọng của thống kê đủ

rik = E[cik|zi;µ,σ2] = p(cik = 1|zi;µ,σ

2) =pkN (zi|µk, σ

2k)∑

k′ pk′N (zi|µk′ , σ2k′)

nk =n∑

i=1

rik, t1,k =n∑

i=1

rikzi, t2,k =n∑

i=1

rikz2i

Bước M: thế vào công thức MLE

pk =nkn

µk =t1,knk

σ2k =

t2,knk−

(t1,knk

)2

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 9 / 19

Page 16: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Mô hình Markov ẩn

Nội dung

1 Giới thiệu

2 Thuật toán cực đại hóa kì vọng (EM)

3 Mô hình Markov ẩn

4 Tổng kết

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 10 / 19

Page 17: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Mô hình Markov ẩn

Mô hình Markov ẩnGiới thiệu

x(0) x(1) ... x(t-1) x(t) x(t+1) ... x(T)

y(1) ... y(t-1) y(t) y(t+1) ... y(T)

Biến trạng thái x ∈ {x1, . . . , xN} (ẩn).Biến nhãn y ∈ {y1, . . . , yK} (hiện).Tính chất Markov:

x(u) ⊥ x(v) | x(t), u > t, v < tx(u) ⊥ y(v) | x(t), u > t, v ≤ t.

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 11 / 19

Page 18: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Mô hình Markov ẩn

Mô hình Markov ẩnTham số của mô hình

x(0) x(1) ... x(t-1) x(t) x(t+1) ... x(T)

y(1) ... y(t-1) y(t) y(t+1) ... y(T)

Xác suất chuyển trạng thái

P(x(t + 1) = xj|x(t) = xi) = aij

Xác suất sinh ra y

P(y(t) = yk|x(t) = xi) = bik

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 11 / 19

Page 19: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Mô hình Markov ẩn

Mô hình Markov ẩnVí dụ

x(0) x(1) ... x(t-1) x(t) x(t+1) ... x(T)

y(1) ... y(t-1) y(t) y(t+1) ... y(T)

Biến ẩn x có thể là chức năng đoạn gen, loại của từ trong câu, v.v...Biến quan sát được y là kí hiệu nucleotide ATCG, các từ cụ thể, v.v...Xác suất chuyển trạng thái là xác suất chuyển giữa các đoạn gen cóchức năng khác nhau, v.v...Xác suất sinh dữ liệu là xác suất để mỗi đoạn gen sinh ra cácnucleotide khác nhau, v.v...Bài toán: Quan sát được (biến hiện) y, tính tham số của mô hìnhMarkov ẩn A = [aij],B = [bik].

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 11 / 19

Page 20: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Mô hình Markov ẩn

Mô hình Markov ẩnVí dụ: Wikipedia Alice - Bob

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 11 / 19

Page 21: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Mô hình Markov ẩn

Xác suất đầy đủ của HMMGiả sử ta biết cả biến trạng thái x = (x(0) = x1, x(1), x(2), . . . , x(T)) vàbiến quan sát được y = (y(1), y(2), . . . , y(T)).

Đặt δst,i ∈ {0, 1} là biến nhị phân chỉ ra x(t) = xi (biến ẩn).

Đặt δot,k ∈ {0, 1} là biến nhị phân chỉ ra y(t) = yk (biến hiện).

Xác suất chuyển trạng thái x(t− 1)→ x(t) là

N∏i=1

N∏j=1

aδst−1,i δs

t,jij

(chỉ có một số khác 1)Xác suất sinh dữ liệu x(t)→ y(t) là

N∏i=1

K∏k=1

bδs

t,i δot,k

ik

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 12 / 19

Page 22: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Mô hình Markov ẩn

Xác suất đầy đủ của HMMGiả sử ta biết cả biến trạng thái x = (x(0) = x1, x(1), x(2), . . . , x(T)) vàbiến quan sát được y = (y(1), y(2), . . . , y(T)).

x(0) x(1) ... x(t-1) x(t) x(t+1) ... x(T)

y(1) ... y(t-1) y(t) y(t+1) ... y(T)

Xác suất đầy đủ (phân phối dạng mũ)

P( δs︸︷︷︸biến ẩn

, δo︸︷︷︸biến hiện

; A,B︸ ︷︷ ︸tham số θ

) =

T∏t=1

N∏i=1

N∏j=1

aδst−1,iδ

st,j

ij

N∏i=1

K∏k=1

bδs

t,iδot,k

ik

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 12 / 19

Page 23: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Mô hình Markov ẩn

Thống kê đủ

log P(δs, δo;A,B) =

N,N∑i,j=1

(log aij)

[ T∑t=1

δst−1,iδ

st,j

]+

N,K∑i,k=1

(log bik)

[ T∑t=1

δst,iδ

ot,k

]

=

N,N∑i,j=1

log aij ·Uij +

N,K∑i,k=1

log bik ·Vik

Thống kê đủ (số đếm trên cạnh đồ thị)

Uij =T∑

t=1

δst−1,i δ

st,j︸ ︷︷ ︸

số lần xi → xj

, Vik =

T∑t=1

δst,i δ

ot,k︸ ︷︷ ︸

số lần xi → yk

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 13 / 19

Page 24: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Mô hình Markov ẩn

MLE khi biết δsTính aij, bik

Bài toán tối ưu có ràng buộc

maxaij,j=1,...,N

N∑j=1

log aij ·Uij , sao choN∑

j=1

aij = 1

maxbik,k=1,...,K

K∑k=1

log bik ·Vik , sao choK∑

k=1

bik = 1

Dùng phương pháp nhân tử Lagrange

aij =Uij∑j′ Uij′

∝ Uij, j = 1, . . . ,N

bik =Vik∑k′ Vik′

∝ Vik, k = 1, . . . ,K

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 14 / 19

Page 25: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Mô hình Markov ẩn

EM khi không biết δsThế vào công thức MLE

Tính kì vọng hậu nghiệm

Uij = E[Uij|δo;A,B], Vik = E[Vik|δo;A,B]

Thế vào công thức MLE

aij =Uij∑j′ Uij′

, bik =Vik∑k′ Vik′

,

với i, j = 1, . . . ,N, k = 1, . . . ,K.

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 15 / 19

Page 26: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Mô hình Markov ẩn

EM khi không biết δsKì vọng hậu nghiệm

Uij = E[Uij | δo] =T∑

t=1

E[δst−1,i δ

st,j | δo]

E[δst,i δ

st+1,j | δo] = P(x(t) = xi, x(t + 1) = xj | δo)

Vik = E[Vik | δo] =T∑

t=1

E[δst,i δ

ot,k | δo]

E[δst,i δ

ot,k | δo] = P(x(t) = xi, y(t) = yk | δo)

Như vậy, thuật toán EM được quy về việc tính các xác suất hậu nghiệm(xác suất cạnh của đồ thị)

ξij(t) = P(x(t) = xi, x(t + 1) = xj | δo)

γik(t) = P(x(t) = xi, y(t) = yk | δo)

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 15 / 19

Page 27: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Mô hình Markov ẩn

EM khi không biết δsTính các xác suất hậu nghiệm

Do biến hiện δo là hằng số, nhân 2 vế với P(δo) = const

ξij(t) ∝ P(x(t) = xi, x(t + 1) = xj, δo)

γik(t) ∝ P(x(t) = xi, y(t) = yk, δo)

Quy hoạch độngαi(t) = P(x(t) = i, δo

1 , . . . , δot )

βi(t) = P(δot+1, . . . , δ

oT|x(t) = i)

Dùng công thức Bayes

P(x(t) = xi, x(t + 1) = xj, δo) = αi(t)aijβj(t + 1)

K∏k=1

bδo

t,kjk

P(x(t) = xi, y(t) = yk, δo) = δo

t,k × αi(t)βi(t)

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 15 / 19

Page 28: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Mô hình Markov ẩn

EM khi không biết δsQuy hoạch động tính αi(t), βi(t)

Công thức đệ quy (lại sử dụng công thức Bayes)Thuật toán xuôi

αi(t) =

1 , t = 0, i = 1

0 , t = 0, i ̸= 1[∑Nu=1 αu(t− 1)aui

]∏Kk=1 b

δot,k

ik , t > 0

Thuật toán ngược

βi(t) ={1 , t = T∑N

j=1 βj(t + 1)aij∏K

k=1 bδo

t+1,kjk , t < T

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 15 / 19

Page 29: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Mô hình Markov ẩn

Thuật toán EM cho mô hình Markov ẩn

Thuật toán 2 EM cho HMM1: Input: chuỗi y (tức là các biến nhị phân δo).2: Khởi tạo: chọn tham số A(0),B(0) và r = 0.3: while chưa hội tụ do4: Bước E:

Tính αi(t), βi(t) bằng quy hoạch động.Tính xác suất hậu nghiệm ξij(t), γik(t).Tính kì vọng của thống kê đủ Uij,Vik.

5: Bước M: cập nhật a(r+1)ij , b(r+1)

ik (thế Uij,Vik vào công thức MLE).6: r← r + 1.7: end while

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 16 / 19

Page 30: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Mô hình Markov ẩn

Ví dụ: Wikipedia Alice - Bob

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 17 / 19

Page 31: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Tổng kết

Nội dung

1 Giới thiệu

2 Thuật toán cực đại hóa kì vọng (EM)

3 Mô hình Markov ẩn

4 Tổng kết

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 18 / 19

Page 32: Thuật toán Cực đại hóa Kì vọng (EM)uet.vnu.edu.vn/~tqlong/2016hmtk/em.pdf · Giới thiệu Nội dung 1 Giới thiệu 2 Thuật toán cực đại hóa kì vọng (EM)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Tổng kết

Tổng kết

EM là thuật toán ước lượng mật độ (có tham số) cho dữ liệu khôngđầy đủ (có thông tin bị ẩn đi).Bản chất EM là cực đại hóa cận dưới sự hợp lý của tham số.

Với phân bố dạng mũ, bước M của EM là ước lượng hợp lý cựcđại (MLE) với thống kê đủ được thay bằng kì vọng hậu nghiệm.

Lớp phân bố dạng mũ rất rộng, bao gồm cả mô hình trộn phân bốchuẩn, mô hình Markov ẩn.

Long (Đại học Công nghệ) Thuật toán EM 30/03/2016 19 / 19