Kỹ thuật SVM (Suport Vector Machine)

Một phần của tài liệu Nhận dạng cử chỉ bàn tay ứng dụng trong điều khiển thiết bị điện gia dụng (Trang 25 - 31)

SVM là phƣơng pháp phân loại tự động tƣơng đối mới do Vapnik[6] đƣa ra vào năm 1995. Nhiều thử nghiệm với các ứng dụng khác nhau cho thấy SVM là một trong những phƣơng pháp phân loại có độ chính xác cao và là một phƣơng pháp tƣơng đối tổng quát cho bài toán nhận dạng. SVM đƣợc xây dựng trên cơ sở hai ý tƣởng chính :

Ý tƣởng thứ nhất : ánh xạ dữ liệu gốc sang một không gian mới gọi là không gian đặc trƣng với số chiều lớn hơn sao cho trong không gian mới có thể xây dựng một siêu phẳng cho phép phân chia dữ liệu thành hai phần riêng biệt, mỗi phần bao gồm các điểm có cùng nhãn phân loại. Ý tƣởng ánh xạ sang không gian đặc trƣng đƣợc minh hoạ trên hình 3.1.

Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/

Hình 2. 2 - Ánh xạ dữ liệu từ không gian gốc sang không gian đặc trưng cho phép phân chia dữ liệu bởi siêu phẳng

Ý tƣởng thứ hai : trong số những siêu phẳng nhƣ vậy cần lựa chọn siêu phẳng có lề lớn nhất. Lề ở đây là khoảng cách từ siêu phẳng tới các điểm gần nhất nằm ở hai phía của siêu phẳng (mỗi phía tƣơng ứng với một nhãn phân loại). Lƣu ý rằng siêu phẳng nằm cách đều các điểm gần nhất với nhãn khác nhau. Trên hình 2.11. là minh hoạ siêu phẳng (đƣờng liền nét) với lề cực đại tới các điểm dữ liệu biểu diễn bởi các hình tròn và hình vuông.

Ban đầu, SVM đƣợc thiết kế cho bài toán phân lớp nhị phân, hàm mục tiêu của bài toán SVM phân lớp nhị phân có thể đƣợc phát biểu nhƣ sau :

(1) Trong đó :

- Véc tơ đầu vào .

- là véc tơ chuẩn của siêu phẳng phân cách trong không gian đặc trƣng đƣợc sinh ra từ ánh xạ : ( , có thể tuyến tính hoặc phi tuyến).

- là độ lệch so với gốc tọa độ.

Trong bài toán phân lớp nhị phân, dấu của g(x) cho biết véc tơ x thuộc lớp +1 hay lớp -1. Bài toán phân lớp nhị phân đƣợc mô tả nhƣ sau :

Cho tập mẫu : , ,…, , )}

Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/

Trong đó : và

Mục tiêu của phƣơng pháp phân lớp SVM là tìm một siêu phẳng phân cách sao cho khoảng cách lề (margin) giữa hai lớp đạt cực đại (Hình 2.11).

Hình 2. 3 - Siêu phẳng tách với khoảng cách lề cực đại

Khoảng cách lề giữa hai lớp đƣợc tính theo công thức :

Để nới lỏng điều kiện phân lớp, thêm vào một số yếu tố cân bằng và việc huấn luyện SVM chính là giải bài toán tối ƣu có ràng buộc :

(2) Sao cho :

Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/

Thay vì giải bài toán (2), ta giải bài toán đối ngẫu của nó bằng cách giải bài toán qui hoạch toàn phƣơng (QP-Quadratic programming) :

(3) Thỏa mãn :

Trong đó và H là ma trận kích thƣớc N×N đƣợc gọi là ma trận nhân (kernel matrix) với mỗi phần tử . Giải bài toán (3) ta thu đƣợc :

(4)

Mỗi mẫu huấn luyện tƣơng ứng với một hệ số Lagrange . Sau khi huấn luyện, các mẫu có đƣợc gọi là véctơ hỗ trợ.

Thế (4) vào (1), ta có :

Giả sử . Nghĩa là, tích vô hƣớng trong không gian đặc trƣng tƣơng đƣơng với một hàm nhân K của không gian đầu vào. Vì vậy, ta không cần phải tính trực tiếp các giá trị , mà chỉ cần tính tích vô hƣớng gián tiếp thông qua hàm nhân . Nếu sử dụng hàm nhân

Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/

là hàm tuyến tính thì SVM đƣợc gọi là SVM tuyến tính, ngƣợc lại thì gọi là SVM phi tuyến. Nhƣ vậy, hàm mục tiêu cho bài toán phân lớp SVM nhị phân có dạng :

Chỉ có các véc tơ hỗ trợ tham gia vào việc xây dựng siêu phẳng phân cách, do đó một mẫu x sẽ đƣợc phân lớp theo hàm quyết định :

Trong đó, là số véc tơ hỗ trợ.

Support Vector Machine (SVM) đã đƣợc Osuna[7] áp dụng đầu tiên để xác định khuôn mặt ngƣời. SVM đƣợc xem nhƣ là một kiểu mới dùng huấn luyện để phân loại theo hàm đa thức. Trong khi hầu hết các phƣơng pháp khác huấn luyện để phân loại (Mạng Bayes, nơron, RBF) đều dùng tiêu chí tối thiểu lỗi huấn luyện, trong khi SVM dùng quy nạp, mục tiêu là làm tối thiểu lỗi tổng quát. Osuna[7]đã phát triển một phƣơng pháp hiệu quả để huấn luyện một SVM với tỷ lệ lớn để áp dụng cho bài toán xác định khuôn mặt ngƣời. Ông dùng 10,000,000 mẫu có kích thƣớc 19x19 điểm ảnh, hệ thống của ông có tỷ lệ lỗi ít hơn Sung và Poggio [8]. Llorca [9] cũng sử dụng SVM cho việc phát hiện tay ứng dụng trong hệ thống xả nƣớc tự động cho bồn rửa tay với tỉ lệ nhận dạng trên 90%.

Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/

Hình 2. 4 - Support Vectors

Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/

Một phần của tài liệu Nhận dạng cử chỉ bàn tay ứng dụng trong điều khiển thiết bị điện gia dụng (Trang 25 - 31)