Giáo trình nhận dạng mẫu iuh

199 1 0
Giáo trình nhận dạng mẫu iuh

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Trang 1

MỤC LỤC

LỜI NÓI ĐẦU 7

CHƯƠNG 1 TỔNG QUAN VÈ NHẬN DẠNG MẲU 9

1.2.5 Các mở rộng của cây quyết định 24

1.3 Máy hỗ trợ vector (Support vector machine-SVM) 25

1.3.1 Biên phân lớp tuyến tính trên tập dữ liệu 2 lớp 26

1.3.2 Tập dữ liệu hai lóp không phân biệt bằng biên tuyến tính 30

2.2 Lý thuyết quyết định Bayes 45

2.3 Bộ phân lớp, hàm phân biệt và biên quyết định 48

2.4 Hàm phân biệt đối với phân phối chuẩn 50

2.4.1 Trường hợp Sz=ơ2I 51

2.4.2 Trường hợp Si = 2 54

2.4.2 Trường hợp Si bất kỳ 55

2.5 Lý thuyết quyết định Bayes với đặc trưng rời rạc 58

2.6 Chương trình minh họa 60

Trang 2

3.2.2 Trường hợp phân phối chuẩn 74

3.3 Ước lượng không chệch (unbiased estimation) 76

3.4 Phương pháp ước lượng Bayes 78

3.5 Ước lượng Bayes đối với trường hợp phân phối Gauss 80

3.6 Ước lượng tham số Bayes: Tổng quát 85

3.6.1 Xấp xỉ xác suất hậu nghiệm bằng phương pháp lưới 86

3.6.2 Phương pháp Monte Carlo 88

3.6.3 Markov Chain Monte Carlo (MCMC) 90

3.7 Suy diễn biến phân (VI-variational inference) 98

3.8 Lập trình xác suất với PyMC 100

Bài tập 108

CHƯƠNG 4 ƯỚC LƯỢNG DẠNG PHI THAM SỐ 110

4.1 Giới thiệu 110

4.2 Ước lượng mật độ phân phối 110

4.3 Cửa sổ Parzen (Parzen windows) 112

4.4 Sự hội tụ của ước lượng 117

4.4.1 Xét hội tụ của kỳ vọng 117

4.4.2 Xét hội tụ của phương sai 118

4.5 Độ đo sai số của ước lượng 119

4.6 Hồi qui phi tham số (Nonparametric regression) 121

4.6.1 Hồi qui phi tham số với biến độc lập ngẫu nhiên 122

4.6.2 Hồi qui phi tham số với biến độc lập xác định 122

4.7 Ước lượng k lân cận gần nhất (k-NN, ^-nearest-neighbor estimation) 128

4.7.1 Ước lượng mật độ phân phối 128

4.7.2 Bài toán hồi qui 130

4.8 Bài toán phân lớp 130

4.9 Xấp xỉ dựa trên sự khai triển chuỗi 131

Bài tập 133

CHƯƠNG 5 MẠNG NƠ-RON NHÂN TẠO 135

5.1 Giới thiệu 135

5.2 Mạng nơ-ron nhân tạo 135

5.2.1 Nơ-ron perceptron và sigmoid 135

5.2.2 Mạng nơ-ron nhân tạo 138

5.3 Hàm truyền 140

Trang 3

5.5 Tìm giá trị tối ưu dựa trên giảm gradient 146

5.5.1 Giảm gradient đơn giản 146

5.5.2 Giảm gradient sử dụng momentum 148

5.5.3 Giảm gradient dựa trên mini-batch và stochastic 148

5.5.4 Giảm gradient với hệ số học thích nghi (AdaGrad) 149

5.5.5 RMSProp ? 149

5.5.6 Adam 149

5.6 Lan truyền ngược 150

5.6.1 Đồ thị tính toán 150

5.6.2 Jacobian và luật dâychuyền (chain rule) 151

5.6.3 Giải thuật lan truyền ngược 152

5.7 Giải thuật ELM 157

5.8 Mạng tổng chập (convolutional neural networks) 158

5.9.2 Hiện thực cơ bản sử dụng TensorFlow 166

5.9.3 Huấn luyện mô hình 168

5.9.4 Mạng RNN sâu (Deep RNN) 169

5.9.5 Đơn vị LSTM (Long short-term memory-LSTM cell) 170

5.9.6 Đơn vị GRU (Gated recurrent unit) 173

5.10 Chỉnh hóa mô hình (regularization) 174

5.10.1 Ràng buộc trên norm 174

5.10.2 Dropout 175

5.11 Kết nối tắt (residual connection) và mạng nơ-ron ODE (Ordinary Differential Equations) 175

Trang 4

5.11.1 Vấn đề gradient biến mất hoặc bùng nổ 175

6.1 Phương pháp dựa trên băng tầng giới hạn 183

6.2 Phương pháp dựa trên SVM 188

6.3 Phương pháp dựa trên mạng nơ-ron 189

6.4 Các mô hình tạo sinh trong học sâu 191

6.4.1 Giới thiệu 191

6.4.2 Phân loại các mô hình tạo sinh dựa trên học sâu 193

6.4.3 Cơ bản về mô hình GAN 195

Bài tập 200

TÀI LIỆU THAM KHẢO 201

Trang 5

LỜI NÓI ĐẦU

Quyển sách này được biên soạn nhằm trang bị cho sinh viên, học viên những kiến thức nền tảng về nhận dạng mẫu Nội dung được biên soạn dựa trên sự kế thừa các tài liệu và các công trình nghiên cứu liên quan đến các mô hình truyền thống phi thống kê và các tiếp cận dựa trên mô hình thống kê.

Nội dung quyển sách này bao gồm 6 chương:

Chương một trình bày các ý niệm cơ bản về mô hình nhận dạng và hai phương pháp đơn giản phổ biến dựa trên kỹ thuật phi thống kê bao gồm: (1) cây quyết định, mô hình được xây dựng trực tiếp từ các đặc trưng đầu vào, qua đó có thể hình thành các đoạn biên quyết định song song với các trục tọa độ tương ứng với đặc trưng; và (2) máy hỗ trợ vector (support vector machine), mô hình được xây dựng dựa vào các điểm dữ liệu hỗ trợ và cực đại khoảng cách lề.

Chương hai trình bày lý thuyết quyết định Bayes, đây là một trong những tiếp cận cơ bản cho bài toánphân lớp dựa trên mô hình thống kê.

Chương ba trình bày phương pháp ước lượng phân phối xác suất dựa trên mô hình tham số (parametric model), trong đó dạng của phân phối dữ liệu là có sẵn nhưng các thông số chưa xác định, chúng ta sẽ ước lượng các thông số này từ tập dữ liệu huấn luyện.

Chương bốn trình bày phương pháp ước lượng phi tham số (nonparametric model), ở đó không yêu cầu có giả thiết trước về dạng của hàm mật độ Các tiếp cận của mô hình cho bài toán phân lớp và bài toán hồi qui cũng được trình bày.

Chương năm trình bày kiến thức cơ bản về mạng nơ-ron nhân tạo, đây là một trong các tiếp cận cơ bản khá hiệu quả trong bài toán nhận dạng Đồng thời, nó cũng có thể được sử dụng để ước lượng mật độ phân phối của dữ liệu.

Chương sáu trình bày một số kỹ thuật mở rộng trong ước lượng mật độ phân phối xác suất, bao gồm kỹ thuật dựa trên băng tầng giới hạn, máy hỗ trợ vector, mạng nơ-ron, mà mạng học sâu.

Rất mong nhận được ý kiến đóng góp của các nhà nghiên cứu, học viên và sinh viên.

Xin trân trọng cảm ơn!

Huỳnh Trung Hiếu

Trang 6

CHƯƠNG 1 TỔNG QUAN VÈ NHẬN DẠNG MẪU 1.1Giới thiệu

Nhận dạng mẫu, thực hiện hành động dựa trên nhãn hay loại của mẫu từ dữ liệu đầu vào, đóng vai trò rất quan trọng trong cuộc sống hàng ngày của chúng ta Ví dụ như việc đọc được các chữ viết tay, hiểu được lời nói, hay nhận ra một khuôn mặt, nhận dạng một loài hoa được thực hiện bởi các mô hình học máy đã và đang được đầu tư nghiên cứu rất nhiều và mang lại những hiệu quả rất đáng khích lệ.

Việc nhận dạng được thực hiện dựa trên khả năng “học” Khả năng này cho phép các hệ thống nhận dạng có thể được huấn luyện dựa trên tập dữ liệu đe cho kết quả nhận dạng càng chính xác hơn Thông thường, tập dữ liệu được chia làm hai tập con bao gồm tập dữ liệu dùng cho huấn luyện và tập dữ liệu dùng trong kiểm thử để đánh giá mô hình như mô tả ở Hình 1.1.

