Was ist Abweichung? (speziell im WARENKORB / Teil)

45

Was ist "Abweichung", wie wird sie berechnet und wie werden sie in verschiedenen Bereichen der Statistik verwendet?

Insbesondere interessiere ich mich persönlich für die Verwendung in CART (und die Implementierung in rpart in R).

Ich frage dies, da der Wiki-Artikel etwas zu wünschen übrig lässt und Ihre Einsichten sehr willkommen sind.

Tal Galili
quelle

Antworten:

48

Abweichung und GLM

Formal kann man Abweichung als eine Art Distanz zwischen zwei Wahrscheinlichkeitsmodellen betrachten; Im GLM-Kontext entspricht dies dem zweifachen Log-Verhältnis der Wahrscheinlichkeiten zwischen zwei verschachtelten Modellen wobei das "kleinere" Modell ist. das heißt, eine lineare Einschränkung der Modellparameter (vgl. das Neyman-Pearson-Lemma ), wie @suncoolsu sagte. Als solches kann es verwendet werden, um einen Modellvergleich durchzuführen . Es kann auch als Verallgemeinerung des in der OLS-Schätzung verwendeten RSS (ANOVA, Regression) angesehen werden, da es ein Maß für die Anpassungsgüte des zu bewertenden Modells im Vergleich zum Nullmodell liefert (nur Achsenabschnitt). Es funktioniert auch mit LM:1/00

> x <- rnorm(100)
> y <- 0.8*x+rnorm(100)
> lm.res <- lm(y ~ x)

Die Residuen SS (RSS) werden berechnet als , was leicht erhalten wird als:ε^tε^

> t(residuals(lm.res))%*%residuals(lm.res)
         [,1]
[1,] 98.66754

oder aus dem (unangepassten)R2

> summary(lm.res)

Call:
lm(formula = y ~ x)

(...)

Residual standard error: 1.003 on 98 degrees of freedom
Multiple R-squared: 0.4234, Adjusted R-squared: 0.4175 
F-statistic: 71.97 on 1 and 98 DF,  p-value: 2.334e-13 

da wobei die Gesamtvarianz ist. Beachten Sie, dass es direkt in einer ANOVA-Tabelle wie verfügbar istR2=1RSS/TSSTSS

> summary.aov(lm.res)
            Df Sum Sq Mean Sq F value    Pr(>F)    
x            1 72.459  72.459  71.969 2.334e-13 ***
Residuals   98 98.668   1.007                      
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1 

Nun schauen Sie sich die Abweichung an:

> deviance(lm.res)
[1] 98.66754

Tatsächlich entspricht die Abweichung für lineare Modelle dem RSS (Sie können sich daran erinnern, dass die Schätzungen von OLS und ML in einem solchen Fall übereinstimmen).

Abweichung und WARENKORB

Wir können CART als einen Weg sehen, um bereits markierte Personen in willkürliche Klassen (in einem Klassifizierungskontext) einzuteilen. Bäume können als Wahrscheinlichkeitsmodell für die Zugehörigkeit einzelner Klassen angesehen werden. Wir haben also an jedem Knoten eine Wahrscheinlichkeitsverteilung über die Klassen. Wichtig ist hierbei, dass die Blätter des Baumes eine Zufallsstichprobe aus einer durch angegebenen multinomialen Verteilung ergeben . Wir können also die Abweichung eines Baumes als die Summe über alle Blätter von definierennipiknikpikD

Di=2kniklog(pik),

