SVM, tương tác biến và dữ liệu đào tạo phù hợp


12

Tôi có 2 câu hỏi chung / lý thuyết.

1) Tôi tò mò về cách các SVM xử lý các tương tác biến khi xây dựng các mô hình dự đoán. Vd cải thiện khi bao gồm F1, f2 và h (F1, f2) trong các tính năng chỉ bao gồm F1 và f2? Thuật toán SVM có xử lý các tương tác tính năng không? Có vẻ như nó sẽ như thế nào với SVM cố gắng tạo ra siêu phẳng trong không gian chiều cao hơn, nhưng không chắc chắn nên muốn hỏi.

2) Khi lắp SVM vào dữ liệu huấn luyện, được cung cấp đủ các tính năng và tìm các tham số tối ưu (thông qua tìm kiếm lực lượng vũ trang hoặc bất cứ điều gì), liệu SVM có luôn phù hợp với dữ liệu đào tạo không? Không chắc chắn nếu tôi nói đúng, nhưng về cơ bản, nếu có đủ phương sai / nhiễu trong các tính năng, một SVM sẽ luôn phù hợp với dữ liệu đào tạo 100%? Ngược lại, nếu SVM không phù hợp với dữ liệu huấn luyện 100%, điều đó có nghĩa là có một số thông tin (hoặc các tính năng khác) ảnh hưởng đến biến mục tiêu không được ghi lại trong dữ liệu?

Cảm ơn

Làm rõ nhỏ. Tôi đang đề cập cụ thể đến các SVM kernel

Câu trả lời:


8

Như highBandference đề xuất, nó phụ thuộc vào việc bạn đang sử dụng một SVM tuyến tính hay phi tuyến tính (là phạm vi nếu một hạt nhân không được sử dụng, nó là một phân loại tuyến tính lề tối đa chứ không phải là một SVM).

Trình phân loại tuyến tính lề tối đa không khác với bất kỳ phân loại tuyến tính nào khác ở chỗ nếu quá trình tạo dữ liệu có nghĩa là có các tương tác giữa các thuộc tính, thì việc cung cấp các thuật ngữ tương tác đó có khả năng cải thiện hiệu suất. Trình phân loại tuyến tính lề tối đa khá giống như hồi quy sườn, với một chút khác biệt trong thời hạn hình phạt được thiết kế để tránh bị quá mức (đưa ra các giá trị phù hợp cho tham số chính quy), và trong hầu hết các trường hợp, hồi quy sườn và phân loại lề tối đa sẽ cho hiệu suất tương tự.

Nếu bạn nghĩ rằng các thuật ngữ tương tác có thể quan trọng, thì bạn có thể đưa chúng vào không gian tính năng của một SVM bằng cách sử dụng hạt nhân đa thức , sẽ cung cấp một không gian đặc trưng trong đó mỗi trục đại diện cho một đơn hàng d hoặc ít hơn, tham số c ảnh hưởng đến trọng số tương đối của các đơn thức của các đơn hàng khác nhau. Vì vậy, một SVM với hạt nhân đa thức tương đương với việc khớp một mô hình đa thức trong không gian thuộc tính, kết hợp hoàn toàn với các tương tác đó.K(x,x)=(xx+c)ddc

Được cung cấp đủ các tính năng, bất kỳ phân loại tuyến tính nào cũng có thể phù hợp với dữ liệu. IIRC một điểm ở "vị trí chung" trong n - 1nn1không gian thứ nguyên có thể bị phá vỡ (phân tách theo bất kỳ cách tùy ý nào) bởi một siêu mặt phẳng (kích thước VC cf). Làm điều này thường sẽ dẫn đến sự phù hợp quá mức nghiêm trọng, và vì vậy nên tránh. Điểm của phân loại lề tối đa là hạn chế sự phù hợp quá mức này bằng cách thêm một điều khoản phạt có nghĩa là có thể đạt được sự phân tách lớn nhất (điều này đòi hỏi độ lệch lớn nhất so với bất kỳ ví dụ đào tạo nào để tạo ra sự phân loại sai). Điều này có nghĩa là bạn có thể chuyển đổi dữ liệu thành một không gian có chiều rất cao (trong đó mô hình tuyến tính rất mạnh) mà không phát sinh quá nhiều sự phù hợp.

