Resample-Filter von WEKA - Wie das Ergebnis zu interpretieren ist
Ich bin derzeit strugeling mit einem machine-learning-problem an, während ich zu tun haben mit großem unsymmetrische Daten-sets. Das heißt, es gibt sechs Klassen ('1','2'...'6'). Leider gibt es z.B. für die Klasse '1' 150 Beispiele/Instanzen, für '2' 90-Instanzen und für die Klasse '3' nur 20. Alle anderen Klassen können nicht "trainiert", da gibt es keine verfügbaren Instanzen dieser Klassen.
Bisher habe ich herausgefunden, dass WEKA (die machine learning toolkit benutze ich) bietet das betreute "Resample" - filter. Wenn ich diesen filter anwenden, mit 'noReplacement'=false und 'bialToUniformClass'=1.0 dann diese Ergebnisse in einem Datensatz, wobei die Anzahl der Instanzen ist schön und fast gleich (für die Klasse '1'..'3' und die anderen bleiben leer).
Meine Frage ist nun: wie funktioniert WEKA und diese filter generieren "neue"/weitere Instanzen für die verschiedenen Klassen.
Vielen Dank im Voraus für irgendwelche Tipps oder Anregungen.
Cheers
Julian
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nicht. Es ist resampling vorhandenen Instanzen. Wenn Sie eine Klasse-2-Instanz, und Fragen Sie nach einem resampling mit einer Neigung von 1.0, können Sie erwarten, dass N Kopien der Instanz und N anderen Instanzen jeder anderen Art, für die es bereits Daten.
Mithilfe von WEKA supervised Resample-filter fügt Instanzen einer Klasse. Dies realisiert durch einfaches hinzufügen von Instanzen von der Klasse, die nur wenige Instanzen mehrfach zu den Ergebnisdaten.
Daher die resultierende Datenmenge ist stark voreingenommen in Bezug auf eine Klasse, für die nur wenige Proben zur Verfügung stehen.
Versuchen mit der SCHLUG filter für die Vorverarbeitung.
Es Gleichgewicht Ihres Datenbestandes durch die Generierung neuer Daten für die kleinere Klasse.