2013-07-28 9 views
6

erkennen ich, dass die damit verbundene Frage Positives/negatives proportion in train set vorgeschlagen, dass ein 1-zu-1-Verhältnis von positiven zu negativen Trainingsbeispielen für den Rocchio Algorithmus günstig ist.richtiges Verhältnis von positiven zu negativen Trainingsbeispielen für die Ausbildung einen Zufallsforstbasierten binären Klassifikator

Jedoch unterscheidet sich diese Frage von der damit verbundenen Frage, dass es einen zufälligen Waldmodell betrifft und auch in den folgenden zwei Möglichkeiten.

1) Ich habe viel von Trainingsdaten mit zu arbeiten, und der Haupt-Engpass mehr Trainingsbeispiele zur Verwendung von Iterationszeit trainiert. Das heißt, ich würde lieber nicht mehr als eine Nacht dauern, um einen Ranger zu trainieren, weil ich schnell iterieren möchte.

2) In der Praxis wird der Klassifizierer wahrscheinlich ein positives Beispiel für alle 4 negativen Beispiele sehen.

In dieser Situation soll ich mehr negative Beispiele als positive Beispiele trainieren, oder noch die gleiche Anzahl von positiven und negativen Beispielen?

Antwort

3

Dies mag wie eine triviale Antwort erscheinen, aber das Beste, was ich vorschlagen kann, ist eine kleine Teilmenge Ihrer Daten (klein genug, dass der Algorithmus schnell trainiert), und beobachten Sie, was Sie Genauigkeit ist, wenn Sie 1-1 verwenden , 1-2, 1-3 usw. ...

Plot der Ergebnisse, wie Sie nach und nach der gesamten Menge von Beispielen für jedes Verhältnis zu erhöhen und sehen, wie die Leistung reagiert. Sehr oft werden Sie feststellen, dass Bruchteile der Daten sehr nahe an die Leistung des Trainings im gesamten Datensatz heranreichen. In diesem Fall können Sie eine fundierte Entscheidung für Ihre Frage treffen.

Hoffe, dass hilft.

4

Siehe Abschnitt mit dem Titel „Balancing Vorhersagefehler“ von der offiziellen Dokumentation auf zufällige Wäldern hier: https://www.stat.berkeley.edu/~breiman/RandomForests/cc_home.htm#balance

ich einige Teile fett markiert.

Zusammenfassend scheint dies zu deuten darauf hin, dass Ihre Trainings- und Testdaten sollten entweder

  1. das 1 reflektieren: 4-Verhältnis von Klassen, die Ihre realen Daten haben oder
  2. Sie haben 1: 1-Mix, aber dann sollten Sie sorgfältig die Gewichte pro Klasse wie gezeigt unten, bis die OOB Fehlerrate auf Ihre gewünschte (kleinere) Klasse anpassen

Hoffnung gesenkt wird, die helfen s.

In einigen Datensätzen ist der Vorhersagefehler zwischen den Klassen hoch unsymmetrisch. Einige Klassen haben einen niedrigen Vorhersagefehler, andere einen hohen. Dies tritt normalerweise auf, wenn eine Klasse viel größer ist als eine andere. Dann zufällige Wälder, versuchen Gesamtfehlerquote zu minimieren, halten die Fehlerrate auf der großen Klasse niedrig, während die kleineren Klassen lassen eine größere Fehlerrate haben. Zum Beispiel ist es in der Wirkstoffforschung, wo ein gegebenes Molekül als aktiv oder nicht klassifiziert ist, üblich, die Anzahl der aktiven Zellen mit 10 zu 1, bis zu 100 zu 1. in diesen Situationen die Fehlerrate auf dem interessanten Klasse (actives) wird sehr hoch sein.

Der Benutzer kann das Ungleichgewicht erkennen, indem er die Fehlerraten für die einzelnen Klassen ausgibt. Zur Veranschaulichung 20-dimensionaler synthetischer Daten wird verwendet. Klasse 1 tritt in einem sphärischen Gaußschen, Klasse 2 in einem anderen auf. Ein Trainingssatz von 1000 Klassen 1 und 50 Klassen 2 wird erzeugt, zusammen mit einem Testsatz von 5000 Klasse 1 und 250 Klasse 2.

Die endgültige Ausgabe eines Waldes von 500 Bäumen auf diesen Daten ist:

500 3,7 0,0 78,4

Es gibt einen niedrigen Gesamt Testset Fehler ist (3,73%), aber Klasse 2 hat mehr als 3/4 seiner Fälle fehlklassifiziert.

Der Fehlerausgleich kann vorgenommen werden, indem für die Klassen unterschiedliche Gewichte eingestellt werden.

Je höher das Gewicht einer Klasse ist, desto geringer ist die Fehlerrate . Eine Anleitung, welche Gewichte zu geben sind, ist umgekehrt proportional zu den Klassenpopulationen. Setzen Sie die Gewichte daher auf 1 auf Klasse 1 und 20 auf Klasse 2, und führen Sie sie erneut aus. Die Ausgabe ist:

500 12,1 12,7 0,0

Das Gewicht 20 auf der Klasse 2 zu hoch ist. Setzen Sie ihn auf 10 und versuchen Sie es erneut, bekommen:

500 4,3 4,2 5,2

Das ist ziemlich nah zu balancieren. Wenn das genaue Gleichgewicht gewollt ist, könnte das Gewicht auf Klasse 2 etwas mehr wackeln.

Beachten Sie, dass die Gesamtfehlerrate gestiegen ist, wenn Sie dieses Gleichgewicht erreicht haben. Dies ist das übliche Ergebnis - um eine bessere Balance zu erhalten, wird der Gesamtfehler erhöht.

Verwandte Themen