nach den Notationen von Venables und Ripley ( MASS , Springer 2002, 4. Aufl.). Wenn Sie Zugriff auf diese wichtige Referenz für R-Benutzer (IMHO) haben, können Sie selbst überprüfen, wie ein solcher Ansatz zum Aufteilen von Knoten und Anpassen eines Baums an beobachtete Daten verwendet wird (S. 257 ff.). Grundsätzlich besteht die Idee darin, durch Beschneiden des Baums zu minimieren, wobei die Anzahl der Knoten im Baum . Hier erkennen wir den Kompromiss zwischen Kosten und Komplexität . Hier entspricht dem Konzept der Knotenverunreinigung (dh der Heterogenität der Verteilung an einem gegebenen Knoten), die auf einem Maß der Entropie oder des Informationsgewinns oder dem bekannten Gini-Index , der alsD+α#(T)#(T)TD1kpik2 (Die unbekannten Anteile werden aus den Knotenanteilen geschätzt.)

Mit einer Regressionsbaum, ist die Idee , ganz ähnlich, und wir können die Devianz als Summe der Quadrate für den Einzelnen definiert conceptualize durchj

Di=j(yjμi)2,

summiert über alle Blätter. Hier ist das Wahrscheinlichkeitsmodell, das in jedem Blatt berücksichtigt wird, ein Gaußscher . In Anführungszeichen von Venables und Ripley (S. 259) ist " die übliche skalierte Abweichung für eine Gaußsche GLM. Die Verteilung an internen Knoten des Baums ist dann jedoch eine Mischung aus Normalverteilungen, und daher ist nur an den Blättern angemessen. Der Baumkonstruktionsprozess ist als hierarchische Verfeinerung von Wahrscheinlichkeitsmodellen zu verstehen, die der Vorwärtsvariablenauswahl in der Regression sehr ähnlich sind . " Weitere detaillierte Informationen zur Implementierung finden Sie in Abschnitt 9.2. Sie können sich jedoch bereits die Funktion ansehenN(μi,σ2)DDirpartresiduals()rpart Objekt, bei dem "Abweichungsreste" als Quadratwurzel von minus dem doppelten Logarithmus des angepassten Modells berechnet werden.

Eine Einführung in die rekursive Partitionierung mit den rpart-Routinen von Atkinson und Therneau ist ebenfalls ein guter Anfang. Für eine allgemeinere Überprüfung (einschließlich Absacken) würde ich empfehlen

chl
quelle
1
+1 nette Antwort chl, die, wie du sagst, meine so ohne Probleme dort ergänzt. Sehr schön ausgedrückt.
Setzen Sie Monica - G. Simpson am
Eine Kleinigkeit - wahrscheinlich nicht am besten für lm.fitIhr Beispiel geeignet , da dies der Name des dahinter stehenden Arbeitstiers ist lm.
Setzen Sie Monica - G. Simpson am
@Gavin Oh ja, das stimmt. Vielen Dank für die Erinnerung, ich mache oft diesen Fehler ...
chl
3
Nur eine Bemerkung: Für die lineare Regression ist die Abweichung gleich dem RSS, da die Normalitätsannahme von Fehlern impliziert, dass RSS gleich der LR-Teststatistik ist, was weiterhin impliziert, dass die Abweichung unabhängig von der Asymptotik normal verteilt ist . Dies ist nur eine Erweiterung des (ich denke) knappen Kommentars von chl.
Suncoolsu
@suncoolsu Wenn es um meinen Kommentar zu ML- und OLS-Schätzungen geht, habe ich für (dh in linearen Modellen) "eine Gauß-Verteilung vorausgesetzt" . Ihr Kommentar ist willkommen. εi
chl
25

Es könnte ein bisschen klarer sein, wenn wir uns ein perfektes Modell mit so vielen Parametern wie Beobachtungen überlegen, dass es alle Abweichungen in der Antwort erklärt. Dies ist das gesättigte Modell. Die Abweichung misst einfach den Unterschied in der "Anpassung" eines Kandidatenmodells und des gesättigten Modells.

In einem Regressionsbaum wäre das gesättigte Modell eines, das ebenso viele Endknoten (Blätter) wie Beobachtungen aufweist, sodass es perfekt zur Antwort passt. Die Abweichung eines einfacheren Modells kann als Knotenrestquadratsumme berechnet werden, die über alle Knoten summiert wird. Mit anderen Worten, die Summe der quadrierten Differenzen zwischen vorhergesagten und beobachteten Werten. Dies ist die gleiche Art von Fehler (oder Abweichung), die bei der Regression der kleinsten Quadrate verwendet wird.

