Lý thuyết về máy vector hỗ trợ

Một phần của tài liệu Ứng dụng máy vector hỗ trợ phân loại công văn theo lĩnh vực (Trang 24 - 29)

CHƯƠNG 1. CƠ SỞ LÝ THUYẾT

1.5. Máy vector hỗ trợ (SVM)

1.5.1. Lý thuyết về máy vector hỗ trợ

Là mọ t phƣo ng pháp dựa tre n nền tảng co bản của lý thuyết thống ke với hẹ thống toán học chạ t chẽ, SVM đƣợc đảm bảo rằng kết quả tìm đƣợc là chính xác.

Là thuạ t toán học có giám sát đƣợc sử dụng cho bài toán pha n lớp dữ liẹ u đa chiều.

Là phƣo ng pháp mạnh và chính xác nhất trong số các hẹ thống học thuạ t đƣợc đƣa ra cho bài toán pha n lớp dữ liẹ u.

Với tính tổng quát cao, SVM là phƣo ng pháp đƣợc áp dụng cho nhiều bài toán nhạ n dạng và pha n loại đối tƣợng.

1.5.1.1. Tổng quan về máy vector hỗ trợ

SVM [18] (viết tắt Tiếng Anh của Support Vector Machine) đƣợc biết đến là mọ t công cụ mạnh mẽ trong những bài toán pha n lớp phi tuyến tính đƣợc các tác giả Vapnik và Chervonenkis đề xuất vào na m 1995. Theo đó, SVM là mọ t khái niẹ m trong thống ke và khoa học máy tính cho mọ t tạ p các phƣo ng pháp học có giám sát để pha n lớp và pha n tích hồi quy. Về co bản, SVM sử dụng tạ p dữ liẹ u huấn luyẹ n đầu vào, từ đó pha n loại dữ liẹ u cần pha n lớp thành hai lớp khác nhau. Nói cách khác, SVM là mọ t thuạ t toán pha n loại nhị pha n, cũng giống nhƣ rất nhiều hẹ thống học máy khác đã có. Với mọ t bọ dữ liẹ u đã được huấn luyẹ n trước đó, thuạ t toán thực hiẹ n xa y dựng mọ t mô hình SVM nhằm pha n loại dữ liẹ u đầu đã đƣa vào học, từ đó đƣa chúng vào hai lớp đã được chỉ ra trước đó. Về mạ t không gian, SVM biểu diễn các dữ liẹ u cần

phần lớp thành các điểm trong không gian, từ đó lựa chọn ra mọ t sie u phẳng sử dụng để pha n lớp giữa hai tạ p hợp điểm, sao cho khoảng cách giữa các điểm và mạ t phẳng đã xác định là lớn nhất có thể. Điều này đảm bảo ta ng cường đọ chính xác trong quá trình pha n lớp, cũng nhƣ giảm thiểu xác suất pha n loại dữ liẹ u sai do nhiễu ga y ra. Các dữ liẹ u mới được đưa vào được SVM dự đoán trước thuọ c mọ t trong hai lớp dữ liẹ u đã được huấn luyẹ n trước đó.

Về mạ t học thuạ t, mọ t hẹ thống máy vector hỗ trợ xa y dựng mọ t hoạ c mọ t tạ p hợp các sie u phẳng trong không gian mọ t hoạ c vô hạn chiều, có thể đƣợc sử dụng cho ứng dụng pha n loại, hồi quy hoạ c các nhiẹ m vụ cụ thể khác. Mọ t cách trực giác, để pha n loại tốt nhất các điểm trong không gian, khoảng cách từ sie u phẳng tới các điểm dữ liẹ u của tất cả các lớp càng xa càng tốt, hay còn gọi là khoảng cách lề càng lớn thì sai số tổng quát hóa của thuạ t toán càng bé.

