Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

robustfit

La regresión robusta

Sintaxis

b = robustfit(X,y)
b = robustfit(X,y,wfun,tune)
b = robustfit(X,y,wfun,tune,const)
[b,stats] = robustfit(...)

Descripción

b = robustfit(X,y) Devuelve un vector (+ 1)-por-1 de estimaciones de coeficiente para una regresión multilineal robusta de las respuestas en los predictores en. es una-por-matriz de predictores en cada una de las observaciones. es un vector de respuesta observada de-por-1.pbyXXnppnyn De forma predeterminada, el algoritmo utiliza de manera iterativa los mínimos cuadrados reponderados con una función de ponderación bicuadrada.

Nota

De forma predeterminada, agrega una primera columna de 1s a, correspondiente a un término constante en el modelo.robustfitX No introduzca una columna de 1s directamente en.X Puede cambiar el comportamiento predeterminado del uso de la entradarobustfit constAbajo.

trata a s o como valores faltantes, y los elimina.robustfitNaNXy

b = robustfit(X,y,wfun,tune) especifica una función de ponderación wfun. es una constante de sintonización que se divide en el vector residual antes de calcular pesos.tune

La función de ponderación wfun es uno de los valores descritos en esta tabla. El valor predeterminado es.'bisquare'

Función de pesoDescripciónConstante de sintonización predeterminada
'andrews'w = (abs(r)<pi) .* sin(r) ./ r1,339
'bisquare'(también llamado biweight)w = (abs(r)<1) .* (1 - r.^2).^24,685
'cauchy'w = 1 ./ (1 + r.^2)2,385
'fair'w = 1 ./ (1 + abs(r))1,400
'huber'w = 1 ./ max(1, abs(r))1,345
'logistic'w = tanh(r) ./ r1,205
'ols'Mínimos cuadrados ordinarios (sin función de ponderación)Ninguno
'talwar'w = 1 * (abs(r)<1)2,795
'welsch'w = exp(-(r.^2))2,985
identificador de funciónFunción de peso personalizado que acepta un vector de los residuales a escala, y devuelve un vector de pesos del mismo tamaño querr1

Si no está especificado, utiliza el valor de ajuste predeterminado que se muestra en la tabla.tunerobustfit Las constantes de ajuste predeterminadas de las funciones de ponderación incorporadas proporcionan estimaciones de coeficiente que son aproximadamente 95% estadísticamente eficientes como las estimaciones de mínimos cuadrados ordinarios, siempre que la respuesta tenga una distribución normal sin valores atípicos. La disminución de la constante de sintonización aumenta el peso descendente asignado a los residuales grandes; aumentar la constante de sintonización disminuye el peso descendente asignado a los residuales grandes.

El valor de las funciones de peso esr

r = resid/(tune*s*sqrt(1-h))

donde está el vector de los residuos de la iteración anterior, es el vector de los valores de apalancamiento de un ajuste de mínimos cuadrados, y es una estimación de la desviación estándar del término de error dado porresidhs

s = MAD/0.6745

Aquí está la desviación absoluta mediana de los residuos de su mediana.MAD La constante 0,6745 hace que la estimación sea imparcial para la distribución normal. Si hay columnas en, las desviaciones absolutas más pequeñas se excluyen al calcular la mediana.pXp

b = robustfit(X,y,wfun,tune,const) controla si el modelo incluirá o no un término constante. const es incluir el término constante (el valor predeterminado) o omitirlo.'on''off' Cuando const es, agrega una primera columna de 1s a y se convierte en un vector (+ 1)-por-1.'on'robustfitXbp Cuando const es, no altera, entonces es un vector de-por-1.'off'robustfitXbp

[b,stats] = robustfit(...) Devuelve la estructura, cuyos campos contienen estadísticas de diagnóstico de la regresión.stats Los campos de son:stats

  • — Sigma estimación (RMSE) de mínimos cuadrados ordinariosols_s

  • — Estimación robusta de Sigmarobust_s

  • — Estimación de Sigma calculada utilizando la desviación media absoluta de los residuos de su mediana; utiliza para escalar los residuos durante el ajuste iterativomad_s

  • — Estimación final de Sigma, el mayor y el promedio ponderado de ysrobust_sols_srobust_s

  • — Residuoresid

  • — Residuo con studentized (ver para más información)rstudregress

  • — Error estándar de estimación de coeficientese

  • — Matriz de covarianza estimada para estimaciones de coeficientecovb

  • — Correlación estimada de estimaciones de coeficientecoeffcorr

  • — Relación detbse

  • —-valores parappt

  • — Vector de pesos para un ajuste robustow

  • — factor de descomposición deRRQRX

  • — Grados de libertad de errordfe

  • — Vector de valores de apalancamiento para el ajuste de mínimos cuadradosh

La función estima la matriz de varianza-covarianza de las estimaciones de coeficiente utilizando.robustfitinv(X'*X)*stats.s^2 Los errores estándar y las correlaciones se derivan de esta estimación.

Ejemplos

contraer todo

Genere datos con la tendencia = 10-2 *, luego cambie un valor para simular un outlier.yx

x = (1:10)'; rng default; % For reproducibility y = 10 - 2*x + randn(10,1); y(10) = 0;

Ajuste una línea recta utilizando la regresión de mínimos cuadrados ordinarios.

bls = regress(y,[ones(10,1) x])
bls = 2×1

    7.8518
   -1.3644

Ahora utilice una regresión robusta para estimar un ajuste de línea recta.

brob = robustfit(x,y)
brob = 2×1

    8.4504
   -1.5278

Cree un gráfico de dispersión de los datos junto con los ajustes.

scatter(x,y,'filled'); grid on; hold on plot(x,bls(1)+bls(2)*x,'r','LineWidth',2); plot(x,brob(1)+brob(2)*x,'g','LineWidth',2) legend('Data','Ordinary Least Squares','Robust Regression')

El ajuste robusto está menos influenciado por el valor atípico que el ajuste de mínimos cuadrados.

Referencias

[1] DuMouchel, W. H., and F. L. O'Brien. “Integrating a Robust Option into a Multiple Regression Computing Environment.” Computer Science and Statistics: Proceedings of the 21st Symposium on the Interface. Alexandria, VA: American Statistical Association, 1989.

[2] Holland, P. W., and R. E. Welsch. “Robust Regression Using Iteratively Reweighted Least-Squares.” Communications in Statistics: Theory and Methods, A6, 1977, pp. 813–827.

[3] Huber, P. J. Robust Statistics. Hoboken, NJ: John Wiley & Sons, Inc., 1981.

[4] Street, J. O., R. J. Carroll, and D. Ruppert. “A Note on Computing Robust Regression Estimates via Iteratively Reweighted Least Squares.” The American Statistician. Vol. 42, 1988, pp. 152–154.

Consulte también

|

Introducido antes de R2006a