Mittelwert (Punktzahl) vs Punktzahl (Verkettung) bei der Kreuzvalidierung


15

TLDR:

Mein Datensatz ist ziemlich klein (120) Proben. Wenn ich eine 10-fache Kreuzvalidierung durchführe, sollte ich:

  1. Sammeln Sie die Ausgaben von jeder Testfalte, verknüpfen Sie sie zu einem Vektor und berechnen Sie dann den Fehler für diesen vollständigen Vorhersagevektor (120 Stichproben).

  2. Oder sollte ich stattdessen den Fehler an den Ausgaben berechnen, die ich bei jeder Falte erhalte (mit 12 Abtastungen pro Falte) und dann meine endgültige Fehlerschätzung als Durchschnitt der 10-fachen Fehlerschätzungen erhalten?

Gibt es wissenschaftliche Arbeiten, in denen die Unterschiede zwischen diesen Techniken diskutiert werden?


Hintergrund: Potenzielle Beziehung zu Makro- / Mikro-Scores in der Mehrfachetikettenklassifizierung:

Ich denke, diese Frage hängt möglicherweise mit dem Unterschied zwischen Mikro- und Makro- Durchschnittswerten zusammen, die häufig in einer Mehrfachetiketten-Klassifizierungsaufgabe verwendet werden (z. B. 5 Etiketten).

In der Multi-Label-Einstellung werden die Mikrodurchschnittswerte berechnet, indem eine aggregierte Kontingenztabelle aus wahr-positiv, falsch-positiv, wahr-negativ und falsch-negativ für alle 5 Klassifikator-Vorhersagen für 120 Stichproben erstellt wird. Diese Kontingenztabelle wird dann verwendet, um die Mikrogenauigkeit, den Mikroabruf und das Mikro-F-Maß zu berechnen. Wenn wir also 120 Proben und fünf Klassifikatoren haben, werden die Mikromaßnahmen anhand von 600 Vorhersagen berechnet (120 Proben * 5 Etiketten).

Bei Verwendung der Makrovariante berechnet man die Maße (Genauigkeit, Rückruf usw.) unabhängig auf jedem Etikett und schließlich werden diese Maße gemittelt.

Die Idee hinter dem Unterschied zwischen Mikro- und Makroschätzungen kann dahingehend erweitert werden, was in einer K-fachen Einstellung in einem Binärklassifizierungsproblem getan werden kann. Für 10-fach können wir entweder durchschnittlich über 10 Werte ( Makro Maßnahme) oder die 10 Experimente verketten und die Berechnung Mikro Maßnahmen.

Hintergrund - Erweitertes Beispiel:

Das folgende Beispiel veranschaulicht die Frage. Nehmen wir an, wir haben 12 Testmuster und wir haben 10 Falten:

  • Falte 1 : TP = 4, FP = 0, TN = 8 Präzision = 1,0
  • Falte 2 : TP = 4, FP = 0, TN = 8 Präzision = 1,0
  • Falte 3 : TP = 4, FP = 0, TN = 8 Präzision = 1,0
  • Falte 4 : TP = 0, FP = 12, Präzision = 0
  • Falte 5 .. Falte 10 : Alle haben das gleiche TP = 0, FP = 12 und Präzision = 0

wo ich die folgende notation benutzt habe:

TP = Anzahl wahrer Positive, FP = Anzahl falsch positiver, TN = Anzahl wahrer Negative

Die Ergebnisse sind:

  • Durchschnittliche Genauigkeit über 10 Falten = 3/10 = 0,3
  • Präzision bei der Verkettung der Vorhersagen der 10 Falten = TP / TP + FP = 12/12 + 84 = 0,125

Beachten Sie, dass die Werte 0,3 und 0,125 sehr unterschiedlich sind !


Der Lebenslauf ist kein wirklich gutes Maß für die Vorhersage der zukünftigen Leistung. Die Varianz ist einfach zu klein. Besser mit Bootstrap für die Validierung Ihres Modells gehen.
user765195

