Name des „Ummischungstricks“ (Permutieren Sie den Datensatz zufällig, um die Verzerrung eines Schätzers zu schätzen)

8

Kennen Sie eine Referenz oder einen Namen für die folgende Methode, um zu untersuchen, ob eine komplexe Modellierungstechnik verzerrt ist?T

  1. Wenden Sie auf den Originaldatensatz an. Messen Sie die Leistung (z. B. R-Quadrat in der Regressionseinstellung).T
  2. Permutieren Sie die Antwortvariable nach dem Zufallsprinzip, um einen neuen Datensatz zu erhalten. Wende und messe seine Leistung . [Wenn die Beobachtungen abhängig sind, ist dieser Schritt komplizierter.]TP

Wenn sich wesentlich von der Leistung Null unterscheidet, schließen wir, dass voreingenommen ist. T.PT

Schritt 2 kann wiederholt werden, wenn die Ressourcen dies zulassen, was zur Permutationsnullverteilung des Leistungsmaßes führen würde. In meiner Anwendung kann ich dies jedoch aufgrund von Ressourcenproblemen nicht tun.

Ich erinnere mich düster daran, dass dieser Trick des "Ummischens" von jemandem verwendet wurde, um die Tendenz einer einmaligen Kreuzvalidierung (in einigen Situationen) zu untersuchen. Ich weiß jedoch nicht, ob er sich in meiner Situation befand, in der er den gesamten Vorgang nur einmal wiederholen konnte.

Ein Beispiel in R, das die "Kraft" der naiven Rückwärtsauswahl zeigt:

# Generate random data set. Only random performance is expected.
n <- 100
p <- 30

set.seed(7567)
y <- rnorm(n)
X <- rnorm(n*p)
dim(X) <- c(n, p)
data <- data.frame(y, X)

# Modelling technique: backward selection with OLS
T <- function(data) {
  step(lm(y ~ ., data = data), trace = 0)
}

# Performance: R-squared
P <- function(fit) {
  summary(fit)$r.squared
}

# Step 1: Compute performance on original data. Happily publish high R-squared...
P(T(data)) # 0.240405

# Step 2: Your mean colleague reshuffles response and gets also R-squared far away from 0
data$y <- data$y[sample(n)]
P(T(data)) # 0.1925726

Schlussfolgerung zum Beispiel: Die gewählte Modellierungstechnik ist zumindest in dieser speziellen Umgebung äußerst anfällig für Überanpassungen.

Einige Hintergrundinformationen

Ich habe diesen Trick zum Ummischen einmal verwendet, um zu überprüfen, ob die Kreuzvalidierung eines langwierigen Modellierungsprozesses von mir ordnungsgemäß implementiert wurde. Unter einer zufälligen Permutation ergab CV ein R-Quadrat von im wesentlichen 0 (wie erwartet / gewünscht).

Michael M.
quelle
3
Diese Frage scheint sehr relevant zu sein: stats.stackexchange.com/questions/192291/… und die darin zitierte Referenz.
Flunder
2
Gute Suche @Flounderer, ich habe den Link zu dieser Frage zu meiner Antwort für diejenigen hinzugefügt, die weiterlesen möchten (und vielleicht Amöben eine Antwort auf einige der positiven Stimmen erhalten möchten, die es verdient)
IWS

Antworten:

15

Um die Frage im Titel AFAIK zu beantworten, wird dies als Permutationstest bezeichnet . Wenn dies tatsächlich das ist, wonach Sie suchen, funktioniert es nicht wie in der Frage beschrieben.

Um (etwas) prägnant zu sein: Der Permutationstest funktioniert tatsächlich, indem eine der 'Spalten' gemischt und der Test oder die Berechnung des Interesses durchgeführt wird. Der Trick besteht jedoch darin, dies häufig zu tun und die Daten jedes Mal zu mischen. In kleinen Datensätzen können möglicherweise sogar alle möglichen Permutationen durchgeführt werden. In großen Datenmengen führen Sie normalerweise eine Permutationsmenge durch, die Ihr Computer verarbeiten kann, die jedoch groß genug ist, um eine Verteilung der interessierenden Statistik zu erhalten .

Schließlich verwenden Sie diese Verteilung, um zu überprüfen, ob beispielsweise der mittlere Unterschied zwischen zwei Gruppen in 95% der Verteilung> 0 ist. Einfach ausgedrückt ist dieser letzte Schritt der Überprüfung, welcher Teil der Verteilung über / unter einem bestimmten kritischen Wert liegt, der 'p-Wert' für Ihren Hypothesentest.

Wenn dies stark vom p-Wert in der ursprünglichen Stichprobe abweicht, würde ich nicht sagen, dass etwas mit dem Test / der Statistik von Interesse nicht stimmt, sondern dass Ihre Stichprobe bestimmte Datenpunkte enthält, die das Testergebnis spezifisch beeinflussen. Dies kann eine Verzerrung sein (Auswahlverzerrung aufgrund der Einbeziehung einiger seltsamer Fälle; Messfehler in bestimmten Fällen usw.) oder eine falsche Verwendung des Tests (z. B. verletzte Annahmen).

Weitere Informationen finden Sie unter https://en.wikipedia.org/wiki/Resampling_(statistics)

