3.4.1.Gần tuyến tính, sử dụng lề mềm – Soft margin
Trường hợp tập mẫu cĩ thể phân chia tuyến tính được chỉ là một trường hợp
đặc biệt. Trong trường hợp tổng quát, tập mẫu là một tập khơng phân chia tuyến
tính được bằng siêu phẳng.
Hình 10. Tập mẫu gần phân tách tuyến tính (khơng thể phân tách tuyến tính được)
Tuy nhiên ta vẫn muốn dùng siêu phẳng phân chia tập mẫu này. Để cĩ thể áp dụng được phương pháp trong phần trên, ta phải gán cho mỗi mẫu xi một sai số
để “xem như cĩ thể phân chia tuyến tính”. với yi = 1
với yi = - 1
; i = 1, 2,…, l
Với cách đặt như vậy thì sai số thực nghiệm Empirical Risk là:
Cũng giống như phần trước, nếu cực tiểu ||w|| thì sẽ làm cho VC dimension nhỏ
và từ đĩ VC confidence nhỏ. Do đĩ để thực thi nguyên tắc SRM (cực tiểu cùng lúc
Empirical risk và VC confidence), ta cĩ thể cực tiểu biểu thức sau:
Trong cĩ C là một hằng số dương tự chọn. Việc chọn C thể hiện nguyên tắc SRM. Nếu chọn C lớn sẽ làm cho Empirical Risk nhỏ - do tập trung cực tiểu . Cịn nếu C lớn sẽ làm cho VC confidence nhỏ - do cực tiểu w. (Cách này được gọi
Luận văn tốt nghiệp Nghiên cứu giải thuật NB trong bài tốn TC
Trang 40
là C-SVM do dựa trên giá trị của khoảng các lỗi, ngồi ra cịn một phương án khác là tối thiểu số điểm lỗi, được gọi là v-SVM).
Vậy ta cĩ thể phát biểu lại bài tốn như sau:
Cực tiểu: l i i C w w b w f 1 2 1 ) , , ( Với yi(wzib)1i,i1,....,l l i i 0, 1,...,
Bài tốn đối ngẫu của bài tốn trên sẽ là: Cực đại với
Dựa trên
Cũng theo điều kiện Fermat, cực tiểu của
xảy ra tại w, b, sao cho: Lúc đĩ giá trị cực tiểu của L là:
Như vậy bài tốn đối ngẫu được viết lại thành:
Tìm cực đại của
Luận văn tốt nghiệp Nghiên cứu giải thuật NB trong bài tốn TC
Trang 41
Bài tốn này hồn tồn giống bài tốn phân chia tuyến tính, chỉ cĩ thêm điều kiện ui ≤ C. Giải bài tốn này ta tìm được u và từ đĩ tính dược w theo cơng thức
. Trong đĩ, xi là các support vector và các vector lỗi (ứng với 0 < ui≤
C). NS là số lượng support vector và vector lỗi.
Để tìm b, sử dụng điều kiện Karush Kuhn Tucker cho bài tốn gốc ta cĩ:
Chọn một ui sao cho 0 < ui < C. Lúc đĩ để điều kiện trên xảy ra. Do suy ra nên cĩ thêm điều kiện để điều kiện trên xảy ra. Lúc đĩ cĩ thể tính được
Vậy là đã tìm được siêu phẳng phân chia một tập dữ liệu khơng thể phân hoạch tuyến tính. Siêu phẳng như vậy được gọi là siêu phẳng khoảng cách phân hoạch mềm (soft-margin hyperplane)
3.4.2.Phi tuyến – Sử dụng hàm nhân.
Trong trường hợp tổng quát, thực tế mặt phân hoạch cĩ thể là một mặt phi tuyến bất kỳ (Hình 4-4). Giả sử các mẫu xi thuộc khơng gian Rn, khơng gian này
được gọi là khơng gian giả thiết (hypothesis space). Để tìm mặt phi tuyến trong khơng gian này, cĩ thể áp dụng một thủ thuật là ánh xạ các vector mẫu xi từ Rn vào một khơng gian Rd cĩ số chiều lớn hơn (d > n, d cĩ thể bằng ∞). Rd được gọi là
khơng gian đặc trưng (feature space). Sau đĩ áp dụng phương pháp SVM tuyến tính
để tìm ra một siêu phẳng phân hoạch khơng gian đặc trưng Rd. Siêu phẳng này sẽ tương ứng với mặt phi tuyến trong khơng gian Rn.
Luận văn tốt nghiệp Nghiên cứu giải thuật NB trong bài tốn TC
Trang 42
Hình 11. Phân tách phi tuyến nhưng chuyển đổi khơng gian để trở về tuyến tính
a)Hàm nhân – nhân
Ánh xạ từ khơng gian Rn vào khơng gian Rd: Gọi ánh xạ được áp dụng là , như vậy:
Ví dụ: x = (x1, x2) R2. Định nghĩa hàm ánh xạ như sau:
Với ánh xạ trên thì mặt hình vuơng [-1, 1]×[-1,1] trong khơng gian R2 sẽ trở
thành một mặt cong trong khơng gian R3 như trong hình dưới. Bây giờ dùng một mặt phẳng trong khơng gian R3 này sẽ cĩ thể thực hiện chia mặt cong trên thành hai phần (mà trong khơng gian R2 phải dùng một đường cong mới cĩ được kêt quả phân chia tương ứng).
Luận văn tốt nghiệp Nghiên cứu giải thuật NB trong bài tốn TC
Trang 43
Ấp dụng siêu phẳng phân hoạch mềm (soft-margin hyperlane trong khơng gian Rd cho các mẫu thì siêu phẳng này sẽ là:
Và từ đĩ cũng cĩ hàm phân hoạch là trong khơng gian Rn là hàm hợp .
Đây là một hàm phi tuyến.
Cách tiếp cận trên gặp phải một vấn đề là hàm cĩ thể cĩ số chiều rất lớn (nếu khơng gian Rd cĩ d lớn). Và do đĩ tiêu tốn thời gian nhiều trong các phép. Tuy nhiên, cĩ thể nhận xét rằng trong các phép tính chỉ xuất hiện dưới dạng tích vơ
hướng, tức là dạng mà khơng xuất hiện đơn lẻ. Đây là một nhận xét quan trọng trong việc tìm ra quy tắc sau:
Thay vì sử dụng dạng tường minh của thỉ chỉ cần sử dụng hàm biểu diễn giá trị vơ hướng .
Đặt K(x,y) = , K(x,y) được gọi là hàm hạt nhân (nhân function)
Như vậy là chỉ cần biết dạng của hàm hạt nhân K(x,y) mà khơng cần biết cụ
thể ánh xạ . Lúc đĩ hàm nhận dạng trở thành:
Tuy nhiên khơng thể chọn tuỳ ý hàm K(x,y) mà phải chọn K(x,y) sao cho tồn tại một hàm mà K(x,y) = . Điều kiện để đảm bảo vấn đề này là điều kiện
Mercer. Sau đây là một ví dụ về K và :
Với x = (x1, x2) R2, thì K(x,y) =
Tĩm lại phương pháp SVM phi tuyến là tìm một hàm nhân K(x,y) để tìm ra u và b. Cuối cùng xây dựng hàm nhận dạng đối với một mẫu thử x* nào đĩ là:
Cịn một vấn đề là tìm hàm nhân K(x,y) như thế nào. Rõ ràng đây là một vấn
đề phụ thuộc vào bài tốn nhận dạng. Đối với những bài tốn nhận dạng đơn giản
trong đĩ sự phân bố các mẫu của hai lớp {-1, 1} khơng quá phức tạp thì cĩ thể tìm hàm K(x,y) đơn giản sao cho số chiều của là khơng quá lớn.
Việc chọn hàm K(x,y) sao cho phù hợp là cần thiết vì nếu cứ chọn K(x,y) phức tạp thì phải trả giá là VC dimension lớn dù rằng cĩ được Empirical Risk nhỏ.
Luận văn tốt nghiệp Nghiên cứu giải thuật NB trong bài tốn TC
Trang 44
Hình 13. Phân hoạch phi tuyến cĩ nhiễu
Trong ví dụ ở trên, hàm nhân là (1 + x.y)2. Trường hợp này tập mẫu vẫn bị
phân hoạch cĩ lỗi (được đánh dấu bởi các dấu X, Empirical Risk ≠ 0). Lỗi này cĩ thể do nhiễu. Do đĩ đây là hàm phân hoạch ứng với nhân này là phù hợp nhất. Việc tìm những hàm nhân phức tạp để Empirical Risk = 0 là khơng cần thiết và khơng
đúng (vì nĩ sẽ xem lỗi như là một mẫu đúng).
b)Một số ví dụ về hàm nhân
Tiêu chuẩn đầu tiên để chọn một hàm nhân K là phải tồn tại để K(x,y) = tức K phải thoả điều kiện Mercer.
Giả sử cĩ l điểm mẫu, thành lập một ma trận K kích thước l × l như sau: Kij =
K(xi,xj); i,j = 1, 2,…,l. Người ta đã chứng minh rằng nếu K là hàm nhân thì ma trận
K là ma trận nửa xác định dương (semipositive define, các trị riêng của ma trận ≥
0).
Một số đặc tính của hàm nhân là:
Nếu K1(x,y), K2(x,y) là các hàm nhân thì K3(x,y) cũng là hàm nhân với:
● ● ●
Từ các cơng thức trên ta cĩ thể suy ra một số hàm nhân như sau:
i)Hàm đa thức:
Chiều của khơng gian đặc trưng ứng với nhân này là . Nhân này cĩ thể chuyển tất cả các mặt cong bậc p trong khơng gian Rn thành siêu phẳng trong
Luận văn tốt nghiệp Nghiên cứu giải thuật NB trong bài tốn TC
Trang 45
ii) Hàm bán kinh căn bản Gaussian RBF (Radial Basis Function)
Chiều của khơng gian đặc trưng ứng với nhân này là ∞. Do đĩ nĩ cĩ thể
chuyển một mặt cong bất kỳ trong khơng gian Rn thành siêu phẳng trong khơng
gian đặc trưng.
Hình 14. Chuyển thành siêu phẳng với hàm Gaussian RBF
Ngồi ra hàm nhân này cĩ một đặc điểm là x và y khơng liên hệ với nhau qua
tích vơ hướng mà là theo khoảng các Euclid ||x - y||2.
3.4.3.SVM cho vấn đề nhận dạng đa lớp
Trong các phần trên đã đề cập đến vấn đề sử dụng phương pháp SVM để nhận dạng 2 lớp, yi = {-1, 1}. Phương pháp SVM chỉ được xây dựng trên nền tảng nhận dạng hai lớp, bắt đầu từ lý thuyết học thống kê. Khi thực hiện nhận dạng đa lớp, cĩ thể khắc phục bằng các kết hợp nhiều SVM lại với nhau qua một số phương pháp như sau:
a)One-vs-rest
Giả sử cần phải nhận dạng k lớp thì cần sử dụng k SVM. SVM thứ i sẽ phân biệt lớp thứ I và các lớp cịn lại (i là lớp -1, cịn lại là lớp 1). Một mẫu thứ x sẽ được cho kiểm tra trên k SVM này. Hàm nhận dạng của SVM thứ I nào cho ra kết quả cĩ giá trị bé nhất thì mẫu thứ x thuộc lớp thứ i đĩ. Sau đây là ví dụ về nhận dạng bốn lớp trong khơng gian Rd:
Luận văn tốt nghiệp Nghiên cứu giải thuật NB trong bài tốn TC
Trang 46
Hình 15. One-vs-rest với 4 lớp
b)One-vs-one
Phương pháp one-vs-one do John Platt và Nello Cristianini đưa ra. Trong phương pháp này, các lớp khơng phải là kết quả nhận dạng được loại trừ dần dần.
Ứng với mỗi cặp lớn i, j, một SVM(i, j) được thiết lập chỉ dựa trên những mẫu của 02 lớp này (i là lớp -1, j là lớp +1). Đặc điểm của SVM này là nếu một mẫu thử cĩ kết quả âm thì nĩ khơng kết luận mẫu này thuộc lớp i mà nĩ chỉ kết luận mẫu này khơng thuộc lớp j và ngược lại. Cĩ k(k-1)/2 SVM như vậy.
Luận văn tốt nghiệp Nghiên cứu giải thuật NB trong bài tốn TC
Trang 47
Hình 16. Các phân loại với SVM (1,4)
Khi bắt đầu nhận dạng, SVM(1,2) sẽ được xem xét để cần phải loại trừ lớp 1 hay loại trừ lớp 2. Nếu là loại lớp 2 thì SVM(1, 3) sẽ được xem xét tiếp, cịn ngược lại thì SVM(2, 3) sẽ được xem xét. Cứ loại trừ dần như vậy cho đến khi chỉ cịn lại một lớp cuối cùng thì lớp đĩ là kết quả nhận dạng
Hình 17. One-vs-one với 4 lớp
Cĩ thể thấy rằng việc nhận dạng một mẫu khơng cần phải trải qua hết k(k-1)/2 SVM mà chỉ cần trải qua k - 1 SVM mà thơi. Do đĩ số lượng các giá trị các nhân
K(x,y) cần phải tính chỉ là (k – 1)×MS với MS là số lượng support vector trung bình của một SVM hai lớp i, j. Vì MS nhỏ hơn nhiều so với NS nên thời gian nhận dạng sẽ được giảm bớt so với phương pháp one-vs-rest.
3.5. KỸ THUẬT THỰC HIỆN SVM
Như phần trước đã nêu các vấn đề của phương pháp SVM:
●Xác định một hàm nhân K(x, y) thỏa mãn điều kiện Mercer. Qua đĩ ngầm
xác định khơng gian đặc trưng để ánh xạ các mẫu vào.
●Trong giai đoạn huấn luyện, giải bài tốn đối ngẫu:
Tìm max của
Luận văn tốt nghiệp Nghiên cứu giải thuật NB trong bài tốn TC
Trang 48
Để tìm ra các ui từ đĩ tìm ra b. Đây là một bài tốn tối ưu bậc hai QP (Quadratic Programming).
●Trong giai đoạn nhận dạng, tìm phân lớp của một mẫu bằng các kiểm tra
dấu của hàm:
Như vậy vấn đề cơ bản trong giai đoạn huấn luyện là ở giải bài tốn QP để tìm max của F(u). Để tìm max F(u), phương pháp cơ bản là phương pháp giảm đạo hàm. Xuất phát từ một u0 nào đĩ trong miền xác định, ở mỗi bước t thay ut bằng
ut+1 theo chiều giảm đạo hàm của F(u) để cĩ F(ut+1) > F(ut) trong khi ut vẫn nằm trong miền xác định. Sau một số bước lặp hữu hạn sẽ chọn được ut sao cho F(ut) cĩ giá trị lớn nhất. Vì bài tốn SVM là bài tốn lồi, F(u) và miền xác định đều lồi, nên bảo đảm đây là nghiệm của bài tốn. Cĩ một số tiêu chuẩn xấp xỉ để dừng việc lặp
(điều kiện dừng) là:
●F(ut+1) khơng tăng quá F(ut) một tỉ lệ ngưỡng nào đĩ. Đây là một điều kiện dễ thấy, tuy nhiên khơng đạt hiệu quả cao trong thực tế.
●ut thoả điều kiện Karush-Kuhn-Tucker. Chương 3 đã nĩi rằng nếu một
điểm thoả điều kiện KKT thì đĩ là cực trị. Đối với bài tốn trên các điều kiện KKT là như sau: ◦Đối với bài tốn gốc: i = 1, 2,…,l i = 1, 2,…,l i = 1, 2,…,l i = 1, 2,…,l ◦Đối với bài tốn đối ngẫu: i = 1, 2,…,l i = 1, 2,…,l i = 1, 2,…,l i = 1, 2,…,l Trong điều kiện f là hàm nhận dạng: f(x) =
Luận văn tốt nghiệp Nghiên cứu giải thuật NB trong bài tốn TC
Trang 49 Dựa trên các điều kiện trên suy ra được:
◦Nếu : (mẫu khơng phải support vector)
◦Nếu (mẫu là support vector)
◦Nếu ui = C: (mẫu là lỗi)
Do đĩ nếu một xi mà ứng với một ui nào đĩ mà thoả mãn điều kiện KKT thì cũng thoả mãn điều kiện. Và ngược lại nếu vi phạm điều kiện thì cũng là vi phạm điều kiện KKT.
Do đĩ với một vector ut, nếu tất cả các thành phần của nĩ thoả điều kiện theo một ngưỡng nào đĩ thì xem như là một điều kiện dừng.
●Khi khoảng cách đối ngẫu giữa bài tốn gốc và bài tốn đối ngẫu nhỏ hơn
một ngưỡng nào đĩ (theo chương 3 giá trị của bài tốn gốc và giá trị của
bài tốn đối ngẫu bằng nhau tại điểm cực trị nên khoảng các đối ngẫu bằng 0).
Trở lại phương pháp giảm đạo hàm, đứng về phương diện tính tốn việc tính
đạo hàm của F(u) gặp phải một số khĩ khăn như sau: Đạo hàm riêng phần theo chiều i là:
Việc tính tốn hết tất cả các chiều (cĩ l chiều như vậy) địi hỏi phải tốn rất nhiều phép tính và bộ nhớ (cĩ l giá trị ). Để giải quyết vấn đề trên, các nhà nghiên cứu đã đề xuất các phương án hueristic để tại mỗi bước lặp chỉ cần cập nhật một số chiều của vector u mà thơi chứ khơng phải thay đổi giá trị của tất cả l chiều.
Đĩ là các phương pháp gom cụm, phân rã, và cực tiểu tuần tự.
3.5.1.Gom cụm (Chunking)
Phương pháp này sử dụng tính thưa của các mẫu là support vector. Mặc dầu tập mẫu ban đầu cĩ thể cĩ số lượng lớn (l lớn), tuy nhiên số lượng support vector lại khơng nhiều. Các vector ứng với ui = 0 cĩ thể được bỏ đi mà khơng làm ảnh
hướng đến kết quả của bài tốn. Đĩ là cơ sở của phương pháp gom cụm.
Đầu tiên, chọn trong l dữ liệu mẫu một số lượng nhỏ m mẫu bất kỳ (m<<l) để
tạo thành một cụm (chunk). Áp dụng các SVM cho m mẫu dữ liệu này để chọn ra các support vector và huỷ đi các mẫu dữ liệu khơng phải là support vector, tức ứng với ui = 0. Tại bước tiếp theo chọn M mẫu trong những mẫu chưa được sử dụng để
thêm vào cụm các support vector trên để tạo thành một cụm mới. Thao tác được lặp lại với cụm mới và cứ như vậy cho đến khi sử dụng hết l mẫu dữ liệu, và cụm cuối cùng chứa tồn bộ các support vector của bài tốn.
Luận văn tốt nghiệp Nghiên cứu giải thuật NB trong bài tốn TC
Trang 50
Cĩ thể thấy rằng việc hình thành nên cụm giúp cho mỗi bước áp dụng SVM chỉ cần tính các giá trị nhân K(xi,xj) cĩ trong cụm. Việc huỷ bỏ các dữ liệu khơng phải là support vector giúp duy trì số lượng các mẫu trong cụm ít.
Hình 18. Quá trình gom cụm để xây dựng siêu phẳng
3.5.2.Phân rã (Decomposition)
Kỹ thuật phân rã này do Osuna đề xuất [9]. Trong phương pháp giảm đạo hàm, tại một bước lặp, cập nhật cả l thành phần của vector u. Cịn trong kỹ thuật của Osuna, tại mỗi bước lặp, chỉ cĩ một số cố định các thành phần ui là được cập nhật cịn các thành phần khác được giữ khơng đổi:
Chia vector u làm hai phần uB gồm q thành phần (q là một hằng số) và uN là l –
q thành phần cịn lại. Tại mỗi bước chỉ áp SVM cho q mẫu tương ứng với uB để thay đổi giá trị của ui trong uB. Cịn các mẫu tương ứng với uN thì khơng xét đến do