2
@ user765195: Könnten Sie Ihren Anspruch mit einigen Zitaten sichern?
Zach

Ich habe gesucht, aber keine Literatur zur aggregierten CV-Methode gefunden. Es scheint ein geeigneterer Weg zu sein, die Kennzahl zu berechnen, da sie weniger Varianz aufweist.
User13420

1
@Zach, es gibt hier eine Diskussion in Harrells Buch: tinyurl.com/92fsmuv (siehe den letzten Absatz auf Seite 93 und den ersten Absatz auf Seite 94.) Ich werde versuchen, mich an andere Verweise zu erinnern, die expliziter sind.
user765195

1
k

Antworten:


3

Der beschriebene Unterschied ist meiner Meinung nach falsch.

Sie werden es nur beobachten, wenn die Verteilung der wirklich positiven Fälle (dh die Referenzmethode sagt, dass es sich um einen positiven Fall handelt) über die Falten (wie im Beispiel) und die Anzahl der relevanten Testfälle (Nenner des Leistungsmaßes ) sehr ungleich ist es handelt sich um das wirklich Positive, das bei der Mittelung der Falzmittel nicht berücksichtigt wird.

Wenn Sie das erste Dreifache gewichten, wird mit gemittelt412=13


Bearbeiten: Die ursprüngliche Frage wurde auch zum Wiederholen der Überprüfung gestellt:

k

  • Wie stark ändern sich die Vorhersagen, wenn die Trainingsdaten durch den Austausch einiger Trainingsmuster gestört werden?
  • Dh, wie stark variieren die Vorhersagen verschiedener "Ersatz" -Modelle für dieselbe Teststichprobe?

Sie haben nach wissenschaftlichen Arbeiten gefragt :

Unterschätzung der Varianz Letztendlich hat Ihr Datensatz eine endliche Stichprobengröße (n = 120), unabhängig davon, wie viele Iterationen von Bootstrap- oder Kreuzvalidierungen Sie durchführen.

  • Sie haben (mindestens) 2 Varianzquellen in den Ergebnissen der Resampling-Validierung (Cross-Validierung und Out-of-Bootstrap-Validierung):

    • Varianz aufgrund endlicher Anzahl von (Test-) Stichproben
    • Varianz aufgrund von Instabilität der Vorhersagen der Ersatzmodelle
  • Wenn Ihre Modelle stabil sind, dann

    • k
    • Die Leistungsschätzung unterliegt jedoch aufgrund der begrenzten Anzahl von Testproben immer noch Abweichungen.
    • Wenn Ihre Datenstruktur "einfach" ist (dh ein einzelner Messvektor für jeden statistisch unabhängigen Fall), können Sie davon ausgehen, dass die Testergebnisse die Ergebnisse eines Bernoulli-Prozesses (Münzwurf) sind, und die Varianz der endlichen Testsätze berechnen.
  • nk


Außerdem mache ich eine Multi-Label-Klassifizierung mit vier Klassifizierern. Daher möchte ich die Mikro- und Makro-F-Kennzahlen für die 4 Aufgaben untersuchen. Ich nehme an, die "kombinierte" Quervalidierung wäre in diesem Fall sogar notwendig? Ich bin mir auch nicht sicher, ob der Out-of-Bootstrap mit der oben erwähnten "kombinierten" CV-Methode identisch ist. Es gab auch einige Diskussionen unter stats.stackexchange.com/questions/4868/…
user13420

@ user13420: Ich bin mir auch nicht sicher, was Sie mit kombiniertem Lebenslauf meinen ... Hier ist eine Antwort, in der ich notiert habe
cbeleites supported Monica

@ user13420: Die Terminologie ist in verschiedenen Bereichen sehr unterschiedlich. Können Sie Ihre Antwort mit Informationen über Micro- und Macro-F-Kennzahlen aktualisieren? Die Kreuzvalidierung ist jedoch eine sehr allgemeine Technik: Sie dient zur Berechnung von Testergebnissen für Modelle. Sie können jedes Leistungsmaß berechnen, das als Eingabe den Referenzwert für jeden Fall und den vorhergesagten Wert für jeden Fall benötigt.
cbeleites unterstützt Monica