Hình 1.1 Phân chia tập dữ liệu thành tập huấn luyện và tập kiểm thử Tập dữ liệu huấn luyện bao gồm dữ liệu được sử dụng trong huấn luyện hay xây dựng mô hình Các giải thuật huấn luyện được sử dụng để khớp giá trị đầu ra mồ hình với giá trị đầu ra kỳ vọng tương ứng với các dữ liệu đầu vào Sau khi được huấn luyện, mô hình có thể được sử dụng để tạo ra kết quả đầu ra tương ứng với dữ liệu đầu vào mới Tập dữ liệu kiểm thử được sử dụng để đánh giá khả năng đáp ứng của mô hình đối với các tập dữ liệu mới sau khi đã được huấn luyện Ngoài ra, chúng ta có thể sử dụng tập dữ liệu kiểm chứng (validation set) để kiểm chứng và lựa chọn mô hình (bao gồm các thông số) phù hợp từ các ứng viên được huấn luyện từ tập huấn luyện.

Hình 1.2 Mô hình tồng quát của hệ thống nhận dạng

Trang 7

Một cách đơn giản, quá trình nhận dạng thông thường gồm các bước chính: (1) tiền xử lý; (2) trích xuất và/hoặc lựa chọn đặc trưng; và (3) nhận dạng, như được trình bày trong Hình 1.2 Mỗi bước có thể được thực hiện bởi một số mô hình riêng, các mô hình có thể tĩnh hoặc được đặc trưng bởi các trọng số Ví dụ như trong nhận dạng khối u với đầu vào là ảnh y khoa, bước đầu tiên là tiền xử lý ảnh để lọc nhiễu và cân bằng mức xám Sang bước thứ hai là trích xuất các đặc trưng liên quan đến khối u chẳng hạn như đặc điểm phân phối mức xám, độ mịn của biên, hoặc hình dạng của nó Các đặc trưng này được đưa vào mô hình nhận dạng để phân loại khối u.

Các trọng số của từng mô hình thành phần có thể được xác định thông qua quá trình huấn luyện độc lập hoặc kết hợp Trong các mô hìnhdựa trên mạng học sâu (deep learning), cácthông số của bước trích xuất đặc trưng và bước nhận dạng có thể được cập nhật đồng thời.

Các giải thuật huấn luyện có thể được chia thành hai nhóm là: (1) có giám sát (supervised learning) và (2) không có giám sát (unsupervised learning) Đối với các giải thuật huấn luyện có giám sát, mỗi đầu vào sẽ có đầu ra kỳ vọng tương ứng của nó đóng vai trò như một “giáo viên” Quá trình huấn luyện là tìm tập các thông số của mô hình nhằm tối thiểu sự khác biệt giữa giá trị đầu ra của mô hình và giá trị kỳ vọng này Đối với học không giám sát thì chúng ta chỉ biết giá trị đặc trưng đầu vào, không có giá trị đầu ra kỳ vọng, không có “giáo viên” một cách tường minh.

Quyển sách này tập trung chính vào tiếp cận học có giám sát Đối với bài toán phân lớp, cho một tập dữ liệu thu được thông qua quá trình khảo sát bao gồm tập các mẫu được biểu diễn bởi các vector X, chúng ta kỳ vọng gán nhãn cho mỗi mẫu từ một tập c nhãn, Cời, /=1,2, , c Luật quyết định sẽ phân chia không gian tương ứng của đầu vào thành

c vùng, /21, /=1, 2, , c Nếu một vector khảo sát nằm trong vùng /21 thì nó được giả sử gán nhãn Mỗi vùng phân lớp /21 có thể bao gồm nhiều vùng nhỏ không liền kề nhau Các biên giữa các vùng Qi được gọi là biên quyết định hay biên phân lớp Thông thường, các mẫu càng gần với các biên quyết định thì khả năng nhận dạng sai càng cao Các biên quyết định có thể ở dạng tuyến tính hoặc phi tuyến.

Đối với bài toán hồi qui, chúng ta cần tìm hàm xấp xỉ cho mối quan hệ giữa biến độc lập X tương ứng với các dữ liệu đầu vào đo được và biến phụ thuộcy tương ứng với đáp ứng của nó, y ~7(x).

Phần còn lại của chương này trình bày hai phương pháp đơn giản phổ biến truyền thống trong nhận dạng bao gồm: (1) mô hình được xây

Trang 8

dựng trực tiếp từ các đặc trưng đầu vào, cây quyết định, nó hình thành các đoạn biên quyết định tuyến tính song song với các trục tọa độ tương ứng với từng đặc trưng; và (2) mô hình được xây dựng dựa vào các điểm dữ liệu hỗ trợ, máyhỗ trợ vector (supportvector machine), nó dựa vào cực đại khoảng cách với các vector hỗ trợ.

1.2 Cây quyết định1.2.1Gióithiệu

Cây quyết định là một trong những tiếp cận đơn giản trong bài toán nhận dạng dựa trên đồ thị dạng cây, trong đó các nút tương ứng với đặc trưng của tập dữ liệu và câu hỏi được đặt ra, các cạnh biểu diễn các kết quả trả lời tương ứng với câu hỏi đó Nút đầu tiên được gọi là nút gốc của cây, các nút lá biểu diễn giátrị ngõ ra hay nhãn phân lớp Việc phân lóp dựa trên cây quyêt định khá tự nhiên và trực quan, kêt quả gán nhãn có thể dựa vào dãy các câu hỏi Câu hỏi sau phụ thuộc vào kết quả trả lời của câu hỏi hiện tại.

Hình 1.3 Phân lớp dựa vào cây quyết định Quá trình xử lý từ nút gốc đến nút lá

Quá trình phân lớp cho mộtmẫuđược thực hiện bátđầutại nút ệốc, ở đó sẽ hỏi giá trị tương ứng với đặc trưng của nó, các cạnh liên kêt từ nút gốc sẽ tương ứng với các giá trị khác nhau của đặc trưng Tùy theo kết quả trả lời mà cạnh tương ứng sẽ được chọn để đi đến nút con Tại nút con quá trình được thực hiện tương tự như trên, và nút con được xem là nút gốc của cây con tiếp theo Quá trình sẽ được tiếp tục cho đến

Trang 9

nút lá, ởđó không còn câu hỏi kiểm tra giátrị Nó chính là nhãn sẽ được gán cho mẫu cần nhận dạng.

Hình 1.3 minh họa một ví dụ cho cây quyết định đơn giản cho bài toán phân lóp với tập các đặc trưng {Màu, Kíchthước, Hình dáng, Cóque}. Việc phân lớp cho một mẫu đầu vào được thực hiện dựa trên đường đi được xác định bởi các giá trị tương ứng với các đặc trưng Giả sử một mẫu X có các giá trị đặc trưng là \={Màu-Vàng, Kích

thước=Nhỏ, Hìnhdáng=Tròn, Cóque=Không}, mẫu này được xác định là quả Chanh (vỏ vàng) bởi vì nó có màu vàng, hình tròn, và kích Một ví dụ khác về cây quyết định được mô tả ở Hình 1.4 tươngứng với tập dữ liệu ở Bảng 1.1 tập dữ liệu bao gồm 10 mẫu dữ liệu tương ứng với 10 sinh viên Các nút lá tương ứng các nhãn phân loại (đặc trưng Kếtquả), các nút còn lại tương ứng với các đặc trưng khác còn lại Các nhánh của cây từ một nút bất kỳ tương đương một phép so sánh (có thê là so sánh băng, so sánh khác, lớn hơn, hoặc nhỏ hơn) nhưng kết quả các phép so sánh này bắt buộc phải thể hiện một giá trị logic (Đúng

Trang 10

hoặc Sai) dựa trên một giá trị nào đó của thuộc tính của nút Lưu ý cây quyết định trên không có sự tham gia của đặc trưng “Giờ lên Lab”trong thành phần cây, các đặc trưng như vậy được gọi chung là các đặc trưng dư thừa, bởi các đặc trưngnày không ảnh hưởngđến quá trình xây dựng mô hình của cây.

Các đặc trưng tham giavào quá trìnhphân lớp thông thường có các giá trị thuộc kiểu sắp xếp hay kiểu số (ordered or numeric values) hoặc kiểu không sắp xếp hoặc kiểu phân lớp (unordered or category values) Ví dụ kiểu dữ liệu tuổi biểu diễn bằng số có thứ tự (sắp xếp), kiểu dữ liệu “Nghiện game” là kiểu dữ liệu không sắp xếp (không có thứ tự).

