Support Vector Machine (SVM)

Một phần của tài liệu Phân cụm và xếp hạng văn bản (Trang 42 - 45)

CHƯƠNG 2. PHƯƠNG PHÁP PHÂN CỤM VÀ XẾP HẠNG VĂN BẢN

2.2. LỰA CHỌN GIẢI PHÁP PHÂN CỤM VÀ XẾP HẠNG

2.2.1. Support Vector Machine (SVM)

SVM là phương pháp tiếp cận phân loại rất hiệu quả được Vapnik giới thiệu năm 1995 để giải quyết vấn đề nhận dạng mẫu 2 lớp sử dụng nguyên lý Cực tiểu hóa Rủi ro có Cấu trúc (Structural Risk Minimization).

Khoảng cách từ một điểm tới một siêu mặt phẳng:

Trong không gian 2 chiều, ta biết rằng khoảng cách từ một điểm có toạ độ (x0, y0) tới đường thẳng có phương trình w1x + w2y + b = 0 được xác định bởi:

Trong không gian 3 chiều, khoảng cách từ một điểm có toạ độ (x0, y0, z0) tới đường thẳng có phương trình w1x + w2y + w3 + b = 0 được xác định bởi:

Hơn nữa, nếu ta bỏ dấu trị tuyệt đối ở tử số, chúng ta có thể xác định đƣợc điểm đó nằm về phía nào của đường thẳng hay mặt phẳng đang xét. Những điểm làm cho biểu thức trong dấu giá trị tuyệt đối mang dấu dương nằm về cùng 1 phía, những điểm làm cho biểu thức trong dấu giá trị tuyệt đối mang dấu âm nằm về phía còn lại. Những điểm nằm trên đường thẳng/măt phẳng sẽ làm cho tử số có giá trị bằng 0, tức khoảng cách bằng 0.

Việc này có thể đƣợc tổng quát lên không gian nhiều chiều: Khoảng cách từ một điểm (vector) có toạ độ x0 tới siêu mặt phẳng (hyperplane) có phương trình wTx + b = 0 đƣợc xác định bởi:

Với với d là số chiều của không gian.

Ý tưởng: Cho trước một tập huấn luyện được biểu diễn trong không gian vector trong đó mỗi tài liệu là một điểm, phương pháp này tìm ra một siêu mặt phẳng h quyết định tốt nhất có thể chia các điểm trên không gian này thành hai lớp riêng biệt tương ứng lớp + và lớp –. Chất lượng của siêu mặt phẳng này được quyết định bởi khoảng cách (gọi là biên) của điểm dữ liệu gần nhất của mỗi lớp đến mặt phẳng này.

Khoảng cách biên càng lớn thì mặt phẳng quyết định càng tốt đồng thời việc phân loại càng chính xác. Mục đích thuật toán SVM tìm đƣợc khoảng cách biên lớn nhất. Hình sau minh họa cho thuật toán này :

Hình 2.1. Siêu mặt phẳng h phân chia dữ liệu huấn huyện thành 2 lớp + và – với khoảng cách biên lớn nhất. Các điểm gần h nhất là các vector hỗ trợ,

Support Vector (được khoanh tròn)

Công thức chính

SVM thực chất là một bài toán tối ƣu, mục tiêu của thuật toán này là tìm đƣợc một không gian H và siêu mặt phẳng quyết định h trên H sao cho sai số phân loại là thấp nhất Phương trình siêu mặt phẳng chứa vector i trong không gian như sau :

Nhƣ thế h( i) h di biểu diễn sự phân lớp của i vào hai lớp nhƣ đã nói. Gọi yi

={±1}, yi = + 1, văn bản i lớp +; yi = - 1, văn bản i lớp -. Khi này để có siêu mặt phẳng h ta sẽ phải giải bài toán sau :

Bài toán SVM có thể giải bằng kỹ thuật sử dụng toán tử Lagrange để biến đổi thành dạng đẳng thức. Điểm thú vị ở SVM là mặt phẳng quyết định chỉ phụ thuộc vào các vector hỗ trợ (Support Vector) có khoảng cách đến mặt phẳng quyết định là .Khi các điểm khác bị xóa đi thì thuật toán vẫn cho kết quả giống nhƣ ban đầu. Chính đặc điểm này làm cho SVM khác với các thuật toán khác nhƣ kNN,LLSF, NNet và NB vì tất cả dữ liệu trong tập huấn luyện đều đƣợc dùng để tối ƣu hóa kết quả.

2.2.2. Phương pháp K-Neaest Neighbor (KNN)

K-nearest neighbor là một trong những thuật toán học có giám sát (supervised- learning) điển hình nhất trong Machine Learning. KNN là phương pháp truyền thống khá nổi tiếng theo hướng tiếp cận thống kê đã được nghiên cứu trong nhiều năm qua.

KNN được đánh giá là một trong những phương pháp tốt nhất được sử dụng từ những thời kỳ đầu trong nghiên cứu về phân loại văn bản.

Ý tưởng của phương pháp này đó là khi cần phân loại một văn bản mới, thuật toán sẽ xác định khoảng cách (có thể áp dụng các công thức về khoảng cách nhƣ Euclide, Cosine, Manhattan, …) của tất cả các văn bản trong tập huấn luyện đến văn bản này để tìm ra k văn bản gần nhất, gọi là K-nearest neighbor – K láng giềng gần nhất. Sau đó dùng các khoảng cách này đánh trọng số cho tất cả các chủ đề. Khi đó, trọng số của một chủ đề chính là tổng tất cả các khoảng cách ở trên của các văn bản

trong k láng giềng có cùng chủ đề, chủ đề nào không xuất hiện trong k láng giềng sẽ có trọng số bằng 0. Tiếp theo, các chủ đề sẽ đƣợc sắp xếp theo giá trị trọng số giảm dần và các chủ đề có trọng số cao sẽ đƣợc chọn làm chủ đề của văn bản cần phân loại.

Trọng số của chủ đề cj đối với văn bản x đƣợc tính nhƣ sau :

Trong đó : y (di, c) thuộc {0,1}, với: y = 0: văn bản di không thuộc về chủ đề cj y = 1: văn bản di thuộc về chủ đề cj sim (x, d): độ giống nhau giữa văn bản cần phân loại x và văn bản d. Chúng ta có thể sử dụng độ đo cosine để tính khoảng cách:

bj là ngƣỡng phân loại của chủ đề cj đƣợc tự động học sử dụng một tập văn bản hợp lệ đƣợc chọn ra từ tập huấn luyện. Để chọn đƣợc tham số k tốt nhất cho thao tác phân loại, thuật toán cần đƣợc chạy thử nghiệm trên nhiều giá trị k khác nhau, giá trị k càng lớn thì thuật toán càng ổn định và sai sót càng thấp.

Một phần của tài liệu Phân cụm và xếp hạng văn bản (Trang 42 - 45)

Tải bản đầy đủ (PDF)

(77 trang)