Tải bản đầy đủ (.docx) (67 trang)

BÁO CÁO BÀI TẬP NHÓM MÔN HỌC: KHAI PHÁ DỮ LIỆU: Đề tài Phương pháp MonteCarlo và Đối mặt với hàm phân hoạch

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.98 MB, 67 trang )

ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
----------------------------------------

BÁO CÁO BÀI TẬP NHĨM
MƠN HỌC: KHAI PHÁ DỮ LIỆU

NỘI DUNG: Chương 17 - Phương pháp MonteCarlo
Chương 18 – Đối mặt với hàm phân hoạch
Giảng viên: PGS.TS Hà Quang Thụy
Nhóm 12:
Sinh viên: Thái Tiến Dũng – 15022052
Sinh viên: Trần Thị Hằng - 15021165
Sinh viên: Hoàng Thị Lệ Thu – 15021364
Sinh viên: Lê Hồng Hội - 15021390
Sinh viên: Lê Trung Hiếu - 15021150

Hà Nội, tháng 9 năm 2018

Phân cơng trình bày:
 Hồng Thị Lệ Thu: Chương 17 - Ian Goodfellow, Yoshua Bengio, Aaron
Courville. Deep Learning. The MIT Press, 2016


 Lê Hồng Hội: Chương 18, mục 18.1, 18.2, 18.3, 18.4 - Ian Goodfellow, Yoshua
Bengio, Aaron Courville. Deep Learning. The MIT Press, 2016
 Trần Thị Hằng: Chương 18, mục 18.5, 18.6, 18.7 - Ian Goodfellow, Yoshua
Bengio, Aaron Courville. Deep Learning. The MIT Press, 2016
 Lê Trung Hiếu: Chương 5, mục A. Giới thiệu - Palash Goyal, Sumit Pandey,
Karan Jain. Deep Learning for Natural Language Processing. Creating Neural
Networks with Python. Apress, 2018


 Thái Tiến Dũng: Chương 5, mục B. Penalization Term – Giới hạn trừng phạt Palash Goyal, Sumit Pandey, Karan Jain. Deep Learning for Natural Language
Processing. Creating Neural Networks with Python. Apress, 2018


Mục Lục
Chapter 17: Phương pháp MONTE CARLO..................................................................................................6
17.1 Lấy mẫu và phương pháp Monte Carlo..........................................................................................6
17.1.1 Lý do lấy mẫu................................................................................................................................6
17.1.2 Khái niệm cơ bản của lấy mẫu Monte Carlo................................................................................6
17.2 Lấy mẫu theo độ quan trọng.............................................................................................................8
17.3 Phương pháp xích Markov Monte Carlo......................................................................................10
17.4 Lấy mẫu Gibbs.................................................................................................................................14
17.5 Thách thức về sự pha trộn giữa các chế độ riêng biệt.................................................................15
17.5.1 Xáo trộn để pha trộn giữa các chế độ.........................................................................................17
17.5.2 Độ sâu có thể giúp cho việc pha trộn.........................................................................................19
Chương 18: Đối mặt với hàm phân hoạch.....................................................................................................21
18.1 Gradient của logarit hàm hợp lý....................................................................................................21
18.2 Hợp lý cực đại ngẫu nhiên và phân kì tương phản......................................................................23
18.3. Pseudolikelihood (Giả hợp lý).......................................................................................................31
18.4: So sánh theo điểm số và so sánh theo tỉ lệ....................................................................................34
18.5 Giảm nhiễu so sánh điểm................................................................................................................36
18.6 Ước tính tương phản nhiễu.............................................................................................................37
18.7 Ước lượng hàm phân hoạch............................................................................................................39
18.7.1 Lấy mẫu theo độ quan trọng...................................................................................................41
18.7.2 Lấy mẫu bắc cầu.......................................................................................................................44
CHƯƠNG 5....................................................................................................................................................46
Tài liệu Nghiên cứu: Phân tích ý kiến...........................................................................................................46
A.

Giới thiệu...........................................................................................................................................46

1.

Giới thiệu.......................................................................................................................................46

2.

Tự chú ý nhúng câu.....................................................................................................................47

3.

Phương pháp đề xuất...................................................................................................................48

B.

Penalization Term – Giới hạn trừng phạt.....................................................................................51
1.

Khái niệm:.....................................................................................................................................51

2.

Trực quan hóa...............................................................................................................................53

3.

Kết quả nghiên cứu......................................................................................................................55

4.

Triển khai phân loại ý kiến.........................................................................................................56


Danh mục tham khảo......................................................................................................................................57



Danh mục hình ản
Hình 17. 1 Các đường biểu diễn lấy mẫu Gibbs cho ba phân phối.........................14
Hình 17. 2 Một mình hoạ cho vấn đề pha trộn chậm trong mơ hình xác suất sâu. .15
Y

Hình 18. 1 Cách nhìn của giải thuật 18.1 có “pha dương” và “pha âm”.................22
Hình 18. 2 Mode giả mạo. Một ví dụ về làm cách nào mà pha âm trong phân kì tương
phản (giải thuật 18.2) thất bại trong việc ngăn chặn mode giả mạo........................24
Hình A- 1 Mơ hình nhúng câu được tính như nhiều khoản trạng thái ẩn có trọng số
từ bộ nhớ ngắn hạn dài hai chiều (LSTM) (h1,…, hn)............................................45
Hình A- 2 Các trọng số tổng (Ai1,…, Ain) được tính như minh họa......................46
Hình B. 1 bản đồ nhiệt cho hai mơ hình được trained trên tập dữ liệu Twitter Age [1]
.................................................................................................................................51
Hình B. 2 Nhúng câu đối với ba đánh giá Yelp khác nhau......................................52


Chapter 17: Phương pháp MONTE CARLO
Monte Carlo là nhóm những thuật toán ngẫu nhiên. Những thuật toán ngẫu
nhiên được chia thành hai nhóm chính: thuật tốn Las Vegas và thuật tốn Monte
Carlo. Những thuật tốn Las Vegas ln đưa ra câu trả lời chính xác (hoặc thơng báo
khi thất bại). Ngược lại, các thuật toán Monte Carlo đưa ra câu trả lời với một lượng
sai số ngẫu nhiên.
.Rất nhiều bài tốn trong học máy là rất khó để tìm ra một câu trả lời chính xác.
Thay vào đó, chúng ta phải sử dụng các thuật toán xác định xấp xỉ hay xấp xỉ Monte
Carlo.

17.1 Lấy mẫu và phương pháp Monte Carlo
Nhiều kĩ thuật được sử dụng để đạt được các mục tiêu học máy dựa trên việc
lấy các mẫu thử từ một vài phân bố xác suất và sử dụng những mẫu thử này để đưa ra
ước lượng Monte Carlo cho một số đại lượng mong muốn.
17.1.1 Lý do lấy mẫu
Chúng ta hi vọng lấy các mẫu thử từ một phân phối xác suất vì nhiều lý do.
Lấy mẫu cung cấp một cách linh hoạt để tính xấp xỉ các tổng và tích phân với chi phí
ít hơn. Đơi khi chúng cịn được sử dụng để tăng tốc việc tính tốn cho một tổng với
chi phí (tính tốn) lớn nhưng có thể xử lý một cách dễ dàng, như trong ví dụ lấy mẫu
con (subsample) của tổng chi phí huấn luyện với lô nhỏ (minibatch). Trong các một
số trường hợp, các thuật tốn học u cầu phải tính xấp xỉ một tích phân hoặc một
tổng khó tính tốn, chẳng hạn như độ dốc của hàm số log-partition (log partition
function) trong một mơ hình vơ hướng. Trong nhiều trường hợp khác, lấy mẫu là mục
tiêu chính, khi chúng ta muốn huấn luyện một mơ hình có thể lấy mẫu từ phân phối
huấn luyện.
17.1.2 Khái niệm cơ bản của lấy mẫu Monte Carlo
Khi một tổng hoặc một tích phân khơng thể tính chính xác (ví dụ tổng có số
lượng phần tử là một số có dạng luỹ thừa, và khơng có cơng thức rút gọn chính xác),
nó thường có thể tính xấp xỉ bằng cách sử dụng lấy mẫu Monte Carlo. Ý tưởng là
xem tổng hoặc tích phân như kì vọng của một phân phối, và kì vọng đó xấp xỉ bằng
mức trung bình tương ứng. Đặt:
s=∑xp(x)f(x)=Ep[f(x)]

