Ta biết rằng bài toán tối ưu tìm siêu phẳng có lề “mềm” lớn nhất là
với các ràng buộc
với bài toán đối ngẫu Lagrange:
với các ràng buộc
,
trong đó .
Cả hai bài toán gốc và đối ngẫu đều là bài toán tối ưu bậc 2 (Quadratic Programming). Cả 2 bài toán đều có thể giải bằng phương pháp điểm trong (interior-point methods). Trong đó, bài toán đối ngẫu có các ràng buộc đơn giản dạng hộp nên dễ cài đặt hơn. Tuy nhiên, khi số lượng mẫu học lớn, ma trận
cũng lớn theo bậc 2 của
. Vì vậy, ngay cả các phương pháp điểm trong cũng có thời gian chạy rất lâu (cỡ
). May mắn là trong trường hợp của SVM, ta có những phương pháp chuyên biệt, lợi dụng được cấu trúc của riêng bài toán tối ưu này để tăng tốc độ tối ưu hóa.
Thuật toán tối thiểu tuần tự (Sequential Minimal Optimization – SMO): Đây là thuật toán tối ưu dành riêng cho phương pháp SVM do J. Platt đưa ra vào năm 1998. Xem chi tiết bài báo của Platt ở đây. Ý tưởng chính của thuật toán này là:
- Thay vì khống chế tất cả các ràng buộc, ta cố định phần lớn các biến
và chỉ tối ưu hóa một cặp
nào đó.
- Giá trị tối ưu của cặp
có thể viết dưới dạng công thức (của dữ liệu và các biến
khác) chứ không cần chạy một thuật toán tối ưu nào cả.
- Lần lượt chọn các cặp
theo một tiêu chí (heuristics) nào đó để thuật toán nhanh chóng hội tụ về nghiệm tối ưu.
Cho đến nay, các ý tưởng của thuật toán SMO vẫn là các ý tưởng chính khi thiết kế và cài đặt các thuật toán học máy sử dụng véctơ hỗ trợ.




