52 votos

¿Qué es la desviación? (específicamente en CART/rpart)

¿Qué es la "desviación", cómo se calcula y cuáles son sus usos en diferentes campos de la estadística?

En particular, me interesan sus usos en CART (y su implementación en rpart en R).

Pregunto esto ya que el wiki-artículo parece algo escaso y sus ideas serán muy bienvenidas.

56voto

DavLink Puntos 101

Desviación y GLM

Formalmente, se puede considerar la desviación como una especie de distancia entre dos modelos probabilísticos; en el contexto del MLG, equivale a dos veces la relación logarítmica de las probabilidades entre dos modelos anidados $\ell_1/\ell_0$ donde $\ell_0$ es el modelo "más pequeño"; es decir, una restricción lineal sobre los parámetros del modelo (véase el Lema de Neyman-Pearson ), como dijo @suncoolsu. Como tal, se puede utilizar para realizar comparación de modelos . También puede considerarse como una generalización del RSS utilizado en la estimación OLS (ANOVA, regresión), ya que proporciona una medida de bondad de ajuste del modelo que se está evaluando cuando se compara con el modelo nulo (sólo intercepción). También funciona con LM:

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

Los residuos SS (RSS) se calculan como $\hat\varepsilon^t\hat\varepsilon$ que se obtiene fácilmente como:

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

o del (no ajustado) $R^2$

> 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 

desde $R^2=1-\text{RSS}/\text{TSS}$ donde $\text{TSS}$ es la varianza total. Tenga en cuenta que está disponible directamente en una tabla ANOVA, como

> 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 

Ahora, mira la desviación:

> deviance(lm.res)
[1] 98.66754

De hecho, para los modelos lineales la desviación es igual al RSS (puede recordar que las estimaciones OLS y ML coinciden en tal caso).

Desviación y CART

Podemos ver el CART como una forma de asignar ya $n$ etiquetados en clases arbitrarias (en un contexto de clasificación). Los árboles pueden considerarse como un modelo de probabilidad para la pertenencia de los individuos a una clase. Así, en cada nodo $i$ tenemos una distribución de probabilidad $p_{ik}$ sobre las clases. Lo importante aquí es que las hojas del árbol nos dan una muestra aleatoria $n_{ik}$ de una distribución multinomial especificada por $p_{ik}$ . Así, podemos definir la desviación de un árbol, $D$ como la suma de todas las hojas de

$$D_i=-2\sum_kn_{ik}\log(p_{ik}),$$

siguiendo las anotaciones de Venables y Ripley ( MASS Springer 2002, 4ª ed.). Si tiene acceso a esta referencia esencial para los usuarios de R (IMHO), puede comprobar por sí mismo cómo se utiliza dicho enfoque para dividir los nodos y ajustar un árbol a los datos observados (p. 255 y siguientes); básicamente, la idea es minimizar, mediante la poda del árbol, $D+\alpha \#(T)$ donde $\#(T)$ es el número de nodos del árbol $T$ . Aquí reconocemos la compensación de costes y complejidad . Aquí, $D$ es equivalente al concepto de impureza del nodo (es decir, la heterogeneidad de la distribución en un nodo determinado) que se basan en una medida de entropía o ganancia de información, o el conocido índice de Gini, definido como $1-\sum_kp_{ik}^2$ (las proporciones desconocidas se estiman a partir de las proporciones de los nodos).

Con un árbol de regresión, la idea es bastante similar, y podemos conceptualizar la desviación como suma de cuadrados definida para los individuos $j$ por

$$D_i=\sum_j(y_j-\mu_i)^2,$$

