Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (10.74 MB, 199 trang )
<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">
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
</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="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 <i>k </i>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
</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="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 tố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
</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="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
</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">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 tố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 tố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
</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">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 khn mặt, nhận dạng một lồ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
</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">Một cách đơn giản, q 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 q 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”. Q 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 q 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, <i>Cời,</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
<i>c</i> vùng, /21, /=1, 2,..., <i>c. Nếu </i>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 <i>Qi </i>đượ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 tố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ộc<i>y </i>tương ứng với đáp ứng của nó, <i>y ~7(x).</i>
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
</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="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ợ.
<b>1.2 .Cây quyết định1.2.1Gióithiệu</b>
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đầu<i>tại nút ệốc, ở </i>đó 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
</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="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 tốn phân lóp với tập các đặc trưng <i>{Màu, Kíchthước, Hình dáng, Cóque}.</i> 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à<i> \={Màu-Vàng, Kích</i>
<i>thước=Nhỏ, Hìnhdáng=Trịn, Cóque=Khơng}, mẫu</i> 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 <i>Kếtquả),</i> 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
</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="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 q trình xây dựng mơ hình của cây.
Các đặc trưng tham giavào q 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:
</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11"><i>Giải thuật</i> 7.7.<i> Giải thuật tông quát tạo cây quyêt định</i>
<i>Đầuvào: Tập dữ</i> liệu huấn luyện, tập các đặc trưng, tập nhãn
<i>Đầu ra:</i> 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.
<b>1.2.2 CART</b>
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 <i>D</i> 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.
</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="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?
<i><b>a)Sốnhánh tạimột nút</b></i>
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ế.
Ví<i> dụ, kích thước có thể chia </i>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à <i>“hệ số phân nhảnh”</i> (branching factor hay branching ratio), và thường được ký hiệu là <i>B. </i>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 <i>“màu=vàngT\ </i>và ở nhánh “khơng” sẽ có nút khác sẽ hỏi <i>“màu=xanhT\</i> cây ở Hình 1.3 có thể biến đổi thành cây nhị phân như Hình 1.5.
</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="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<i> (B ></i> 2) có
thể phân thành các nút con.
<i><b>b) Sự lựachọn câu hỏi và độ hỗn tạp tạinút</b></i>
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 <i>và X2.</i>
<small>▲</small> 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.
</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="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<i> T </i>tại
<i>nút N sao cho chia dữ</i> liệu ở các nút con càng <i>tỉnh khiết </i>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 <i>lm(N)</i> là độ hỗn tạp tại nút<i>N,</i> nó được kỳ vọng là 0 nếu tất cả các mẫu tại nút<i> N</i> 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út<i>N</i> là xấp xỉ bằng nhau. Một trong các độ đo phổ biến trong cây quyết định là <i>entropyimpurity,</i> được định nghĩa bởi
<i>= -£p(a>j) log</i>2 p(a>7), (1.1)
trong đó p(á)ỹ) là tỉ lệ của các mẫu thuộc lớp <i>(JỬJ </i>tại <i>nút N. </i>Từ đặc tính của <i>entropy, </i>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ì <i>Im(N) </i>=0, ngược lại nó sẽ mang giátrị dương và
<i>Im(N) sẽ có giá trị lớn</i> nhất khi tỉ lệ P(á)y) tương ứng cho các lớp là bằng nhau.
<i>Ví dụ,</i> 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 <i>(ứỵ</i> 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 <i>entropy</i> 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. <i>Entropy</i>
<i>impurity</i> 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à<i> Gini index</i> và được định nghĩa bởi:
(1.3)
</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15"><i>Ví dụ, </i>nếu tại nút <i>N </i>chỉ có các mẫu thuộc lớp <i>(i)j, P(pìj) =</i> 1, và một mẫu được gán vào lớp <i>ú)j</i> thì <i>Im(N)=ồ.</i> Nếu tại nút Ncó năm mẫu, trong đó 2 mẫu thuộc lớp <i>ứ)lf</i> 3 mẫu thuộc lớp ủ)<i>2,</i> thì khi đó<i> Gini index</i>
= 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 <i>impurity</i> 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 <i>Ttại nút N</i> để 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à:
<i>ầlmrn = Im(N)-P^mCNt)- PRIm(NR),</i> (1.5)
trong đó <i>Nk</i> là các nút con, <i>k</i> là £(trái) hoặc Ẩ(phải),<i> Im(Nk)</i> là các độ hỗn tạp tương ứng tại nút <i>Nk,</i> và<i> Pk </i>là phần tỉ lệ mẫu tại nút <i>N sẽ</i> đưa vào <i>nút Nk. Câu hỏi T </i>được chọn sao cho A/m(7V) là cực đại hay
<i>PijmtNi) + PRIm(NỊỊ)</i> là cực tiểu.
Hình 1.7. Minh họa các hàm <i>impurity trong </i>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 qt như sau
</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16"><i>MmW = lm(N'i -</i> V<i> PiImiNi). </i> (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
<i>Vỉ dụ,</i> 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
</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">mẫu thuộc lóp <i>Cừi </i>và năm mẫu thuộc lớp <i>CỜ2. </i>Để tìm điểm chia tốt nhất,
phải tính tố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 <i>Im(N) </i>dựa trên entropy cho tồn bộ tập hn luyện<i> D:</i>
<i>ImW =</i> -^>0g2 (Ặ) - Ặ10g2 (Ặ) = 0.94.
Tiếp theo ta tính cho từng đặc trưng, bắt đầu với đặc trưng <i>“Tuồr.</i> Đặc trưng này có ba giá trị là <i>“Trẻ", “Trung niên"</i> và “<i>Già". </i>Nhìn vào dữ liệu trong Bảng 1.2, với giá trị <i>“Trẻ"</i> có hai mẫu thuộc lớp <i>“Yes"</i> và ba mẫu thuộc lớp <i>“No".</i> Tương tự giá trị <i>“Trung niên" có </i>bốn mẫu thuộc
<i>lóp “Yes" và </i>khơng có mẫu nào thuộc lóp <i>“No”-,</i> với giá trị <i>“Già" có ba </i>
mẫu thuộc lớp “Yes" và hai mẫu thuộc lớp <i>“No".</i> Theo công thức trên, độ đo hỗn tạp trên từng nhánh của đặc trưng “<i>Tuổi"</i> xét trên tập huấn Do đó độ giảm hỗn tạp ứng với đặc trưng<i> “Tuổi”</i> là
<i><small>I'fn.^NTuỗồ ~ Im(N) ỉ^tl^Trung niên)</small></i>
-Ặ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
<i>“Mức thu nhập", “Sinh viên"</i> và <i>“Hạng tíndụng".</i> Ket quả sẽ là
<i><b><small>VIm(NMức thu nhập)</small></b></i> = 0.029; <i><b><small>TSinh viên)</small></b></i> 0.151 va <i><b><small>VIm(NHạng tín dụng)</small></b></i>
= 0.048. Như vậy, đặc trưng<i> “Tuổi"</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 <i>B </i>nhỏ bất kể việc phân tách với <i>B lớn</i> 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 <i>B </i>cao sẽ giảm độ hỗn tạp nhiều hơn so với <i>B</i> 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:
</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">A/mB(iV) = <sup>V/m(N)</sup>
Độ đo này còn được gọi là tỷ số Gain (Gain ratio), trong đó mẫu số được định nghĩa là <i>Splitinfo.</i>
Xét ví dụ được nêu trong Bảng 1.2, đối với đặc trưng <i>“Mứcthunhập”,</i> nó có ba giá trị riêng biệt: <i>“Thấp”</i> (bốn mẫu), <i>“Trung bình”</i> (sáu mẫu) và <i>“Cao” </i>(bốn mẫu). Khi đó:
<i>Spilt Inf o(NMức nhập)</i>
Đư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 tố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 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ể qt qua tồ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.
<i><b>c)Điều kiện dừng</b></i>
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ỏ
</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">hơn ngưỡng cho trước, A/?n(N) < <i>p.</i> 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, tồ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 <i>p</i> 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ư <i>kNN</i> (^-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 tồn cục được định nghĩa bởi
<i><small>các nút</small></i>
trong đó<i> size</i> là tổng số nút hay cạnh trong cây và <i>a</i> 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à <i>size </i>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ố <i>a. Mối </i>quan hệ giữa<i> a</i> 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, <i>Aim.</i> 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<i> (Aim) </i>
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.
<i><b>d)Tỉa cành (pruning)</b></i>
Q 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 <i>N</i> 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.
</div><span class="text_page_counter">Trang 20</span><div class="page_container" data-page="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.
<i><b>e)Gánnhãn cho nútlá</b></i>
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.
<i><b>fi Vấn đềthiếu dữ liệu</b></i>
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 <i>N có n </i>
mẫu huấn luyện với ba đặc trưng <i>Xi, X2,</i> và <i>X3,</i> trong đó có một mẫu bị thiếu dữ liệu <i>tại X2. </i>Để tìm sự phân tách tốt nhất tại <i>N, </i>chúng ta tìm khả
<i>năng phân tách từ n </i>mẫu tương ứng <i>X1, n </i>mẫu tương ứng X3, và <i>n-1</i> mẫu tương ứng <i>X2'</i> 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.
<b>1.2.3 ID3</b>
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 <i>Bj, trong đó Bj</i> là số giá trị rời rạc của biến được chọn để tách<i> j.</i>
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ệ <i>Gain.</i> 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:__________________
<i>Giải thuật 1.2.Tạo câyquyêtđịnh ID3___________________Đâu vào:</i>
</div><span class="text_page_counter">Trang 21</span><div class="page_container" data-page="21"><i>D:</i> tập huẩn luyện,
<i>F:</i> tập các đặc trưng đầu vào, £: đặc trưng phân lóp (nhãn)
<i>Đầu ra:</i> Cây quyết định;
<i>Thuật toán:</i> ID3(tập huấn luyện <i>D, </i>các đặc trưng đầu vào F, đặc trưng phân lớp Q
Neu <i>D</i> rỗng,
Trả về một nút với giá trị Failure;
Neu<i>D</i> 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<i> F </i>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 <i>D.</i>
Cho <i>A </i>là đặc trưng trong <i>F</i> có độ giảm hỗn tạp
<i>Vlm(N,D)</i> lớn nhất;
Cho{í/j| j=l,2,<i>m} </i>tập các giá trị của đặc trưng^4; Cho {Z)j|j=l,2,<i>m}</i> là các tập con <i>củaD</i> bao gồm các mẫu có giá trị ở đặc trưng <i>A</i> là <i>dj.</i>
Trả về cây với nút gốc tương ứng đặc trưng A, các cạnh <i>di, d2,...ìdm</i> nối với các cây con ID3(Z>7,
<i>F-{Â},£), </i>con ID3(Ì>2,<i> F-{A},£),</i> ..., ID3(K,
<b>1.2.4 C4.5</b>
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ố
<i>Gain.</i> 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.
<b>1.2.5Các mở rộng củacây quyết định</b>
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 <i>D</i> bao gồm các vector nhập {xi, X2,..., Xn}
</div><span class="text_page_counter">Trang 22</span><div class="page_container" data-page="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 <i>ịcữi, ứĩ2,..., </i>Ỗ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 đó. Q 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 <i>T được ký</i> hiệu bởi <i>Dỉ,</i>
<i>D<small>m</small>,</i> giá trị dựđoántối ưu tại vùng tương<i> ứng Dj</i> đượ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.
<small>1Christopher M. Bishop, Markus Svensen, Bayesian Hierarchical Mixtures ofExperts, </small>
<small>https ://arxiv.org/flp/arxiv/papers/1212/1212.2447.pdf</small>
<b>1.3 Máy hỗ trợ vector (Support vector machine-SVM)</b>
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 tốn phân lóp,
</div><span class="text_page_counter">Trang 23</span><div class="page_container" data-page="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 tốn phân lớp, sau đó được mở rộng sang các bài tố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,.<i>. .Xd).</i> 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.
<b>1.3.1Biên phân lớptuyến tính trên tập dữ liệu 2 lớp</b>
Chúng ta bắt đầu thảo luận về SVM với bài tố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, <i>y2,..., yn với yiG {- </i>
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 tố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à
<i>b</i> 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à ị, q 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à
</div><span class="text_page_counter">Trang 24</span><div class="page_container" data-page="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).
<small>2Tong, s. and D. Koller (2000). Restricted Bayes optimal classifiers. In Proceedings </small>
<i><small>17th National Conference on Artificial Intelligence, pp. 658-664. AAAI.</small></i>
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 tốn của SVM có thể phát biểu ban đầu là: cho một tập huấn luyện<i> D=</i>{(xi, yi), (X2, ..., (xn, yn)}, tìm siêu mặt phẳng (w và <i>b)</i> cực đại Y sao cho thỏa các ràng buộc
yj(w • Xj + b) > y, cho tất cả <i>i =</i> 1,2,..., n. <sub>(1.13)</sub>
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
</div><span class="text_page_counter">Trang 25</span><div class="page_container" data-page="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, <i>b</i> 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 qt chúng ta có thể biến đổi (1.13) thành dạng
y^w-Xj + b) > 1, cho tất cả <i>i </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 tốn cực đại lề trở thành bài tốn tìm w và<i> b đê cực </i>tiểu ||w||/2 sao cho thỏa ràngbuộc
1 - yi(w • Xị + b) < 0,
cho tất cả <i>i=</i> 1,2,..., <i>n.</i> <sup>(1.15)</sup>
Một trong những tiếp cận để tìm lời giải cho bài tốn này là sử dụng cơng thức Lagrange tối ưu hàm mục tiêu
trong đó Ấi, 1=1,2,...,« là các hệ số Largange. Các tham số chính cần tìm là w và <i>b</i> do đó tổng số thơng số chính là íZ+l với <i>d</i> 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à <i>b.</i> Lấy đạo hàm của Zp đối với <i>b</i> và w và
</div><span class="text_page_counter">Trang 26</span><div class="page_container" data-page="26">cực đại đối với các <i>Ằi sao</i> cho
<i>Ằi </i>> 0 và <i>ẦM=</i> 0. (1.20)
<small>i = l</small>
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 <i>Xi và Xj.</i> Đâ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 tố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ỏa<i>yi </i>(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 <i>b</i> 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
</div><span class="text_page_counter">Trang 27</span><div class="page_container" data-page="27"><i>y, I</i> 2,4yk(Xfc • Xi) +<i> b</i> ) = 1, (1.27)
trong đó <i>s</i> 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
<i>yl</i> = 1, khi đó ta có
trong đó <i>ns </i>là tổng số vector hỗ trợ.
<b>1.3.2Tậpdữ liệu hailớpkhơng phânbiệt bằng biên tuyến tính</b>
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
</div><span class="text_page_counter">Trang 28</span><div class="page_container" data-page="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) <b>= 0(x)• <X>(x) là </b>hàm nhân. Các thông số<b> w và</b><i> b </i>
(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> Ịi</i> tương ứng với mỗi mẫu dữ liệu <i>Xi, khi </i>đó
</div><span class="text_page_counter">Trang 29</span><div class="page_container" data-page="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ị <i>Ị</i> = 0, những điểm dữ liệu bị phân lóp sai nằm giữa hai
<i>lề, vùng Qị</i> và /24, sẽ có 0 < <i>Ị<</i> 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à <i>Q1,</i> sẽ có giá trị <i>Ẹ ></i> 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 <i>+ cm</i> Si fị, trong đó <i>Cm</i>
là tham số điều chỉnh. Đại lượng <i>cm Si Ịi</i> có thể được xem là đo mức độ phân loại sai. Neu <i>Cm </i>là nhỏ thì nó hướng đến cực đại lề, cịn nếu <i>Cm</i>
lớn thì nó ưu tiên cực tiểu tổng của các <i>slack, Ị</i>. 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).
</div><span class="text_page_counter">Trang 30</span><div class="page_container" data-page="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 <i>Ịị ta</i> được
Thay các kết quả này vào (1.35) ta có dạng đối ngẫu của Lagrange là
<small>i=l Í=17 = 1</small>
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>Ải</i> sao cho
0 <<i> Ằị < cm</i> và <i>ẢM=</i> 0. (1.38)
Như vậy, so với bài tốn trước thì chỉ bổ sung thêm ràng buộc là cận trên của <i>Ải.</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)
<i>ri%i ~~</i> (Gn<i> Ă.ị)Ẹi ~</i> 0" (1.40)
Những mẫu tương ứng với <i>Ải</i> là các vector hỗ trợ và thỏa điều kiện
<b>yị(w■ Xj+ b) — 1 +</b> <i>Ịi </i>= 0. Những điểm tương ứng với 0 < <i>Ải < cm </i>
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|<b> I </b>(các vector hỗ trợnày còn gọi là các margin vector). Giá trị <i>slack</i>
khác 0 sẽ cho Ằị = <i>cm.</i> Trong trường hợp này, điểm dữ liệu bị phân loại sai sẽ tương ứng với Ịị <i>></i> 1. Cịn nếu <i>Ịi <</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 <i>b</i> 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>Ải < cm</i> hay = 0. Tuy nhiên để có nghiệm tảng qt hơn, chúng ta tính dựa trên trung bình tất cả các mẫu thỏa 0 < Ằị <i>< cm,</i> ta có
<i>bn§</i><b> + w.</b>
<i><small>iES iES</small></i>
<i>(1.41)</i>
</div><span class="text_page_counter">Trang 31</span><div class="page_container" data-page="31">trong đó <i>s</i> là tập các chỉ mục của các vector hỗ trợ thỏa 0 < <i>Ằị < Cm,</i>
<i>S</i> và<i> 71$</i> lần lượt là tập các chỉ mục và tổng số vector hỗ trợ thỏa 0 <
<i>< </i>
Cm-Tham số <i>Cm</i> 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).
<b>1.3.3SVM đa lớp</b>
Phần trên trình bày phương pháp SVM cho bài tốn hai lớp. Việc mở rộng cho bài tố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<i> c</i> (trong trường họp này,
<i>c </i>là tổng số lớp) hàm phân biệt tuyến tính
<b>A(x)= wfc • X+ </b><i>bk,k</i> = 1,2,..., <i>c.</i> (1.43)
Chúng ta tìm lời giải cho {(Wjt, <i>bk),</i> Ả=l,2,..., <i>C}</i> sao cho mẫu X được gán thuộc lớp <i>an</i> 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ả <i>Xị</i> G <i>(Jứk</i> và <i>j*k.</i> Quá trình cực tiểu <i>Lp</i> 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.
</div><span class="text_page_counter">Trang 32</span><div class="page_container" data-page="32"><b>1.3.4SVM chobài tốn hồi qui</b>
Bài tố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 <i>y</i> (đầ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
</div><span class="text_page_counter">Trang 33</span><div class="page_container" data-page="33">trong đó <i>cm là</i> 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 tốn ràng buộc.
trong đó Ấp Ằ<i>t </i>> 0 và <i>rit rt></i> 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
</div><span class="text_page_counter">Trang 34</span><div class="page_container" data-page="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
</div><span class="text_page_counter">Trang 35</span><div class="page_container" data-page="35"><b>Aj(e+</b> <i>ỉi</i><b> - (w • Xi+ </b><i>b</i> <b>- yj)= 0</b> (1.63)
<b>= (cm- Ẩ()& = 0</b> (1.66)
Điều này dễ dàng suy ra rằng <i>ẢịẢi</i> = 0 và Ịiỉi = 0. Tại vì nếu cả hai
<i>Ảị</i> 0 và <i>Ải</i> 0 thì từ (1.63) và (1.64) ta có E + — (w • Xj + ị —
<i>)</i> = 0 và <i>6 + Ịi — (yi</i> — w • Xj — ị)=0. Cộng hai phương trình này lại tađược <i>2e + Ịi + Ệi</i> = 0. Điều này không xảy ra vì € > 0 và <i>ỉi,ỉi > </i>
0. Còn nếu như cả hai <i>Ịi</i> 0 và <i>Ịi</i> 0 thì từ (1.65) và (1.66) ta có
Như vậy một trong hai<i> Ải</i> = 0 hoặc<i> Ầị</i> = 0. Những điểm dữ liệu (xz,yz) tương ứng với <i>Ải </i>> 0 hoặc <i>Ải></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>Ải< cm hoặc 0</i> < <i>Ảị < </i>
<i>Cm</i> 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 < <i>Ảị < cm</i> thì từ (1.65) ta có Ịi = 0. Với <i>Ảị</i> 0 và ỉi = 0 từ (1.63) ta có w • <i>Xị +b = yi </i>+ 6. Trong trường họp <i>Ằị= cm </i>hoặc<i> Ải=Cm,</i> thì điểm dữ liệu tương ứng nằm ngồi 6-tube. Trong trường hợp <i>Ảị </i>= 0 hoặc = 0, thì điểm dữ liệu tương ứng nằm trong E-tube.
<i>f(Xi)-yị = -€ với </i>0 < <i>Ầị < cm</i> (1.69)
Tuy nhiên cũng như bài tốn phân lớp, chúng ta có thể xác định giá trị của <i>b</i> 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 < <i>Ầị < cm</i> hoặc 0 < <i>Ảị< cm.</i>
</div><span class="text_page_counter">Trang 36</span><div class="page_container" data-page="36"><b>1.3.5Hiện thực SVM</b>
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 <i>L<small>d</small></i> <small>có</small> thể viết dạng ma trận
trong đó Ằ <i>= [Ảlt Ả2,..., Ản]T<b>, </b></i><b>H</b> là ma trận Hessian (Hij=yiyjK(xi^j)} và
<b>f=[ 1,1,... 1 </b>]T là vector đơn vị kích thước wx 1. Chú ý răng nêu ma trận
<b>K (bao gồm các </b><i>K(xijCj))</i> xác định dương thì <b>H (các </b><i>yiyjKtxi’Xj)')</i> 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).
<i>Giải thuật1.3.Giải thuậtphân rãtập dữ liệu ___ __________</i>
1. Chọn 5 là sô mâu trong môi tập <i>con (s<n).</i> Khởi động <i>Ải </i>= 0 đôi với tất cả các mẫu.
2. <i>Chọn s</i> mẫu từ tập huấn luyện và tạo thành tập <i>con s.</i>
3. Giải bài toán qui hoạch bậc hai sử dụng tập con <i>s.</i>
<i>4.</i> Á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>Ải</i> tương ứng của nó bằng các mẫu này và <i>Ảị</i> 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 qt, ta giả sử tối ưu cho hai tham số Ấ1 và <i>Ầ2,</i> các tham số khác cố định. Từ (1.20) ta có
<small>Aiyi + </small><i>x2y2— Ayyi</i><small> + ^272 —— s?=3^iyi (1.71)</small>
trong đó Ấi và <i>Ằ’2 </i>là các tham số được cập nhật. Đối với bài toán phân lớp nhị phân, <i>yỵ,y2</i> 6 {—1,1}. Do đó từ (1.71) và 0 < 24,2.2 < <i>cm, </i>ta có các cận của <i>Ả'2</i> là
trong đó
</div><span class="text_page_counter">Trang 37</span><div class="page_container" data-page="37">f max(o, A2 - Ai) <i>nẽu yỵy2</i>
lmax(O,<i>Ằ1+À2- cm) nếu y-L = y2</i>
<i>Hi =</i> <sup>imin(C</sup><sup>m,</sup> <i><sup>cm</sup></i><sup> + A</sup><sup>2</sup> <sup>-</sup> <sup>Ai)</sup> <i><sup>nếu yr</sup><sup>* </sup><sup>y2</sup></i>
<small>3 Nello Cristianini and John Shawe-Taylor, An Introduction to Support Vector Machines and Other Kernel-based Learning Methods, 2000.</small>
trong đó, ví dụ với <i>X1=2</i> và *2=4 thì có 2 mẫu thuộc lớp <i>(01</i> và 1 mẫu thuộc lớp <i>(02.</i> 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.
</div><span class="text_page_counter">Trang 38</span><div class="page_container" data-page="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 <i>B</i> nút lá <i>(B>2\</i> Hãy xác định cận trên và cận dưới là hàm của <i>B</i> 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 tốn gốc với hàm loss ^-insensitive có dạng
<small>Ip = ||w||2 + Cm2&?+f?)- i = l</small>
9. Tìm cơng thức tính giá trị<i> b dựa</i> trên trung bình tương ứng các vector sopport trong bài toán hồi qui.
</div><span class="text_page_counter">Trang 39</span><div class="page_container" data-page="39">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 st đượ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ử <i>(ở</i>biểu thị cho loại quả, <i>(Ơ=(O1</i> đối với loại một và <i>(Ơ=(Ỡ2 </i>đố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 <i>P(ũ)i)</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
<i>P(ữ)2) </i>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, <i>P(tOj)+P(íữ2),</i> 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 <i>Ữ)1 </i>nếu <i>P(ũ>i)>P(ứ)2);</i> 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 q ít thơng tin.
Hình 2.1. Xồi cát chu
Trong bài tốn phân loại quả xồ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
</div><span class="text_page_counter">Trang 40</span><div class="page_container" data-page="40">nhau, sự khác nhau này có thể được thể hiện thông qua đại lượng xác suất. <i>Gọi X</i> 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ởi<i>p{x\(OỈ).</i> Đâ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<i> p(x\(Oi)</i> cho biết xác suất có điều kiện của một đặc trưng <i>X</i> tương ứng với trạng thái được chọn <i>(O1.</i> Sự khác nhau giữa/?(x| <i>(01)</i> vàp(x| <i>(02)</i> 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 <i>P(()</i> và mật độ xác suất có điều kiện củanó<i>p(x\(), </i>nếu chúng ta biết độ dài của quả xồi mới xuất hiện là <i>X</i> 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<i> X</i> thuộc lóp <i>(Oi</i> là<i>p((Oi, x) =P((0i)p(x\(0i) = P((oịx)p(x).</i> 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<i> X</i> đối với các <i>lóp ((Oi) </i>được cho.
</div>