Hình 1.4 Cây quyết định tương ứng với tập dữ liệu trong Bảng 1.1 Việc xây dựng cây quyết định được tiến hành một cách đệ (ỊUĨ, lần lượt từ nút gốc xuống tới các nút lá Tại mỗi nút hiện hành, nêu điêu kiện dừng được thỏa thì giải thuật sẽ tạo nút lá Nút này được gán nhãn lớp tùy điều kiện dừng được thoả Ngược lại, điểm chia tốt nhất được chọn dựa trên một tiêu chí cho trước, phân chia tập dữ liệu hiện hành được thực hiện theo điều kiện chia này Chú ý, dữ liệu hiện hành không nhất thiết là tập dữ liệu đầy đủ ban đầu, có thể là tập dữ liệu đã được phân chia theo điều kiện chia của nút liền trước đó (nút cha) Sau bước phân chia trên, thuật toán sẽ lặp qua tất cả các tập con (đã được chia) và tiến hành gọi đệ qui như bước đầu tiên với dữ liệu chính là các tập con này Quá trình tạo cây quyết định được tóm lược ở giải thuật sau:

Trang 11

Giải thuật 7.7. Giải thuật tông quát tạo cây quyêt định

Đầuvào: Tập dữ liệu huấn luyện, tập các đặc trưng, tập nhãn

Đầu ra: Cây quyết định

Giải thuật: TreeCreate (Tập dữ liệu Z), tập các đặc trưng F, tập

Đây là một giải thuật đệ qui Tại hàm chính, TreeCreateO có ba tham số đầu vào là tập dữ liệu D, danh sách các đặc trưng của 2) và tập nhãn £ Thuật toán thực hiện bằng cách đệ qui chọn đặc trưng và cách chia tốt nhất để phân chia tập dữ liệu (bước 7), tạo thành các tập con, tiếp tục tiến hành thực hiện trên các tập nút con bằng cách gọi đệ qui cho đến khi điều kiện dừng (ở bước 1) được thỏa mãn.

1.2.2 CART

Chúng ta tiếp tục đi sâu hơn các thuật toán phổ biến để xây dựng cây Gọi D là tập dữ liệu huấn luyện có gán nhãn Dễ thấy rằng cây quyết định sẽ dần phân chia tập dữ liệu thành các tập con nhỏ hơn Trong trường hợp lý tưởng thì các mẫu trong mỗi tập con có cùng một nhãn Khi đó nó được xem là tinh khiết (pure) và có thể dừng quá trình phân chia tại tập con đó để tạo thành nút lá của cây Tuy nhiên, trong trường hợp tập con có hỗn hợp nhiều nhãn, chúng ta có thể quyết định dừng phân chia và chấp nhận độ chính xác tươngđối, hoặc tiếp tục chọn đặc trưng khác để phân chia và phát triển tiếp cây.

Trang 12

Một trong các tiếp cận phổ biến trong việc xây dựng cây như trên là CART (Classification and Regression Trees) Sáu vấn đề được đặt ra trong quá trình xây dựng cây, bao gồm:

(1) Đặc trưng được giới hạn trong giá trị nhị phân hay cho phép nhiều giá trị? Điều này xác định bao nhiêu nhánh tại nút tương ứng với đặc trưng đó?

(2) Đặc trưng nào được chọn để đánh giá tại một nút? (3) Khi nào nút được xem là lá?

(4) Nếu cây quá lớn, chúng ta có thể thu nhỏ nó bằng cách nào? (5) Nếu nút lá không tinh khiết (impure), khi đó nhãn tương ứng

với nút lá đó là gì?

(6) Vấn đề thiếu dữ liệu được xử lý như thế nào?

a)Sốnhánh tạimột nút

Mỗi kết quả trả lời tại mỗi nút tươngứng với một nhánh (hay split), nó cũng tương ứng với việc phân chia tập dữ liệu huấn luyện tại một nút Nút gốc sẽ phân chia toàn bộ tập dữ liệu, các nút con sẽ phân chia các tập con của dữ liệu huấn luyện, số nhánh tại mỗi nút có mối quan hệ chặt chẽ với câu hỏi số (2), đó là đặc trưng được chọn, về tổng quát, số nhánh này có thể được thayđổi và tùy vào ứng dụng cũng như người thiết kế.

dụ, kích thước có thể chia hai mức, lớn vànhỏ, hoặc có thể chia nhiều mức hơn bao gồm lớn, vừa, và nhỏ Tại mỗi nút, số nhánh từ nó đến các nút con được gọi là “hệ số phân nhảnh” (branching factor hay branching ratio), và thường được ký hiệu là B Có nhiều dạng cây khác nhau, tuy nhiên cây nhị phân (B=2) có những điểm nổi trội trong phân tích do đó nó được sử dụng khá rộng rãi trong nhiều ứng dụng khác nhau Việc chuyển đổi sang cây nhị phân có thể được thực hiện dễ dàng Ví dụ, nút gốc trong Hình 1.3 có ba nhánh (B=3) có thể được thaybằng hai nút, nút đầu tiên tương ứng với câu hỏi “màu=vàngT\ và ở nhánh “không” sẽ có nút khác sẽ hỏi “màu=xanhT\ cây ở Hình 1.3 có thể biến đổi thành cây nhị phân như Hình 1.5.

Trang 13

Hình 1.5 Một cây với hệ số phân nhánh bất kỳ có thể biểu diễn về dạng cây nhị phân Trong đó các nút có hệ số phân nhánh (B > 2) có

thể phân thành các nút con.

b) Sự lựachọn câu hỏi và độ hỗn tạp tạinút

Một trong nhũng nhiệm vụ quan trọng nhất trong việc xây dựng cây là lựa chọn cách chọn câu hỏi được thực hiện tại một nút Trường hợp các nút với dữ liệu số (numerical data), có thể trực quan hóa biên quyết định tương ứng với cây Ví dụ, giả sử tại mỗi nút câu hỏi có dạng “xi<Xữ?” sẽ tạo ra biên quyết định là các mặt trực giao với các trục tọa độ Hình 1.6 minh họa biên quyết định tương ứng với hai đặc trưng dữ liệu XI và X2.

▲ x2

Hình 1.6 Cây quyết định tạo ra biên quyết định bao gồm các phần trực giao với các trục đặc trưng Các vùng quyêt định được đánh dâu

là R1 và R2.

Trang 14

Một trong các tiêu chí cơ bản trong xây dựng cây quyết định là sự đon giản, nghĩa là giảm số nút trong cây Chúng tanên tìm câu hỏi T tại

nút N sao cho chia dữ liệu ở các nút con càng tỉnh khiết càng tốt Để thực hiện việc này, trước tiên cần định nghĩa độ hỗn tạp (impurity) tại một nút Một loạt các độ đo hỗn tạp đã được đề xuất, tuy nhiên tất cả có ý nghĩa tương tự nhau.

Gọi lm(N) là độ hỗn tạp tại nútN, nó được kỳ vọng là 0 nếu tất cả các mẫu tại nút N thuộc cùng một lớp, và sẽ lớn khi phân bố các mẫu cho các lớp tại nútN là xấp xỉ bằng nhau Một trong các độ đo phổ biến trong cây quyết định là entropyimpurity, được định nghĩa bởi

= -£p(a>j) log2 p(a>7), (1.1)

trong đó p(á)ỹ) là tỉ lệ của các mẫu thuộc lớp (JỬJ tại nút N Từ đặc tính của entropy, chúng ta dễ dàng thấy rằng nếu tất cả các mẫu tại nút N thuộc cùng một lớp thì Im(N) =0, ngược lại nó sẽ mang giátrị dương và

Im(N) sẽ có giá trị lớn nhất khi tỉ lệ P(á)y) tương ứng cho các lớp là bằng nhau.

Ví dụ, giả sử tập dữ liệu có 2 lớp, trong đó 50% các mẫu thuộc lớp ídi và 50% còn lại thuộc lớp O)2, thì khi đó /zw(/V)=-0.5xlog20.5- 0.5xlog20.5=l Neu 20% các mẫu thuộc lóp (ứỵ và 80% còn lại thuộc lóp ú>2, khi đó 7w(7V)=-0.2xlog20.2-0.8xlog20.8=0.722 Còn nếu 100% các mẫu thuộc lớp úíi, khi đó 7w(7V)=-lxlog21-0=0 Như vậy dữ liệu càng hỗn tạp thì giá trị của entropy càng lớn Xem xét nút gốc của cây ở Hình 1.4 Có ba lóp và tỉ lệ mẫu thuộc các lớp lần lượt là 3/10, 5/10, và 2/10 cho các lớp lần lượt là Tốt, Trung bình, và Yếu Entropy

impurity của nút gốc là -(3/10)log2(3/10) - (5/10)log2(5/10) - (2/10)log2(2/10) =1.485.

Một chỉ số khác có thể được sử dụng để đo độ hỗn tạp được định nghĩa trong trường hợp hai lớp là:

Trong trường hợp tổng quát cho nhiều hon hai lớp, chỉ số này được gọi là Gini index và được định nghĩa bởi:

(1.3)

Trang 15

Ví dụ, nếu tại nút N chỉ có các mẫu thuộc lớp (i)j, P(pìj) = 1, và một mẫu được gán vào lớp ú)j thì Im(N)=ồ. Nếu tại nút Ncó năm mẫu, trong đó 2 mẫu thuộc lớp ứ)lf 3 mẫu thuộc lớp ủ)2, thì khi đó Gini index

= 0.48 Tương tự như ý tưởng có giá trị là Zm(N) = 1

trên, một đại lượng khác dùng để đo độ hỗn tạp là misclassification Nó được định nghĩa bởi:

Đại lượng này còn thể hiện xác suất tối thiểu mà một mẫu huấn luyện bị phân lớp nhầm tại nút N Ở ví dụ trường hợp năm mẫu trên, độ hỗn tạp misclassification là /m(/V) = 1 — I = 0.4.