Lesen Sie außerdem die Antwort von @amoeba auf diese Frage. Wenn Sie mehr darüber erfahren möchten, wie Permutationstests mit Variablenauswahl kombiniert werden können.

IWS
quelle
1
Es ist also wie ein Permutationstest mit einer einzigen Permutation (weil zB 10 Tage läuft) und mit Fokus auf die Nullverteilung der Leistungsstatistik (anstelle von p-Werten)? T
Michael M
5
Die Stärke von Permutationstests (und Resampling-Methoden) liegt in der Verteilung der erhaltenen Teststatistiken. Um dies zu wiederholen, ist das Erhalten der Verteilung für den Test obligatorisch. Sie werden verstehen, dass Sie diese Ergebnisse nicht richtig verteilen können, wenn Sie dies nur einmal oder nur einige Male tun. Wenn die Modellierung von einmal 10 Tage Laufzeit erfordert, würden ordnungsgemäße Permutationstests in der Tat Ewigkeiten dauern. Vielleicht ist eine Kreuzvalidierung ( en.wikipedia.org/wiki/Cross-validation_(statistics) besser anwendbar? T
IWS
1
@MichaelM Der Permutationstest und der Randomisierungstest sind der gleiche Test. Wenn die Berechnung der Statistik lange dauert, dauert die Ausführung des Permutationstests SEHR lange.
AdamO
@AdamO: Stimme voll und ganz dem Timing zu. Bei der Technik geht es jedoch überhaupt nicht darum, eine Hypothese zu testen. Es geht um die Schätzung einer Verzerrung (die eher in Richtung einer Bootstrap-Anwendung gehen würde). Aber das ist der Grund, warum ich die Frage gestellt habe!
Michael M
2

Die Antwort fand ich schließlich in Frank Harrells Buch "Regression Modeling Strategies" [1] in Abschnitt 5.2.4 (Verbesserungen bei der Datenaufteilung: Resampling).

"Die Randomisierungsmethode" wird als interessante Methode vorgestellt, um den Optimismus durch zufällige Permutationen der Antwort abzuschätzen, insbesondere in Kombination mit der Variablenauswahl (wie im Beispiel im OP).

Er verweist unter anderem auf [2] für verwandte Ideen.

Die Methode ist sehr einfach: Nehmen wir an, Ihre komplizierte Modellierungsstrategie umfasst die Auswahl vorwärts / rückwärts (und seitwärts) und Ihr Datensatz ist zu klein, um eine saubere Aufteilung von Zug / Validierung / Test zu erhalten. Darüber hinaus können Sie der Kreuzvalidierung möglicherweise nicht vollständig vertrauen, da dies immer bedeutet, dass ein bestimmter Teil der Daten innerhalb von Fold verworfen wird. Wie können Sie beurteilen, ob Ihr R-Quadrat von 0,7 gültig ist oder ob es hauptsächlich auf eine Überanpassung zurückzuführen ist? Die Randomisierungsmethode funktioniert wie folgt (hier sprechen wir über das R-Quadrat, aber es kann jedes interessierende Leistungsmaß sein). Wenn Ihre Strategie unvoreingenommen ist, würden Sie erwarten, dass das R-Quadrat nahe 0 liegt, wenn es in einem Datensatz mit zufällig permutierter Antwortvariable wiederholt wird. Angenommen, Sie erhalten nach 20 Permutationen ein durchschnittliches R-Quadrat von 0,6 anstelle von 0. Sie wissen also, dass das ursprüngliche R-Quadrat von 0 ist. 7 ist wahrscheinlich nicht viel mehr als das Ergebnis einer Überanpassung. Eine ehrlichere Schätzung des "wahren" R-Quadrats wäre 0,7-0,6 = 0,1 (klein). Sie haben also gezeigt, wie schlecht Ihre Strategie überpasst.

Vorteile der Methode

  • Sehr einfach
  • Sie verwenden immer den vollständigen Datensatz

Nachteile sind

  • Die Einschätzung des Optimismus scheint nicht sehr genau zu sein
  • Die Methode ist im Gegensatz zur Kreuzvalidierung oder Bootstrap-Validierung nicht gut bekannt.

[1] Frank Harrell, "Regression Modeling Strategies", 2001. Springer.

[2] R. Tibshirani und K. Knight. Das Kovarianzinflationskriterium für die adaptive Modellauswahl. JRSS B, 61: 529 & ndash; 546, 1999.

Michael M.
quelle
1
+1 Interessanterweise habe ich diese Methode verpasst, während ich mich über meine Antwort auf eine allgemeine Erklärung der Resampling-Methoden gefreut habe. Wenn Sie diese Antwort mit der Funktionsweise dieser einzelnen Permutationsmethode erläutern könnten, wäre das großartig.
IWS
Keine Notwendigkeit, sich zu entschuldigen! Ihre Antworten sind immer sehr willkommen. Es gibt eigentlich nicht viel zu erläutern, aber ich habe der Antwort einige Infos hinzugefügt.
Michael M
Aufgrund weiterer Lektüre habe ich die Antwort geändert, um hervorzuheben, dass im Gegensatz zu meinem OP normalerweise einige Permutationen ausgeführt werden, um den Optimismus mit ausreichender Genauigkeit zu berechnen.
Michael M
Hier ist eine aktuelle Veröffentlichung über die Technik: arxiv.org/abs/1801.01489
Michael M