sumando todas las hojas. Aquí, el modelo de probabilidad que se considera dentro de cada hoja es una gaussiana $\mathcal{N}(\mu_i,\sigma^2)$ . Citando a Venables y Ripley (p. 256), " $D$ es la desviación escalada habitual para un GLM gaussiano. Sin embargo, la distribución en los nodos internos del árbol es entonces una mezcla de distribuciones normales, por lo que $D_i$ sólo es apropiado en las hojas. El proceso de construcción del árbol debe considerarse como un refinamiento jerárquico de los modelos probabilísticos, muy similar a la selección de variables hacia adelante en la regresión ." La sección 9.2 ofrece información más detallada sobre rpart pero ya se puede ver la implementación de residuals() función para rpart donde los "residuos de desviación" se calculan como la raíz cuadrada de menos dos veces el logaritmo del modelo ajustado.

Introducción al particionamiento recursivo mediante las rutinas rpart de Atkinson y Therneau, es también un buen comienzo. Para una revisión más general (incluyendo el embolsamiento), recomendaría

31voto

David J. Sokol Puntos 1730

Podría ser un poco más claro si pensamos en un modelo perfecto con tantos parámetros como observaciones, de manera que explique toda la varianza de la respuesta. Este es el modelo saturado. La desviación simplemente mide la diferencia de "ajuste" de un modelo candidato y el del modelo saturado.

En un árbol de regresión, el modelo saturado sería aquel que tuviera tantos nodos terminales (hojas) como observaciones para que se ajustara perfectamente a la respuesta. La desviación de un modelo más sencillo puede calcularse como la suma de cuadrados de los residuos de los nodos, sumada en todos los nodos. En otras palabras, la suma de las diferencias al cuadrado entre los valores predichos y los observados. Es el mismo tipo de error (o desviación) que se utiliza en la regresión por mínimos cuadrados.

Para un árbol de clasificación, las sumas de cuadrados residuales no son la medida más adecuada de la falta de ajuste. En su lugar, existe una medida alternativa de desviación, además de que los árboles pueden construirse minimizando una medida de entropía o el índice de Gini. Este último es el predeterminado en rpart . El índice de Gini se calcula como:

$$D_i = 1 - \sum_{k = 1}^{K} p_{ik}^2$$

donde $p_{ik}$ es la proporción observada de la clase $k$ en el nodo $i$ . Esta medida es la suma de todos los terminales $i$ nodos en el árbol para llegar a una desviación para el modelo de árbol ajustado.

11voto

merriam Puntos 67

La desviación es el estadístico de la razón de verosimilitud para probar la hipótesis nula de que el modelo se mantiene frente a la alternativa general (es decir, el modelo saturado). Para algunos MLG de Poisson y binomiales, el número de observaciones $N$ se mantiene fija a medida que los recuentos individuales aumentan de tamaño. Entonces la desviación tiene un distribución nula asintótica chi-cuadrado . Los grados de libertad = N - p, donde p es el número de parámetros del modelo; es decir, es igual al número de parámetros libres en los modelos saturado y no saturado. La desviación proporciona entonces una prueba del ajuste del modelo.

$Deviance = -2[L(\hat{\mathbf{\mu}} | \mathbf{y})-L(\mathbf{y}|\mathbf{y})]$

Sin embargo, la mayoría de las veces, se quiere probar si es necesario eliminar algunas variables. Digamos que hay dos modelos $M_1$ y $M_2$ con $p_1$ y $p_2$ respectivamente, y hay que comprobar cuál de los dos es mejor. Supongamos que $M_1$ es un caso especial de $M_2$ es decir, modelos anidados.

En ese caso, se toma la diferencia de desviación:

$\Delta Deviance = -2[L(\hat{\mathbf{\mu}_1} | \mathbf{y})-L(\hat{\mathbf{\mu}_2}|\mathbf{y})]$

Obsérvese que la probabilidad logarítmica del modelo saturado se cancela y el grado de libertad de $\Delta Deviance$ cambios en $p_2-p_1$ . Esto es lo que usamos más a menudo cuando necesitamos probar si algunos de los parámetros son 0 o no. Pero cuando se ajusta glm en R la salida de desviación es para el modelo saturado frente al modelo actual.

Si quiere leer con más detalle: cf: Categorical Data Analysis by Alan Agresti, pp 118.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X