SVM (Support Vector Machine) là một kỹ thuật học máy thích hợp cho cả phân loại và hồi quy. SVM xuất phát từ lý thuyết học thống kê, được phát triển bởi C. Cortes và V. Vapnik năm 1995 [30]. Mục đích của SVM là cung cấp một mơ hình để
dự đốn giá trị đích của các mẫu dữ liệu trong tập dữ liệu kiểm tra(test). SVM được xây dựng dựa trên khái niệm mặt phẳng quyết định hay đường biên quyết định. Một mặt phẳng quyết định sẽ phân tách một tập các đối tượng bao gồm nhiều phần tử thành các lớp khác nhau. Trong ví dụ Hình 6.1 các đối tượng sẽ thuộc hoặc lớp hình trịn, hoặc lớp hình vuơng. ðường thẳng phân chia các đối tượng hình vuơng nằm bên phải, hình trịn nằm bên trái gọi là đường quyết định.
Hình 6.1 - Phân lớp tuyến tính.
ðây là một ví dụđiển hình cho việc phân lớp tuyến tính, tức là đường phân lớp cĩ dạng đường thẳng. Tuy nhiên, phần lớn các bài tốn lại khơng đơn giản như vậy, cấu trúc tập đối tượng phức tạp hơn (Hình 6.2) dẫn đến đường phân lớp phức tạp hơn và rõ ràng rằng trong trường hợp này địi hỏi phải dùng đường cĩ nhiều đoạn cong để
phân lớp. Việc phân lớp bằng cách vẽ ra các đường phân chia tập đối tượng thành các lớp được hình dung như là các siêu phẳng phân lớp, khi đĩ SVM đặc biệt phù hợp cho việc giải quyết cơng việc này.
Hình 6.2 – Phân lớp phi tuyến tính.
Hình 6.3 diễn tả cho thấy ý tưởng của SVM. Phần bên trái là mơ tả sơ đồ tập các đối tượng ban đầu (phía bên trái - khơng gian đầu vào). Sử dụng một số các hàm tốn học, được biết như là các hàm nhân, để sắp xếp lại các đối tượng giống như phép ánh xạ hay cịn gọi là phép biến đổi. Trong tập đối tượng mới, các đối tượng (phía bên phải) cĩ thể được phân tách bằng phân lớp thẳng thay vì phải dùng phân lớp cong phức tạp (như phía bên trái). Phần cơng việc cịn lại chỉ là tìm ra đường thẳng tối ưu để
phân chia các đối tượng thành 2 lớp.
Hình 6.3 – Ý tưởng cho mơ hình SVM. Mơ tả tốn học của mơ hình SVM như sau:
Ban đầu một tập dữ liệu khơng thể phân lớp tuyến tính được, biểu diễn dưới dạng vector x trong khơng gian n
R , giả sử tìm được ánh xạ phi tuyến tínhφ từ khơng gian Rn vào khơng gian Rm, với m>n :
m n R R → : φ
Khi đĩ vector xi trong khơng gian Rn sẽ tương ứng với vector φ(xi) trong khơng gian m
R và điều cơ bản là trong khơng gian m
R này, tập các vector φ(xi) cĩ thể
phân lớp tuyến tính được.
Thay các giá trị của xi bởi φ(xi)trong khơng gian m
R ta được bài tốn OP2 (bài tốn đối ngẫu), các tích vơ hướng x .i xj sẽ được thay thế bởi φ(xi).φ(xj). Tuy nhiên
việc tính tốn trực tiếp φ(xi)là rất phức tạp, nhưng tích vơ hướng φ(xi).φ(xj) trong khơng gian m
R cĩ thể tính được nếu tìm được hàm nhân (Kernel) K(xi,xj): ) ( ). ( ) , (xi xj xi xj K =φ φ Việc xác định hàm nhân K cĩ một số điều kiện ràng buộc và việc lựa chọn nĩ như thế nào tất nhiên sẽảnh hưởng đến kết quả vector siêu phẳng thu được.