Hình 1.7 mô tả đặc diêm của ba độ đo impurity cho trường hợp hai lớp Chúng ta thấy rằng độ đo misclassification có đỉnh nhọn nhất tại điểm có xác suất phân lớp là bằng nhau.

Trở lại việc xác định câu hỏi Ttại nút N để phân chia tập dữ liệu, nó bao gồm đặc trưng được chọn và ngưỡng để xét, một số khuyến nghị cho rằng câu hỏi được chọn sao cho độ hỗn tạp giảm được càng nhiều càng tốt Độ giảm hỗn tạp trong trường hợp cây nhị phân được định nghĩa là:

ầlmrn = Im(N)-P^mCNt)- PRIm(NR), (1.5)

trong đó Nk là các nút con, k là £(trái) hoặc Ẩ(phải), Im(Nk) là các độ hỗn tạp tương ứng tại nút Nk, Pk là phần tỉ lệ mẫu tại nút N sẽ đưa vào nút Nk Câu hỏi T được chọn sao cho A/m(7V) là cực đại hay

PijmtNi) + PRIm(NỊỊ) là cực tiểu.

Hình 1.7 Minh họa các hàm impurity trong trường hợp 2 lớp Các hàm có đỉnh tại điểm có xác suất 2 lớp là bằng nhau.

Trong trường hợp đa nhánh (ổ>2), công thức 1.5 có thể được tổng quát như sau

Trang 16

MmW = lm(N'i - V PiImiNi) (1.6)

Đại lượng này còn được gọi là độ đo Gain (information Gain).

Bảng 1.2 Ví dụ dữ liệu cho cây quyết định đánh giá khả năng mua

Vỉ dụ, xét tập dữ liệu như trong Bảng 1.2 với tất cả các đặc trưng đều có kiểu dữ liệu rời rạc Thuộc tính nhãn/lớp tức thuộc tính “Mua máy tính” chỉ có hai giá trị là ứ)7=“Yes” và ứ)2=“No”, như vậy có chín

Trang 17

mẫu thuộc lóp Cừi và năm mẫu thuộc lớp CỜ2 Để tìm điểm chia tốt nhất,

phải tính toán chỉ sô Gain của tât cả các đặc trưng trên Tại nút gôc, đâu tiên sẽ tính Im(N) dựa trên entropy cho toàn bộ tập huân luyện D:

ImW = -^>0g2 (Ặ) - Ặ10g2 (Ặ) = 0.94.

Tiếp theo ta tính cho từng đặc trưng, bắt đầu với đặc trưng “Tuồr. Đặc trưng này có ba giá trị là “Trẻ", “Trung niên" và “Già" Nhìn vào dữ liệu trong Bảng 1.2, với giá trị “Trẻ" có hai mẫu thuộc lớp “Yes" và ba mẫu thuộc lớp “No". Tương tự giá trị “Trung niên" có bốn mẫu thuộc

lóp “Yes" và không có mẫu nào thuộc lóp “No”-, với giá trị “Già" có ba

mẫu thuộc lớp “Yes" và hai mẫu thuộc lớp “No". Theo công thức trên, độ đo hỗn tạp trên từng nhánh của đặc trưng “Tuổi" xét trên tập huấn Do đó độ giảm hỗn tạp ứng với đặc trưng “Tuổi”

I'fn.^NTuỗồ ~ Im(N) ỉ^tl^Trung niên)

-Ặlm(jVc(à) = 0.246.

Theo cách tính tương tựnhư trên, độ giảm hỗn tạp ứng với các đặc trưng

“Mức thu nhập", “Sinh viên"“Hạng tíndụng". Ket quả sẽ là

VIm(NMức thu nhập) = 0.029; TSinh viên) 0.151 va VIm(NHạng tín dụng)

= 0.048 Như vậy, đặc trưng “Tuổi" có độ giảm hỗn tạp lớn nhất nên sẽ được chọn là đặc trưng để phân chia.

Công thức giảm độ hỗn tạp trên có hạn chế là quyết định dựa trên hệ số phân nhánh B lớn được ưu tiên hơn trường hợp B nhỏ bất kể việc phân tách với B lớn có mang lại hiệu quả tốt hơn hay không Cụ thể, ngay cả khi dữ liệu ngẫu nhiên, sự phân tách tương ứng với B cao sẽ giảm độ hỗn tạp nhiều hơn so với B thấp Đe khắc phục hạn chế này, một cách tiếp cận khác là chúng ta thay đổi cách tính độ hỗn tạp:

Trang 18

A/mB(iV) = V/m(N)

Độ đo này còn được gọi là tỷ số Gain (Gain ratio), trong đó mẫu số được định nghĩa là Splitinfo.

Xét ví dụ được nêu trong Bảng 1.2, đối với đặc trưng “Mứcthunhập”, nó có ba giá trị riêng biệt: “Thấp” (bốn mẫu), “Trung bình” (sáu mẫu) và “Cao” (bốn mẫu) Khi đó:

Spilt Inf o(NMức nhập)

Đưa ra ngưỡng quyết định tương ứng với đặc trưng được chọn tại một nút có thể có nhiều phương pháp, tùy thuộc vào dữ liệu và yêu cầu bài toán Do tiêu chí chọn lựa dựa vào cực trị của hàm hỗn tạp nên chúng ta có thể chọn lựa bất kỳ hàm nào phù hợp yêu cầu trên (ví dụ chúng ta có thể cộng hay nhân các hăng số mà không làm thay đổi bản chất) Đối với các đặc trưng định danh (nominal), chúng ta có thể quét qua toàn bộ các giá trị của nó, còn đối với đặc trưng có giá trị liên tục thì giảm gradient cũng là một giải pháp có thể được xem xét.

c)Điều kiện dừng

Tiếp theo chúng ta xem xét quyết định khi nào dừng việc phân tách ở các nút của cây Quá trình phân tách quá mức sẽ dẫn đến cây phân lớp quá khớp, lúc đó hiệu quả phân lóp với các tập dữ liệu không được học sẽ giảm đáng kể Tiếp cận truyền thống để giải quyết vấn đề này là dựa trên kỹ thuật cross-validation, trong đó, tập dữ liệu huấn luyện được chia thành hai tập con; một tập dùng cho huấn luyện (ví dụ 90%) vàtập kiểm chứng (ví dụ 10%) dùng để kiểmtra mô hình Quátrình phân tách các nút của cây sẽ kết thúc khi lỗi trên tập kiểm chứng là nhỏ nhất.

Tiếp cận khác là dựa trên độ giảm của độ hỗn tạp, quá trình phân tách sẽ được dừng lại khi ứng viên phân tách tốt nhất tại một nút nhỏ

Trang 19

hơn ngưỡng cho trước, A/?n(N) < p. Tiếp cận này có những ưu điểm/ bao gồm:

(1) Không giống cross-validation, tiếp cận này không cần sử dụng tập kiểm chứng để đánh giá mô hình, toàn bộ tập dữ liệu huấn luyện ban đầu;

(2) Các nút lá có thể nằm ở các mức khác nhau trong cây phân lớp Nhược điểm của tiếp cận này là khó xác định ngưỡng, vì quan hệ giữa ngưỡng p và hiệu quả cuối cùng của cây khó được xác định Một kỹ thuật khá đơn giản là thay vì sử dụng ngưỡng của độ giảm độ hỗn tạp (/?), chúng ta có thể sử dụng số mẫu dữ liệu còn lại tương ứng của một nút, ngưỡng này có thể là phần trăm cố định của tập huấn luyện Tiếp cận này có điểm mạnh tương tự như kNN (^-nearest neighbors), ở đó vùng có mật độ dày có kích thước nhỏ, còn vùng mật độ thưa có kích thước lớn.

Một tiếp cận cân bằng giữa độ phức tạp và độ chính xác trên tập kiểm chứng là tối thiểu giá trị của hàm mục tiêu toàn cục được định nghĩa bởi

các nút

trong đó size là tổng số nút hay cạnh trong cây và a là hằng số dương Tổng các độ hỗn tạp tại các nút lá cung cấp độ không chắc chắn (uncertainty) của dữ liệu huấn luyện đối với mô hình được biểu diễn bởi cây tương ứng, và size thể hiện độ phức tạp của mô hình Một trong những điểm hạn chế của tiếp cận này là giá trị trọng số a Mối quan hệ giữa a và kết quả cuối cùng không dễ được tìm thấy.

Một tiếp cận khác cho tiêu chí dừng là dựa trên mức độ quan trọng về mặt thống kê của độ giảm hỗn tạp, Aim. Trong quá trình phát triển cây, chúng ta ước lượng phân phối của tất cả độ giảm hỗn tạp (Aim)

tương ứng của tất cả các nút ứng với một sự phân tách giảm độ hỗn tạp không đáng kể thì sẽ dừng Tiếp cận này có một số cải tiến bằng cách sử dụng kiểm định giả thuyết.

d)Tỉa cành (pruning)