Für einen Klassifikationsbaum sind Restsummen von Quadraten nicht das am besten geeignete Maß für fehlende Übereinstimmung. Stattdessen gibt es ein alternatives Maß für die Abweichung. Außerdem können Bäume erstellt werden, die ein Entropiemaß oder den Gini-Index minimieren. Letzteres ist die Standardeinstellung in rpart. Der Gini-Index wird wie folgt berechnet:

Di=1k=1Kpik2

Dabei ist der beobachtete Anteil der Klasse im Knoten . Dieses Maß wird aus allen Knoten des Endgeräts im Baum summiert , um eine Abweichung für das angepasste Baummodell zu erhalten.pikkii

Setzen Sie Monica - G. Simpson wieder ein
quelle
(+1) Entschuldigung, mein Beitrag kam später und ich habe Ihren nicht bemerkt. Da ich denke, dass sie sich nicht zu sehr überlappen, werde ich meine verlassen, wenn es Ihnen nichts ausmacht.
chl
Also, Devianz ist ein Maß für die Güte der Anpassung, nicht wahr? AFAIK, in der Rückführung haben wir einige Statistiken (wie RSS, ), um Goodnees-of-Fit zu messen; und bei der Klassifizierung können wir die Fehlklassifizierungsrate verwenden. Habe ich recht? R2
Avocado
11

Die Abweichung ist die Wahrscheinlichkeitsverhältnis-Statistik zum Testen der Nullhypothese, die das Modell gegen die allgemeine Alternative (dh das gesättigte Modell) enthält. Bei einigen Poisson- und Binomial-GLMs bleibt die Anzahl der Beobachtungen fest, wenn die Anzahl der Einzelpersonen an Größe zunimmt. Dann hat die Abweichung eine asymptotische Nullverteilung im Chi-Quadrat . Die Freiheitsgrade = N - p, wobei p die Anzahl der Modellparameter ist; Das heißt, es ist gleich der Anzahl der freien Parameter im gesättigten und ungesättigten Modell. Die Abweichung liefert dann einen Test für die Modellanpassung.N

Deviance=2[L(μ^|y)L(y|y)]

In den meisten Fällen möchten Sie jedoch testen, ob Sie einige Variablen löschen müssen. Angenommen, es gibt zwei Modelle und mit den Parametern und , und Sie müssen testen, welches dieser beiden Modelle besser ist. Angenommen, ist ein Sonderfall von dh verschachtelten Modellen. M1M2p1p2M1M2

In diesem Fall wird der Unterschied der Abweichung genommen:

ΔDeviance=2[L(μ1^|y)L(μ2^|y)]

Beachten Sie, dass sich die logarithmische Wahrscheinlichkeit, dass das gesättigte Modell abgebrochen wird, und der Freiheitsgrad von in ändern . Dies verwenden wir am häufigsten, wenn wir testen müssen, ob einige der Parameter 0 sind oder nicht. Aber wenn Sie fit in dem Devianz Ausgang ist für das gesättigte Modell vs dem aktuellen Modell.p 2 - p 1ΔDeviancep2p1glmR

Weitere Informationen finden Sie unter: Kategoriale Datenanalyse von Alan Agresti, S. 118.

suncoolsu
quelle
@Tal benutze ich nicht rpartund überlasse die Antwort erfahreneren Mitgliedern dieses Forums.
Suncoolsu
Ich glaube , ich habe die Idee kam ... Aber rpart druckt Devianz auch für Regressionsbäume Oo
deps_stats
@deps_stats diese Abweichung ist Knotenrestquadratsummen, die über den Endknoten des Baums summiert werden.
Setzen Sie Monica - G. Simpson am