(17.1)

hoặc
s=∫p(x)f(x)=Ep[f(x)]

(17.2)


là tổng hoặc tích phân cần ước lượng, được viết lại dưới dạng của một kì vọng, với
ràng buộc p là một phân phối xác suất (khi xấp xỉ tổng) hay mật độ xác suất (khi xấp
xỉ tích phân) trên biến ngẫu nhiên X


Chúng ta có thể xấp xỉ s bằng cách lấy ra n mẫu x(1),...,x(n)x(1),...,x(n) từ p
sau đó tính trung bình thực nghiệm:
sn = 1ni=1nf(x(i))

(17.3)

Xấp xỉ này có thể được căn chỉnh thêm bằng một số thuộc tính khác. Quan sát
sơ bộ đầu tiên đó là ước lượng s là khơng thiên vị (unbiased), bởi:

Ngoài ra, luật số lớn phát biểu rằng nếu các mẫu x(i) là một biến phân phối
ngẫu nhiên độc lập và phân biệt (i.i.d = Independent and identically distributed
random variables) thì miễn là phương sai của từng đại lượng, Var[f(x(i))], bị chặn,
trung bình của nó sẽ hội tụ gần như chắc chắn tại kì vọng:

Thật vậy, xét phương sai của sn khi tăng n.
Miễn là Var[f(x(i))]<∞, phương sai var[sn] giảm dần và hội tụ ở 0:

Kết quả này đồng thời cũng chỉ ra cách để ước lượng sự khơng chắc chắn trong
trung bình Monte Carlo hay cịn gọi là sai số dự kiến trong xấp xỉ Monte Carlo.
Chúng ta sẽ tính cả giá trị trung bình thực nghiệm của f(x(i)) và phương sai thực
nghiệm của chúng, sau đó chia phương sai đã ước lượng cho số lượng mẫu thử n để
thu được một ước lượng của var[sn]. Theo Định lý giới hạn trung tâm về phân phối
của đại lượng trung bình, snhội tụ theo phân phối chuẩn với trung bình (mean) s và
phương sai Var[f(x)]. Điều này cho phép chúng ta ước tính khoảng sai số tin cậy xung
quanh ước lượng sn, bằng cách sử dụng phân phối luỹ tích của hàm mật độ chuẩn.

Tất cả điều trên chỉ đúng với giả thiết rằng các mẫu có thể lấy dễ dàng từ phân
phối p(x), tuy nhiên điều đó khơng phải lúc cũng là khả thi. Khi lấy mẫu từ p như vậy
là không khả thi, một giải pháp thay thế là sử dụng các lấy mẫu theo độ quan trọng,
sẽ được trình bày trong mục 17.2. Cách tiếp cận khác tổng quát hơn đó là tổ chức một
chuỗi các ước lượng hội tụ theo hướng phân phối mong muốn. Nó được gọi là
phương pháp xích Markov Monte Carlo (mục 17.3).
17.2 Lấy mẫu theo độ quan trọng
Một bước quan trọng khi phân tích tích phân (hoặc tổng) dùng trong phương
pháp Monte Carlo ở phương trình 17.2 đó là quyết định phần nào của tích phân đóng


vai trị của xác suất p(x), phần nào của tích phân tương ứng với định lượng f(x) có kì
vọng sẽ được ước tính (theo phân bố xác suất trên). Có nhiều hơn một cách để phân
tích bởi p(x)f(x)ln có thể viết lại dưới dạng:

Theo đó, ta có thể lấy mẫu từ qq và giá trị trung bình của pf/q. Trong nhiều
trường hợp, ta cần phải tính tốn kì vọng cho cả p (đã cho trước) và f đã cho, và sự
thật là bài tốn được xác định để tính một kì vọng ngay từ đầu cho thấy rằng pp và ff
là hiển nhiên khi phân tích. Tuy vậy, chỉ dùng những đặc trưng ban đầu có thể khơng
phải là lựa chọn tốt ưu về số lượng mẫu thử cần có để đạt được độ chính xác nhất
định. May mắn thay, có thể lựa chọn q∗ một cách dễ dàng. q∗ tối ưu tương ứng với
phương pháp lấy mẫu theo độ quan trọng tối ưu.
Như đã trình bày ở phương trình 17.8, một ước lượng Monte Carlo bất kì:

(17.9)
Có thể biến đổi thành một ước lượng lấy mẫu theo độ quan trọng:

.
Dễ thấy, kì vọng của ước lượng khơng phụ thuộc vào q:


Tuy nhiên, phương sai của ước lượng lấy mẫu theo độ quan trọng lại rất nhạy
cảm với q, phương sai được cho bởi:

Phương sai tối thiểu khi q là

Với Z là hằng số chuẩn hoá, được chọn sao cho tổng hoặc tích phân của q*(x)
có giá trị là 1 khi thích hợp. Các phân phối lấy mẫu theo độ quan trọng sẽ tốt hơn khi
nó có ảnh hướng lớn khi biểu thức dưới dấu tích phân tăng. Trong thực tế, khi f(x)


không đổi dấu, Var[s^q∗]=0 var[sq*] , tức là, chỉ cần một mẫu đơn là đủ khi phân
phối tối ưu được sử dụng. Tất nhiên, điều này chỉ xảy ra khi việc tính tốn q*(x) về
cơ bản đã giải quyết được vấn đề ban đầu, vì vậy sử dụng phương pháp này để lấy
một mẫu đơn từ phân phối tối ưu là khơng thực tế.
Bất kì sự lựa chọn về phân phối nào của qq đều là hợp lệ (để tính được giá trị
kì vọng chính xác), và q* chỉ có một phân phối tối ưu (để phương sai là nhỏ nhất).
Lấy mẫu từ q* thường là bất khả thi, tuy nhiên sử dụng các lựa chọn qq khác có thể
khả thi trong khi vẫn giảm phương sai.
Một cách tiếp cận khác là sử dụng lấy mẫu theo trọng có thiên kiến, thế
mạnh của nó là khơng u cầu pp hay qq phải được chuẩn hoá. Trong trường hợp các
biến rời rạc, lấy mẫu theo độ quan trọng có thiên kiến được cho bởi:

Với q~ và p~ là dạng không chuẩn hoá của p và q, x(i) là các mẫu được lấy từ
q. Ước lượng này là thiên kiến bởi E[sBIS]≠s, trừ khi tiệm cận n→∞ và mẫu số ở
phương trình 17.14 hội tụ về 1. Do đó ước lượng này cịn được gọi là tiệm cận khơng
thiên vị.
Lựa chọn tốt q có thể cải thiện đáng kể năng suất của ước tính Monte Carlo, nhưng
một lựa chọn tệ đồng thời cũng khiến năng suất kém hơn nhiều. Trở lại với phương
trình 17.12, ta thấy, nếu các mẫu thử từ qq mà tại đóp(x) |f(x)|q(x) lớn, phương sai
của ước lượng sẽ có giá trị rất lớn. Điều này xảy ra khi q(x) quá nhỏ so với cả p(x) và

f(x). Phân phối của q thường được chọn là một phân phối đơn giản để tiện lợi cho quá
trình lấy mẫu. Khi x có là một biến nhiều chiều, sự đơn giản này của q lại khiến nó
khó khớp với p hay p|f|. Khi q(x(i)) >> p(x(i))|f(x(i))|, lấy mẫu theo độ quan trọng chỉ
thu được các mẫu thử vô dụng (tổng rất nhỏ hoặc bằng khơng). Nói cách khác,
q(x(i)) << p(x(i))|f(x(i))| xảy ra hiếm hơn, khi đó tỉ số sẽ trở nên rất lớn. Bởi trường
hợp sau xảy ra rất hiếm, chúng thường khơng xuất hiện trong các mẫu thử tiêu biểu,
từ đó ta có đánh giá thấp về ss, nhằm bù đắp lại các đánh giá quá cao. Các giá trị rất
lớn hoặc rất nhỏ thường rất điển hình khi x là biến nhiều chiều. Bởi trong không gian
nhiều chiều, phạm vi động của các xác suất đồng thời có thể rất lớn.
Mặc cho những rủi ro trên, lấy mẫu theo độ quan trọng và các biến thể có nó
được cho là rất hữu ích trong nhiều thuật tốn học máy, bao gồm cả các thuật tốn
học sâu. Ví dụ như việc sử dụng lấy mẫu theo độ quan trọng nhằm tăng tốc độ huấn


