Tài liệu tóm tắt môn Khai phá dữ liệu, chuyên ngành phần mềm khoa công nghệ thông tin. DeepL (www.deepl.com): Được đánh giá là một trong những trang web dịch ngôn ngữ chính xác nhất, DeepL sử dụng công nghệ AI và máy học sâu để cải thiện chất lượng dịch. Microsoft Translator (www.microsoft.comenustranslator): Công cụ dịch ngôn ngữ miễn phí của Microsoft, cho phép bạn dịch văn bản, từ vựng, câu và cả hình ảnh.
Trang 1Tại sao phải sử dụng
kernel trick?
1
Trang 2SVM – kernel trick
Xét input training data không thể phân lớp bằng linear hyperplane được, ví dụ:
Muốn áp dụng công thức phân lớp binary với data có thể phân lớp bằng linear hyperplane cần thực hiện
Trang 3SVM – kernel trick
Idea chính của linearization là xây dựng thêm các trục tọa độ mới để tăng dimension của input data
tạo ra feature space mới có dimension cao hơn với mong muốn làm cho các data trở nên có thể phân lớp bằng linear hyperplane được
Kết quả đạt được từ lý thuyết:
Tìm được SVM hyperplane (sau khi áp dụng linearization)
Vấn đề: tính toán inner product rất chậm
3
1
( ) N i i i T
i
Trang 4SVM – kernel trick
Giải pháp:
Giả sử xét 2 vector của input training data trong R 2
Dùng một transformation để biến đổi các data vector sang R 3 như sau:
Tính inner product
1 2
( , )
x x x
1 2
( , )
y y y
1 1 2 2
( ) ( , 2 x x x x x , )
1 1 2 2
( ) ( , 2 y y y y y , )
1 1 2 2 1 1 2 2
( ) x T ( ) ( , 2 y x x x x , ) ( , 2T y y y y , )
2
1 1 2 2
x y x y
T 2
x y
Trang 5SVM – kernel trick
Giải pháp:
Nhận xét:
Tổng quát, thay vì biến đổi từng input vector sang feature space (có thể là vô hạn chiều) rồi thực hiện inner product
thì tìm function để thực hiện điều đó nhanh hơn
phép tính chuyển không gian được thực hiện hiệu quả hơn
Thao tác như vậy gọi là kernel trick
Trong các bài toán thực tế, việc sử dụng kernel trick quyết định mức độ
hiệu quả của SVM
Kết quả:
5
( ) x T ( ) y
,
K x y
Trang 6SVM – binary – nonlinear separable