Quá trình phân tách đôi khi bị dừng lại do thiếu tầm nhìn đầy đủ ở phía trước, nghĩa là việc xác định sự tối ưu trong phân tách tại nút N không chịu ảnh hưởng của việc phân tách ở các nút con theo sau nó Khi dừng phân tách, nút N sẽ trở thành nút lá, bỏ qua khả năng phân tách có lợi ở các nút tiếp theo của nó, dẫn đến việc dừng quá sớm.

Trang 20

Tiếpcận để khắc phục hạn chế trên là tỉa cành Ở phương pháp này, cây được phát triển đâỵ đủ, nghĩa là cho đến khi các nút lá có độ hôn tạp tối thiểu Sau đó, tất cả các nút lá lân cận (có cùng nút cha) được xem xét loại bỏ, việc loại bỏ dựa trên gia tăng độ hỗn tạp Khi các nút con được loại bỏ, thì nút cha trở thành nút lá, và quá trình tiếp tục được lặp lại.

e)Gánnhãn cho nútlá

Việc gán nhãn cho các nút lá khá đơn giản Nếu nút lá tương ứng với các mẫu đồng nhất (cùng nhãn, không có hỗn tạp) thì nút lá được gán nhãn là nhãn của các mẫu tương ứng nútđó Trong trường họp dừng phân chia hay tỉa cành, có nghĩa là nút lá có độ hỗn tạp dương, khi đó nút lá được gán nhãn tương ứng với nhãn có số mẫu nhiều hơn.

fi Vấn đềthiếu dữ liệu

Trong một số trường hợp, một số mẫu bị thiếu giá trị dữ liệu ở một số đặc trưng nào đó Ở giai đoạn huấn luyện, một trong những phương pháp đơn giản là xóa mẫu dữ liệu đó khỏi tập dữ liệu Tuy nhiên, phương pháp này khá lãng phí và chúng ta nên xem xét giữ lại mẫu này khi tập dữ liệu nhỏ Một trong những phương pháp hiệu quả hơn là tính độ hỗn tạp chỉ dựa trên các dữ liệu tồn tại Chẳng hạn tại nút N có n

mẫu huấn luyện với ba đặc trưng Xi, X2,X3, trong đó có một mẫu bị thiếu dữ liệu tại X2 Để tìm sự phân tách tốt nhất tại N, chúng ta tìm khả

năng phân tách từ n mẫu tương ứng X1, n mẫu tương ứng X3, và n-1 mẫu tương ứng X2' Mỗi cách phân tách tương ứng với mức độ giảm độ hỗn tạp của nó cho dù khác nhau về số mẫu được sử dụng.

1.2.3 ID3

ID3 được thiết kế hướng đến áp dụng cho các đặc trưng đầu vào kiểu dữ liệu không sắp xếp (unordered) Nếu đặc trưng là kiểu số thực, trước tiên nó cần được cắt thành từng đoạn, mỗi đoạn tương ứng với các giá trị thuộc kiểu không sắp xếp Mỗi phép tách đều có hệ số phân nhánh Bj, trong đó Bj là số giá trị rời rạc của biến được chọn để tách j.

Trong thực tế, chúng hiếm khi có giá trị nhị phân và do đó nên sử dụng độ đo tỉ lệ Gain. Quá trình được tiếp tục cho đến khi tất cả các nút không còn hỗn tạp hoặc không còn biến nào để tách Giải thuật gốc không có công đoạn cắt tỉa, nhưng nó cũng có thể kết hợp một cách dễ dàng Giải thuật ID3 cỏ thể được minh họa như sau:

Giải thuật 1.2.Tạo câyquyêtđịnh ID3 _Đâu vào:

Trang 21

D: tập huẩn luyện,

F: tập các đặc trưng đầu vào, £: đặc trưng phân lóp (nhãn)

Đầu ra: Cây quyết định;

Thuật toán: ID3(tập huấn luyện D, các đặc trưng đầu vào F, đặc trưng phân lớp Q

Neu D rỗng,

Trả về một nút với giá trị Failure;

NeuD chứa các mẫu có cùng giá trị là nhãn của đặc trưng phân lớp,

Trả về một nút với nhãn đó; Neu F là rỗng,

Trả về nút đơn với nhãn tương ứng với giá trị đặc trưng phân lớp xuất hiện thường xuyên của các mẫu trong D.

Cho A là đặc trưng trong F có độ giảm hỗn tạp

Vlm(N,D) lớn nhất;

Cho{í/j| j=l,2,m} tập các giá trị của đặc trưng^4; Cho {Z)j|j=l,2,m} là các tập con củaD bao gồm các mẫu có giá trị ở đặc trưng Adj.

Trả về cây với nút gốc tương ứng đặc trưng A, các cạnh di, d2, ìdm nối với các cây con ID3(Z>7,

F-{Â},£), con ID3(Ì>2, F-{A},£), , ID3(K,

1.2.4 C4.5

Giải thuật này cải tiến từ ID3 và là giải thuật phổ biến trong xây dựng cây quyết định Các biến có giá trị thực được xử lý giống như trong CART, trường họp phân tách nhiều nhánh thì sử dụng độ đo tỉ số

Gain. Việc cắt tỉa cành được thực hiện dựa trên heuristics và ý nghĩa thống kê của việc phân tách Điểm khác biệt so với CART là khả năng xử lý các đặc trưng bị thiếu.

1.2.5Các mở rộng củacây quyết định

Trong thực tế, người ta thấy rằng cấu trúc cây cụ thể đã học rất nhạy cảm với các chi tiết của tập dữ liệu, ởđó một thay đổi nhỏ đối với dữ liệu huấn luyện có thể dẫn đến một tập họp phân tách rất khác.

Mô hình cây quyết định cũng có thể được áp dụng cho bài toán hồi qui Tập dữ liệu huấn luyện D bao gồm các vector nhập {xi, X2, , Xn}

Trang 22

và các nhãn tương ứng của nó có thể bao gồm các giá trị liên tục ịcữi, ứĩ2, , ỖA1} Quá trình xây dựng câytạo ra một sự phân chia không gian nhập và cực tiểu hàm tồng bình phương lỗi, khi đó giá trị dự đoán ứng với một vùng (1 tập con) sẽ bằng trung bình các trị dữ liệu tương ứng các nhãn trong vùng đó Quá trình xây dựng cây có thể cho cây tăng trưởng đến một ngưỡng nào đó về tổng số mẫu trong nút, sau đó có thể áp dụng các chiến thuật tỉa cành để cân bằng giữa độ chính xác và độ phức tạp của cây Giả sử các nút lá của cây T được ký hiệu bởi Dỉ,

Dm, giá trị dựđoántối ưu tại vùng tương ứng Dj được xác địnhbởi.

trong đó À là hệ số dùng để cân bằng giữa tổng lỗi và độ phức tạp của mô hình, được đo bằng tổng số nút lá của cây Giá trị này có thê được xác định dựa trên cross-validation.

Cây quyết định cũng có thể kết hợp với các mô hình khác để xây dựng mô hình kết hợp, trong đó các mô hình khác nhau có thể được áp dụng trên các vùng không gian dữ liệu nhập khác nhau tương ứng với các nút của cây Một trong những hạn chế khác của cây quyết định là việc phân chia tập mẫu huấn luyện dựa trên “sự phân chia cứng” Quá trình quyết định có thể được mềm hóa bằng cách áp dụng các mô hình xác suất Ví dụ như mô hình HME (hierarchical mixture of experts)1.

1Christopher M Bishop, Markus Svensen, Bayesian Hierarchical Mixtures ofExperts,

https ://arxiv.org/flp/arxiv/papers/1212/1212.2447.pdf

1.3 Máy hỗ trợ vector (Support vector machine-SVM)

SVM (support vector machine) là một trong những tiếp cận khá phổ biến trong vài năm trước đây trong việc giải các bài toán phân lóp,

Trang 23

hồi qui, và nhận dạng bất thường Đầu tiên nó được phát triển cho bài toán phân lớp, sau đó được mở rộng sang các bài toán xấp xỉ hàm hay hồi qui Cho tập dữ liệu với không gian đặc trưng đầu vào bao gồm các biến x=(xi, X2,. .Xd). Chức năng chính của SVM là xây dựng hàm tuyến tính từ các biến ban đầu hay trong không gian đặc trưng được biến đổi thông qua phép biến đổi phi tuyến của các biến ban đầu.

1.3.1Biên phân lớptuyến tính trên tập dữ liệu 2 lớp

Chúng ta bắt đầu thảo luận về SVM với bài toán phân lớp tuyến tính nhị phân Tập dữ liệu huấn luyện bao gồm các mẫu nhập Xi, X2, , Xn và các giá trị ngõ ra kỳ vọng của nó lần lượt lày 1, y2, , yn với yiG {-

1,1} Chúng ta cũng giả sử rằng tập dữ liệu là phân hoạch tuyến tính trong miền không gian đầu vào Khi đó bài toán phân lớp sử dụng mô hình tuyến tính có dạng

trong đó w và 6 là các thông số của mô hình Với khả năng phân hoạch tuyến tính của tập dữ liệu nhập, sẽ tồn tại ít nhất các bộ thông số w và