luyện trong mơ hình ngơn ngữ neuron với từ điển số lượng lớn (mục 12.4.3.3) hoặc
các mạng neuron khác với nhiều đầu ra. Có thể tham khảo thêm cách mà lấy mẫu
theo độ quan trọng được sử dụng để ước tính một hàm riêng (hằng số chuẩn hố của
một phân phối xác suất) trong mục 18.7, và để ước lượng logarit của hàm khả năng
trong mơ hình học sâu có hướng, ví dụ bộ tự mã hố biến phân (variational
autoencoder) được giới thiệu trong mục 20.10.3. lấy mẫu theo độ quan trọng còn
được sử dụng để cải thiện ước lượng độ trượt dốc của hàm chi phí được sử dụng để
huấn luyện các tham số của mơ hình với trượt gradient ngẫu nhiên, đặc biệt với các
mơ hình, ví dụ như phân lớp, trong đó phần lớn giá trị cùa hàm mất mát đến từ số ít
các mẫu bị phân lớp sai. Càng thử nhiều các mẫu khó hơn càng giảm phương sai của
gradient trong những trường hợp như vậy(Hinton, 2006).
17.3 Phương pháp xích Markov Monte Carlo
Trong nhiều trường hợp, chúng ta muốn dùng kĩ thuật Monte Carlo nhưng
khơng có phương pháp đơn giản nào cho việc lấy những mẫu chính xác từ phân phối
Pmodel(x)hoặc từ một phân bố lấy mẫu theo độ quan trọng (phương sai nhỏ) q(x).
Trong bối cảnh của học sâu, việc này thường xảy ra khi Pmodel(x) được biểu diễn

bởi một mơ hình vơ hướng. Trong những trường hợp đó, chúng tơi đưa ra một cơng
cụ tốn học gọi là xích Markov để tính xấp xỉ mẫu từ Pmodel(x). Họ các thuật tốn
dùng xích Markov để thực hiện các tính tốn Monte Carlo được gọi là phương pháp
xích Markov Monte Carlo (MCMC). Phương pháp xích Markov Monte Carlo cho
máy học được miêu tả chi tiết trong Koller and Friedman (2009). Điều kiện cơ bản
và chung nhất để kĩ thuật MCMC được áp dụng là chỉ khi mơ hình khơng gán xác
xuất 0 cho bất kì trạng thái nào. Vì thế, cách thuận tiện nhất để biểu diễn những kĩ
thuật này là thử từ một mơ hình hướng năng lượng (EBM) p(x) ∝ exp(−E(x))được
miêu tả ở phần 16.2.4. Trong công thức EBM, tất cả trạng thái được đảm bảo có xác
xuất khác 0. Phương pháp MCMC được áp dụng rộng rãi trong thực tế và có thể được
dùng với nhiều phân phối xác xuất chứa trạng thái có xác xuất bằng 0. Tuy nhiên, các
đảm bảo về lí thuyết liên qua đến cách vận hành của phương pháp MCMC phải được
chứng minh trên cở sở của từng trường hợp cụ thể cho từng họ phân phối. Trong bối
cảnh của học sâu, cách chung nhất là dựa vào đảm bảo của lý thuyết tổng quát mà
ứng dụng một cách hiển nhiên cho tất cả các mơ hình hướng năng lượng.
Để hiểu vì sao rút mẫu từ một mơ hình hướng năng lượng là việc khó khăn, xét
một EBM trên hai biến, định nghĩa một phân phối p(a,b). Để thử mẫu a, chúng ta phải
rút aa từ p(a | b), và tương tự rút bb từ p(b | a) để thử bb. Nó dường như giống với bài
tốn quả trứng hay gà có trước. Những mơ hình có hướng tránh vấn đề này bởi vì đồ
thị của nó có hướng và tuần hoàn. Để thực hiện lấy mẫu di truyền (ancestral
sampling), ta thực hiện lấy mẫu cho từng biến theo thứ tự tôpô (topological order),
với điều kiện là các biến cha được đảm bảo rằng chúng đã được thử (phần 16.316.3).
Lấy mẫu di truyền định nghĩa một phương pháp lấy mẫu có hiệu quả và đơn giản.
Trong một EBM, chúng ta có thể tránh bài tốn con gà và quả trứng khi lấy mẫu bằng
việc dùng xích Markov. Ý tưởng cốt lõi của xích Markov là bắt đầu từ một trạng thái
x có giá trị tùy ý. Theo thời gian, ta cập nhật x một cách ngẫu nhiên. Cuối cùng, x trở
thành (rất gần) một mẫu hợp lí từ p(x). Chính xác hơn, một xích Markov được định
nghĩa bởi một trạng thái ngẫu nhiên x và một phân phối chuyển tiếp T(x′ | x)chỉ rõ



xác xuất mà một cập nhật ngẫu nhiên sẽ đi tới trạng thái x′ nếu nó bắt đầu từ x. Vận
hành một chuỗi Markov nghĩa là lặp đi lặp lại việc cập nhật trạng thái x thành x′ được
rút từ T(x′|x).
Để có một số hiểu biết về mặt lí thuyết về cách MCMC hoạt động, việc tái
tham số hoá bài tốn có thể hữu ích. Đầu tiên, chúng ta giới hạn chú ý của chúng ta
vào trường hợp mà biến ngẫu nhiên x có số lượng trạng thái có thể đếm được. Chúng
ta có thể biểu diễn trạng thái như là một số nguyên dương x. Những giá trị nguyên
khác nhau của x ánh xạ về các trạng thái khác nhau x trong bài tốn ban đầu.
Điều gì sẽ xảy ra khi chúng ta chạy khơng giới hạn các xích Markov song song nhau?
Tất cả các trạng thái của chuỗi Markow được rút từ phân bố q(t)(x), trong đó t là số
bước đã duyệt qua. Ban đầu, q(0) là phân phối mà chúng ta đã dùng để khởi tạo ngẫu
nhiên x cho mỗi xích Markov. Sau đó, q(t) bị ảnh hưởng bởi tất cả các bước xích
Markov đã được duyệt. Mục đích là để q(t)(x) hội tụ về p(x).
Bởi vì chúng ta đã tái tham số hoá bài toán dưới dạng một số nguyên dương x
nên chúng ta có thể miêu tả phân phối xác suất q bằng cách sử dụng một vector v với

Xét trường hợp khi chúng ta cập một một trạng thái x của một xích Markov
thành một trạng thái x′ mới. Xác suất của một trạng thái đơn nằm trong trạng thái x′
được cho bởi

Sử dụng việc tham số hóa số nguyên, chúng ta có thể biểu diễn ảnh hưởng của
toán tử chuyển tiếp T bằng một ma trận A. Chúng ta định nghĩa A sao cho

Với định nghĩa này, chúng ta có thể viết lại phương trình 17.1817.18. Thay vì
viết nó theo qq và T để hiểu cách một trạng thái đơn được cập nhật, chúng ta có thể
dùng v và A để mơ tả cách tồn bộ phân phối trên tất cả các xích Markov chuyển đổi
như thế nào (chạy song song) khi chúng ta áp dụng một cập nhật:

Áp dụng cập nhật xích Markov liên tục tương ứng với phép nhân ma trận nhiều
lần. Nói cách khác, chúng ta có thể xem quá trình này như xem phép lũy thừa ma trận

A:


Ma trận A có cấu trúc đặc biệt vì mỗi cột của nó biểu diễn một phân phối xác
xuất. Những ma trận như A được gọi là ma trận trượt dốc ngẫu nhiên (stochastic
matrices). Nếu khơng có xác xuất bằng khơng của việc chuyển tiếp từ bất kì trạng
thái x nào tới trạng thái x′x′ khác với số mũ tt thì định lí Perron-Frobenius (Perron,
1907: Frobenius, 1908) đảm bảo rằng giá trị riêng lớn nhất là số thực và bằng 1. Theo
thời gian, chúng ta có thể thấy rằng tất cả các giá trị riêng được lũy thừa:

Quá trình này tạo ra tất cả các giá trị riêng khác 1 đều giảm về 0. Dưới một số
điều kiện bổ sung khác, A được đảm bảo chỉ có duy nhất một vector riêng với giá trị
riêng 1. Do đó, q trình hội tụ về một phân phối dừng hay gọi cách khác là phân
phối cân bằng. Tại điểm hội tụ ta có:

điều kiện này được giữ cho tất cả các bước bổ sung. Đây là một phương trình
vetor riêng. Để trở thành điểm dừng, v phải là vector riêng với giá trị riêng tương ứng
là 1. Điều kiện này đảm bảo một khi chúng ta đạt đến phân phối dừng, lặp lại ứng
dụng của lọc mẫu chuyển tiếp không thay đổi phân phối của các trạng thái của tất cả
xích Markov khác nhau (mặc dù toán tử chuyển tiếp thay đổi ở mỗi trạng thái riêng
lẻ).
Nếu chúng ta chọn T chính xác, phân phối dừng sẽ qq sẽ bằng phân phối pp
chúng ta muốn thử. Chúng tôi sẽ mô tả cách chọn T trong phần 17.417.4.
Hầu hết các tính chất của xích Marhov với những trạng thái có thể đếm có thể
được tổng qt hóa thành biến liên tục. Trong tình huống này, một số tác giả gọi xích
Marhov là xích Harris, nhưng chúng tơi dùng khái niệm xích Markov cho cả 2 điều
kiện. Nói chung, một xích Markov với tốn tử chuyển tiếp T sẽ hội tụ dưới các điều
kiện nhẹ, đến một điểm cố định được biểu diễn bằng phương trình:

Trong trường hợp biến rời rạc, nó được viết như phương trình 17.2317.23. Khi

x rời rạc, kì vọng tương ứng với một tổng. Khi x liên tục, kì vọng tương ứng với một
tích phân.
Bất kể trạng thái là liên tục hay rời rạc, tất cả các phương pháp xích Markov
đều lặp lại nhiều lần các cập nhật ngẫu nhiên cho đến khi một trạng thái bắt đầu đưa
ra các mẫu thuộc phân phối cân bằng. Chạy xích Markov đến khi đạt được phân phối
cân bằng được gọi là đốt cháy(burn in) xích Markov. Sau khi xích đã cân bằng, một
chuỗi khơng giới hạn mẫu có thể được rút từ phân phối cân bằng. Chúng có phân
phối giống nhau, nhưng bất kì 2 mẫu liên tiếp nào cũng sẽ tương quan chặt chẽ với
nhau. Do đó, một chuỗi có giới hạn các mẫu có thể khơng đại diện cho phân phối cân
bằng. Một cách để giảm tải vấn đề này là ta chỉ trả về n mẫu liên tiếp để ước tính của
thống kê trong phân phối cân bằng khơng bị thiên vị bởi sự tương quan giữa một mẫu


MCMC và một vài mẫu kế tiếp. Như vậy, dùng các xích Markov khá tốn kém bởi vì
nó cần có thời gian để đốt cháy thành phân phối cân bằng và thời gian chuyển tiếp từ
mẫu này sang mẫu đã được giải thích hợp lí khác sau khi đạt trạng thái cân bằng. Nếu
một người mong muốn các mẫu hoàn tồn độc lập, họ có thể chạy nhiều xích Markov
song song. Cách này dùng phép tính song song để loại trừ trạng thái ẩn. Chiến lược
chỉ sử dụng một chuỗi Markov duy nhất để tạo ra tất cả các mẫu và chiến lược sử
dụng một chuỗi Markov cho mỗi mẫu mong muốn là hai trái cực: chuyên gia về học
sâu thường dùng số xích tương đương với số lượng các ví dụ trong một lơ nhỏ và sau
đó rút số lượng mẫu cần thiết từ tập hợp hữu hạn xích Markov. Số lượng xích Markov
thường dùng là 100.
Một vấn để khác là chúng ta không biết trước bao nhiêu bước xích Markov
phải thực hiện cho đến khi đạt đến phân phối cân bằng. Quãng thời gian này được gọi
là thời gian trộn (mixing time). Để kiểm tra liệu rằng xích Markov đã đạt đến trạng
thái cân bằng hay chưa là cơng việc khó. Chúng ta khơng có một lý thuyết nào đủ
chính xác để giúp ta trả lời câu hỏi này. Lí thuyết chỉ chỉ ra rằng xích sẽ hội tụ, mà
khơng giải thích gì thêm. Nếu chúng ta phân tích xích Markov từ điểm nhìn của một
ma trận A hoạt động trên một vector xác xuất v, chúng ta biết được xích sẽ trộn lẫn

khi At khơng chứa giá trị riêng nào từ A ngoại trừ giá trị riêng duy nhất là 1. Nghĩa là
độ lớn của giá trị riêng lớn thứ 2 sẽ xác định thời gian trộn. Mặc dù trong thực tế,
chúng ta không thể biểu diễn xích Markov bằng ma trận. Số trạng thái mà mơ hình
xác xuất có thể duyệt qua rất lớn so với số lượng biến. Nên việc biểu diễn v, A hay
giá trị riêng của A là khơng thể. Bởi vì những điều trên, chúng ta thường khơng biết
một xích Markov đã trộn hay chưa. Thay vào đó, chúng ta đơn giản chạy xích
Markov trong một khoảng thời gian mà chúng ta tự ước tính là nó vừa đủ và dùng
phương pháp đánh giá dựa trên kinh nhiệm để xác định xích đã được trộn chưa.
Những phương pháp này bao gồm kiểm tra mẫu thủ công hay đo lường sự tương
quan giữa hai mẫu liên tiếp.
17.4 Lấy mẫu Gibbs
Đến đây, chúng tôi đã nói về cách rút mẫu từ một phân phối q(x) bằng việc lặp
lại nhiều lần cập nhật x←x′∼T(x′ | x). Chúng ta chưa mô tả cách đảm bảo q(x) là một
phân phối hữu ích. Có hai cách tiếp cận cơ bản được đề cập đến trong cuốn sách này.
Cách thứ nhất là suy ra T từ mơ hình Pmodel cho trước, được nói đến ở dưới với
trường hợp lấy mẫu từ EBMs. Cách thứ hai là tham số hóa trực tiếp T và học nó để
phân phối dừng của nó định nghĩa ngầm mơ hình mong muốn Pmodel. Ví dụ của
cách thứ hai được miêu tả trong mục 20.1220.12 và 20.1320.13.
Trong ngữ cảnh của học sâu, chúng ta thường dùng xích Markov để rút mẫu từ mơ
hình hướng năng lượng mà nó định nghĩa một phân phối pmodel(x). Trong trường
hợp này, chúng ta muốn q(x) trong xích Markov là pmodel(x). Để thu được q(x) như
mong muốn, chúng ta phải chọn T(x′ | x) phù hợp.
Một cách đơn giản và hiệu quả để xây dựng một xích Markov mà lấy mẫu từ
mơ hình pmodel(x) là dùng lấy mẫu Gibbs, trong đó mẫu từ T(x′ | x) được thực hiện
bằng cách chọn một biến xixi và thử nó từ mơ hình pmodel với điều kiện là những lân
cận của nó trong đồ thị vô hướng G định nghĩa cấu trúc của mơ hình hướng năng


lượng. Chúng ta cũng có thể thử nhiều biến một lúc miễn là các biến đó độc lập với
tất cả các lân cận. Như đã nói trong ví dụ của RBM mục 16.7.1, tất cả các lớp ẩn của