Ein kombinierter Lebenslauf würde bedeuten, dass Sie die Vorhersage für jedes Holdout sammeln und das Maß nach allen 10 Holdouts berechnen. Wenn ich also die Genauigkeit messe und mich an eine Klassifizierungsaufgabe erinnere, hätte diese eine einzige Genauigkeit, statt an 10 Werte und einen Durchschnitt (wie im üblichen Lebenslauf)
Benutzer13420

2
Vielen Dank. Ich habe diese Klarstellungen hinzugefügt, weil ich den Wortlaut der ursprünglichen Frage etwas verwirrend fand. Ich hoffe, meine Änderungen waren zum Besseren - ich habe versucht, das Dilemma besser herauszustellen - aber lassen Sie es mich bitte wissen. Alles, was gesagt wurde, als Sie erwähnt haben, dass Sie den Unterschied falsch finden - ich möchte anmerken, dass @ user13420 zwei wesentlich unterschiedliche Ergebnisse am unteren Rand seines OP erhält, wenn er den Ansätzen 1 oder 2 folgt . Ich habe mich selbst diesem Dilemma gestellt. Ich glaube, der zweite Ansatz ist zwar üblicher, aber es wäre großartig, wenn Sie sich darauf einlassen würden.
Josh

1

Sie sollten eine Bewertung (Verkettung) durchführen. Es ist ein weit verbreitetes Missverständnis auf dem Gebiet, dass (Punktzahl) der beste Weg ist. Dies kann zu einer stärkeren Verzerrung Ihrer Schätzung führen, insbesondere in Bezug auf seltene Klassen, wie in Ihrem Fall. Hier ist ein Beleg dafür:

http://www.kdd.org/exploration_files/v12-1-p49-forman-sigkdd.pdf

In der Arbeit verwenden sie "Favg" anstelle Ihres "Mittelwerts (Punktzahl)" und "Ftp, fp" anstelle Ihrer "Punktzahl (Verkettung)".

Spielzeug Beispiel:

Stellen Sie sich vor, Sie haben eine 10-fache Kreuzvalidierung und eine Klasse, die 10 Mal vorkommt und zufällig so zugewiesen wird, dass sie in jeder Falte einmal vorkommt. Auch die Klasse wird immer korrekt vorhergesagt, aber es gibt ein einziges falsch positives Ergebnis in den Daten. Die Testfalte mit dem falsch positiven Ergebnis hat eine Genauigkeit von 50%, während alle anderen Faltungen eine Genauigkeit von 100% haben. Durchschnitt (Punkte) = 95%. Andererseits beträgt die Punktzahl (Verkettung) 10/11, etwa 91%.

Wenn wir davon ausgehen, dass die Daten eine gute Darstellung der wahren Population und die 10 Kreuzvalidierungsklassifikatoren den endgültigen Klassifikator darstellen, wäre die Genauigkeit in der realen Welt 91%, und die durchschnittliche (Punktzahl-) Schätzung von 95% ist stark voreingenommen .

In der Praxis werden Sie diese Annahmen nicht treffen wollen. Stattdessen können Sie Verteilungsstatistiken verwenden, um das Vertrauen zu schätzen, indem Sie die Daten zufällig verteilen und die Punktzahl (Verkettung) mehrmals neu berechnen sowie Bootstrapping durchführen.


Dies ist ein großartiges Papier! Ich denke, das Ergebnis in der Sprache der ursprünglichen Frage (in der Arbeit nicht verwendet) ist, dass bei der Berechnung der F-Punktzahl ein "Mikro-Mittelungs" -Ansatz verwendet wird; Summieren Sie insbesondere TP, TN, FP, FN aus allen Falten, um eine einzelne Verwirrungsmatrix zu erhalten, und berechnen Sie dann den F-Score (oder andere gewünschte Metriken).
travellingbones
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.