He creado una simulación que responda a Breiman la descripción y encontró que sólo el obvio: el resultado depende del contexto y de lo que se entiende por "extrema".
Un montón de cosas podría decir, sino que me limitaré a sólo un ejemplo llevada a cabo por medio de fácilmente modificados R
código para los lectores interesados a utilizar en sus propias investigaciones. Este código comienza por la creación de un diseño de la matriz que consta de aproximadamente distribuidos de manera uniforme independiente de los valores que son aproximadamente ortogonales (para no entrar en problemas de multicolinealidad). Se calcula una sola cuadrática (es decir, no lineal) de la interacción entre las dos primeras variables: este es sólo uno de los muchos tipos de "no linealidad" que podían ser estudiadas, pero al menos es un común, que se entiende bien. Luego se normaliza todo, por lo que los coeficientes serán comparables:
set.seed(41)
p <- 7 # Dimensions
n <- 2^p # Observations
x <- as.matrix(do.call(expand.grid, lapply(as.list(1:p), function(i) c(-1,1))))
x <- x + runif(n*p, min=-1, max=1)
x <- cbind(x, x.12 = x[,1]*x[,2]) # The nonlinear part
x <- apply(x, 2, function(y) (y - mean(y))/sd(y)) # Standardization
Para la base de MCO del modelo (sin falta de linealidad) debemos especificar algunos de los coeficientes y de la desviación estándar del error residual. Aquí es un conjunto de unidad de los coeficientes y de un comparables SD:
beta <- rep(c(1,-1), p)[1:p]
sd <- 1
Para ilustrar la situación, aquí es una rígida iteración de la simulación. Se genera la variable dependiente, un resumen de sus valores, muestra el total matriz de correlaciones de todas las variables (incluida la interacción), y muestra un diagrama de dispersión de la matriz. A continuación, se realiza la regresión por MCO. En el siguiente, el coeficiente de interacción de $1/4$ es sustancialmente más pequeño que cualquiera de los otros coeficientes (todos iguales a $1$ o $-1$), por lo que sería difícil de la llamada "extrema":
gamma = 1/4 # The standardized interaction term
df <- data.frame(x)
df$y <- x %*% c(beta, gamma) + rnorm(n, sd=sd)
summary(df)
cor(df)*100
plot(df, lower.panel=function(x,y) lines(lowess(y~x)),
upper.panel=function(x,y) points(x,y, pch=".", cex=4))
summary(lm(df$y ~ x))
En lugar de vadear a través de todos los de salida de aquí, vamos a buscar a estos datos utilizando la salida de la plot
comando:
El lowess huellas en el triángulo inferior muestran esencialmente no hay una relación lineal entre la interacción (x.12
) y la variable dependiente (y
) y modesto relaciones lineales entre las variables y y
. El OLS resultados confirman que; la interacción es apenas significativo:
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 0.0263 0.0828 0.32 0.751
xVar1 0.9947 0.0833 11.94 <2e-16 ***
xVar2 -0.8713 0.0842 -10.35 <2e-16 ***
xVar3 1.0709 0.0836 12.81 <2e-16 ***
xVar4 -1.0007 0.0840 -11.92 <2e-16 ***
xVar5 1.0233 0.0836 12.24 <2e-16 ***
xVar6 -0.9514 0.0835 -11.40 <2e-16 ***
xVar7 1.0482 0.0835 12.56 <2e-16 ***
xx.12 0.1902 0.0836 2.27 0.025 *
Voy a tomar el p-valor del término de interacción como una prueba de no linealidad: cuando el p-valor es lo suficientemente baja (usted puede elegir cómo baja), le han detectado la no linealidad.
(Hay una sutileza aquí qué es exactamente lo que estamos buscando. En la práctica podríamos necesidad de examinar todas 7*6/2 = 21 posibles, cuadrática de las interacciones, así como, quizás, de más de 7 cuadrática términos, en lugar de centrarse en un solo término, como se hace aquí. Nos gustaría hacer una corrección para estos 28 de inter-relacionados con las pruebas. Yo no explícitamente hacer esta corrección aquí, porque en lugar de mostrar la simulación de la distribución de los p-valores. Usted puede leer las tasas de detección directamente a partir de los histogramas final que se basa en su umbrales de importancia.)
Pero no hagamos de este análisis, solo una vez; vamos a hacerlo un montón de veces, la generación de nuevos valores de y
en cada iteración de acuerdo con el mismo modelo y el mismo diseño de la matriz. Para lograr esto, se utiliza una función para llevar a cabo una iteración y devolver el p-valor del término de interacción:
test <- function(gamma, sd=1) {
y <- x %*% c(beta, gamma) + rnorm(n, sd=sd)
fit <- summary(lm(y ~ x))
m <- coef(fit)
n <- dim(m)[1]
m[n, 4]
}
Yo elija para presentar los resultados de la simulación como histogramas de los valores de p, variando el coeficiente estandarizado gamma
del término de interacción. En primer lugar, los histogramas:
h <- function(g, n.trials=1000) {
hist(replicate(n.trials, test(g, sd)), xlim=c(0,1),
main=toString(g), xlab="x1:x2 p-value")
}
par(mfrow=c(2,2)) # Draw a 2 by 2 panel of results
Ahora para hacer el trabajo. Se toma unos segundos para 1000 ensayos por la simulación (y cuatro simulaciones independientes, comenzando con el valor dado del término de interacción y, sucesivamente, reducir a la mitad cada vez):
temp <- sapply(2^(-3:0) * gamma, h)
Los resultados:
Leer hacia atrás desde la parte inferior derecha, con estos gráficos muestran que para este diseño de la matriz x
, para esta desviación estándar de los errores de sd
, y para estos coeficientes tipificados beta
, OLS puede detectar un estándar de la interacción de $1/4$ (apenas una cuarta parte del tamaño de los otros coeficientes) de forma fiable, más del 80% del tiempo (con un 5% umbral para el valor de p--a recordar la breve discusión acerca de la corrección para comparaciones múltiples, que ahora estoy ignorando); a menudo puede detectar una interacción tamaño de $1/8$ (alrededor de 20% del tiempo); a veces va a detectar una interacción de tamaño $1/16$, y realmente no puede identificar ningún interacciones de menor tamaño. No se muestra aquí es un histograma para gamma
igual a $1/2$, lo que demuestra que incluso cuando la corrección para comparaciones múltiples, una ecuación cuadrática de la interacción de este gran es casi seguramente detectado.
Si usted toma estas interacciones, que varían en tamaño desde $1/32$$1/4$, para ser "extremo" o no dependerá de su perspectiva, en la regresión de la situación (expresados como x
, sd
y beta
), en cuantas pruebas independientes de la no linealidad te imaginas llevando a cabo, y, ritmo Breiman, a quien yo respeto mucho, tal vez si usted tiene un hacha para moler. Usted sin duda puede hacer que sea difícil para OLS para detectar la no linealidad: sólo infla sd
por lo que los pantanos de la no linealidad y, simultáneamente, la conducta de muchos diferentes pruebas de bondad de ajuste.
En definitiva, una simulación de como esto puede ser lo que usted como si usted acaba de configurar e interpretar de la manera correcta. Que sugiere que el individuo estadístico deben llevar a cabo sus propias exploraciones, adecuadas a los problemas específicos que enfrentan, con el fin de llegar a un personal y una profunda comprensión de las capacidades y debilidades de los procedimientos que se están utilizando.