một RBM có thể được thử đồng thời vì chúng độc lập với nhau, đối với các lớp hữu
hình cho trước khác. Tương tự, tất cả các lớp hữu hình có thể được thử đồng thời bởi
vì những lớp đó độc lập với các lấp ẩn khác. Phương pháp lấy mẫu Gibbs mà cập
nhật nhiều biến đồng thời theo cách này được gọi là lấy mẫu Gibbs theo khối.
Vẫn có cách khác để thiết kế xích Markov để lấy mẫu từ mơ hình Pmodel. Ví
dụ, thuật tốn Metropolis-Hastings được dùng rộng rãi trong những lĩnh vực khác.
Trong bối cảnh của phương pháp học sâu với mơ hình vơ hướng, lấy mẫu Gibbs
thường được sử dụng hơn các phương pháp khác. Kĩ thuật cải thiện lấy mẫu là một
biên giới có thể nghiên cứu.
17.5 Thách thức về sự pha trộn giữa các chế độ riêng biệt
Khó khăn chính liên quan đến các phương pháp MCMC là chúng có xu hướng
pha trộn kém. Lý tưởng nhất, các mẫu liên tiếp từ một chuỗi Markov được thiết kế để
lấy mẫu từ p(x) sẽ hoàn toàn độc lập với nhau và sẽ duyệt qua nhiều vùng khác nhau
trong không gian x tỷ lệ với xác suất của chúng. Thay vào đó, đặc biệt trong các
trường hợp số chiều lớn, các mẫu MCMC trở nên rất tương quan. Chúng tôi đề cập
tới hành vi này như là sự pha trộn chậm hoặc thậm chí sự pha trộn thất bại. Phương
pháp MCMC với việc pha trộn chậm có thể được xem như vơ tình thực hiện một cái
gì đó giống như trượt gradient có nhiễu trên hàm năng lượng, hoặc tương đương với
việc leo đồi có nhiễu trên xác suất, liên quan tới trạng thái của chuỗi (tức là các biến
ngẫu nhiên đang được thử). Chuỗi có xu hướng thực hiện các bước nhỏ (trong không
gian trạng thái của chuỗi Markov), từ một cấu hình x(t-1)đến một cấu hình xt, với
năng lượng E(x(t)) thường thấp hơn, hoặc xấp xỉ tương đương với năng lượng E(x(y1)), ưu tiên cho việc chuyển đổi có cấu hình năng lượng thấp hơn. Khi đang bắt đầu
từ một cấu hình khơng ổn định (có năng lượng cao hơn so với các cấu hình đặc trưng
từ p(x), chuỗi có xu hướng giảm dần năng lượng của các trạng thái và chỉ di chuyến
tới chế độ khác một cách ngẫu nhiên. Khi chuỗi tìm thấy một vùng năng lượng thấp
(ví dụ, nếu các biến là các pixel của một bức ảnh, một vùng năng lượng thấp có thể là
một đa tạp được kết nối đến các bức ảnh của cùng đối tượng), được gọi là chế độ
(mode), chuỗi sẽ có xu hướng đi vịng quanh chế độ này (theo một kiểu đi ngẫu
nhiên). Đôi khi, nó sẽ bước ra khỏi chế độ đó và thường trở lại với nó hoặc (nếu nó
tìm thấy một lời giải) di chuyển sang chế độ khác. Vấn đề là các lời giải thành công

hiếm gặp đối với nhiều phân phối thú vị, do vậy chuỗi Markov sẽ tiếp tục thử cùng
một chế độ lâu hơn mức cần thiết.
Đây là vấn đề rất rõ ràng khi chúng ta xem xét thuật toán lấy mẫu Gibbs (mục 17.4).
Trong ngữ cảnh này, xét xác suất đi từ một chế độ này sang một chế độ khác gần nó
với số bước cho trước. Hình dạng của xác suất sẽ được xác định xem nó có phải là
giới tuyến năng lượng giữa các chế độ khác nhau hay không. Chuyển tiếp giữa hai
chế độ riêng biệt bởi một giới tuyến năng lượng cao (một vùng có xác suất thấp) có
khả năng thấp theo cấp số nhân (xét về chiều cao của giới tuyến năng lượng). Điều
này được minh hoạ trong hình 17.1. Vấn đề phát sinh khi có nhiều chế độ với xác
suất cao được phân tách bởi các vùng có xác suất thấp, đặc biệt khi mỗi bước lấy mẫu


Gibbs chỉ phải cập nhật từng tập nhỏ các biến có giá trị lớn và được xác định bởi các
biến khác.
Một ví dụ đơn giản, xét một mơ hình hướng năng lượng trên hai biến a và b, ở
đây cả hai đều có dấu nhị phân, xét trên các giá trị −1 và 1. Nếu E(a, b) =−ab, với một
vài số dương lớn , thì mơ hình sẽ biểu thị chắc chắn rằng a và b cùng dấu. Xét việc
cập nhật b sử dụng một bước lấy mẫu Gibbs với a=1. Phân phối có điều kiện trên b
được tính theo P(b=1|a=1)=σ(). Nếu lớn, hàm sigmoid bão hoà, và xác suất khi gán
bb bằng 1 là gần như là 1. Tương tự như vậy, nếu a=1, xác xuất khi gán b=−1 cũng
gần như là 1. Theo Pmodel(a,b), dấu của cả hai biến là tương đương nhau. Theo
Pmodel(a | b), cả hai biến có cùng một dấu. Điều này có nghĩa rằng lấy mẫu Gibbs sẽ
ít khi đổi dấu của các biến này.
Trong các bài tốn thực tế, thách thức thậm chí cịn lớn hơn bởi vì chúng ta
quan tâm tới việc tạo ra sự chuyển tiếp không chỉ giữa hai chế độ mà thường là giữa
tất cả các chế độ có trong một mơ hình thực. Nếu việc chuyển đổi như vậy khó khăn
do trở ngại của việc trộn lẫn các chế độ, việc có được một tập hợp đáng tin cậy các
mẫu bao phủ hầu hết các chế độ thường tốn kém, và sự hội tụ chuỗi về phân phối cố
định thường rất chậm.
Đôi lúc vấn đề được giải quyết bằng việc tìm kiếm nhóm các lớp có độ phụ

thuộc lớn và cập nhật chúng đồng thời trong một khối. Không may, khi độ phụ thuộc
phức tạp, lấy một mẫu từ nhóm này có thể sẽ khó khăn về mặt tính tốn. Xét cho
cùng, bài tốn gốc mà chuỗi Markov được giới thiệu để giải quyết là bài toán lấy mẫu
từ một nhóm có nhiều biến.
Trong bối cảnh các mơ hình có biến tiềm ẩn, ở đây định nghĩa một phân phối
chung pmodel(x, h), chúng ta thường lấy các mẫu của x bằng cách xen kẽ các mẫu từ
pmodel(x | h)và từ pmodel(h | x). Từ quan điểm pha trộn nhanh, chúng ta muốn
pmodel(x | h) có entropy cao. Từ quan điểm của việc học một biểu diễn hữu ích của
h, chúng ta muốn h mã hố đủ thơng tin về x để tái tạo lại nó, từ đó suy ra h và x nên
có nhiều thơng tin chung. Hai mục tiêu này mâu thuẫn với nhau. Chúng ta thường học
các mơ hình sinh mẫu mà mã hố rất chính xác x thành h nhưng không thể kết hợp
tốt với nhau. Tình trạng này phát sinh thường xuyên với các máy Boltzmann — phân
phối mà máy Boltzmann học càng sắc nét, việc lấy mẫu của chuỗi Markov từ phân
phối mẫu để pha trộn đều càng khó. Vấn đề được minh hoạ trong hình 17.2
Tất cả điều này có thể làm cho phương pháp MCMC kém hữu dụng hơn khi
phân phối mong muốn có quan hệ cấu trúc đa tạp với một đa tạp riêng biệt cho mỗi
lớp: các phân phối tập trung xung quanh nhiều chế độ, và các chế độ này được phân
tách bởi các vùng lớn có năng lượng cao. Loại phân phối này là những gì chúng ta
mong muốn trong nhiều bài tốn phân loại, và nó sẽ làm cho các phương pháp
MCMC hội tụ rất chậm bởi vì sự pha trộn kém giữa các chế độ.


Hình 17. 1 Các đường biểu diễn lấy mẫu Gibbs cho ba phân phối
Hình 17.1: Các đường biểu diễn lấy mẫu Gibbs cho ba phân phối, với chuỗi Markov
được khởi tạo tại các chế độ trong cả hai trường hợp. (Bên trái) Một phân phối chuẩn
đa chiều với hai biến độc lập. Lấy mẫu Gibbs trộn tốt bởi các biến độc lập. (Ở
giữa)Một phân phối chuẩn đa chiều với các biến tương quan cao. Sự tương quan giữa
các biến làm cho việc pha trộn của chuỗi Markov trở nên khó khăn. Vì việc cập nhật
cho mỗi biến phải thoả mãn điều kiện trên mỗi biến khác nhau, sự tương quan làm
giảm tốc độ chuỗi Markov có thể di chuyển khỏi điểm bắt đầu. (Bên phải) Một phép

trộn Gauss với các chế độ tách biệt rõ ràng mà trục không được căn chỉnh. Lấy mẫu
Gibbs pha trộn rất chậm bởi vì việc thay đổi các chế độ thường khó khi chỉ có một
biến được thay đổi ở một thời điểm.
17.5.1 Xáo trộn để pha trộn giữa các chế độ
Khi một phân phối có các đỉnh nhọn có xác xuất cao và được bao quanh bởi
các vùng xác suất thấp, việc pha trộn giữa các chế độ khác nhau của phân phối đó thì
khó khăn. Một vài kĩ thuật để pha trộn nhanh hơn là dựa trên việc xây dựng các phiên
bản thay thế của phân phối đích trong đó các đỉnh không cao và các đường rãnh xung
quanh không thấp. Mô hình hướng năng lượng cung cấp một cách đặc biệt đơn giản
để thực hiện. Trước đó, chúng ta đã mơ tả một mơ hình hướng năng lượng như là một
phân phối xác suất

Mơ hình năng lượng cơ sở có thể có thêm một tham số ββ kiểm sốt đỉnh nhọn
các phân phối là:

Tham số ββ thường được mô tả như là đối ứng của nhiệt độ (temperature),
phản ánh nguồn gốc của mơ hình hướng năng lượng trong vật lý thống kê. Khi nhiệt
độ giảm tới 0, và ββ tăng tới vơ cực, mơ hình hướng năng lượng bắt đầu xác định.
Khi nhiệt độ tăng tới vô cực và β giảm về 0, phân phối (với x rời rạc) trở thành phân
phối đều.


Hình 17. 2 Một mình hoạ cho vấn đề pha trộn chậm trong mơ hình xác suất sâu
Hình 17.2: Một mình hoạ cho vấn đề pha trộn chậm trong mơ hình xác suất
sâu. Ta nên đọc mỗi bảng từ trái sang phải, từ trên xuống dưới. (Bên trái)(Bên trái)
Các mẫu liên tiếp từ phép lấy mẫu Gibbs được dùng cho huấn luyện một máy học sâu
Boltzmann trên tập dữ liệu MNIST. Các mẫu này thì tương tự nhau. Vì phép lấy mẫu
Gibbs được thực hiện trên một mơ hình đồ hoạ đặc trưng, sự tương tự này dựa trên
ngữ nghĩa nhiều hơn so với các đặc trưng trực quan thô, nhưng chuỗi Gibbs vẫn sẽ
gặp khó khăn khi chuyển tiếp từ một chế độ này sang một chế độ khác trong cùng

một phân phối, ví dụ, việc thay đổi số định danh. (Bên phải)(Bên phải) Các mẫu liêm
tiếp có chung nguồn gốc từ một mạng đối kháng sinh mẫu (generative adversarial
network). Bởi vì lấy mẫu di truyền tạo ra các mẫu độc lập với nhau, do đó khơng xảy
ra vấn đề pha trộn.
Thơng thường, một mơ hình được huấn luyện để được đánh giá tại β=1. Tuy
nhiên chúng ta có thể tận dụng các nhiệt độ khác, đặc biệt những điểm β<1. Xáo trộn
(tempering) là một chiến lược chung cho việc pha trộn giữa các chế độ của p1p1
nhanh chóng bằng việc lấy mẫu với β<1.
Chuỗi Markov dựa trên sự chuyển tiếp nóng (tempered transitions) (Neal,
1994) , lấy mẫu tạm từ phân phối có nhiệt độ cao để pha trộn với các chế độ khác, sau
đó tiếp tục lấy mẫu từ phân phối có nhiệt độ đồng nhất. Các kỹ thuật này đã được áp
dụng cho được các mơ hình như RBM (Salakhutdinov, 2010). Một phương pháp khác
là sử dụng xáo trộn song song (parallel tempering) (Iba, 2001), trong đó chuỗi
Markov mô phỏng nhiều trạng thái khác nhau cùng lúc, với nhiệt độ khác nhau.
Trạng thái có nhiệt độ cao nhất pha trộn một cách chậm chạp, trong khi đó trạng thái
có nhiệt độ thấp nhất, có nhiệt độ là 1, cung cấp các mẫu chính xác từ mơ hình. Hoạt
động chuyển tiếp bao gồm trao đổi ngẫu nhiên trạng thái giữa hai tầng nhiệt độ khác
nhau, sao cho một mẫu xác suất cao từ vị trí có nhiệt độ cao có thể nhảy vào vị trí
nhiệt độ có thấp hơn một cách suôn sẻ. Đây là phương pháp cũng đã được áp dụng
cho các RBM (Desjardins và et al., 2010; Cho và et al., 2010). Mặc dù xáo trộn là
một phương pháp đầy hứa hẹn, tại thời điểm đó nó khơng cho phép các nhà nghiên
cứu tạo một bước tiến lớn trong việc giải quyết thách thức của việc lấy mẫu từ các


mơ hình EBM phức tạp. Một lý do có thể là có những nhiệt độ cực trị mà quanh
chúng, nhiệt độ chuyển tiếp phải rất chậm (khi nhiệt độ giảm dần) để việc xáo trộn
trở nên ổn định.
17.5.2 Độ sâu có thể giúp cho việc pha trộn
Khi lấy mẫu từ một mơ hình p(h,x) có biến ẩn, ta thấy rằng nếu p(h | x) mã hố
x tốt, thì việc lấy mẫu từ p(x | h) sẽ không thay đổi x quá nhiều, và việc pha trộn sẽ

trở nên kém đi. Một cách để giải quyết vấn đề này là biến h thành một biểu diễn có
độ sâu, mã hố x thành h theo cách mà một chuỗi Markov trong không gian của h có
thể thực hiện việc pha trộn dễ dàng hơn. Nhiều thuật toán học cách biểu diễn, như bộ
tự mã hố và các RBM, có xu hướng sinh ra một phân phối cận biên trên h đồng nhất
hơn và đơn giản hơn so với phân phối dữ liệu ban đầu trên x. Có thể lập luận rằng
điều này phát sinh từ việc cố gắng tối thiểu sai số khôi phục trong khi sử dụng tất cả
không gian biểu diễn khả dụng, bởi vì tối thiểu sai số khơi phục trên tập huấn luyện
mẫu sẽ dễ đạt được hơn khi các mẫu trong tập huấn luyện có thể phân biệt dễ dàng
với nhau trong không gian- h, và do đó sẽ có tách biệt tốt. Bengio et al.(2013a) đã
quan sát thấy rằng ngăn xếp sâu hơn của bộ tự mã hoá chuẩn hoá hoặc các RBM sinh
ra một phân phối cận biên trong bậc đỉnh của không gian- h mà có độ phủ rộng và
đồng đều hơn, đồng thời khoảng cách giữa các vùng tương ứng với các chế độ cũng
giảm đi (các loại, trong các thực nghiệm). Huấn luyện một RBM trong không gian
tầng cao hơn đã cho phép lấy mẫu Gibbs pha trộn nhanh hơn giữa các chế độ. Tuy
nhiên, cách để khai thác quan sát này nhằm giúp huấn luyện và lấy mẫu từ các mơ
hình sinh trưởng sâu hơn trở nên tốt hơn vẫn chưa rõ ràng.
Mặc dù gặp khó khăn trong việc thực hiện trộn, kỹ thuật Monte Carlo rất hữu
ích và thường là cơng cụ tốt nhất sẵn có. Thật vậy, chúng là cơng cụ chính được sử
dụng để đối trị với hàm phân chia khó của các mơ hình vơ hướng, sẽ được thảo luận
tiếp theo sau đây.


Chương 18: Đối mặt với hàm phân hoạch
Trong phần 16.2.2 ta nhận thấy rằng nhiều mơ hình xác suất (thường được
biết đến với tên gọi mơ hình đồ thị vơ hướng) được định nghĩa bởi một phân phối
xác suất chưa được chuẩn hóa p~(x;θ). Ta cần phải chuẩn hóa p~ bằng cách chia
cho hàm phân hoạch Z(θ) để đạt được một phân phối hợp lý:

Hàm phân hoạch là một phép tích phân (đối với biến ngẫu nhiên liên tục)
hoặc phép lấy tổng (đối với biến ngẫu nhiên rời rạc) các xác suất chưa chuẩn hóa

của tất cả các trạng thái trong khơng gian mẫu:

hoặc

Phép tốn này khó tính tốn (intractable) đối với nhiều mơ hình thống kê.
Như ta sẽ thấy trong chương 20, một số mơ hình học sâu được thiết kế có hằng số
chuẩn hóa có thể tính tốn được (tractable) hoặc được thiết kế để khơng cần
phải tính p(x). Tuy nhiên, nhiều mơ hình khác phải đối mặt với thách thức với
hàm phân hoạch khó tính tốn được. Trong chương này, chúng ta sẽ mô tả một số
kĩ thuật được sử dụng để huấn luyện và đánh giá các mơ hình có hàm phân hoạch
khó tính tốn.
18.1 Gradient của logarit hàm hợp lý
Nguyên nhân dẫn đến việc học các mơ hình vơ hướng bằng phương pháp hợp
lý cực đại trở nên khó khăn đó là hàm phân hoạch phụ thuộc vào nhiều tham sô.
Gradient của logarit hàm hợp lý ứng với các tham số có một phần tương ứng với
gradient
của
hàm
phân
hoạch
Đây là sự phân tách phổ biến thành pha dương (positive phase) và pha âm
(negative phase) trong việc học của mơ hình.
Đối với hầu hết các mơ hình vơ hướng, việc tính tốn pha âm gặp khó khăn.
Những mơ hình khơng có biến ẩn hoặc có ít tương tác giữa các biến ẩn thường có
pha dương tính được. Một ví dụ điển hình của mơ hình có pha dương tính được và
pha âm khơng tính được là RBM, trong đó các nút ẩn độc lập có điều kiện với
nhau nếu cho trước giá trị các nút quan sát được. Trường hợp khó tính tốn pha
dương, trong những mơ hình có nhiều tương tác phức tạp giữa các biến ẩn, chúng



tôi khai thác ở chương 19. Chương này tập trung vào các khó khăn trong việc tính
tốn pha âm.
Ta hãy cùng phân tích cơng thức gradient của logZ

Để mơ hình ln
thế p˜(x) bởi exp(logp˜(x)):

đảm

bảo p(x)>0 với

mọi x,

ta



thể

thay

Phần đạo hàm này áp dụng trên tổng của tất cả các giá trị xx rời rạc, kết quả
tương tự cũng được áp dụng bằng cách tính tích phân biến xx liên tục. Trong
phiên bản liên tục của đạo hàm, ta sử dụng quy tắc Leibniz cho vi phân để thu
được phép đồng nhất:

Phép đồng nhất này chỉ áp dụng được trong một số điều kiện nhất định
của p˜ và ∇θp˜(x). Trong lý thuyết đo lường, các điều kiện này là: (1) Phân phối
chưa chuẩn hóa p˜ phải là một hàm tích hợp Lebesgue (Lebesgue-integrable)
của x cho mọi giá trị của θ. (2) Gradient ∇θp˜(x) phải tồn tại với mọi θθ và gần

như với mọi x. (3) Phải tồn tại một hàm tích hợp R(x) là cận của ∇θp˜(x), mà tại
đó |maxi∂∂θip˜(x)|≤R(x) với mọi θθ và gần như với mọi xx. May mắn thay, hầu hết
các mơ hình học máy được nghiên cứu đều có những tính chất này.
Phép đồng nhất:


là nền tảng cho nhiều phương pháp Monte Carlo cho việc xấp xỉ hợp lý cực đại
của các mơ hình với hàm phân hoạch khơng tính được.
Phương pháp tiếp cận Monte Carlo để học các mơ hình vơ hướng cung cấp
một cơ chế trực quan trong cách chúng ta hiểu về pha dương và pha âm. Trong
pha dương, ta tăng logp˜(x) với xx được lấy từ tập dữ liệu. Trong pha âm, ta giảm
hàm phân hoạch bằng cách giảm giá trị logp˜(x) được lấy mẫu từ phân phối của
mơ hình.
Trong ngữ cảnh học sâu, logp˜ thường được tham số hóa dưới dạng một
hàm năng lượng (phương trình 16.7). Trong trường hợp này, ta có thể diễn giải
pha dương như một cách thu giảm năng lượng từ tập huấn luyện và pha âm như
một cách tăng năng lượng của mẫu được lấy mẫu từ mơ hình, theo như mơ phỏng
của hình 18.1.
18.2 Hợp lý cực đại ngẫu nhiên và phân kì tương phản
Một cách đơn giản để thực hiện phương trình 18.15 là sử dụng phép loại bỏ
(burning-in) các chuỗi Markov từ một khởi tạo ngẫu nhiên khi cần tính gradient.
Khi thực hiện quá trình học sử dụng phương pháp trượt gradient ngẫu nhiên, ta
thực hiện phép loại bỏ chuỗi Markov tại mỗi bước tính gradient. Phương pháp
tiếp cận này được mơ tả trong giải thuật 18.1. Chi phí cao của phép loại bỏ chuỗi
Markov trong mỗi vòng lặp làm cho giải thuật này khơng khả thi về mặt tính tốn,
tuy nhiên giải thuật này lại là khởi nguồn cho các giải thuật xấp xỉ khác.
Giải thuật 18.1 Một giải thuật MCMC ngây thơ cho cực đại hóa logarit của
hàm hợp lý với hàm phân hoạch khơng tính được, sử dụng Phương pháp giảm
theo gradient
Đặt ϵ, kích cỡ của bước lặp, là một số dương có giá trị nhỏ. Đặt k, số bước

Gibbs, đủ lớn cho phép loại bỏ chuỗi Markov. Khoảng chừng 100 để huấn luyện
mơ hình RBM trên tập ảnh nhỏ:
while không hội tụ do
 Lấy m mẫu {x(1),...,x(m)} từ tập huấn luyện
 g←1m∑mi=1∇θlogp˜(x(i);θ).
 Khởi tạo mm mẫu {x˜(1),...,x˜(m)} có giá trị ngẫu nhiên (ví dụ, từ phân phối
đều hoặc chuẩn, hoặc có thể từ một phân phối có lề phù hợp với lề của mơ
hình).
 for i=1 to k do
o for j=1 to m do
 x˜(j)←gibbs_update(x˜(j))


o end for
 end for
 g←g−1m∑mi=1∇θlogp˜(x˜(i);θ).
 θ←θ+ϵg
end while
Chúng ta có thể xem phương pháp MCMC cho hợp lý cực đại như việc cân
bằng giữa hai lực lượng, một lực lượng đẩy lên phân phối của dữ liệu và một lực
lượng khác đẩy xuống phân phối của các mẫu được lấy mẫu từ phân phối mơ
hình. Hình 18.1 mơ phỏng q trình này. Hai lực lượng này tương ứng với việc
cực đại hóa logp˜ và cực tiểu hóa logZ. Có vài phương pháp có thể xấp xỉ pha âm.
Mỗi xấp xỉ này có thể được hiểu như một cách làm giảm thiểu chi phí tính tốn
pha âm tuy nhiên pha âm có thể đẩy phân phối vào vị trí khơng chính xác.
Bởi vì pha âm có liên quan đến việc lấy mẫu từ phân phối mơ hình, ta có thể
xem nó như việc tìm những điểm mà mơ hình tin vào nhất. Vì pha âm đóng vai trị
làm giảm xác suất của những điểm này, nó được hiểu như những niềm tin sai lầm
của mơ hình trong thực tế. Nó cũng thường được đề cập trong nhiều tài liệu như
là “các ảo giác” (hallucinations) hay “các phân tử tưởng tượng” (fantasy

particles). Thực tế, pha âm đã được đề xuất như một sự giải thích cho giấc mơ
của con người và các loài động vật khác (Crick và Mitchison, 1983), với ý tưởng
bộ não được duy trì bởi một phân phối xác suất về thế giới và việc lấy đạo hàm
của logp˜ tương ứng với việc ta trải nghiệm những sự kiện thực tế trong trạng thái
đang thức và việc lấy đạo hàm của logp˜ để cực tiểu hóa logZ tương ứng với khi ta
đang ngủ và trải nghiệm các sự kiện được lấy mẫu từ phân phối của mơ hình.
Cách nhìn này giải thích khá rõ ràng cho sự phân tách pha âm và pha dương của
giải thuật, tuy nhiên tính đúng đắn của nó chưa được chứng minh với các thí
nghiệm thần kinh học (neuroscientific). Trong các mơ hình học máy, việc sử
dụng pha dương và pha âm đồng thời cần thiết hơn là chia thành các giai đoạn
tách biệt như thức và ngủ mơ (REM sleep). Như ta sẽ thấy trong phần 19.5, các
giải thuật học máy khác lấy mẫu từ phân phối mơ hình cho nhiều mục đích khác
nhau, và các giải thuật này cũng có đề cập đến hàm ngủ mơ.


Hình 18. 1 Cách nhìn của giải thuật 18.1 có “pha dương” và “pha âm”
Hình 18.1 Cách nhìn của giải thuật 18.1 có “pha dương” và “pha âm”.
(Trái) Trong pha dương, ta lấy mẫu từ phân phối dữ liệu và đẩy lên xác suất chưa
chuẩn hóa của chúng. Điều này có nghĩa là những điểm có khả năng thuộc về tập
dữ liệu sẽ được đẩy lên hơn nữa. (Phải) Trong pha âm, ta lấy mẫu từ phân phối
mơ hình và đẩy xuống xác suất chưa chuẩn hóa của chúng. Điều này chống lại xu
hướng của pha dương khi chỉ thêm một hằng lớn vào xác suất chưa chuẩn hóa
khắp mọi nơi. Khi phân phối dữ liệu và phân phối mô hình bằng nhau, pha dương
có cơ hội đẩy lên một điểm dữ liệu ngang với cơ hội đẩy xuống dữ liệu của pha
âm. Khi điều này xảy ra, khơng cịn bất kì gradient nào nữa (theo kì vọng), và quá
trình huấn luyện cần phải dừng.
Với cách hiểu về vai trò của pha dương và pha âm trong học máy, ta có thiết
kế giải thuật ít tốn chi phí hơn giải thuật 18.1. Chi phí chủ yếu của giải thuật
MCMC là chi phí của phép loại bỏ chuỗi Markov từ một khởi tạo ngẫu nhiên tại
mỗi bước. Một giải pháp tự nhiên là khởi tạo chuỗi Markov từ một phân phối gần

với phân phối của mơ hình, như vậy q trình loại bỏ chuỗi Markov ít tốn chi phí
hơn.
Giải thuật 18.2 Giải thuật phân kì tương phản, sử dụng kĩ thuật tối ưu đi
ngược gradient
Đặt ϵ, kích cỡ của bước đi, là một số dương có giá trị nhỏ.
Đặt k, số bước Gibbs, đủ lớn để chuỗi Markov xáo trộn khi được khởi tạo từ dữ
liệu. Khoảng chừng 1-20 để huấn luyện mơ hình RBM trên tập ảnh nhỏ
while khơng hội tụ do
 Lấy m mẫu {x(1),...,x(m)} từ tập huấn luyện
 g←1m∑mi=1∇θlogp˜(x(i);θ).
 for i=1 to m do


o x˜(i)←x(i).
 end for
 for i=1to k do
o for j=1 to m do
 x˜(j)←gibbs_update(x˜(j))
o end for
 end for
 g←g−1m∑mi=1∇θlogp˜(x˜(i);θ).
 θ←θ+ϵg
end while
Giải thuật phân kì tương phản (CD, hoặc CD-k biểu thị CD với k bước
Gibbs) khởi tạo chuỗi Markov tại mỗi bước với mẫu từ phân phối của tập dữ liệu
(Hinton, 2000, 2010). Phương pháp này được mô tả như giải thuật 18.2. Lấy mẫu
từ phân phối dữ liệu không tốn chi phí, vì chúng ta đã có sẵn tập dữ liệu. Ban đầu,
phân phối của dữ liệu không giống với phân phối mơ hình, vì thế pha âm khơng
được tính chính xác. May mắn thay, pha dương có thể làm tăng phân phối mơ
hình của dữ liệu một cách chính xác. Sau một thời gian, phân phối mơ hình tiến

gần tới phân phối của dữ liệu, và pha âm trở nên chính xác hơn.
Dĩ nhiên, CD vẫn là một xấp xỉ của pha âm. Điều làm CD thất bại trong
việc hiện thực pha âm một cách chính xác là nó thất bại trong việc ngăn chặn
những vùng có xác suất cao khác xa với mẫu huấn luyện thực. Những vùng này có
xác suất cao theo phân phối mơ hình nhưng có xác suất thấp theo phân phối sinh
dữ liệu nên được gọi là mode giả mạo (spurious mode) . Hình 18.2 là một ví dụ.
Về cơ bản, các mode trong phân phối mơ hình cách xa với phân phối dữ liệu sẽ
không được tiếp cận bởi các chuỗi Markov được khởi tạo từ các điểm huấn luyện,
trừ khi giá trị kk rất lớn.


Hình 18. 2 Mode giả mạo. Một ví dụ về làm cách nào mà pha âm trong phân kì tương
phản (giải thuật 18.2) thất bại trong việc ngăn chặn mode giả mạo
Hình 18.2 Mode giả mạo. Một ví dụ về làm cách nào mà pha âm trong phân
kì tương phản (giải thuật 18.2) thất bại trong việc ngăn chặn mode giả mạo. Mode
giả mạo là mode hiện diện trong phân phối mơ hình nhưng vắng mặt trong phân
phối dữ liệu. Bởi vì phân kì tương phản khởi tạo các chuỗi Markov từ các điểm
dữ liệu và chỉ chạy chuỗi Markov trong một vài bước, nó khơng có khả năng tiếp
cận mode của mơ hình ở cách xa các điểm dữ liệu. Điều này có nghĩa rằng, khi
lấy mẫu từ phân phối mơ hình, chúng ta thỉnh thoảng sẽ gặp những mẫu khơng
giống với dữ liệu. Nó cũng có nghĩa là, do loại bỏ một vài hàm lượng xác suất
(probability mass) vào các mode này, mơ hình sẽ vật lộn trong việc đặt hàm lượng
xác suất cao vào các mode thật sự. Để cho trực quan, hình này sử dụng khái niệm
khoảng cách đã được đơn giản hóa - mode giả mạo cách xa mode thật sự dọc theo
trục số thực trong R. Với nhiều mơ hình xác suất đa tầng, chuỗi Markov dựa vào
phương thức lấy mẫu Gibbs và có thể dịch chuyển không cục bộ với từng biến
đơn lẻ nhưng không thể dịch chuyển các biến một cách đồng thời. Với những
trường hợp này, nên xem xét khoảng cách Levenshtein (edit distance) giữa các
mode, hơn là khoảng cách Euclidean. Tuy nhiên khoảng cách Levenshtein trong
khơng gian đa chiều khó biểu diễn trong đồ thị 2-D.

Carreira-Perpinan và Hinton (2005) bằng thực nghiệm đã chỉ ra rằng ước
tính CD bị chệch so với RBMs và các máy Boltzmann quan sát đầy đủ, tức là nó
hội tụ vào những điểm khác với xấp xỉ hợp lý cực đại. Họ lập luận rằng vì độ
chệch nhỏ nên CD có thể được xem như một cách ít tốn kém để khởi tạo mơ hình
mà sau này có thể được dùng để tinh chỉnh bằng các phương pháp tốn kém như
MCMC. Bengio và Delalleau (2009) chứng minh rằng CD có thể được diễn giải
như là sự loại bỏ những phần nhỏ nhất trong cập nhật gradient bằng MCMC, từ đó
giải thích cho sự chệch này.


×