b sao choy(xi)>0 đối với các mẫu cóyi=l vày(xi)<0 đối với các mẫu có J>i=-1, hayyi/(xi)>0 cho tất cả các mẫu Một mẫu dữ liệu mới X sẽ được

phân lớp tương ứng với dấu của/(x).

Có thể tồn tại nhiều bộ giá trị của các thông số thỏa điều kiện trên Ví dụ giải thuật dựatrên giảm gradient sẽ khởi động giá trị ban đầu cho trọng so w và ò, quá trình tìm trọng số được cập nhật thông qua các bước lặp Tiếp cận SVM sẽ dựa trên ý tưởng về độ rộng của “lề” (margin) được xác định dựa trên khoảng cách nhỏ nhất giữa biên quyết định và bất kỳ điểm dữ liệu nào (Hình 1.8) Mục tiêu chính của SVM là tìm biên phân lớp tuyến tính (siêu mặt phẳng) sao cho cực đại biên Y giữa nó và các điểm dữ liệu trong tập huấn luyện hay cực đại độ rộng của lề 2y, ý tưởng này được minh họa trong Hình 1.8.

Theo trực quan, những điểm càng xa biên được phân lớp có độ tin cậy càng cao hơn Do đó, các điểm huấn luyện càng tách xa biên càng tốt (hiển nhiên là nằm ở phía đúng của nó) Hơn nữa, có thể có những điểm dữ liệu gần biên nhưng không xuất hiện trong tập dữ liệu huấn luyện, khi đó việc chọn biên càng phân tách hai lớp sẽ tạo cơ hội phân lớp các mẫu không nằm trong tập huấn luyện tốt hơn.

Giải pháp cực đại lề cũng đã từng được đề cập trong lý thuyết học thống kê (statistical learning theory) và cũng được đề cập bởi Tong và

Trang 24

Koller (2020)2, các tác giả đã đề xuất mô hình phân lớp dựa trên sự kết hợp giữa tiếp cận tạo sinh (generative) và tiếp cận phân biệt (discriminative) Trong đó, mô hình phân phối dữ liệu trên mỗi lớp sẽ được ước lượng sử dụng cửa sổ Parzen với các hàm nhân Gauss Cùng với các xác suất tiên nghiệm (priorprobability), biên quyết định có thể được tạo ranhằm cực đại biên, biên này không phụ thuộc vào các vector hỗ trợ (support vector).

2Tong, s and D Koller (2000) Restricted Bayes optimal classifiers In Proceedings

17th National Conference on Artificial Intelligence, pp 658-664 AAAI.

Hình 1.8 SVM chọn biên phân lớp nhằm cực đại khoảng cách đến các điểm huấn luyện

Trong SVM, biên quyết định được xác định dựa trên các vector hỗ trợ Chúng ta cũng có thể thấy trên Hình 1.8, hai siêu mặt phăng song song với siêu mặt phẳng ở giữa, w.x+Z>=0, và mỗi siêu mặt phăng chứa một hoặcnhiều điểm dữ liệu Những điểmdữ liệu này gọi là các support vector, nó đóng vai trò quan trọng trong việc xác định siêu mặt phẳng phân lớp ở giữa hay còn gọi là biên, tất cả chúng đều có khoảng cách / từ biên.

Bài toán của SVM có thể phát biểu ban đầu là: cho một tập huấn luyện D={(xi, yi), (X2, ., (xn, yn)}, tìm siêu mặt phẳng (w và b) cực đại Y sao cho thỏa các ràng buộc

yj(w • Xj + b) > y, cho tất cả i = 1,2, , n (1.13)

Các giá trị đầu ray, có giá trị +1 hoặc -1 tương ứng với nhãn lớp, đồng thời xác định điểm dữ liệu Xi nằm ở phía nào của biên Nếu W-Xi+Ờ > Y thì yi=+1 và nếu W-Xi+Z? <Y thìyi=-1, do đó bất phương trình (1.13) đúng

Trang 25

cho tất cả các mẫu ở hai phía Khoảng cách từ điểm dữ liệu Xi đến biên được xác định bởi |w • X/ + b|/|Iw||và tất cả các điểm dữ liệu cách biên ít nhất y/||w||.

Nếu chúng ta chia w, b vàỴ cho cùng một hệ số dương thì phương trình (1.13) vẫn thỏa Do đó, không mất tính tổng quát chúng ta có thể biến đổi (1.13) thành dạng

y^w-Xj + b) > 1, cho tất cả i = 1,2, ,n (114)

Khi đó khoảng cách từ biên đến điểm dữ liệu gần nhất (vector hỗ trợ) sẽ là l/||w|| và độ rộng lề là 2/||w|| Do đó bài toán cực đại lề trở thành bài toán tìm w và b đê cực tiểu ||w||/2 sao cho thỏa ràngbuộc

1 - yi(w • Xị + b) < 0,

cho tất cả i= 1,2, , n. (1.15)

Một trong những tiếp cận để tìm lời giải cho bài toán này là sử dụng công thức Lagrange tối ưu hàm mục tiêu

^\(l-yi(wXi + &)), (1-16)

trong đó Ấi, 1=1,2, ,« là các hệ số Largange Các tham số chính cần tìm là w và b do đó tổng số thông số chính là íZ+l với d là số chiều của không gian đặc trưng đâu vào.

Tìm cực tiểu của ||w|| với ràng buộc (1.15) tương đương với tìm cực tiểu của Lp đối với w và b. Lấy đạo hàm của Zp đối với b và w và

Trang 26

cực đại đối với các Ằi sao cho

Ằi > 0 và ẦM= 0 (1.20)

i = l

Dạng đối ngẫu có biểu diễn hàm tối ưu của tích vô hướng các mẫu Xi và Xj. Đây là điểm quan trọng để mở rộng cho máy học vector phi tuyến (sử dụng hàm nhân-kemel).

Như vậy ở trên chúng ta đã chuyển bài toán gốc sang bài toán đối ngẫu để tìm nghiệm dễ hơn bằng phương pháp số Bài toán tối ưu dạng này thỏa điều kiện Karush-Kuhn-Tucker, trong đó phát biểu rằng tại những điểm tương ứng với nghiệm thì tích giữa những biếnđối ngẫuvà các ràng buộc là bằng không Như vậy từ bài toán gốc ta có

Phương trình (1.25) cho giá trị hoặc 2i=0 hoặc yi(w • Xị + b) = 1 Tất cả các điểm dữ liệu tương ứng Ấi=o sẽ không xuất hiện trong (1.26) do đó không đóng góp vào việc phân loại cho các mẫu dữ liệu mới Những điểm dữ liệu thỏayi (w • Xi + b) = 1 sẽ nằm ởhai mặtphẳng lề cực đại song song với biên, nó tương ứng với các vector hỗ trợ (support vector) Sau khi huấn luyện mô hình, chúng ta chỉ cần giữ lại các vector hỗ trợ này để phân loại cho các mẫu mới.

Việc tìm giá trị của Ấ có thể sử dụng quy hoạch bậc hai (quadratic programmingproblem), sau khi tìmđược Ấchúng ta có thể xác định giá trị của b dựa vào các vector hỗ trợ, chú ý rằng với mỗi vector hỗ trợ ta cóyj/(xi)=l Thay (1.26) vào ta được

Trang 27

y, I 2,4yk(Xfc • Xi) + b ) = 1, (1.27)

trong đó s là tập các chỉ mục của các vector hỗ trợ Mặc dù ta có thể sử dụng bất kỳ vector hỗ trợ nào để tìm giá trị của b, chúng ta có thể tìm nghiệm tốt hơn (ổn định hơn) bằng cách trước tiên nhân yi vào hai vế của (1.27) và tính tổng tương ứng cho mỗi vector hỗ trợ với tính chất

yl = 1, khi đó ta có

trong đó ns là tổng số vector hỗ trợ.

1.3.2Tậpdữ liệu hailớpkhông phânbiệt bằng biên tuyến tính

Trong nhiều bài toán ứng dụng trong thực tế biên tuyến tính giữa hai lớp có thể không tồn tại Để giải quyết vấn đề này có hai tiếp cận phổ biến trong SVM là:

(1) Thực hiện biến đổi không gian đặc trưng gốc sang một không gian đặc trưng mới thông qua hàm 0(x) mà ở đó dữ liệu giữa hai lớp có biên phân tách tuyến tính như minh họa ở Hình 1.9 Siêu mặt phăng

Trang 28

b) Dữ liệu trong không gian đặc trưng mới có biên phân tách tuyến tính (màu xanh)

Hình 1.9 Biến đổi không gian đặc trưng sẽ tạo cho tập dữ liệu có khả năng phân tách bằng biên tuyến tính ở không gian đặc trưng mới trong đó K(Xj,x) = 0(x)• <X>(x) là hàm nhân Các thông số w và b

(2) Giải pháp thứ hai là nới lỏng ràng buộc (1.14) bằng cách đưa vào các biến “lỏng” (slack) Ịi tương ứng với mỗi mẫu dữ liệu Xi, khi đó

