Giả sử rằng các cặp dữ liệu huấn luyện là , ,…, với véc tơ thể hiện đầu vào của một điểm dữ liệu và là nhãn của điểm dữ liệu đó; là số chiều của dữ liệu và N là số điểm dữ liệu. Giả sử
rằng nhãn của mỗi điểm dữ liệu đƣợc xác định bởi (lớp dƣơng) hoặc (lớp âm). SVM đi tìm một siêu phẳng (với không gian hai chiều thì mặt phẳng này là đƣờng phân tách) tối ƣu xác định bởi véc tơ pháp tuyến và độ lệch của siêu phẳng dựa trên hai siêu phẳng hỗ trợ của hai lớp.
Sau khi tìm đƣợc mặt phân cách , lớp của bất kỳ một điểm nào sẽ đƣợc xác định bằng cách: . Trong đó hàm là hàm xác định dấu, nhận giá trị 1 nếu đối số là không âm và -1 nếu ngƣợc lại.
Trong thực tế tập dữ liệu thƣờng nhiễu, phân bố chồng chéo lên nhau thì mặt phân tách tìm đƣợc sẽ khó, thậm chí là không tìm đƣợc mặt phân tách. Vấn đề đặt ra là làm sao triệt đƣợc các nhiễu này. Tức là tính toán bỏ qua đƣợc các nhiễu này khi huấn luyện. Siêu phẳng tối ƣu (nằm giữa hai siêu phẳng hỗ trợ) tìm đƣợc từ hai tiêu chí là cực đại hóa lề (lề càng lớn, mô hình phân lớp càng an toàn) và cực tiểu hóa lỗi. Điều này dẫn đến việc giải bài toán quy hoạch toàn phƣơng:
‖ ‖ ∑
Trong đó, là một hằng số dƣơng đƣợc dùng để điều chỉnh tầm quan trọng giữa lề và sự hy sinh. là biến lùi (slack variable) còn đƣợc gọi là biến đo sự hy sinh.
Hình 2. 3. Support Vector Machines - SVM
Nếu nhỏ, việc sự hy sinh cao hay thấp không gây ảnh hƣởng nhiều tới giá trị của hàm mục tiêu, thuật toán sẽ điều chỉnh sao cho ‖ ‖ là nhỏ nhất, tức lề là lớn nhất, điều này sẽ dẫn tới ∑ sẽ lớn theo. Ngƣợc lại, nếu quá lớn, để hàm mục tiêu đạt giá trị nhỏ nhất, thuật toán sẽ tập trung vào làm giảm ∑ . Trong trƣờng hợp rất rất lớn và hai lớp là phân tách tuyến tính, ta sẽ thu đƣợc ∑ (giá trị này không thể nhỏ hơn 0). Điều này đồng nghĩa với việc không có điểm nào phải hy sinh.
Những tƣơng ứng với những điểm dữ liệu nằm trong vùng an toàn. Những tƣơng ứng với những điểm nằm trong vùng không an toàn nhƣng vẫn đƣợc phân loại đúng, tức vẫn nằm về đúng phía so với đƣờng phân chia. Những tƣơng ứng với các điểm bị phân loại sai.
Bài toán tối ƣu cho SVM có hai cách tiếp cận khác nhau, cả hai đều có thể phát triển tiếp thành các thuật toán SVM phức tạp và hiệu quả hơn. Cách giải quyết thứ nhất là giải bài toán tối ƣu có ràng buộc bằng cách giải bài toán đối ngẫu, dựa vào bài toán đối ngẫu này là cơ sở cho phƣơng pháp Kernel SVM cho dữ liệu thực sự không phân tách tuyến tính. Cách thứ hai là đƣa về một bài toán tối ƣu không ràng buộc. Bài toán này có thể giải bằng các phƣơng pháp Gradient Descent (GD).