Có nhiều phương pháp phân loại đã được nghiên cứu và được áp dụng. Hiện nay, phương pháp phân loại Support Vector Machines là một trong những phương pháp mạnh và hiệu quả để giải quyết các bài toán lớp phi tuyến được Vapnik và Chervonenkis giới thiệu vào năm 1995. Vì vậy, nhóm em chọn đề tài “Nghiên cứu thuật toán máy SVM”.
Nhận viết luận văn Đại học , thạc sĩ - Zalo: 0917.193.864
Tham khảo bảng giá dịch vụ viết bài tại: vietbaocaothuctap.net
Download luận án tiến sĩ ngành công nghệ thông tin với đề tài: Quản lý cửa hàng vật liệu xây dựng, cho các bạn có thể làm luận văn tham khảo
Báo cáo đồ án tốt nghiệp "Ứng dụng trí tuệ nhân tạo nhận dạng chữ viết tay xâ...The Boss
Đề tài tốt nghiệp ngành công nghệ thông tin chuyên ngành công nghệ phần mềm. Báo cáo đồ án ứng dụng nhận dạng chữ viết tay xây dựng phần mềm học từ vựng tiếng anh trên môi trường Nodejs và framework angular
Nhận viết luận văn Đại học , thạc sĩ - Zalo: 0917.193.864
Tham khảo bảng giá dịch vụ viết bài tại: vietbaocaothuctap.net
Download luận án tiến sĩ ngành công nghệ thông tin với đề tài: Quản lý cửa hàng vật liệu xây dựng, cho các bạn có thể làm luận văn tham khảo
Báo cáo đồ án tốt nghiệp "Ứng dụng trí tuệ nhân tạo nhận dạng chữ viết tay xâ...The Boss
Đề tài tốt nghiệp ngành công nghệ thông tin chuyên ngành công nghệ phần mềm. Báo cáo đồ án ứng dụng nhận dạng chữ viết tay xây dựng phần mềm học từ vựng tiếng anh trên môi trường Nodejs và framework angular
Nhận viết luận văn Đại học , thạc sĩ - Zalo: 0917.193.864
Tham khảo bảng giá dịch vụ viết bài tại: vietbaocaothuctap.net
Download luận văn tóm tắt ngành kĩ thuật phần mềm với đề tài: Nhận dạng và phân loại hoa quả trong ảnh màu, cho các bạn làm luận văn tham khảo
Nhận viết luận văn Đại học , thạc sĩ - Zalo: 0917.193.864
Tham khảo bảng giá dịch vụ viết bài tại: vietbaocaothuctap.net
Download luận văn đồ án tốt nghiệp ngành công nghệ thông tin với đề tài: Phần mềm Quản Lý Siêu Thị Mini, cho các bạn có thể làm luận văn tham khảo
Nhận viết luận văn Đại học , thạc sĩ - Zalo: 0917.193.864
Tham khảo bảng giá dịch vụ viết bài tại: vietbaocaothuctap.net
Download luận văn đồ án tốt nghiệp với đề tài: Nghiên cứu thuật toán K-nearest neighbor và sử dụng iris flowers dataset đánh giá hiệu quả thuật toán, cho các bạn làm luận văn tham khảo
Download luận văn đồ án tốt nghiệp ngành công nghệ thông tin với đề tài: Tìm hiểu về nhận dạng vân tay và khả năng ứng dụng trong quản lý cấp phát, kiểm soát hộ chiếu điện tử
Nhận viết luận văn đại học, thạc sĩ trọn gói, chất lượng, LH ZALO=>0909232620
Tham khảo dịch vụ, bảng giá tại: https://vietbaitotnghiep.com/dich-vu-viet-thue-luan-van
Download luận văn đồ án môn thị giác máy tính với đề tài: Nhận dạng mặt người trên matlab, cho các bạn làm luận văn tham khảo
Đồ án tốt nghiệp đại học về quản lý điểm trường trung học phổ thông.
Để có bản full thì các bạn hãy liên hệ với mình nhé
yahoo: phamtoan1804
facebook: https://www.facebook.com/phamtoan1804
Nhận viết luận văn Đại học , thạc sĩ - Zalo: 0917.193.864
Tham khảo bảng giá dịch vụ viết bài tại: vietbaocaothuctap.net
Download luận văn đồ án tốt nghiệp ngành công nghệ thông tin với đề tài: Xây dựng phần mềm quản lý quán cà phê, cho các bạn có thể tham khảo
Nhận viết luận văn Đại học , thạc sĩ - Zalo: 0917.193.864
Tham khảo bảng giá dịch vụ viết bài tại: vietbaocaothuctap.net
Download luận văn tóm tắt ngành kĩ thuật phần mềm với đề tài: Nhận dạng và phân loại hoa quả trong ảnh màu, cho các bạn làm luận văn tham khảo
Nhận viết luận văn Đại học , thạc sĩ - Zalo: 0917.193.864
Tham khảo bảng giá dịch vụ viết bài tại: vietbaocaothuctap.net
Download luận văn đồ án tốt nghiệp ngành công nghệ thông tin với đề tài: Phần mềm Quản Lý Siêu Thị Mini, cho các bạn có thể làm luận văn tham khảo
Nhận viết luận văn Đại học , thạc sĩ - Zalo: 0917.193.864
Tham khảo bảng giá dịch vụ viết bài tại: vietbaocaothuctap.net
Download luận văn đồ án tốt nghiệp với đề tài: Nghiên cứu thuật toán K-nearest neighbor và sử dụng iris flowers dataset đánh giá hiệu quả thuật toán, cho các bạn làm luận văn tham khảo
Download luận văn đồ án tốt nghiệp ngành công nghệ thông tin với đề tài: Tìm hiểu về nhận dạng vân tay và khả năng ứng dụng trong quản lý cấp phát, kiểm soát hộ chiếu điện tử
Nhận viết luận văn đại học, thạc sĩ trọn gói, chất lượng, LH ZALO=>0909232620
Tham khảo dịch vụ, bảng giá tại: https://vietbaitotnghiep.com/dich-vu-viet-thue-luan-van
Download luận văn đồ án môn thị giác máy tính với đề tài: Nhận dạng mặt người trên matlab, cho các bạn làm luận văn tham khảo
Đồ án tốt nghiệp đại học về quản lý điểm trường trung học phổ thông.
Để có bản full thì các bạn hãy liên hệ với mình nhé
yahoo: phamtoan1804
facebook: https://www.facebook.com/phamtoan1804
Nhận viết luận văn Đại học , thạc sĩ - Zalo: 0917.193.864
Tham khảo bảng giá dịch vụ viết bài tại: vietbaocaothuctap.net
Download luận văn đồ án tốt nghiệp ngành công nghệ thông tin với đề tài: Xây dựng phần mềm quản lý quán cà phê, cho các bạn có thể tham khảo
Xây Dựng Hệ Thống Phân Lịch Thi Tín Chỉ Tại Trường Cao Đẳng Thương Mại Đà Nẵng, các bạn tham khảo thêm tại tài liệu, bài mẫu điểm cao tại luanvantot.com
Nhận viết luận văn Đại học , thạc sĩ - Zalo: 0917.193.864
Tham khảo bảng giá dịch vụ viết bài tại: vietbaocaothuctap.net
Download luận văn thạc sĩ ngành công nghệ thông tin với đề tài: Phân cụm đa mô hình và ứng dụng trong phân đoạn ảnh viễn thám, cho các bạn làm luận văn tham khảo
1. Đại Học Sư Phạm Kỹ Thuật TP.HCM
Khoa Công Nghệ Thông Tin
MÁY HỌC VECTOR HỖ TRỢ
SUPPORT VECTOR MACHINES
10/05/2017 SUPPORT VECTOR MACHINES 1
GVHD: Quách Đình Hoàng
SVTH:
- Huỳnh Nhật Thành 14110178
- Trần Thị Thơm 14110192
- Nguyễn Quang Nhật 14110137
2. NỘI DUNG
Giới thiệu SVM
Tại sao chọn SVM
Đặt vấn đề
Bài toán phân 2 lớp với SVM
So cánh và cải tiền SVM
10/05/2017 SUPPORT VECTOR MACHINES 2
1
2
3
4
5
3. 1. Giới thiệu SVM
10/05/2017 SUPPORT VECTOR MACHINES 3
• Phương pháp Support vector machines.Giới thiệu
• Lý thuyết học thống kê do Vapnik và
Chervonekis xây dựng năm 1995Lịch Sử
• Dựa trên nền tảng lý thuyết thống kê, sử dụng
cho phân lớp dữ liệu.Định nghĩa
• Nhận dạng, phân tích dữ liệu, ký tự,…Ứng Dụng
4. 2. Tại sao chọn SVM ?
10/05/2017 SUPPORT VECTOR MACHINES 4
Hiệu quả giải quyết bài toán dữ liệu có số chiều lớn (ảnh của dữ liệu biểu diễn
gene, protein, tế bào)
Giải quyết vấn đề overfitting rất tốt (dữ liệu có nhiễu và tách rời nhóm hoặc
dữ liệu hoặc dữ liệu huấn luyện quá ít)
Là phương pháp phân lớp nhanh.
Có hiệu suất tổng hợp tốt và hiệu suất tính toán cao.
1
2
3
4
5. 3. Đặt vấn đề
10/05/2017 SUPPORT VECTOR MACHINES 5
Cho trước một số điểm dữ liệu cùng với nhãn
của chúng thuộc một trong hai lớp cho trước.
Mục tiêu của thuật toán là xác định xem một
điểm dữ liệu mới sẽ được thuộc về lớp nào.
Mỗi điểm dữ liệu được biểu diễn dưới dạng một
vector p-chiều và ta muốn chia tách hai lớp dữ
liệu bằng một siêu phẳng p − 1 chiều.
Đây gọi là phân loại tuyến tính.
6. Cơ sở lý thuyết
10/05/2017 SUPPORT VECTOR MACHINES 6
Cho tập huấn luyện D gồm n điểm có dạng
yi: mang giá trị 1 và -1, xác định lớp của điểm xi.
xi: Là một vector thực nhiều chiều (p chiều).
w: Là một vectơ pháp tuyến của siêu phẳng.
PT siêu phẳng chứa vector 𝑥𝑖 trong không gian:
𝑥𝑖. 𝑤 +b=0
7. Cơ sở lý thuyết
10/05/2017 SUPPORT VECTOR MACHINES 7
Đặt f(𝑥𝑖) = sign(𝑥𝑖.𝑤+ b) ={
+1, 𝑥𝑖. 𝑤 + b > 0
−1, 𝑥𝑖. 𝑤 + b < 0
Như vậy, f(𝑥𝑖) biểu diễn sự phân lớp của 𝑥𝑖 vào
hai lớp như nêu trên.
Ta nói :
yi = +1 nếu 𝑥𝑖 thuộc lớp I
yi = -1 nếu 𝑥𝑖 thuộc lớp II.
9. 4. Bài toán phân 2 lớp với SVM
10/05/2017 SUPPORT VECTOR MACHINES 9
TH1: Tập D phân chia tuyến tính không
nhiễu
Đặt f(𝑥𝑖) = sign(𝑥𝑖.𝑤+ b) ={
+1, 𝑥𝑖. 𝑤 + b > 0
−1, 𝑥𝑖. 𝑤 + b < 0
Lúc này ta cần giải toán tối ưu:
𝑀𝑖𝑛 𝐿 𝑤 =
1
2
| 𝑤 |2
𝑦𝑖 𝑥𝑖. 𝑤 𝑇
+ 𝑏 ≥ 1, 𝑖 = 1, … , 𝑙
ĐK Karush-Kuhn-Tucker, sử dụng:
𝑤 = 𝑖=0
𝑁
𝜆𝑖 𝑦𝑖 𝑥𝑖, 𝑖=0
𝑁
𝜆𝑖 𝑦𝑖 = 0
10. Ví dụ
Ta có: 𝑔 𝑥 = 𝑤 𝑇
. 𝑥 + 𝑤0 ,
𝑤 = 𝑎, 2𝑎
Từ đó suy ra: a = 2/5, 𝑤0 = -11/5
𝑤 =
2
5
,
4
5
g( 𝑥) = 𝑥1 + 2𝑥2 − 5,5
10/05/2017 SUPPORT VECTOR MACHINES 10
11. 4. Bài toán phân 2 lớp với SVM
10/05/2017 SUPPORT VECTOR MACHINES 11
TH2: Tập D phân chia tuyến tính có nhiễu
Đặt f(𝑥𝑖) = sign(𝑥𝑖.𝑤+ b) ={
+1, 𝑥𝑖. 𝑤 + b > 0
−1, 𝑥𝑖. 𝑤 + b < 0
Sử dụng 𝜀𝑖 ≥ 0 ∶ yi.( 𝑥𝑖.𝑤+ b) ≥ 1 − 𝜀𝑖, i=1,…,l
Lúc này ta cần giải toán tối ưu:
𝑀𝑖𝑛 𝐿 𝑤, 𝜀 =
1
2
| 𝑤 |2 + 𝐶 𝑖=1
𝑙
𝜀𝑖
𝑦𝑖 𝑥𝑖. 𝑤 𝑇
+ 𝑏 ≥ 1 − 𝜀𝑖, 𝑖 = 1, … , 𝑙; 𝜀𝑖 ≥ 0
Trong đó: C là tham số cho trước
12. 4. Bài toán phân 2 lớp với SVM
10/05/2017 SUPPORT VECTOR MACHINES 12
TH3: Tập D không phân chia tuyến tính
Gọi ∅ là ánh xạ phi tuyến từ không gian 𝑅 𝑛
vào không gian 𝑅 𝑚
∅: 𝑅 𝑛 → 𝑅 𝑚
Lúc này ta cần giải toán tối ưu:
𝑀𝑖𝑛 𝐿 𝑤, 𝜀 =
1
2
| 𝑤 |2
+ 𝐶 𝑖=1
𝑙
𝜀𝑖
𝑦𝑖 ∅(𝑥𝑖). 𝑤 𝑇
+ 𝑏 ≥ 1 − 𝜀𝑖, 𝑖 = 1, … , 𝑙; 𝜀𝑖 ≥ 0
Trong đó: C là tham số cho trước
∅
13. LƯU Ý: Các bước chính của SVM
Tiền xử lý dữ liệu: Vector của các số thực (Nếu chưa phải là số thực thì chuyển về dạng số
SVM, tránh các số quá lớn, thường co giãn dữ liệu [-1,1] hoặc [0,1])
Chọn hàm hạt nhân: phù hợp cho từng bài toán cụ thể để được độ chính xác cao
Thực hiện việc kiểm tra chéo để xác định các tham số cho ứng dụng
Sử dụng các tham số cho việc huấn luyện tập mẫu
Kiểm thử tập dữ liệu Test
10/05/2017 SUPPORT VECTOR MACHINES 13
14. So sánh và một số cải tiến
10/05/2017 SUPPORT VECTOR MACHINES 14
So sánh
o Không cần xác định mô hình của đối tượng như neuron, fuzy logic, mạng fuzzy-neuron,…
o Nó luôn kết hợp với các dữ liệu có ý nghĩa về mặt vật lý, do đó dễ dàng giải thích được tường
minh.
Cải tiến
o Một số biến thể như C-SVC, V-SVC
o Thuật toán NNSRM (Nearest Neighbor Structural Risk Minimization): kết hợp giữa 2 kỹ thuật
SVM và Nearest Neighbor.
15. 5. Đánh giá và Kết Luận
SVM+ Kernel Methods
Phương pháp học mới.
Cung cấp nhiều công cụ.
Nền tảng lý thuyết học thống kê.
Tối ưu toàn cục, mô hình chất lượng cao,
chịu đựng được nhiễu.
Thành công trong nhiều ứng dụng.
Hạn chế
Khó dịch kết quả
Độ phức tạp vẫn cao
Xử lý dữ liệu kiểu số
Tham số đầu vào
10/05/2017 SUPPORT VECTOR MACHINES 15
16. 5. Đánh giá và Kết Luận
10/05/2017 SUPPORT VECTOR MACHINES 16
Kết luận
Cơ sở lý thuyết của phương pháp SVM
Phương pháp phân lớp hiệu quả được nghiên cứu nhiều nhất trong thời gian qua
Kết hợp với một số phương pháp khác để tăng hơn nữa tốc độ tính toán, cũng như độ chính xác
cho SVM
Cải tiến cho phép phân chia không gian dữ liệu một cách tốt hơn, nhằm loại bỏ những vùng
không được phân lớp bằng cách đưa kỹ thuật mờ vào SVM.
17. 5. Đánh giá và Kết Luận
10/05/2017 SUPPORT VECTOR MACHINES 17
Hướng phát triển
Multi-class
Clustering
Xử lý dữ liệu lớn
Dữ liệu không phải kiểu số
Dữ liệu không cân bằng
Xây dựng hàm nhân
Dịch kết quả
Tìm kiếm thông tin (ranking)
19. Tài liệu tham khảo
10/05/2017 SUPPORT VECTOR MACHINES 19
[1] Thái Sơn: Luận văn thạc sỹ khoa học: Kỹ thuật Support Vector Machines và ứng dụng. Ngành
toán tin ứng dụng: Đại học Bách khoa Hà Nội, 2006.
[2] PGS.TS Vũ Thành Nguyên, Thi Minh Nguyễn: Một số cải tiến của bài toán phân lớp văn bản
sử dụng thuật toán SVM và áp dụng trong phân tích tiếng Việt. Đại học Công nghệ thông tin –
ĐHQG, 2011.
[3] Phạm Văn Sơn: Đồ án tốt nghiệp đại học hệ chính quy: Tìm hiểu về Support Vector Machines
cho bài toán phân lớp quan điểm.Đại học dân lập Hải Phòng,2012.
[4]Jiawei Han, Micheline Kamber, Jian Pei Data Mining. Concepts and Techniques, 3rd Edition.
Editor's Notes
Khái niệm
Máy vectơ hỗ trợ (SVM - viết tắt tên tiếng Anh support vector machine) là một khái niệm trong thống kê và khoa học máy tính cho một tập hợp các phương pháp học có giám sát liên quan đến nhau để phân loại và phân tích hồi quy. SVM dạng chuẩn nhận dữ liệu vào và phân loại chúng vào hai lớp khác nhau. Do đó SVM là một thuật toán phân loạinhị phân.
2. Lịch sử
Thuật toán SVM ban đầu được tìm ra bởi Vladimir N. Vapnik và dạng chuẩn hiện nay sử dụng lề mềm được tìm ra bởi Vapnik và Corinna Cortes năm 1995.
3. Đặt vấn đề
Phân loại thống kê là một nhiệm vụ phổ biến trong học máy. Trong mô hình học có giám sát, thuật toán được cho trước một số điểm dữ liệu cùng với nhãn của chúng thuộc một trong hai lớp cho trước. Mục tiêu của thuật toán là xác định xem một điểm dữ liệu mới sẽ được thuộc về lớp nào. Mỗi điểm dữ liệu được biểu diễn dưới dạng một vector p-chiều, và ta muốn biết liệu có thể chia tách hai lớp dữ liệu bằng một siêu phẳng p − 1 chiều. Đây gọi là phân loại tuyến tính. Có nhiều siêu phẳng có thể phân loại được dữ liệu. Một lựa chọn hợp lý trong chúng là siêu phẳng có lề lớn nhất giữa hai lớp.
4. Ứng dụng
Nhận dạng: tiếng nói, ảnh, chữ viết tay
Phân loại văn bản, khai mỏ dữ liệu
Phân tích dữ liệu theo thời gian
Phân tích dữ liệu gien, nhận dạng bệnh, công nghệ bào chế thuốc
Phân tích dữ liệu maketing
Cho trước một số điểm dữ liệu cùng với nhãn của chúng thuộc một trong hai lớp cho trước.
Mục tiêu của thuật toán là xác định xem một điểm dữ liệu mới sẽ được thuộc về lớp nào.
Mỗi điểm dữ liệu được biểu diễn dưới dạng một vector p-chiều, và ta muốn biết liệu có thể chia tách hai lớp dữ liệu bằng một siêu phẳng p − 1 chiều.
Đây gọi là phân loại tuyến tính.
Có nhiều siêu phẳng có thể phân loại được dữ liệu.
Một lựa chọn hợp lý trong chúng là siêu phẳng có lề lớn nhất giữa hai lớp.
Nhiệm vụ là cần phải tìm một siêu phẳng (Optimal hyperplane) có lề lớn nhất chia tách các điểm dữ liệu có ban đầu (yi=1, yi=-1 )để huấn luyện và các điểm sau này.
Tôi giả sử có tới 3 siêu phẳng (Optimal hyperplane) là H1 (Xanh dương), H2 (Đỏ), H3 (Xanh lá).
H3 sẽ bị loại đầu tiên vì không thể phân loại các điểm huấn luyện cho trước.
H1 bị loại vì khoảng cách từ các điểm Support Vector đến siêu phẳng chưa phải là cực đại.
H2 là siêu phẳng cần tìm
Chúng ta cần chọn w và b để cực đại hóa lề, hay khoảng cách giữa hai siêu mặt song song ở xa nhau nhất có thể trong khi vẫn phân chia được dữ liệu.
Tập D có thể phân chia tuyến tính được mà không có nhiễu (tất cả các điểm được gán nhãn +1 thuộc về phía dương của siêu phẳng, tất cả các điểm được gán nhãn -1 thuộc về phía âm của siêu phẳng)
a+ 2a + w0 = -1
2a+6a + w0 = 1
Trong đó C là tham số xác định trước, định nghĩa giá trị ràng buộc, C càng lớn thì mức độ phạm vi đối với những lỗi thực nghiệm (là lỗi xảy ra lúc huấn luyện, tính bằng thương số của số phần tử lỗi và tổng số phần tử huấn luyện) càng cao.
Ta dữ liệu D không thể phân chia tuyến tính được, ta sẽ ánh xạ các vector dữ liệu x từ không gian n chiều vào một không gian m chiều (m > n), sao cho trong không gian m chiều, D có thể phân chia tuyến tính được.