Trang 29

Hình 1.10 Nới lỏng ràng buộc biên bằng các biến “lỏng” (slack) Những điểm dữ liệu được phân lóp đúng nằm ngoài hai lề, vùng /21 và /2Ỉ2, sẽ có giá trị = 0, những điểm dữ liệu bị phân lóp sai nằm giữa hai

lề, vùng Qị và /24, sẽ có 0 < Ị< 1, và những điểm dữ liệu bị phân lớp sai nằm ngoài hai lề, vùng /21 và Q1, sẽ có giá trị Ẹ > 1 Do đó, chúng ta có thể thêm phần chi phí liên quan đến các biến lỏng này vào hàm

mục tiêu bằng cách thay cực tiểu —bởi + cm Si fị, trong đó Cm

là tham số điều chỉnh Đại lượng cm Si Ịi có thể được xem là đo mức độ phân loại sai Neu Cm là nhỏ thì nó hướng đến cực đại lề, còn nếu Cm

lớn thì nó ưu tiên cực tiểu tổng của các slack, Ị Do đó lề trong trường hợp này linh động hơn, người ta còn gọi là ‘lề mềm’ (soft margin).

Trang 30

Lấy đạo hàm đối với 6 và w ta vẫn được kết quả giống như (1.17) và (1.18), và đạo hàm đối với các Ịị ta được

Thay các kết quả này vào (1.35) ta có dạng đối ngẫu của Lagrange là

i=l Í=17 = 1

nó cũng giống như bộ phân lớp cực đại lề như (1.19) Nó cần cực đại đối với các Ải sao cho

0 < Ằị < cmẢM= 0 (1.38)

Như vậy, so với bài toán trước thì chỉ bổ sung thêm ràng buộc là cận trên của Ải. Các điều khác là (1.36) và Tị > 0 Phương pháp quy hoạch bậc hai (quadratic programming problem) có thể được tiếp tục sử dụng.

Các điều kiện bổ sung Karush-Kuhn-Tucker là

Ấí(yi(wxi + b)-l + fi) = o, (1.39)

ri%i ~~ (Gn Ă.ị)Ẹi ~ 0" (1.40)

Những mẫu tương ứng với Ải là các vector hỗ trợ và thỏa điều kiện

yị(w■ Xj+ b) — 1 + Ịi = 0 Những điểm tương ứng với 0 < Ải < cm

cần có = 0, tức là nằm trên một trong hai mặt phẳng lề cách biên 1/| |w| I (các vector hỗ trợnày còn gọi là các margin vector) Giá trị slack

khác 0 sẽ cho Ằị = cm. Trong trường hợp này, điểm dữ liệu bị phân loại sai sẽ tương ứng với Ịị > 1 Còn nếu Ịi < 1 thì nó được phân loại đúng nhưng nằm giữa hai lề, cách biên khoảng cách nhỏ hơn l/||w|| Cũng tương tự như trường hợp tập dữ liệu phân biệt bằng biên tuyến tính, giá trị của b có thể được xác định dựa trên điều kiện bổ sung Karush-Kuhn- Tucker với bất kỳ vector hỗ trợ nào có 0 < Ải < cm hay = 0 Tuy nhiên để có nghiệm tảng quát hơn, chúng ta tính dựa trên trung bình tất cả các mẫu thỏa 0 < Ằị < cm, ta có

bn§ + w.

iES iES

(1.41)

Trang 31

trong đó s là tập các chỉ mục của các vector hỗ trợ thỏa 0 < Ằị < Cm,

S 71$ lần lượt là tập các chỉ mục và tổng số vector hỗ trợ thỏa 0 <

<

Cm-Tham số Cm có thể được xác định dựa trên hiệu quả của bộ phân lớp dựa tập đánh giá riêng (validate) hay sử dụng phương pháp đánh giá chéo (cross-validation).

1.3.3SVM đa lớp

Phần trên trình bày phương pháp SVM cho bài toán hai lớp Việc mở rộng cho bài toán đa lớp có thể được thực hiện bằng kỹ thuật “một chấp phần còn lại” (one-against-all) hoặc “một chấp một” (one-against- one) Một tiếp cận khác là chúng ta xây dựng c (trong trường họp này,

c là tổng số lớp) hàm phân biệt tuyến tính

A(x)= wfc • X+ bk,k = 1,2, , c. (1.43)

Chúng ta tìm lời giải cho {(Wjt, bk), Ả=l,2, , C} sao cho mẫu X được gán thuộc lớp an nếu

sẽ phân tách tập dữ liệu với lỗi nhỏ nhất Nếu mỗi cặp lớp bao gồm các mẫu phân biệt tuyến tính, lời giải có thể là cực tiểu hàm mục tiêu

Trong trường hợp các điểm dữ liệu giữa các lớp không phân biệt tuyến tính, các biến “lỏng” sẽ được đưa vào và mục tiêu là tối thiểu

