Làm thế nào để đối phó với một SVM với các thuộc tính phân loại


18

Tôi có một không gian gồm 35 kích thước (thuộc tính). Vấn đề phân tích của tôi là một phân loại đơn giản.

Trong số 35 thứ nguyên, hơn 25 thứ nguyên được phân loại và mỗi thuộc tính có hơn 50 loại giá trị.

Trong kịch bản đó, việc giới thiệu một biến giả cũng sẽ không hiệu quả với tôi.

Làm cách nào tôi có thể chạy SVM trên một không gian có nhiều thuộc tính phân loại?

Câu trả lời:


22
  1. Nếu bạn chắc chắn thuộc tính phân loại thực sự là thứ tự, thì chỉ cần coi nó là thuộc tính số.
  2. Nếu không, sử dụng một số mẹo mã hóa để biến nó thành thuộc tính số. Theo gợi ý của tác giả libsvm, người ta có thể chỉ cần sử dụng mã hóa 1-K. Chẳng hạn, giả sử một thuộc tính danh mục 1 chiều lấy giá trị từ . Chỉ cần biến nó thành các số 3 chiều sao cho , , . Tất nhiên, điều này sẽ phát sinh các kích thước bổ sung đáng kể trong vấn đề của bạn, nhưng tôi nghĩ đó không phải là vấn đề nghiêm trọng đối với người giải SVM hiện đại (bất kể loại tuyến tính hay loại hạt nhân bạn áp dụng).A = ( 1 , 0 , 0 ) B = ( 0 , 1 , 0 ) C = ( 0 , 0 , 1 ){Một,B,C}Một= =(1,0,0)B= =(0,1,0)C= =(0,0,1)

+1 Đây là những gì tôi sẽ nói, là tốt! Bên cạnh đó, tôi cũng nói thêm rằng phân vùng đệ quy đôi khi được sử dụng để xác định nơi cắt giảm tốt nhất các tính năng có giá trị liên tục, để phân vùng chúng thành các thùng.
Kyle.

Hấp dẫn! "Phân vùng đệ quy" âm thanh cây (nhị phân) đối với tôi. Có sự khác biệt nào giữa hai ý tưởng này không? Ngoài ra, SVM đã có thể xử lý tính năng liên tục, tại sao chúng ta sẽ biến nó thành thùng (một lần nữa, dữ liệu phân loại)?
pengsun.thu

3
Không tạo các biến giả k-1 đủ cho biến phân loại cấp ak? ví dụ A = (1,0,0), B = (0,1,0) ở đây, bỏ qua (0,0,1)?
Ngoại

câu hỏi tiếp theo: không có tỷ lệ bổ sung cần thiết cho dữ liệu 0-1 giả?
AZhao
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.