Học m áy Machine Leaming là một lĩnh vực của Trí tuệ nhân tạo liên quan đê'n việc nghiên cứu các phương pháp và các thuật toán đ ể máy Computer có thể học đ ư ợ c từ các ví dụ, tứ c là
Trang 3ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÕNG NGHỆ
Đinh Mạnh Tường
HỌC MÁY Các kỹ thuật cơ bản và hiện đại
NHÀ XUẤT BẢN ĐẠI HỌC QUỐC GIA HÀ NỘI
Trang 4Chương 1 Các nguyên lý cơ bản của lý thuyết học thống kê
1.1 Mô hình tống quát của học từ ví d ụ 20
1.2 Sai số và sai số thực nghiệm 23
1.3 Nguyên lý quy nạp cực tiểu sai số thực nghiệm 25
1.4 Phân lớp Bayes và hàm hồi quy 28
1.5 Học không có giám sát 37
1.6 Phương pháp maximum - likelihood 39
1.7 Maximum - likelihood và cực tiểu lỗi tổng bình phương 47
1.8 Phương pháp Bayes 50
1.9 Đánh giá một giả thuyết 55
1.10 Tính chất phù hợp của thuật toán h ọ c 61
1.11 Sai số thực nghiệm điều c h ỉn h 70
1.12 Định lý bữa ăn khòng miễn p h í 71
Chương 2 Các mô hình tuyến tính 2.1 Mô hình tuyến tính cho hổi quy 76
2.2 Mò hình tuyến tính tổng quát và mạng R B F 82
2.3 Mò hình các hàm phân biệt cho phân lớ p 86
Trang 5HỌC MÁY
2.4 Hàm phân biệt tuyến tính cho phân lớp nhị phân 91
2.5 Các hàm phân biệt tuyến tính cho nhiểu lớp 100
2.6 Mô hình logistic 103
Chương 3 Mạngnơron 3.1 Nơron và mạng nơron 115
3.2 Mạng truỵển thẳng đa tầng 121
3.3 Thuật toán truyền ngược 125
3.4 Các kỹ thuật trong huấn luyện mạng nơron 135
3.5 Mạng nơron biểu diễn xác suất hậu n g h iệm 141
3.6 Thiết kế mạng nơron cho các ứng dụng 146
Chương 4 Các phương pháp dựa vào bộ nhớ 4.1 Phương pháp K - láng giểng gần nhất cho hồi q u y 152
4.2 Hổi quy địa phương 156
4.3 Đánh giá mật độ xác su ất 158
4.4 Phương pháp K - láng giềng gần nhất cho phân lớ p 164
4.5 Phân lớp Bayes ngây th ơ 166
Chương 5 Các phương pháp cây 5.1 Cây quyết đ ịn h 170
5.2 Cây cho hổi quy 174
5.3 Cây cho phân lớp 180
5.4 T h u â tto á n lD 3 189
Trang 6Chương 6 Máyvectorhỗtrợ
6.1 Hàm nhân và phương pháp n h ân 201
6.2 Phương pháp nhân tử Lagrange 210
6.3 Siêu phẳng tách tối ưu 214
6.4 Máy vector h ỗ trợ 220
6.5 Siêu phẳng lề m ềm 223
6.6 Vấn đề phân lớp đa lớ p 229
6.7 Máy vector hổ trợcho hồi quy 232
Chương? Cácmô hình xác suất đổ thị 7.1 Các luật xác suất cơ bản 240
7.2 Mô hình đồ thị định hướng 243
7.3 Học trong mạng Bayes 252
7.4 Mô hình đổ thị không định hướng 255
7.5 Đổ thị nhân tử 259
7.6 Suy diễn trong các mô hình đồ thị Thuật toán loại trừ biến 263
7.7 Thuật toán t ổ n g - t íc h 267
7.8 Thuật toán m a x - tổ n g 279
Chương 8 Mô hình biến ẩn và thuật toán EM 8.1 Mô hình hổn hợp 286
8.2 Maximum - likelihood cho phân phối hỗn hợp Gauss 294
8.3 Thuật toán EM 299
8.4 Áp dụng thuật toán EM cho hỗn hợp G auss 308
Trang 7HỌC MÁY
Chương 9 Các mô hình cho dãy dữ liệu
9.1 Mô hình không gian trạng thái 312
9.2 Mò hình Markov ẩ n 316
9.3 Thuật toán tiến - lùi 321
9.4 Thuật toán Viterbi 329
9.5 Đánh giá các tham biến của HMM 334
9.6 Các mò hình Markov ẩn mở rộ n g 342
9.7 Hệ động tuyến tín h 346
Chương 10 Trường ngẫu nhiên có điều kiện 10.1 Tổng quan vể các mô hình gắn nhãn dữ liệu 359
10.2 Trường ngẫu nhiên có điểu kiện dây chuyền tuyến tín h 369
10.3 Đánh giá các tham biến của CRF dây chuyển tuyến t ín h 372
10.4 Suy diễn trong CRF dây chuyền tuyến tính 375
10.5 Các mô hình trường ngẫu nhiên có điều kiện mở rộng 378
Chương 11 Đánh giá, lựa chọn và kết hợp các mô hình 11.1 Độ phức tạp của mô hình: bias và variance 384
11.2 So sánh các mò hình: phương pháp B ayes 386
11.3 Đánh giá chéo 390
11.4 Học tập th ể 393
11.5 Kết hợp các mô hình xác suất có điều kiện 402
Trang 8Chương 12 Các phưưng pháp suy diễn xấp xỉ
12.1 X ấ p x ỉL a p la c e 412
12.2 Phương pháp Monte Carlo 417
12.3 Phương pháp Monte Carlo dây chuyển M arkov 425
12.4 Phương pháp biến phân 438
12.5 Phương pháp truyền kỳ v ọ n g 468
Chương 13 Phân cụm 13.1 Cụm là g ì? 468
13.2 Độ đo tương tự 471
13.3 Phân cụm phân hoạch 475
13.4 Phân cụm phân cấ p 487
13.5 Phân cụm dựa vào mật đ ộ 490
13.6 Phân cụm dựa vào mò hình 495
13.7 Phân cụm dựa vào đồ th ị 449
13.8 Đánh giá sựxác thực của phân cụ m 507
Chương 14 Rút gọn chiều dữ liệu 14.1 Phân tích thành phần chính 521
14.2 Phân tích nhân t ử 529
14.3 Phân tích thành phần độc lập 532
14.4 Phân tích nhân tử độc lập 535
14.5 Phân tích thành phẩn chính n h ân 539
Trang 9HỌC MÁY
Chương 15 Học bán giám sát
15.1 Vấn đề học bán giám sát 546
15.2 Tự huấn lu yệ n 549
15.3 Cùng huấn lu yệ n 551
15.4 Mô hình sinh và thuật toán EM 553
15.5 Các phương pháp dựa vào đổ th ị 558
15.6 Phân cụm bán giám sát 567
Tài liêu tham khảo 571
Trang 10Học m áy (Machine Leaming) là một lĩnh vực của Trí tuệ
nhân tạo liên quan đê'n việc nghiên cứu các phương pháp và các
thuật toán đ ể máy (Computer) có thể học đ ư ợ c từ các ví dụ, tứ c là
đ ế máy có thể tự động phát hiện ra, suy diễn ra các quy luật, các mẫu quan hệ vốn có trong các ví dụ (trong các dữ liệu) Đây là
m ột dạng học phô biến mà con người vẫn thường thực hiện Chăng hạn, một em bé lên ba có thể học được khái niệm "cái bàn" khi người lớn chỉ cho em bé biết một số đồ vật là cái bàn và một số đổ vật không phải là cái bàn (các ví dụ), mà không cần giải thích gì cả
Học máy là một trong các lĩnh vực phát triển mạnh mẽ nhất của Trí tuệ nhân tạo, và đóng vai trò quan trọng trong sự phát triến của cả ngành Trí tuệ nhân tạo Đó là vì, các phương pháp và các thuật toán của Học máy đã được sử dụng như là công cụ nghiên cứu quan trọng và hiệu quả trong các lĩnh vực khác của Trí
tuệ nhân tạo như xử lý ngôn ngữ tự nhiên (natural language
Processing), nhìn máy (Computer Vision), robotics Chẳng hạn,
trong xử lý ngôn ngữ tự nhiên, các thuật toán học máy đã được sử dụng để gắn nhãn các tù’ loại, phân tích cú pháp, dịch từ ngôn ngữ này sang ngôn ngữ khác,
Học máy có phạm vi ứng dụng rất rộng lớn Các phương pháp và các thuật toán của Học máy đã được áp dụng trong nhiều
lĩnh vực, đặc biệt trong nhận dạng mẫu (pattem recognition), khai
thác dữ liệu ịdata minìng), tin sinh học (bioin/ormatics), trong
Trang 11HỌC MÁY
phân tích thị trường tài chính, trong các vấn đề dự báo, trong chẩn đoán y học Con người có thể nhận ra mặt người quen trong một đám đông, nhận ra chữ viết tay của bạn thân, hoặc lây ra ngay chìa khóa thích hợp trong một chùm chìa khóa, Đó là khả năng nhận dạng kỳ diệu của con người Nhận dạng m ẫu là lĩnh vực nghiên cvm xây dựng các máy có khả năng nhận dạng như con người Trong nhận dạng mâu, thành phần cô't lõi của một hệ nhận dạng mẫu là thành phần thực hiện nhiệm vụ phân lóp (cài đặt một thuật toán phân lớp nào đó của Học máy) Hiện nay đã có nhiều
hệ nhận dạng được xây dựng: nhận dạng m ặt người, nhận dạng vân tay, nhận dạng các ký tự viê't tay, nhận dạng tiếng nói, Lĩnh vực khai thác dữ liệu, cũng còn đ ư ợ c hiểu là khám phá tri thức
trong cơ sở dữ liệu (knoĩvledge discovery in databases), đặt mục
tiêu phát hiện ra, chiết xuất ra các quy luật, các m ẫu quan hệ trong
dữ liệu (các tri thức) vốn có trong các cơ sở dữ liệu lớn, trong các kho dữ liệu Trong lĩnh vực này, các phương pháp và các thuật toán của Học máy cũng đóng vai trò trung tâm, được sứ dụng trong bước chính của quá trinh khai thác dữ liệu: bước chiêt xuâ't
ra, khai thác ra tri thức từ tập dữ liệu
Trong Học máy, học được hiểu là học từ các ví dụ Học tù các
ví dLi gắn nhãn được gọi là học có giám sát (supervised learning),
còn học từ các ví dụ không gắn nhãn đ ư ợ c gọi là học không có
giám sát (imsupervised leaming) Quyển sách này trình bày các
phương pháp học và các thuật toán học quan trọng nhâ't Nội dung sách là như sau Trong chương 1, chúng ta trình bày các khái niệm và các nguyên lý cơ bản của lý thuyết học thôVig kê sẽ được dùng đến trong các chương sau (nguyên lý cực tiểu sai số thực nghiệm, phương pháp phân lớp Bayes, phương pháp đánh giá maximum-likelihood và phương pháp đánh giá Bayes, ) Cần lưu
ý rằng, khi ta đưa ra một mô hình biểu diễn hàm học, thì vấn đề học được quy về vấn đề tìm kiêm tôì ưu để đánh giá các tham biên
Trang 12cùa mô hình Các mô hình tuyến tính sẽ được đề cập trong chương
2 Mạng nơron (như là mô hình tuyến tính mở rộng) sẽ được trình bày trong chương 3 Các phương pháp học không tham biến (các phương pháp dựa vào bộ nhớ, các phương pháp cây) được trình bày trong chương 4 và 5 Phương pháp nhân (sử dụng hàm nhân
đ ể thiết kế các thuật toán học) sẽ được nói tới trong chương 6, ở đó chúng ta sẽ ứng dụng phương pháp nhân để xây dựng máy vector
hỗ trợ cho phân lớp và cho hồi quy Ngày nay, các phương pháp học sử dụng xác suâ't và thông kê ngày càng được các nhà nghiên cứu quan tâm phát triển Có thê nói, nghệ thuật trong Học máy là xây dựng các mô hình biểu diễn phân phôi xác suất sinh ra tập dữ liệu sao cho phù hợp với dữ liệu, thuận tiện cho việc suy diễn ra các xác suâ't mong muốn và dễ đánh giá được các tham biêh của
mô hình Các mô hình xác suất đổ thị (định hướng, không định hướng) sẽ được chúng ta trình bày trong chương 7 Một lớp mô hình xác suât quan trọng là các mô hình biến ẩn (chẳng hạn, mô hình hỗn hợp Gauss, mô hình Markov ẩn, ) Chương 8 trình bày thuật toán EM, một thuật toán cực kỳ quan trọng để đánh giá các tham biến của mô hình biêh ẩn Trong chương 9, chúng ta đưa vào các mô hình biến ẩn cho các dãy dữ liệu, đó là các mô hình không gian trạng thái, mô hình Markov ẩn và các hệ động tuyến tính Trường ngẫu nhiên có điều kiện (CRF) là mô hình xác suất hậu nghiệm để gắn một dãy nhãn cho một dãy dữ liệu sẽ được đề cập trong chương 10 Chương 11 đề cập đến các vấn đề chung: đánh giá các mô hình và lựa chọn mô hình thích hợp cho một nhiệm vụ học; trong chương này chúng ta cũng sẽ trình bày các phương pháp học tập thể và kết hợp các mô hình xác suất có điều kiện Trong phương pháp học Bayes, để tính được phân phối tiên đoán, chúng ta cần phải tính phân phối hậu nghiệm, và tính tích phân trên không gian chiều cao, trong nhiều vấn đề suy diên khác cũng đòi hỏi ta phải tính tổng hoặc tích phân chiều cao, đó là một thách
Trang 13HỌC MÁY
thức Vì vậy, các phương pháp xấp xi được nghiên cứu Chương
12 dành cho các phương pháp suy diễn xấp xỉ, đặc biệt chú ý đến các phương pháp Monte Carlo dây chuyền Markov Chương 13 nói về các thuật toán phân cụm (phân cụm dữ liệu là một dạng học không có giám sát) Dữ liệu thường là vector đặc trưng có chiều rất cao, chiều cao của dữ liệu gây ra các khó khăn nghiêm trọng cho việc thiết k ế thuật toán học hiệu quả (the curse of dimensionality), vì vậy việc rút gọn chiều của dữ liệu được đặt ra Vấn đề rút gọn chiều dữ liệu được trình bày trong chương 14
Chương 15 nói về học bán giám sá t (semi-supervised ỉeaming),
tức là học từ tập dữ liệu gắn nhãn và tập dừ liệu không có nhãn.Học máy là một lĩnh vực đa ngành Nó sứ dụng các kết quả của nhiều ngành: trí tuệ nhân tạo, khoa học máy tính, xác suất và thống kê, lý thuyêt thông tin, lý thuyết quyê't định, lý thuyê't độ phức tạp tính toán, triết học, tâm lý học, Tuy nhiên, để đọc cuốn sách này, ngoài sự hiểu biết về thuật toán và độ phức tạp tính toán, độc giả chi cần có kiến thức về giải tích, đại số tuyến tính, đặc biệt về xác suất và thống kê
v ề thuật ngữ Học máy là một lĩnh vực mới, nhiều thuật ngữ tiếng Anh khó chọn được thuật ngữ tiếng Việt tương xứng, chang hạn Machine Learning chúng ta đã quen gọi là Học Máy (?) Thuật ngữ tiếng Việt được sử dụng trong các trường hợp cho là có thể châp nhận được, trong các trường hợp đó bên cạnh thuật ngữ tiếng Việt đều có thuật ngữ tiếng Anh ở trong ngoặc Trong các trường hợp chưa tìm được thuật ngữ tiêhg Việt tương xứng, hoặc
đã có nhưng là từ Hán Việt không gợi cảm, thì sừ dụng luôn thuật ngữ tiếng Anh
Sử dụng sách Cuốn sách được viết để dùng làm tài liệu tham
khảo cho các đối tượng độc giả khác nhau: các sinh viên và học viên cao học ngành khoa học máy tính và công nghệ thông tin, các nghiên cứu sinh và nhà nghiên cứu cần sứ dụng học máy Đối với
Trang 14ai mới bắt đầu tìm hiểu học máy, nên đọc chương 1 (chỉ cần đọc các mục từ 1.1 đến 1.6 và 1.9), sau đó có thể đọc các chương 2, 3, 4,
5, 6 và chương 11 Ai quan tâm đến các phương pháp học dựa vào
xác suất và các mô hình xác suất, có thể đọc các chương 7, 8, 9, 10
Các chương khác, mỗi chương đề cập đến một chù đề, ai quan tâm đêVi chủ đề nào thì có thể đọc
Lời cám ơn
Tác giả xin chân thành cảm ơn TS Lê Anh Cường, TS Nguyễn Phương Thái, TS Nguyễn Văn Vinh và TS Nguyễn HCm Quỳnh, vì những trao đổi về một số vấn đề được để cập trong sách Tác giả xin chân thành cảm ơn PGS TS Nguyễn Việt Hà, Hiệu trưởng Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội, đã tạo mọi điều kiện thuận lợi để cuốn sách được ra đời
Tháng 10, 2014
Đinh Mạnh Tường
Trang 15CÁC KÝ HIỆU
X , y, X i, yi, u, V , : ký hiệu biến đơn, hoặc phần tử của tập hợp,
hoặc thành phần của vector
X Y, A, B, X, Y, : tập hợp hoặc vector
X : số phần từ của tập X, hoặc độ dài của vector X
P(X); xác suâ't của biến ngâu nhiên rời rạc X
P(X); m ật độ xác suất của biến ngẫu nhiên liên tục X.P(X / Y): xác suâ't có điều kiện của X khi cho biê't Y.E[X]; giá trị kỳ vọng (giá trị trung bình) cùa biến
ngẫu nhiên X
N ( X /^ ,I ) : phân phối chuẩn (phân phối Gauss ) với kỳ
vọng |I và ma trận covariance E
p (X /0 ): hàm m ật độ của X với tập tham biến 0
arg max f ( 0 ) : giá trị của 0 mà tại đó hàm f đạt max
argmin f(0 ):
0
giá trị của 9 mà tại đó hàm f đạt min
Trang 16The quiet statisticians have changed our world, not by discovering new facts or technical developments, but by changing the ways that we reason, experiment and form our opinions
lan Hacking
Lý thuyết học thống kê (statistical leaming theory) được bắt
đầu nghiên cứu bởi các nhà toán học Nga trong thập niên 1960, được phổ biêh và phát triển m ạnh mẽ vào thập niên 1990 Lý thuyết học thống kê (LTHTK) cung câ'p cơ sở lý thuyê't cho việc thiết kê' và phân tích các thuật toán học và là một trong các nhánh phát triển m ạnh mẽ nhất của Trí tuệ nhân tạo Trong chưong này chúng ta sẽ trình bày các khái niệm cơ bản và các nguyên lý cơ bản của LTHTK làm cơ sở để trình bày các vấn đề trong các chương sau Sự trình bày sẽ không đi sâu vào các chi tiết chứng minh mà chỉ cốt đưa ra các phân tích để độc giả nắm được các khái niệm và các nguyên lý cơ bản của LTHTK
Trong LTHTK, học được hiểu là học từ các ví dụ Các cơ thể sôhg, đặc biệt con người, có khả năng học như thế Chẳng hạn, trẻ
em lên ba có thể học đ ể biết được đô'i tượng nào là xe đạp, khi
Trang 17HỌC MÁY
chúng ta chỉ cho em bé biết các đối tượng là xe đạp và các đối tượng không là xe đạp Chúng ta không cần giải thích g'i cả, nhưng
em bé vẫn có thể học được khái niệm xe đạp từ các ví dụ chúng ta
đã chỉ Lĩnh vực Học máy không nghiên cứu quá trình học diễn ra trong con người Mà thay vào đó Học máy nghiên cứu quá trình học một cách trừu tượng, sử dụng các mô hình toán học và thiêt
k ế các thuật toán học (learning algorithms), nhằm mục đích làm cho máy ( C o m p u t e r ) có thể học được một nhiệm vụ cụ thê khi nó được cung cấp một tập ví dụ
Khi mà con người được cung cấp các ví dụ (sau này chúng ta
sẽ gọi là các ví dụ huâh luyện), con người có thể (bằng sự so sánh, phân tích ) rút ra các quy luật tổng quát, các quy luật này vừa có khả năng giải thích các ví dụ đã quan sát được, lại vừa có khả năng tổng quát hóa cho các ví dụ mới chưa được quan sát Đó chính là khả năng suy diễn quy nạp và khả năng tổng quát hóa từ các ví dụ đã được quan sát Mục đích chính của LTHTK là cung câ'p khung làm việc cho các nghiên cứu thiết kế các thuật toán có thể thực hiện quá trình suy diên quy nạp và tổng quát hóa từ các
ví dụ quan sát Chúng ta bắt đầu nghiên cứu LTHTK bằng việc hìiìlì thức hóa vân đề học
Trang 18N hư vậy học một hàm mục tiêu ở đây được hiểu là, làm thế nào
đ ế chỉ từ một số hữu hạn ví dụ đã quan sát được, chúng ta tiên
đoán được giá trị y tương ứng với X bâ't kỳ ở ngoài tập ví dụ
Chẳng hạn như khi chúng ta dạy một em bé nhận biê't ba loại quả
mơ, mận, đào Trong trường hợp này, X là tập hợp các quả mơ, mận, đào; Y gồm tên của ba loại quả, Y = {mơ, mận, đào Ị, còn hàm mục tiêu là hàm cho ứng mỗi quả trong ba loại quả với tên của nó Chúng ta có thể dạy em bé học hàm này thông qua các ví dụ như sau Từ một thúng đựng các quả mơ, mận, đào, chúng ta lấy ra một quả bâ't kỳ cho em bé quan sát, rồi nói cho em bé biê't tên của quá đó Ta làm như thê' chẳng hạn 100 lần Với số lần quan sát khá lớn, em bé đó có thể học thành công, tức là khi ta đưa ra một quả trong SỐ ba loại quả mơ, mận, đào, em bé sẽ nói được chính xác tên của quả đó Để quá trình học thành công chúng ta cần đưa vào một số giả thiết cần thiết
Trong quan hệ hàm trên, X là một tập nào đó các đối tượng Mỗi đô'i tượng X trong tập X cần được biểu diễn như th ế nào? Điều này phụ thuộc vào từng nhiệm vụ học cụ thể Trong các hệ nhận dạng mâu, sử dụng các bộ cảm nhận ta thu được các thông tin về đôì tượng Từ các dữ liệu nguyên thuỷ này, bằng các phương pháp tiền xử lý dũ’ liệu và biến đổi dữ liệu, người ta triê't xuất ra các đặc trung quan trọng nhất thuận lợi cho quá trình học sau này
Tổng quát, mỗi đối tượng X được biểu diễn bởi vectơ đặc trưng
đó X sẽ là không gian các vectơ đặc trưng Mỗi đặc trưng là một biêh, nó có thể là biến liên tục (nhận giá trị là các số thực), chẳng hạn đặc trưng là chiều cao, trọng lượng, nhiệt độ, Đặc trưng cũng có thể là biến rời rạc, chẳng hạn như giới tính, màu sắc, Trong đa số các thuật toán học được trình bày sau này, đối
tượng X sẽ đư ợc biểu d iễn bởi vectơ m à tất cả các đặc trưng thành
phần của nó đều là số thực, tức là X là vectơ trong không gian vectơ thực d chiều, X = R ‘^.
Trang 19Bây giờ nói về tập dữ liệu cung cấp cho người học (tập dữ liệu huấn luyện) Trong tập dữ liệu huấn luyện D = { (x,y) }, ở mỗi cặp
dữ liệu (x,y), thì y được gọi là nhãn của X, nó là sô' thực trơng trường hợp hồi quy và là nhãn lớp trong trường hợp phân lớp Nhãn của dữ liệu được cung cấp bởi thày dạy (người giám sát)
Chính vì thế mà học với tập ví dụ gắn nhãn được gọi là học có
thày hay học có giám sát (supervised leaming) Cần nhấn mạnh
rawfng, nói chung y không phải là giá trị của hàm m ục tiêu tại X,
tức là y f(x) Điều đó là do y chỉ là giá trị mà ta quan sát được,
nó có thể sai khác với giá trị đích thực của hàm mục tiêu, vì nhiều
lý do, chẳng hạn độ chính xác của các thiết bị quan sát Sự sai khác
giữa nhãn y và giá trị đúng của hàm mục tiêu tại X vẫn có thể xảy
ra ngay cả trong trường hợp rời rạc, chẳng hạn một quả được hái
ra từ cây mơ, nhưng ông thày dạy và nhiều người khác lại bảo nó
là quả mận, vì nó rất giống quả mận Bây giò chúng ta cần đưa ra giả thiêt quan trọng về cơ chế sinh ra các ví dụ huân luyện Chúng
ta giả thiê't rằng, các ví dụ (x,y) trong tập dữ liệu huấn luyện D được
lấy mẫu độc ỉập và tuãn theo cùng một phãn phôĩ xác suất p(x,y) trên không gian tích X X Y Giả thiê't này được gọi là giả thiết i.i.d (viết
tắt của cụm từ independent and identỉcalỉy distributed) Đây là giả
Trang 20thiê't cơ sở của lý thuyết học thống kê Cần nhấn mạnh rằng, đối
\'ới một nhiệm vụ học thì p(x,y) là phân phôi xác suất cố định (các
dữ liệu mà ta quan sát được trong tương lai cũng được sinh ra từ phân phôi xác suất này, và như vậy các dữ liệu tương lai quan hệ vói các dữ liệu quá khứ (các dữ liệu huâVi luyện) thông qua phân phối này) Hon nữa p(x,y) là chưa biê't (sau này chúng ta sẽ thấy rằng, nếu biết p(x,y) thì chẳng còn gì phải học cả) Như vậy ta giả thiê't rằng, tổn tại một phân phối xác suâ't cố định và chưa biết, phân phôi xác suâ't này điều khiển sự sinh ra các ví dụ trong tập ví
dụ huấn luyện và cả các ví dụ được quan sát trong tương lai Một ctiểm nữa cần nhấn m ạnh là, các ví dụ cần được lây mẫu độc lập Dây là một giả thiết rất m ạnh mà trong nhiều trường hợp ta không thực hiện được (Cũng cần lưu ý rằng, thuật ngữ phân phối xác suất
iprohability distribution) được chúng ta sử dụng một cách lỏng lẻo,
áể chỉ mật độ xác suất trong trường hợp liên tục và xác suất trong :rường hợp rời rạc Khi cần phân biệt, ta sẽ ký hiệu hàm mật độ
<ác suất bởi p(.) và xác suất bởi P(.)) Những gì chúng ta biết về làm mục tiêu cho tới thời điểm này chỉ thông qua tập ví dụ huân uyện Mục tiêu của chúng ta là sử dụng tập ví dụ huấn luyện để
lư a ra một hàm là xấp xỉ của hàm mục tiêu Giả sử h: X ^ Y là Tiột ứng viên của sự xâ'p xỉ đó Chúng ta cần tiêu chuẩn để đánh
ậá một xâp xỉ là tốt.
1.2 SAI SỐ VẢ SAI SỐ THỰC NGHIỆM
Hàm sai lệch Giả sử (x,y) là một ví dụ huấn luyện, trong đó y
là giá trị quan sát được tương ứng với X, ta muốn đo sự sai lệch giữa giá trị quan sát được y với giá trị của hàm h tại X Ta ký hiệu
L(y,h(x)) là độ đo sự sai khác đó và gọi L là hàm sai lệch (loss
hinctỉon) Có nhiều cách xác định độ đo sai khác Sau đây ta sẽ đưa
ra các độ đo sai khác thông dụng nhất cho hổi quy và phân lớp
Trang 21Trong trường hợp hổi quy, độ đo sai khác thường được sử
dụng là lỗi bình phương (squared error / squareả loss), lỗi này
được xác định như sau:
Đôi với phân lớp, người ta thường sử dụng lỗi phân lớp
(0 nếu y = h(x)
(1.4).1 nếu y ^ h(x)
Sai số Giả sử L(y,h(x)) là sai số của hàm h tại X Sai s ố kỳ vọng
hay lỗi kỳ vọng (expected risk / expected loss) của hàm h, được ký
hiệu là R(h), là giá trị trung bình (hay giá trị kỳ vọng) của L(y,h(x)) trên toàn bộ không gian X X Y, và được xác địiứi như sau:
« «
(Cần lưu ý rằng, tích phân trên và tâ't cả các tich phân được đưa ra sau này đều là các tích phân xác định, miền lây tích phân không được chỉ ra, nhưng hoàn toàn rõ ràng trong ngữ cành) Hàm xấp xi tốt nhất của hàm mục tiêu là hàm có sai số kỳ vọng nhỏ nhâ't R(h)
là phiếm hàm (íunctional) của hàm h Mục tiêu của ta bây giò là tìm hàm h cực tiểu phiếm hàm R(h), trong khi ta không biê't phân phối xác suâ't p(x,y), ta chỉ có các thông tin được chứa trong tập ví
dụ huâh luyện D Vì vậy, thay cho sai số của hàm h, ta xét sai sô'
thực nghiệm của nó
Sai số thực nghiệm Sai sô' thực nghiệm (empirical risk) của
hàm h, ký hiệu là (h), là sai số trung bình của h được tính trên tập ví dụ huân luyện D, và được xác định như sau
HỌC MÁY
Trang 22R ,( h ) - - |L ị;L ( y „ h ( x ^ ) ) (1.6)
Ví dụ, trong các vân đề hổi quy, nếu chúng ta sử dụng lỗi
bình phương thì ta nhận được hàm lỗi tông bình phương (sum-of-
squares errorỷunctỉon) được xác định như sau:
1.3 NGUYÊN LÝ QUY NẠP cực TIẾU SAI số THựC NGHIỆM
Thay cho tìm hàm cho cực tiểu sai số kỳ vọng (1.5), ta tìm hàm cho cực tiểu sai số thực nghiệm (1.6) Tức là, chúng ta sẽ xem hàm mục tiêu cần học f xấp xỉ bằng hàm g sau
g = a r g m i n R , , , p ( h )
hTuy nhiên, mục tiêu của chúng ta là tìm hàm không nhũng có sai
số thực nghiệm nhỏ (khớp với các ví dụ huấn luyện), mà còn có khả năng tiên đoán tốt ở ngoài các ví dụ huân luyện (có khả năng tổng quát hoá tốt) Nhưng nếu không có hạn chế gì về các hàm mà
từ đó ta chọn ra hàm g, thì dễ dàng đưa ra hàm g có sai sô' thực nghiệm bằng 0, tức là hoàn toàn khớp với các ví dụ huân luyện
Trang 23HỌC MÁY»
nhung chắc chắn nó sẽ tiên đoán tồi ở ngoài tập huâh luyện Chẳng hạn, giả sử tập ví dụ huấn luyện gồm 5 điểm trên mặt phẳng (hàm học là hàm số thực), khi đó nê'u chúng ta chọn g là một đường cong bất kỳ đi qua 5 điểm đó (được biểu diễn bởi đưòng đứt đoạn trong hình 1.1), thì tất nhiên sai số thực nghiệm của nó sẽ bằng 0, nhưng bằng trực giác ta có cảm giác nó sẽ không tiên đoán tốt bằng đường thẳng (được mô tả bởi đường liền), mặc dầu nó có sai số thực nghiệm khác 0 Do đó, nê'u chúng ta không đưa vào một lóp hàm để từ đó ta chọn ra hàm g thì chúng ta sẽ không học được gì cả
Giả sử H là một lớp nào đó các hàm, H = |h : X Y| , mỗi hàm h được xem như một ling viên cho hàm mục tiêu và được gọi
là một giả thuyết (hypothesis) và ta gọi H là không gian các giả
thuyết (space o/hypotheses) Nguyên lý quy nạp khuyên ta xấp xỉ
hàm mục tiêu f bởi hàm g được chọn ra từ lớp các hàm H sao cho
nó có sai SỐ thực nghiệm nhỏ nhất, túc là hàm g được xác định
như sau
h e H
Nguyên lý trên được gọi là nguyên lý quy nạp cực tiểu lỗi thực
nghiêm (empirical risk m inim ization inductive prỉnciple), sau này
ta sẽ gọi tắt là nguyên lý quy nạp hoặc phương phấp cực tiểu sai sô'
thực nghiệm Câu hỏi đặt ra là, áp dụng nguyên lý quy nạp liệu
chúng ta có thê tìm được hàm g là xâ'p xỉ tốt của hàm cần học không? Cụ thể hơn là, liệu chúng ta có thu được hàm g có sai số R(g) nhỏ không? Rõ ràng là hàm g phụ thuộc vào lớp các hàm H,
nó đóng vai trò như là hướng quy nạp Nêu hàm mục tiêu không
thuộc lớp các hàm H thì khó có thế g là xấp xi tô't của hàm mục tiêu Ngay cả khi lớp hàm H chứa hàm mục tiêu, cũng chưa có gì đảm bảo hàm g có sai sô' nhỏ Vả lại, chúng ta hoàn toàn không biết gì về hàm mục tiêu, những gì ta biê't về nó chỉ là những thông
Trang 24tin trong tập huấn luyện D, nên củng không thể nào biết được H chứa hay không chứa hàm mục tiêu Việc đưa ra lớp các hàm H
thích hợp cho một nhiệm vụ học là công việc râ't khó khăn, nó đòi hỏi trước hê't ta phải có các hiểu biết thêm về hàm mục tiêu Một câu hỏi khác được đặt ra là, khi đã thu được hàm g, ta không thể tính được sai sô' của nó R(g) theo công thức (1.5), (bởi vì ta không biết phân phôi xác suất p(x,y)), th ế thì làm th ế nào đánh giá được khả năng tiên đoán chính xác của nó ở ngoài tập ví dụ huấn luyện? Các vâ'n đề đặt ra sẽ được làm sáng tỏ sau này
Y t
Hình 1.1 Hai đường xấp xỉ từ 5 ví dụ.
Nguyên lý quy nạp là một nguyên lý quan trọng trong Học máy, rất nhiều thuật toán học được thiết k ế theo nguyên lý này
Để thiêt kê' các thuật toán học dựa trên nguyên lý quy nạp, chúng
ta cần tiến hành các bước sau Đầu tiên, chúng ta cần đưa vào lớp
các hàm H mà từ đó ta sẽ chọn ra hàm g làm xấp xỉ của hàm mục tiêu Lớp hàm H thường được xác định bởi một dạng hàm nào đó
Trang 25trên không gian X, dạng hàm đó phụ thuộc vào một vectơ các tham biến Chẳng hạn, H gồm các hàm tuyến tính trên không gian vectơ d chiều, X = tức là chúng ta muốn xấp xỉ hàm mục tiêu bởi một hàm tuyêh tính và mỗi hàm h có dạng:
ra, và sai số thực nghiệm lúc này trở thành một hàm của vectơ các tham biêh Bây giờ ta cần tìm một vectơ trong không gian vectơ các tham biên sao cho tại đó sai số thực nghiệm nhỏ nhâ't N hư vậy
ta đã đưa đêh vấn đề tìm kiếm tối ưu Do đó có thể nói rằng, học
từ các v í dụ là vấn đê tìm kiếm tối ưu Trên đây là lược đổ tổng
quát để thiê't k ế các thuật toán học dựa trên nguyên lý quy nạp
1.4 PHÂN LỚP BAYES VÀ HÀM HỔI QUY
Lý thuyết xác suâ't cho phép ta có thê’ tiêh hành các lập luận, suy diễn trong hoàn cảnh các thông tin mà chúng ta có được là không chắc chắn Lý thuyê't xác suâ't là cơ sở toán học cúa lý thuyết học thống kê Trên cơ sở lý thuyêt xác suâ't và thống kê, và
áp dụng lý thuyết quyêt định (decision theory),các nhà nghiên cứu
đã phát triển nên khung làm việc để thiết kế và phân tích các thuật toán học Trong mục 1.1, ta đã giả thiết mỗi ví dụ quan sát (x, y) là được sinh ra bởi một phân phối xác suâ't p(x, y) nào đó chưa biết,
do đó vector đặc trưng X = (xi Xd) là vector các biến ngẫu nhiên,
và y cũng là biến ngẫu nhiên Trong mục này chúng ta sẽ trình bày
HỌC MÁY
Trang 26các phương pháp học sử dụng xác suất Trước hết ta nói về vấn đề phân lớp.
1.4.1 Phân lớp Bayes
Già sử chúng ta cẩn phân các đối tượng trong không gian X
thành k lớp, tức là hàm mục tiêu cần học là:
f :X - ^ C = |c , c ^ Ịtrong đó, Ci là nhãn của lớp thứ i Ta ký hiệu P(ci) là xác suất để
một đối tượng của X thuộc lớp Ci, xác suất này được gọi là xác suất
tiên nghiêm (prior probability), tức là xác suất trước khi ta quan
sát đôl tượng Sau khi quan sát được đôl tượng X (tức là ta biết được các đặc trưng của nó), ta ký hiệu xác suất để đối tượng này
thuộc lớp Ci là P(Cj / x ) , ta gọi xác suất này là xác s u ấ t hậu nghiệm
(posterior probability), đây là xác suất có điểu kiện khi quan sát
được X Ta ký hiệu hàm mật độ xác suâ't của các đối tượng X eX là p(x) và hàm mật độ xác suất của các đôi tượng trong lớp Ci là
p (x /C j), đây là hàm m ật độ xác suất điều kiện trên lớp (class-
condỉtional probability density ỷunctỉon) (Lưu ý rằng, ở đây ta
già thiê't X liên tục, nếu nó rời rạc thì thay cho các mật độ là các xác suâ't) Chắng hạn, ta muốn phân các bệnh nhân thành hai lớp ung thư và không ung thư theo một đặc trung là kết quả của một xét nghiệm; giá sử kê't quả của xét nghiệm này chỉ nhận một trong hai khá năng dương tính hoặc âm tính Giả sử xác suất để bệnh nhân
có kết quả xét nghiệm dương tính bị ung thư là 0,3, p(cancer / X = ©) = 0,3; khi đó xác suất để bệnh nhân có kê't quả xét nghiệm dương tính không bị ung thư là 1 - 0,3 = 0,7, P(nocancer/x = ©) = 0,7 Bây giờ kết quả xét nghiệm của một bệnh nhân là dương tính, th ế thì ta cần tiên đoán bệnh nhân đó là ung thư hay không ung thư? Trực quan ta thấy rằng, sẽ là hợp lý
Trang 27HỌC MÁY
nêù ta chẩn đoán bệnh nhân đó là không ung thư, vì P(nocancer/ x = 0 ) » p ( c a n c e r / x = © )
Tổng quát, giả sử ta biết các xác suất hậu nghiệm
P (C ị/x,),i = và giả sử X là một đối tưạng được quan sát,
luật quyết định Bayes phát biểu rằng, đối tượng X được phân vào
lớp c có xác suất hậu nghiệm p ( c / x ) lớn nhất trong sô' các xác suất hậu nghiệm P(Cj / x ) ,i = ; tức là
c = a rg m a x p (c ị/x ) (1.10)
C i = C , , , C k
Phân lớp theo luật quyết định Bayes trên được gọi là phân lớp
Bayes (Bayes cỉassiỷỉer) Mỗi một hàm phân lớp (chẳng hạn hàm
phân lớp Bayes trên) sẽ phân không gian X thành các vùng Ri (i =
1, , k), mỗi vùng bao gồm tất cả các đối tượng được gán cho một
lớp; ta sẽ gọi các vùng đó là các vùng q u y ế t định ịdecision regions)
Biên giữa các vùng này được gọi là biên quyết định hay siêu mặt
quyết định Cần lưu ý rằng, các vùng quyết địmh có thể không liên thông, mỗi vùng quyê't định có thể gồm nhiều miền rời nhau
Sau đây chúng ta sẽ chúmg minh rằng, phân lớp Bayes là phân lớp
tối ưu.
Chúng ta sẽ chiing minh rằng, phân lớp Bayes cho lỗi kỳ vọng
của h tại X theo công thức (1.4) được xác định là
Trang 28Giả sử h(x) = q (h phân đối tượng X vào lớp Cj), từ (1.11) và (1.12)
ta có
R( l , / x ) = X P k / ’<)tức là
R ( h / x ) = l - p ( c j / x ) (1.13)
Từ công thức (1.13), ta suy ra rằng, để lỗi kỳ vọng là nhỏ nhất,
ta cần phân X vào lớp q sao cho P(q/x) là lớn nhâ't Điều đó chứng
tỏ rằng, phân lóp Bayes cho lỗi kỳ vọng nhỏ nhất
Bây giờ ta sẽ đưa ra một lập luận khác chứng tỏ rằng, phân
lớp Bayes là phân lớp tối ưu, cụ th ể chúng ta sẽ chỉ ra rằng, phân
lóp Bayes cho xác suất lỗi nhỏ nhất Giả sử rằng, các dữ liệu quan
sát (x,c) e XxC được sinh ra từ phân phối xác suất p(x,c) Giả sử hàm phân lớp h chia không gian X thành các vùng Ri, trong đó Ri gồm các đối tượng mà luật phân lớp h gán cho lớp Ci Ta tính xác suâ't để một đối tượng được phân lớp đúng bởi h, ta ký hiệu xác suâ't này là P(correct) Ta có:
p(correct) = ^ p ( x G R , , C ị)
ị=i
kP(coưect) = ^ p ( x , C j ) d x
i=l RTổng này sẽ lớn nhất khi mà luật phân lớp h chọn vùng Ri
p ( x , c , ) , , p ( x , c j N hưng chúng ta có p (x ,C ị) = p(c, / x) p( x) ,
và nhân tử p(x) là chung cho tất cả các lớp Ci Do đó p(x,Cị) là lớn nhất khi mà P (C ị / x) là lớn nhất trong các lớp Cị () = Như
Trang 29vậy luật phân lớp Bayes cho P(correct) lớn nhất, do đó nó cho xác suất lỗi P(error) nhỏ nhất.
c = a r gma xp( x/ c i ) p( c , ) (1-14)
Trở lại ví dụ phân các bệnh nhân thành hai lớp ung thư và không ung thư đã nói ở trên Giả sử ta đã biê't rằng, xác suâ't để một người bệnh ung thư là 0,008 tức là p(cancer) =0,008; p(nocancer) = 0,992 Xác suất để bệnh rửiân ung thư có kết quả xét nghiệm dương tính là 0,98 và xác suâ't đ ể bệnh nhân không ung thư có kê't quả xét nghiệm dương tứih là 0,03 tóc là p(0/cancer)=o,98; p(©/nocancer)=0,03 Bây giò giả sứ một bệnh nhân có kết quả xét nghiệm dương tính Ta có:
p (© / cancer) p (cancer) = 0,98 X 0,008 = 0,0078
p (© / nocancer) p (nocancer) = 0,03 X 0,992 = 0,0298
N hư vậy, P(© /nocancer)P(nocancer)» p (© /can cer)p (can cer)
Do đó ta xét đoán rằng, bệnh nhân là không ung thư
Tóm lại, nêíi biết các xác suất hậu nghiệm, thì ta có thể phân lớp Bayes theo công thức (1.10), còn nêu biết các xác suâ't tiên nghiệm và các m ật độ xác suâìt điều kiện trên lớp, thì ta có thể phân lớp theo công thức (1.14) và đó là cách phân lớp tôì ưu
Trang 30Q uay lại giả thiết ban đầu về tập dữ liệu huấn luyện mà chúng ta đã nêu lên ở đầu chương Trong các vấn đề phân lớp,
D = {(x, c)| , trong đó các (x,c) được lấy mẫu độc lập theo phân phối xác suâ't p(x,c) chưa biết trên Xx|Cj, ,C|^Ị Nếu biết được phân phối xác suâ't này thì ta có thể tính ngay được các xác suâ't hậu nghiệm
biết các xác suất hậu n ghiệm P(Cị / x ) ,i = hoặc các xác suấttiên nghiệm P(Cj),i = l, ,k và các mật độ xác suất điều kiện trên lớp p(x / Cj ),i = Các (mật độ) xác suâ't này chúng ta chưabiê't, vì vậy đ ể áp dụng phương pháp phân lớp Bayes, ta cần phải đánh giá các (mật độ) xác suất đó tò tập dữ liệu thu thập được Chúng ta có các cách tiếp cận sau để áp dụng phân lớp Bayes
Các mô hình sinh (generative models) Chúng ta có thể đưa
ra mô hình đế mô tả các mật độ sác suất điều kiện trên lớp
p ( x / Cj),i = và các xác suâ't P(Cj),i = l, ,k Đánh giá cácđại lượng đó từ các dữ liệu huấn luyện, rồi phân lớp theo công
Trang 31Các mô hình phân biệt (discriminative models) Một cách
tiếp cận khác là ta mô hình hoá trực tiếp các xác suất hậu nghiệm P(Cj / x ) , i = và đánh giá chúng từ dữ liệu Sau đó thực hiệnphân lớp theo công thúc (1.10) Các mô hình mô tả trực tiếp các xác suất hậu nghiệm được gọi là các mô hình phân biệt
Trong hai cách tiếp cận trên thì cách nào ưu việt hơn? Trong cách tiêp cận thứ nhâ't, ta cần đánh giá phân phối xác suâ't kết hợp p(x,c) hoặc các phân phối xác suâ't p(x / Ci) và P(ci) Cách này có ưu điểm là nó cho phép ta đánh giá được m ật độ xác suất p(x) trên không gian đầu vào của hàm mục tiêu theo công thức (1.15) Điều này là có lợi khi ta m uốn dò ra các điểm có xác suất thâp, các điểm
có thể là nguyên nhân của phân lớp với độ chính xác thâp, các điểm ngoại lai (outlier) Tuy nhiên, trong các ứng dụng thực tế, không gian các vectơ đặc trưng X thường là có chiều râ't cao, do đó
để đánh giá được các m ật độ xác suất với độ chính xác hợp lý, đòi hỏi ta phải có tập dữ liệu lớn Nếu chúng ta chỉ quan tâm đến việc phân lớp, không cần đến các thông tin về phân phối của các điểm trong X, thì ta có thể sử dung cách tiếp cân thứ hai: mô hình hoá trực tiếp các xác suất hậu nghiệm
1.4.2 Hàm hổi quy
Bây giờ chúng ta xét vầín đề hổi quy, tức là chúng ta cần đánh giá một hàm mục tiêu là hàm số thực:
f:X YTrong đó, X = R'* và Y = R Giả sử h là một hàm xấp xỉ của hàm mục tiêu, và giả sử mật độ xác suất sinh ra các dữ liệu (x,y) quan
Trang 32sát được từ X X Y là p(x,y), sử dụng lôi bình phương, ta có lôi kỳ vọng của hàm h là:
R ( h ) = j [ [ h ( x ) - y ] ' p ( x , y ) d x d y
J J - J
(1.17)
Mục đích của chúng ta là tìm hàm h sao cho lỗi kỳ vọng trên
là nhỏ nhâ't Lỗi kỳ vọng trên là một phiêín hàm (hàm của hàm) Với các giả thiết thoả đáng về hàm mật độ xác suất p(x,y) và hàm cần tìm h(x), từ các kết quả cơ bản của phép tính biến phân (the calculus of variations), ta suy ra rằng, để cho hàm cần tìm h(x) làm cực tiểu phiếm hàm (1.17), thì nó phải thoả mãn phương trình Euler-Lagrange:
Hàm h(x) được xác định bởi (1.18) được gọi là hàm hồi quy
ịregression /unction) N hư vậy, nếu chúng ta biết được m ật độ
Trang 33HỌC MÁY
xác suất sinh ra dữ liệu quan sát, thì chúng ta tìm ngay được hàm xấp xỉ tối ưu của hàm mục tiêu, đó là hàm hồi quy được xác định bởi (1.18)
Chúng ta cũng có thể đưa ra m ột chứng m inh khác cho khẳng định trên Ta khai triến lỗi bình phương của hàm h thành tổng sau:
Trang 34giám bớt được nó Do đó lỗi của hàm h sẽ nhỏ nhất khi mà h(x) bằng E[y/x].
Tóm lại, nếu chúng ta biết được mật độ xác suất p(x,y) sinh ra
dừ liệu quan sát thì ta có thể tính được hàm xấp xi tối im của hàm mục tiêu theo các công thức (1.18) và (1,19) Từ các công thức này
ta có thể đưa ra hai hướng tiêp cận để giải quyê't vấn đề hồi quy như sau
Đưa ra mô hình xác suất biểu diễn hàm mật độ xác suất kê't hợp p(x,y) và đánh giá hàm mật độ này từ tập dữ liệu huấn luyện Sau đó tính hàm xấp xi của hàm mục tiêu theo các công thức (1.18)
và (1.19)
Cách thứ hai là đưa ra mô hình xác suất biểu diễn trực tiếp hàm mật độ xác suâ't của y điều kiện trên x: p(y/x), rồi đánh giá mật độ này từ dữ liệu Khi đã có hàm mật độ này, ta chỉ còn tính hàm xâ'p xỉ của hàm cần tìm theo công thức (1.18)
Trên đây chúng ta đã trình bày hai hướng tiếp cận dựa trên xác suâ't đ ế giải quyê't vấn đề phân lớp và vâh đề hồi quy Trong
cả hai cách tiêp cận, đầu tiên ta phải đưa ra các mô hình biểu diên các mật độ xác suâ't (hoặc xác suất), sau đó đánh giá các mật độ xác suất đó từ tập dữ liệu mà ta đã quan sát được Thông thường các mô hình được đưa ra là sự mô tả một lớp hàm phụ thuộc một vectơ tham biêh, và do đó việc đánh giá các hàm mật độ được quy
về đánh giá vectơ tham biêh từ tập dữ liệu Trong mục tiếp theo chúng ta sẽ trình bày các phương pháp đánh giá mật độ xác suất tù’ tập dữ liệu
1.5 HỌC KHÔNG CÓ GIÁM SÁT
Trong mục 1.1, chúng ta đã trình bày mô hinh học có giám sát Trong học có giám sát, người học được cung cấp một tập dữ liệu gắn nhãn D = Ị(x,y)}, trong đó y là nhãn của X, rửiãn này do
Trang 35người giám sát (người thày) cung cấp, và nó là giá trị của hàm mục tiêu mà người ta quan sát được Trong học không có giám sát, người học chỉ được cung cấp một tập dữ liệu không có nhãn
Trong đó, các điểm dữ liệu Xi được lấy mẫu từ không gian các đôì
tượng X nào đó Học không có giám sát (unsupervised leaming)
bao gồm các nhiệm vụ sau:
1 Đ ánh giá m ật độ Với giả thiết rằng, tập dữ liệu không có nhãn được lây mẫu ngẫu nhiên một cách độc lập và theo cùng một hàm mật độ xác suất p(x) trên không gian X, nhiệm vụ của chúng
ta là tìm ra hàm mật độ đó Đánh giá m ật độ từ tập dữ liệu là nhiệm vụ trung tâm của học không giám sát và đóng vai trò cực
kỳ quan trọng trong học máy nói chung (như chúng ta đã chỉ ra trong mục 1.4) Chúng ta sẽ nghiên ciki các phương pháp đánh giá mật độ trong các mục sau
2 Phân cụm dữ liệu (clustering) Trong nhiệm vụ này, chúng
ta cẩn phân tập dữ liệu D thành k tập con (thành k cụm), sao cho các điểm dữ liệu trong cùng một cụm là tương tự vói nhau, còn các điểm trong các cụm khác nhau thì ít tương tự nhau Phân cụm
dữ liệu sẽ được chúng ta nghiên cxki trong chương 13
3 Rút gọn chiều Mục đích là biểu diễn các điểm dữ liệu
trong không gian vectơ đặc trưng chiều thấp sao cho vẫn bảo tổn được các đặc tính quan trọng của dữ liệu Chúng ta sẽ đề cập đến vấn đề này trong chương 14
4 Phát hiện các điểm dữ liệu ngoại lai (outlier), tức là tìm ra
các điểm dữ liệu mà nó rất khác với đa số Chúng ta sẽ không đề cập tới vâh đề này
Sau đây chúng ta sẽ trình bày các phương pháp đánh giá mật
độ Chúng ta giả thiết rằng, hàm m ật độ xác suất sinh ra tập dữ liệu (1.20) có một dạng hàm đã được xác định và phụ thuộc vectơ
HỌC MÂY
Trang 36tham biến 9 = (0|, ,0|() Do đó hàm mật độ sẽ hoàn toàn được xác định nếu chúng ta xác định được giá trị của các tham biến Với giả thiết đó, nhiệm vụ của ta bây giờ là xác định giá trị của các tham biến từ tập dữ liệu Chẳng hạn, giả sử ta có tập dữ liệu trong không gian các số thực R Nêu ta giả thiê't tập dữ liệu đó được lấy
m ẫu theo phân phối chuẩn N (|j.,ơ)với trung bình |I và variance
ơ , thì ở đây ta có hai tham biêh cần đánh giá là |J và ơ Để chỉ rằng, hàm m ật độ có một dạng hàm xác định và phụ thuộc vectơ tham biến 6, ta sử dụng ký hiệu p ( x / 0 ) Vấn đề đánh giá các tham biến của hàm mật độ từ tập dữ liệu là vâh đề kinh điển trong thống kê và có nhiều hướng tiếp cận Chúng ta trình bày hai phương pháp đánh giá: phương pháp maximum-likelihood và phương pháp Bayes
1.6 PHƯƠNG PHÁP MAXIMUM-LIKELIHOOD
Trong mục này chúng ta trình bày phương pháp thông dụng nhất đ ể đánh giá tham biến của hàm mật độ: phương pháp đánh giá maximum-likelihood
Với tập dữ liệu đã cho, thì biểu thức (1.21) là hàm của 0 và nó
iược gọi là hàm likelihood của 0 và được ký hiệu là L(0)
i = l
Trang 37Đánh giá maximum-likelihood của vectơ tham biêh 0 là vectơ, được gọi là vectơ maximum-likelihood (vectơ ML), được ký hiệu là 0mL / nià tại đó hàm likelihood đạt cực đại, tức là
9
Như vậy, phân phối p(x/0|^L)là phân phôi có khả năng nhâ't đãsinh ra tập dữ liệu D Bởi vì hàm logarit là hàm đơn điệu tăng, nên
đế thuân lợi cho việc tính toán, thay cho sử dụng hàm likelihood
người ta thường sử dụng hàm log-likelihood:
i=lNhư vậy, vấn đề tìm vectơ tham biêh theo phương pháp maximum-likelihood là vấn đề tìm kiếm tối ưu, cụ thể là ta cần tìm vectơ tại đó hàm likelihood hoặc hàm log-likelihoodđạt cực đại Nếu hàm likelihood (hoặc hàm log-likelihood) L(0) là hàm khả vi, thì chúng ta có thể sử dụng các phương pháp kinh điển của phép tính vi phân Cụ thế là lây đạo hàm riêng của hàm likelihood theo mỗi tham biến và đặt bằng 0, ta nhận được hệ phương trình
Giải hệ phương trình (1.25) để tìm các nghiệm Nhung km ý rằng, tại các nghiệm đó hàm likelihood có thể đạt cực đại địa phương, cực đại toàn cục hoặc cực tiểu, Do đó ta cần tiến hành các kiểm tra để tìm
ra vectơ tham biêh mong muôh Nếu chúng ta cẩn tìm vectơ ML
thoả mãn một sô' hạn chế, ửù chúng ta có thể sử dụng phương pháp
nhân tửLagrange (Lagrange Multipliers) (xem mục 6.2).
Trong nhiều trường hợp, việc tìm kiếm vectơ Gi^^theo các cách trên là không thể thực hiện được Trong các trường hợp đó,
HỌC MÁY
Trang 38chúng ta có thê sử dụng kỹ thuật tìm kiếm gradient để tìm nghiệm gần đúng Sau này chúng ta sẽ thấy nhiều thuật toán được thiêt kế theo phương pháp này Sau đây là một sô' ví dụ minh hoạ ứng dụng phương pháp maximum-likelihood để đánh giá các tham biến của các mật độ hay gặp trong thực tiễn.
1.6.2 Các ví dụ
Nhiều thuật toán học được trình bày sau này được thiê't kế dựa trên phương pháp đánh giá maximum-likelihood, vì vậy để làm quen vói các kỹ thuật khi áp dụng phương pháp này, chúng
ta xét một số ví dụ
biến nhị phân, nhận giá trị 1 hoặc 0 Giả sử
P(x = 1) = I-I (0 < n < 1)P(x = 0) = 1
Như vậy đối với biến nhị phân X , ta chi có một tham biêh cần đánh giá là I-I Phân phôi xác xuất của biến X có thể viết dưới dạng:
l - x
Như chúng ta đã biê't, phân phối này được gọi là phân phôi
trong đó X n (n = 1, , N) bằng 1 hoặc 0 Chúng ta cần đánh giá tham
biêh n từ tập dữ liệu D bằng phương pháp maximum-likelihood Hàm likelihood của n là
n = ỉ n-1
Do đó hàm log-likelihood của |Li là
Trang 39HỌC m A y
L(^) = In p(D / |a) = ^ [ x J n + (1 - X J ln(l - n)]
n - |Lấy đạo hàm của hàm L(|J.) và đặt bằng 0, giải phương trình, ta nhận được
Giả sừ sô quan sát X n = 1 là m, ta có
m
Mml
-Kết quả này chính là cách đánh giá xác suất bằng tần suất
Khi cho biết xác suất để biến nhị phân X nhận giá trị 1 là |U , số quan sát là N, ta có thể tính được xác suâ't để trong N lần quan sát
Ví dụ 2 (Đánh giá xác suất của biến rời rạc) Giả sử X là một
biêh ngẫu nhiên rời rạc nhận K giá trị S i , , S k , , SK Ta mã hoá các giá trị Sk của X bởi vectơ K thành phần (xi, , X k , , xk), trong đó chỉ
có X k = 1 , còn các thành phần còn lại bằng 0 Chẳng hạn, nếu X là biến ngẫu nhiên chi nhận 3 giá trị, thì 3 giá trị đó được biểu diễn bởi các vectơ (1, 0, 0), (0, 1, 0) và (0, 0, 1) Giả sử xác suất đ ể X nhận
giá trị Sk là |Hị^, tức là
Trang 40P ( X = S k ) = n , ( k = 1 , , K )Các |I|( cẩn phải thoả mãn các điều kiện sau
H, > 0
k=l
Fhân phối xác suất của biến X phụ tììuộc vào vectơ tham biến
^ (M^i Phân phối xác suâ't của X có thể viết dưới dạng
p ( x / n ) = n n " ‘
k=TBây giờ chúng ta đánh giá vectơ tham biến
tập dữ liệu quan sát được Giả sử tập dữ
l)ậu quan sát là D = {Xi, , Xn, , Xn }, trong đó Xn = (Xni, , Xnk, ,