Trong mọ t vài trường hợp cụ thể, tạ p hợp dữ liẹ u ban đầu không thể được pha n chia mọ t cách tuyến tính trong không gian đã có đƣợc dùng để mô tả vấn đề cụ thể. Do đó, người ta sử dụng phép ánh xạ nhằm đưa các điểm dữ liẹ u thuọ c hẹ không gian bài toán ban đầu vào mọ t hẹ không gian mới, trong đó viẹ c pha n tách đƣợc tiến hành mọ t cách hiẹ u quả và dễ dàng ho n. Nhằm ta ng tính hiẹ u quả của quá trình tính toán, tích vô hướng của các vecto dữ liẹ u trong không gian mới cần thiết được tính toán mọ t cách dễ dàng từ tọa đọ miền không gian cũ đang có. Tích vô hướng này được tính toán bằng cách sử dụng mọ t hàm nha n ( ). Mọ t sie u phẳng trong không gian mới đƣợc định nghĩa bằng tạ p hợp các điểm có tích vô hướng với mọ t vecto cố định trong không gian là mọ t hằng số. Tổ hợp tuyến tính cả các vecto dữ liẹ u đƣợc huấn luyẹ n trong không gian mới với các hẹ số đƣợc gọi là vecto sie u phẳng sử dụng SVM. Với sie u phẳng đã đƣợc lựa chọn, các điểm x trong không gian đạ c trƣng đƣợc ánh xạ vào mọ t sie u phẳng là các điểm cần phải thỏa mãn:

( )

Trong công thức này, nếu hàm ( ) nhạ n mọ t giá trị càng nhỏ khi xa dần khỏi thì mỗi số hạng của biểu thức tre n đƣợc dùng để đo đọ tƣo ng ứng giữa với điểm trong dữ liẹ u đã đƣợc huấn luyẹ n

1.5.1.2. Cơ sở lý thuyết

SVM về bản chất là mọ t bài toán tối ƣu với mục tie u tìm mọ t không gian và sie u gẳng nằm tre n sao cho sai số pha n loại đƣợc cực tiểu hóa.

Với tập mẫu *( ) ( ) ( )+ với , thuộc vào hai lớp nhãn: * + là nhãn lớp tương ứng của các ( biểu thị lớp , biểu thị lớp ).

Ta có, phương trình siêu phẳng chứa vectơ Xi trong không gian:

( ) ( ) {

Nhƣ vậy, ( ) biểu diễn sự phân lớp của vào hai lớp nhƣ đã nêu. Ta nói nếu và nếu . Khi đó, để có siêu phẳng ta sẽ phải giải bài toán sau: tìm || ||với thỏa mãn điều kiện sau:

( ( )) với .

Bài toán SVM có thể giải bằng kỷ thuạ t sử dụng toán tử Lagrange để biến đổi về thành dạng đẳng thức. Mọ t đạ c điểm thú vị của SVM là mạ t phẳng quyết định chỉ phụ thuọ c các Support Vector và nó có khoảng cách đến mạ t phẳng quyết định là || ||

Cho dù 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. Đa y chính là điểm nổi bạ t của phƣo ng pháp SVM so với các phƣo ng pháp khác vì tất cả các dữ liẹ u trong tạ p huấn luyẹ n đều đƣợc đùng để tối ƣu hóa kết quả.

Tóm lại, trong trường hợp nhị pha n pha n tách tuyến tính, viẹ c pha n lớp được thực hiẹ n qua hàm quyết định ( ) ( ) hàm này thu đƣợc bằng viẹ c thay đổi vector chuẩn , đa y là vector để cực đại hóa viền chức na ng. Viẹ c mở rọ ng SVM để pha n đa lớp hiẹ n nay vẫn đang đƣợc đầu tƣ nghie n cứu. Có mọ t phƣo ng pháp tiếp cạ n để giải quyết vấn để này là xa y dựng và kết hợp nhiều bọ pha n lớp nhị pha n SVM (Chẳng hạn: trong quá trình luyẹ n với SVM, bài toán pha n m lớp có thể đƣợc biến đổi thành bài toán pha n lớp, khi đó trong mỗi hai lớp, hàm quyết định sẽ đƣợc xác định cho khả na ng tổng quát hóa tối đa). Trong phƣo ng pháp này có thể đề cạ p tới hai cách là mọt-đ i-mọt, mọt-đ i-t t c .

1.5.1.3. Bài toán phân lớp nhị phân với SVM

Bài toán đạ t ra là: Xác định hàm pha n lớp để pha n lớp các mẫu trong tương lai, nghĩa là với mọ t mẫu dữ liẹ u mới xi thì cần phải xác định xi đƣợc pha n vào lớp hay lớp .

Để xác định hàm pha n lớp dựa tre n phƣo ng pháp SVM, ta sẽ tiến hành tìm hai sie u phẳng song song sao cho khoảng cách y giữa chúng là lớn nhất có thể để pha n tách hai lớp này ra làm hai phía. Hàm pha n tách tƣo ng ứng với phƣo ng trình sie u phẳng nằm giữa hai sie u phẳng tìm đƣợc:

Trong đó

Các điểm có nhãn Các điểm có nhãn

và Các điểm tương ứng với Suport Vector.

Hình 1.6: Mô h nh ài toán pha n l p nhị pha n sử ng V

Các điểm mà nằm tre n hai sie u phẳng pha n tách đƣợc gọi là các Support Vector.

Các điểm này sẽ quyết định đến hàm pha n tách dữ liẹ u.

1.5.1.4. Bài toán phân nhiều lớp với SVM

Để pha n nhiều lớp thì kỷ thuạ t SVM nguye n thủy sẽ chia không gian dữ liẹ u thành hai phần và quá trình này lạ p lại nhiều lần. Khi đó hàm quyết định pha n lớp dữ liẹ u sẽ là:

( ) Những phần tử là support vector sẽ thỏa điều kiẹ n

( ) {

Nhƣ vạ y, bài toán pha n nhiều lớp sử dụng SVM có thể hiểu và biến đổi thành bài toán pha n hai lớp nếu ta coi mọ t lớp là mọ t tạ p dữ liẹ u cần tìm còn lớp còn lại là tất cả các tạ p dữ liẹ u còn lại.

Đối với SVM trong bài toán pha n nhiều lớp chủ yếu sử dụng hai chiến lƣợc:

- Mọ t với tất cả ( ): mỗi mô hình pha n lớp sẽ pha n tách mọ t lớp từ các lớp khác. Do vạ y nếu có k lớp sẽ có k mô hình tƣo ng ứng.

- Mọ t với mọ t ( ): mỗi mô hình pha n tách thành hai lớp. Với lớp sẽ có ( ) mô hình

1.5.1.5. Các bước chính của SVM

Thuạ t toán SVM ye u cầu dữ liẹ u đƣợc diễn tả nhƣ các vector của các số thực. Nhƣ vạ y nếu đầu vào chƣa phải là số thì ta cần phải tìm cách chuyển chúng về dạng số của SVM.

Tiền xử lý dữ liẹ u: Thực hiẹ n biến đổi dữ liẹ u phù hợp cho quá trình tính toán, tránh các số quá lớn mô tả các thuọ c tính. Thường ne n co giãn (scaling) dữ liẹ u để chuyển về đoạn , - hoạ c , -

Chọn hàm nha n (Kernel function): Lựa chọn hàm nha n phù hợp tƣo ng ứng cho từng bài toán cụ thể để đạt đƣợc đọ chính xác cao trong quá trình pha n lớp. Có nhiều hàm nha n đƣợc sử dụng trong bài toán pha n lớp, cụ thể sẽ đề cạ p ở trong các phần tiếp theo.

Thực hiẹ n viẹ c kiểm tra chéo để xác định các tham số cho ứng đụng. Điều này cũng quyết định đến tính chính xác của quá trình pha n lớp.

Sử dụng các tham số cho viẹ c huấn luyẹ n với tạ p mẫu. Trong quá trình huấn luyẹ n sẽ sử dụng thuạ t toán tối ƣu hóa khoảng cách giữa các sie u phẳng trong quá trình pha n lớp, xác định hàm pha n lớp trong không gian đạ c trƣng nhờ viẹ c ánh xạ dữ liẹ u vào không gian đạ c trưng bằng cách mô tả hạt nha n, giải quyết cho cả hai trường hợp dữ liẹ u là pha n tách và không pha n tách tuyến tính trong không gian đạ c trƣng.

Kiểm thử tạ p dữ liẹ u huấn luyẹ n 1.5.1.6. So sánh và một số cải tiến

Mọ t số phưo ng pháp đã được nghie n cứu phát triển trước đó như mạng no - ron, mạng no ron mờ, logic mờ ... cũng đƣợc sử dụng khá thành công trong viẹ c giải quyết bài toán pha n lớp. Ƣu điểm chính của các phƣo ng pháp này là không cần xác định chính xác mô hình toán đối của đối tƣợng cần pha n lớp (đối với các hẹ thống lớp và phức tạp).

Về co bản, SVM có hai đạ c trƣng co bản:

- Luôn kết hợp với các dữ liẹ u có ý nghĩa lớp về mạ t vạ t lý, do đó có thể giải thích mọ t cách tường minh.

- Không cần thiết phải sử dụng bọ dữ liẹ u huấn luyẹ n lớn, tuy nhie n bất kì phƣo ng pháp nào có bọ dữ liẹ u huấn luyẹ n đủ lớn cũng đều cho kết quả tối ƣu.

Phƣo ng pháp SVM hiẹ n nay đã và đang đƣợc xem là mọ t công cụ tƣo ng đối mạnh và có tính hiẹ u quả nhất hiẹ n nay cho những bài toán pha n lớp phi tuyến. Mọ t số biến thể nhƣ S-SVC, V-SVC. Cải tiến mới nhất hiẹ n nay của SVM đã đƣợc công bố là thuạ t toán NNSRM vốn dĩ là sự kết hợp giữa SVM và K-láng giềng gần.

1.5.1.7. Một số ứng dụng của SVM

SVM và các biến thể cải tiến hiẹ n nay có rất nhiều ứng dụng thực tiễn vào giải quyết các vấn đề thực tế. Chủ yếu SVM sử dụng trong bài toán pha n hai lớp. Mọ t số ứng dụng nổi bạ t có thể kể đến nhƣ:

- Chuẩn đoán virus máy tính: với mọ t tạ p hợp các đối tƣợng cần chuẩn đoán trong không gian . Đối tƣợng sẽ đƣợc pha n thành lớp : nhiễm virus hoạ c lớp : không nhiễm virus.

- Bài toán nhạ n dạng: Nhạ n dạng biển báo, nhạ n dạng khuôn mạ t trong hình ảnh, video, nhạ n giạng giới tính, nhạ n dạng giọng nói với tỉ lẹ chính xác cao ho n mạng no ron

- Pha n loại và khai phá dữ liẹ u : Pha n loại va n bản, lọc email spam.

- Sử dụng trong y tế: Pha n tích dữ liẹ u gen, chẩn đoán bẹ nh, bào chế thuốc Ngoài ra, sử dụng SVM pha n đa lớp sử dụng trong nhạ n dạng cử chỉ tay, mạ t và nhạ n dạng biểu cảm khuôn mạ t, nhạ n dạng chữ viết tay.

Hình 1.7: ng ng V ài toán nh n ng và pha n l p [19]

Một phần của tài liệu Ứng dụng máy vector hỗ trợ phân loại công văn theo lĩnh vực (Trang 24 - 29)

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

(80 trang)