Lưu ý rằng một số hạt nhân tạo ra một không gian đặc trưng chiều vô hạn, trong đó phân loại "tầm thường" được đảm bảo có thể áp dụng cho bất kỳ mẫu đào tạo hữu hạn nào ở vị trí chung. Ví dụ, bố trí hình tròn chức năng cơ sở hạt nhân, , nơi không gian đặc trưng là orthant tích cực của một hypersphere chiều vô hạn. Các hạt nhân như vậy làm cho SVM trở thành một xấp xỉ phổ quát, có thể đại diện cho bất kỳ ranh giới quyết định nào .K(x,x)=expγxx2

Tuy nhiên đây chỉ là một phần của câu chuyện. Trong thực tế, chúng tôi thường sử dụng một SVM lề mềm, trong đó giới hạn lề được phép vi phạm và có một tham số chính quy kiểm soát sự đánh đổi giữa tối đa hóa lề (đó là một điều khoản phạt, tương tự như được sử dụng trong hồi quy sườn núi) và độ lớn của các biến chùng (gần giống với sự mất mát trên mẫu đào tạo). Sau đó, chúng tôi tránh việc khớp quá mức bằng cách điều chỉnh tham số điều chỉnh, ví dụ bằng cách giảm thiểu lỗi xác thực chéo (hoặc một số ràng buộc với lỗi bỏ qua một lần), giống như chúng ta sẽ làm trong trường hợp hồi quy sườn.

Vì vậy, trong khi SVM có thể phân loại một cách tầm thường tập huấn luyện, nó thường sẽ chỉ làm như vậy nếu các tham số chính quy và nhân được chọn không tốt. Chìa khóa để đạt được kết quả tốt với bất kỳ mô hình hạt nhân nào nằm ở việc chọn một hạt nhân phù hợp, sau đó điều chỉnh các tham số nhân và chính quy để tránh việc khớp quá hoặc dưới dữ liệu.


Cảm ơn Dikran. Điều đó cực kỳ chi tiết và hữu ích. Tôi nghĩ rằng tôi hiểu câu trả lời cho các câu hỏi. Một cách nhanh chóng theo dõi. Làm thế nào để đi về việc chọn hạt nhân thích hợp cho các SVM? Nó sẽ tương tự như các tham số chính quy / kernel (ví dụ thông qua xác nhận chéo)? Hoặc có một số cơ sở lý thuyết cho sự lựa chọn? Nếu hạt nhân rbf làm cho SVM trở thành một xấp xỉ phổ quát, tôi sẽ đoán lựa chọn hạt nhân là một tham số khác để điều chỉnh, nhưng không chắc chắn. Như bạn có thể nói, tôi khá mới với điều này.
tomas

Chọn hạt nhân thường là một cách tốt để xây dựng kiến ​​thức chuyên môn về vấn đề vào bộ phân loại, ví dụ, đối với hệ thống nhận dạng ký tự viết tay, có lẽ bạn sẽ muốn sử dụng hạt nhân bất biến cho các phép quay và dịch hình ảnh nhỏ. Chọn hạt nhân tự động có thể đạt được bằng cách xác thực chéo (đó là những gì tôi sẽ làm) hoặc bị ràng buộc với lỗi bỏ qua một lần (có thể được thực hiện hiệu quả cho các SVM). Tuy nhiên, nếu tập dữ liệu nhỏ thì việc chọn kernel thông qua xác thực chéo có thể khó khăn do quá nhiều lỗi xác thực chéo.
Dikran Marsupial

Đối với nhiều ứng dụng, hạt nhân tuyến tính hoặc RBF là những lựa chọn mặc định tốt và thường có rất ít để có được từ việc khám phá một phạm vi rộng hơn của hạt nhân (trong trường hợp không có kiến ​​thức chuyên môn về vấn đề này).
Dikran Marsupial

1

sign(i=1Kβi(x)β0)βi,i{1,2,...K}KK(x1,x2)=i=1Kβi(x1)βi(x2)

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.