Umgang mit einer SVM mit kategorialen Attributen


18

Ich habe einen Raum von 35 Dimensionen (Attribute). Mein analytisches Problem ist eine einfache Klassifizierung.

Von 35 Dimensionen sind mehr als 25 kategorial und jedes Attribut akzeptiert mehr als 50 Werttypen.

In diesem Szenario funktioniert die Einführung einer Dummy-Variablen auch für mich nicht.

Wie kann ich eine SVM auf einem Space ausführen, der viele kategoriale Attribute hat?

Antworten:


22
  1. Wenn Sie sicher sind, dass das kategoriale Attribut tatsächlich eine Ordnungszahl ist, behandeln Sie es einfach als numerisches Attribut.
  2. Wenn nicht, verwenden Sie einen Codierungstrick, um daraus ein numerisches Attribut zu machen. Nach dem Vorschlag des Autors von libsvm kann man einfach 1-of-K-Codierung verwenden. Angenommen, ein eindimensionales Kategorieattribut nimmt den Wert von . es einfach in dreidimensionale Zahlen, so dass , , . Natürlich wird dies Ihrem Problem erheblich zusätzliche Dimensionen verleihen, aber ich denke, dass dies kein ernstes Problem für moderne SVM-Löser ist (egal, welchen linearen Typ oder Kernel-Typ Sie verwenden).{EIN,B,C}EIN=(1,0,0)B=(0,1,0)C=(0,0,1)

+1 Das wollte ich auch sagen! Abgesehen davon möchte ich hinzufügen, dass die rekursive Partitionierung manchmal verwendet wird, um herauszufinden, wo am besten Schnitte bei kontinuierlich bewerteten Features vorgenommen werden können, um sie in Bins zu unterteilen.
Kyle.

Interessant! Die "rekursive Partitionierung" klingt für mich nach einem (binären) Baum. Gibt es einen Unterschied zwischen diesen beiden Ideen? Außerdem ist SVM bereits in der Lage, sich mit fortlaufenden Merkmalen zu befassen. Warum sollen wir sie in Behälter umwandeln (wieder kategoriale Daten)?
pengsun.thu

3
Reicht die Erstellung von k-1-Dummy-Variablen nicht für eine k-Level-Kategorievariable aus? zB A = (1,0,0), B = (0,1,0) hier, überspringen (0,0,1)?
Ausreißer

Anschlussfrage: Ist für die gedummten 0-1-Daten keine zusätzliche Skalierung erforderlich?
AZhao
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.