7. Nội dung luận văn
2.3.1. Siêu phẳng tối ưu
Ý tưởng chính của SVM [23]là tìm một siêu phẳng phân cách 𝐻: 𝑤. 𝑥 + 𝑏 = 0 H: w. x + b = 0 để tách tập mẫu thành hai lớp sao cho khoảng cách lề (margin) giữa hai lớp đạt cực đại. Để xây dựng siêu phẳng phân cách cĩ lề cực đại, xây dựng các vector hỗ trợ và các siêu phẳng song song với siêu phẳng phân cách và gần vector hỗ trợ nhất, đĩ là các hàm:
w.x-b=1 (2.1)
w.x-b=-1 (2.2)
Khoảng cách giữa hai siêu phẳng là ‖𝑤‖2 do đĩ cần phải cực tiểu hĩa ‖𝑤‖ để đảm bảo với mọi i ta cĩ:
w.x-b>1 cho lớp thứ nhất (2.3)
Hình 2.2. Biểu diễn siêu phẳng lề cực đại cho bộ phân lớp SVM trên hai lớp
Trong một bài tốn phân lớp nhị phân để tính được khoản cách đại số của một mẫu huấn luyện (xi, yi) tới siêu phẳng {𝑥 ∈ 𝑅𝐷|𝑓(𝑥) = 𝑊𝑡. 𝑥 + 𝑏 = 0} là:
δ̂f(xi, yi) = yi(WT. xi+ b) (2.5) Để phân lớp cĩ độ tin cậy và chính xác cao thì cần một khoảng cách đại số càng rộng càng tốt, như vậy bài tốn luơn cĩ ý tưởng f(xi) là một số dương càng lớn càng tốt. Tuy nhiên, khoảng cách đại số chưa phải là một thước đo độ tin cậy tốt. Nếu thay w bởi 2w và b bởi 2b thì hàm quyết định phân lớp cũng khơng thay đổi vì
sign(2wT. x + 2b) = sign(WT. x + b). Bằng cách thay đổi tỷ lệ của w và b, cĩ thể tạo ra khoảng cách đại số với độ rộng tùy ý mà khơng làm thay đổi kết quả của việc phân lớp. Vì vậy, cĩ thể đặt ||w||2=1, tức là thay (w,b) bằng (w/||w||2,b/||w||2). Trong trường hợp này, khoảng cách đại số trở thành khoảng cách hình học, đây chính là khoảng cách Euclide từ một điểm tới siêu phẳng.
Để tính khoảng cách hình học của một mẫu huấn luyện (xi, yi) tới siêu phẳng
{𝑥 ∈ 𝑅𝐷|𝑓(𝑥) = 𝑊𝑇. 𝑥 + 𝑏 = 0} là:
δf(xi, yi) =yi(WT .xi+b)
||W||2 =δ̂(xf i,yi)
||W||2 (2.6)
Khoảng cách lề của một tập huấn luyện 𝑆 = {(𝑥𝑖, 𝑦𝑖)} 𝑖 = 1 … 𝑙 tới siêu phẳng
{𝑥 ∈ 𝑅𝐷 | 𝑓(𝑥) = 𝑊𝑇 . 𝑥 + 𝑏 = 0} là khoảng cách hình học nhỏ nhất của tất cả các mẫu huấn luyện tới siêu phẳng:
𝛿𝑓 = min
𝑖=1…𝑙𝛿𝑓 (𝑥𝑖, 𝑦𝑖) (2.7)
Hình 2.3. Siêu phẳng tách tuyến tính
Mục tiêu của SVM là chuyển tập mẫu từ khơng gian biểu diễn Rn của chúng sang một khơng gian Rd cĩ số chiều lớn hơn. Trong khơng gian Rd, tìm một siêu phẳng tối phân cách với khoảng cách lề cực đại:
𝑓∗ = arg max
𝑓 𝛿𝑓 (2.8)
Như vậy theo hình 2.3 ta tìm hai siêu phẳng H1 , H2 song song với H sao cho khoảng cách giữa H1 và H2 đạt cực đại.
Trong thuật tốn huấn luyện theo cơ bản chỉ là tìm một hàm tuyến tính 𝑓(𝑥) = 𝑊𝑇 . 𝑥 + 𝑏 với một khoảng cách lề lớn nhất cĩ thể. Giả sử khoảng cách đại số từ các mẫu huấn luyện đến siêu phẳng đều lớn hơn hoặc bằng hằng số 𝛿 = 1, tức là
𝑊𝑇. 𝑥𝑖 + 𝑏 ≥ 1, với yi = +1 (2.9)
𝑊𝑇. 𝑥𝑖 + 𝑏 ≤ −1, với yi = -1 (2.10) Ta cĩ thể viết gọn hơn:
𝑦𝑖(𝑊𝑇 . 𝑥𝑖+ 𝑏) ≥ 1 với i = 1,…, l (2.11)
Khoảng cách của một điểm nằm trên H1 hoặc H2 tới H là |𝑊
𝑇 .𝑥+𝑏|
||𝑊||2 = 1
khoảng cách giữa H1 và H2 là 2
||𝑊||2. Như thế, cĩ thể tìm siêu phẳng với khoảng cách lề cực đại bằng cách cực tiểu ||𝑊||2 = 𝑊𝑇 . 𝑊 sao cho thỏa mãn ràng buộc
𝑦𝑖(𝑊𝑇 . 𝑥𝑖 + 𝑏) ≥ 1 với i = 1,…, l. Từ đĩ , bài tốn tìm siêu phẳng tối ưu cĩ thể phát biểu lại như sau:
min
𝑤,𝑏 1
2 𝑊𝑇 . 𝑊 (2.12)
Sao cho 𝑦𝑖(𝑊𝑇 . 𝑥𝑖 + 𝑏) ≥ 1, 𝑖 = 1, … , 𝑙. Kết quả của việc giải bài tốn (2.12) sẽ thu được những mẫu nằm trên H1 và H2. Các mẫu này được gọi và các vectơ tựa (support vector), chỉ cĩ các mẫu này tham gia vào việc xác định siêu phẳng tối ưu, cịn các mẫu khác cĩ thể loại bỏ.
Nếu tập dữ liệu huấn luyện khơng khả tách tuyến tính thì ta cĩ thể giải quyết theo hai cách. Cách thứ nhất sử dụng một mặt siêu phẳng lề mềm; cách thứ hai sử dụng một ánh xạ phi tuyến.