Điều gì xảy ra khi chúng tôi huấn luyện một SVM tuyến tính trên dữ liệu có thể phân tách phi tuyến tính?


11

Điều gì xảy ra khi chúng tôi đào tạo một máy vectơ hỗ trợ cơ bản (nhân tuyến tính và không có lề mềm) trên dữ liệu có thể phân tách phi tuyến tính? Vấn đề tối ưu hóa là không khả thi, vậy thuật toán tối thiểu hóa trả về cái gì?

Câu trả lời:


11

Tôi nghĩ rằng máy vectơ hỗ trợ cơ bản có nghĩa là SVM lề cứng. Vì vậy, hãy xem lại:

SVM ký quỹ cứng là gì

Nói tóm lại, chúng tôi muốn tìm một siêu phẳng có lề lớn nhất có thể phân tách tất cả các quan sát một cách chính xác trong không gian mẫu đào tạo của chúng tôi.

Vấn đề tối ưu hóa trong SVM lề cứng

Với định nghĩa trên, vấn đề tối ưu hóa mà chúng ta cần giải quyết là gì?

  1. Siêu phẳng lề lớn nhất: Chúng tôi muốn max(margin)
  2. Có thể phân tách tất cả các quan sát một cách chính xác: Chúng tôi cần tối ưu hóa marginvà cũng thỏa mãn ràng buộc: Không có lỗi trong mẫu

Điều gì xảy ra khi chúng tôi huấn luyện một SVM tuyến tính trên dữ liệu có thể phân tách phi tuyến tính?

Quay lại câu hỏi của bạn, vì bạn đã đề cập đến tập dữ liệu huấn luyện không thể phân tách tuyến tính, bằng cách sử dụng SVM lề cứng mà không cần chuyển đổi tính năng, không thể tìm thấy bất kỳ siêu phẳng nào thỏa mãn "Không có lỗi trong mẫu" .

Thông thường, chúng tôi giải quyết vấn đề tối ưu hóa SVM bằng Lập trình bậc hai, bởi vì nó có thể thực hiện các nhiệm vụ tối ưu hóa với các ràng buộc. Nếu bạn sử dụng Gradient Descent hoặc các thuật toán tối ưu hóa khác mà không đáp ứng các ràng buộc của SVM lề cứng, bạn vẫn sẽ nhận được kết quả, nhưng đó không phải là một siêu phẳng SVM có biên độ cứng.

Nhân tiện, với dữ liệu phân tách phi tuyến tính, thông thường chúng ta chọn

  • chuyển đổi tính năng SVM + lề cứng
  • sử dụng trực tiếp SVM lề mềm (Trong thực tế, SVM lề mềm thường thu được kết quả tốt)

cảm ơn câu trả lời của bạn. Vì vậy, các gói SVM trong ví dụ R hoặc Python không sử dụng các phương pháp lập trình bậc hai khi dữ liệu không tách rời tuyến tính?
SVM

Không chắc chắn về những gì thư viện svm bạn sử dụng. Tôi sử dụng libsvm và các công cụ svm khác nhau có thể sử dụng các bộ giải Svm khác nhau. Để tìm người giải quyết tốt hơn là một chủ đề nghiên cứu khác. QP là cách cơ bản để giải quyết Svm.
fansia
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.