cho tất cả Xị G (Jứkj*k. Quá trình cực tiểu Lp với các ràng buộc trên cũng được thực hiện tương tự như trường hợp hai lớp.

Trang 32

1.3.4SVM chobài toán hồi qui

Bài toán hồi qui là tìm mối quan hệ giữa biến độc lập X đại diện cho đại lượng đo (đầu vào) và biến phụ thuộc y (đầu ra) Giả sử chúng ta có một họ các hàmy(x,0) được đặc trưng bởi tham số 0 Mục tiêu của hồi qui là tìm 0 để xấp xỉ tốt nhất cho tập mẫu huấn luyện {(Xij>i), Z-1, 2, ,«} Các hàm lỗi (loss) được giới thiệu để đo khả năng xấp xỉ Bốn hàm loss được sử dụng phổ biến là Quadratic, Huber, Laplace, và £-insensitive như được minh họa trong Hình 1.11 Hàm quadratic tương ứng với tiêu chí lỗi bình phương và được sử dụng khá phổ biến do sử dụng dễ hơn trong việc ước lượng tham số Tuy nhiên hàm này dễ bị ảnh hưởng bởi các mẫu bất thường hay outliers Hàm lỗi thứ hai ít ảnh hưởng outlier hơn đó là hàm Laplace Tương tự hàm Huber là kết hợp của Quadratic và Laplace, nó sẽ dạng Quadratic đối với lỗi nhỏ và Laplace (tuyến tính) đối với lỗi lớn Tuy nhiên các hàm này không tạo ra tính “thưa” (sparseness) cho SVM vấn đề này được khắc phục bởi hàm ^-insensitive được định nghĩa bởi.

Có nghĩa là những điểm dữ liệu nằm trong ống 6-tube sẽ không bị “phạt” và lỗi bằng không Xét hàm hồi qui tuyến tính đon giản

Trang 33

trong đó cm là hằng số chuẩn tắc (regularization constant) Hàm này là hàm lồi không ràng buộc, tuy nhiên nó không khả vi vì có hàm giá trị tuyệt đối Có nhiều tiếp cận để khắc phục tình trạng này, một trong những phương pháp phổ biến là thêm biến “lỏng” (Hình 1.12) cho phép điểm dữ liệu nằm ngoài 6-tube ở mức độ nào đó và chuyển hàm mục tiêu về dạng bài toán ràng buộc.

trong đó Ấp Ằt > 0 và rit rt> 0 là những hệ số Largrange Lấy đạo hàm đối với các biến w, b, (i, và và cho bằng 0 ta được

Trang 34

Hình 1.12 SVM hồi qui với các biến slack.

Thay w và các quan hệ trên vào (1.55) ta có dạng đối ngẫu của

Trang 35

Aj(e+ ỉi - (w • Xi+ b - yj)= 0 (1.63)

= (cm- Ẩ()& = 0 (1.66)

Điều này dễ dàng suy ra rằng ẢịẢi = 0 và Ịiỉi = 0 Tại vì nếu cả hai

Ảị 0 và Ải 0 thì từ (1.63) và (1.64) ta có E + — (w • Xj + ò —

yì) = 0 và 6 + Ịi — (yi — w • Xj — ò)=0 Cộng hai phương trình này lại tađược 2e + Ịi + Ệi = 0 Điều này không xảy ra vì € > 0 và ỉi,ỉi >

0 Còn nếu như cả hai Ịi 0 và Ịi 0 thì từ (1.65) và (1.66) ta có

Như vậy một trong hai Ải = 0 hoặc Ầị = 0 Những điểm dữ liệu (xz,yz) tương ứng với Ải > 0 hoặc Ải> 0 được gọi là các vector hỗ trợ Những điểm dữ liệu (xz,yz) tương ứng với 0 < Ải< cm hoặc 0 < Ảị <

Cm sẽ nằm trên E-tube bao xung đường hồi qui xấp xỉ và cách đường này khoảng cách 6 Chẳng hạn trong trường hợp 0 < Ảị < cm thì từ (1.65) ta có Ịi = 0 Với Ảị 0 và ỉi = 0 từ (1.63) ta có w • Xị +b = yi + 6 Trong trường họp Ằị= cm hoặc Ải=Cm, thì điểm dữ liệu tương ứng nằm ngoài 6-tube Trong trường hợp Ảị = 0 hoặc = 0, thì điểm dữ liệu tương ứng nằm trong E-tube.

f(Xi)-yị = -€ với 0 < Ầị < cm (1.69)

Tuy nhiên cũng như bài toán phân lớp, chúng ta có thể xác định giá trị của b dựa trên trung bình tương ứng với tất cả các điểm dữ liệu thỏa 0 < Ầị < cm hoặc 0 < Ảị< cm.

Trang 36

1.3.5Hiện thực SVM

Trong bài toán đối ngẫu của Largrange chúng ta cần giải bài toán qui hoạch bậc hai Hàm mục tiêu Ld có thể viết dạng ma trận

trong đó Ằ = [Ảlt Ả2, , Ản]T, H là ma trận Hessian (Hij=yiyjK(xi^j)} và

f=[ 1,1, 1 ]T là vector đơn vị kích thước wx 1 Chú ý răng nêu ma trận

K (bao gồm các K(xijCj)) xác định dương thì H (các yiyjKtxi’Xj)') cũng xác định dương Nhiều tiếp cận thường dựa trên phương pháp số hoặc tối ưu phi tuyến sử dụng giải thuật leo đồi để tìm cực đại của hàm mục tiêu Tuy nhiên, trong trường hợp tập dữ liệu lớn, các phương pháp này khó được thực hiện Một trong những giải pháp có thể thực hiện là phân rã tập dữ liệu, và cập nhật nghiệm từ các tập con này như mô tả trong giải thuật 1.3 (phân rã tập dữ liệu).

Giải thuật1.3.Giải thuậtphân rãtập dữ liệu _

1 Chọn 5 là sô mâu trong môi tập con (s<n). Khởi động Ải = 0 đôi với tất cả các mẫu.

2 Chọn s mẫu từ tập huấn luyện và tạo thành tập con s.

3 Giải bài toán qui hoạch bậc hai sử dụng tập con s.

4. Áp dụng mô hình cho tất cả các mẫu trong tập huấn luyện

5 Nếu có bất kỳ mẫu nào không thỏa điềukiện Karush-Kuhn-Tucker thì thaybất kỳ mẫu nào trong svà Ải tương ứng của nó bằng các mẫu này và Ảị tương ứng.

6 Nếu chưa hội tụ thì quay lại bước 3. _ Một trong những cải tiến nổi bật khác của giải thuật phân rã trên là tối ưu tuần tự (sequential model optimization - SMO), trong đó tối ưu mỗi lần cho hai tham số Không mất tính tổng quát, ta giả sử tối ưu cho hai tham số Ấ1 và Ầ2, các tham số khác cố định Từ (1.20) ta có

Aiyi + x2y2— Ayyi + ^272 —— s?=3^iyi (1.71)

trong đó Ấi và Ằ’2 là các tham số được cập nhật Đối với bài toán phân lớp nhị phân, yỵ,y2 6 {—1,1} Do đó từ (1.71) và 0 < 24,2.2 < cm, ta có các cận của Ả'2

trong đó

Trang 37

f max(o, A2 - Ai) nẽu yỵy2

lmax(O,Ằ1+À2- cm) nếu y-L = y2

Hi = imin(Cm, cm + A2 - Ai) nếu yr* y2

3 Nello Cristianini and John Shawe-Taylor, An Introduction to Support Vector Machines and Other Kernel-based Learning Methods, 2000.

trong đó, ví dụ với X1=2 và *2=4 thì có 2 mẫu thuộc lớp (01 và 1 mẫu thuộc lớp (02. Sử dụng tiêu chí Gini xác định biến được chọn và giá trị phân chia tại nút gốc của cây.

Trang 38

3 Sử dụng độ đo hỗn tạp entropy để tạo cây quyết định với tập dữ liệu trong Bài 2.

4 Cho cây quyết định phân lóp không phải nhị phân.

a) Chứng minh rằng tồn tại một cây nhị phân thực hiện cùng chức năng phân lớp với nó.

b) Giả sử cây có hai mức, nút gốc được kết nối đến B nút lá (B>2\ Hãy xác định cận trên và cận dưới là hàm của B về số mức của cây nhị phân tương đương với nó.

5 Trình bày một số điểm nồi bật của SVM? 6 Giả sử biên phân lớp được biểu diễn bởi

8 Dần ra dạng đối ngẫu của Lagrange cho SVM áp dụng cho bài toán hồi qui, biết rằng bài toán gốc với hàm loss ^-insensitive có dạng

Ip = ||w||2 + Cm2&?+f?)- i = l

9 Tìm công thức tính giá trị b dựa trên trung bình tương ứng các vector sopport trong bài toán hồi qui.

Trang 39

CHƯƠNG 2 LÝ THUYẾT QUYẾT ĐỊNH BAYES 2.1 Gióithiệu

Chương nàytrình bày lý thuyết quyết định Bayes, đây làmột trong những tiếp cận thống kê cơ bản cho bài toán phân lớp Ở chương nàỵ, chúng ta giả sử rằng các xác suất liên quan đến mô hình đều được biết Các chương sau sẽ mô tả cách tính xác suât được sử dụng trong mô hình.

Chúng ta bắt đầu bằng một ví dụ thiết kế bộ phân loại quả xoài cát chu thành loại một và loại hai Giả sử rằng sự xuẩt hiện các quả xoài là ngẫu nhiên khi đó loại quả hay nhãn tương ứng của nó cũng được xem là xuất hiện ngẫu nhiên Giả sử (ởbiểu thị cho loại quả, (Ơ=(O1 đối với loại một và (Ơ=(Ỡ2 đối với loại hai Nếu quả xoài loại một thường xuyên xuất hiện hơn quả loại hai, khi đó sự xuất hiện của quả mới sẽ có khả năng rất cao là thuộc loại một Giả định xác suất tiên nghiệm P(ũ)i)

tương ứng cho quả được khảo sát là loại một, và xác suất tiên nghiệm

P(ữ)2) tương ứng cho quả được khảo sát là loại hai Nếu như không có loại nào khác thì tổng hai đại lượng này, P(tOj)+P(íữ2), phải bằng 1 Các xác suất này thường biểu thị kiến thức của chúng ta về một loại quả nào đó trước khi nó thực sự xuất hiện, tức là dựa vào dữ liệu lịch sử của nó.

Nếu như một quả mới xuấthiện và yêu cầu phải nhận dạng nó (xem nó thuộc loại nào) với thông tin được cho chỉ là xác suất tiên nghiệm, khi đó một trong những quy tắc phù hợp để đưa ra quyết định hợp là: “Chọn Ữ)1 nếu P(ũ>i)>P(ứ)2); ngược lại chọn <%” Như vậy, nếu có nhiều quả chúng ta lại gán tất cả các quả cùng loại (loại một), mặc dù biết rằng có hai loại quả xuất hiện Do đó, trong hầu hết các trường hợp, chúng ta không nên đưa ra quyết định với quá ít thông tin.

Hình 2.1 Xoài cát chu

Trong bài toán phân loại quả xoài, chúng ta có thể cải thiện hệ thống nhận dạng sử dụng thêm một số đặc trưng ví dụ như trọng lượng, hình dáng, màu sắc, v.v Các loại quả khác nhau có trọng lượng khác

Trang 40

nhau, sự khác nhau này có thể được thể hiện thông qua đại lượng xác suất Gọi X là biến thể hiện trọng lượng quảxoài; giả sử đây là biến ngẫu nhiên, liên tục, có mật độ phân phối phụ thuộc vào loại quả và được biểu diễn bởip{x\(OỈ). Đây còn được gọi là hàm mật độ xác suất có điều kiện của lớp (hay hàm mật độ xác suất có điều kiện phụ thuộc trạng thái) Hàm mật độ xác suất p(x\(Oi) cho biết xác suất có điều kiện của một đặc trưng X tương ứng với trạng thái được chọn (O1. Sự khác nhau giữa/?(x| (01) vàp(x| (02) mô tả sự khác biệt về trọng lượng giữa quả thuộc loại một và loại hai (minh họa trong Hình 2.2).

Giả sử chúng ta biết xác suất tiên nghiệm của mỗi lớp P((OÌ) và mật độ xác suất có điều kiện củanóp(x\(oì), nếu chúng ta biết độ dài của quả xoài mới xuất hiện là X thì chúng ta phân loại nó như thế nào dựa trên các thông tin nhận được? Trước tiên chúng ta biết rằng mật độ xác suất một mẫu với giá trị đặc trưng X thuộc lóp (Oip((Oi, x) =P((0i)p(x\(0i) = P((oịx)p(x). Như vậy chúng ta có câu trả lời cho câu hỏi trên dựa vào công thức Bayes như sau:

P(a>ik) =

Hình 2.2 Hàm mật độ xác suất có điều kiện biểu thị mật độ xác suất của đại lượng X đối với các lóp ((Oi) được cho.

Ngày đăng: 04/04/2024, 19:39

Tài liệu cùng người dùng

Tài liệu liên quan