Articulo de referencia

Algoritmo de ajuste inverso

En estadística , el algoritmo de ajuste inverso es un procedimiento iterativo sencillo que se utiliza para ajustar un modelo aditivo generalizado . Fue introducido en 1985 por L...

En estadística , el algoritmo de ajuste inverso es un procedimiento iterativo sencillo que se utiliza para ajustar un modelo aditivo generalizado . Fue introducido en 1985 por Leo Breiman y Jerome Friedman junto con los modelos aditivos generalizados. En la mayoría de los casos, el algoritmo de ajuste inverso es equivalente al método de Gauss - Seidel , un algoritmo utilizado para resolver un sistema de ecuaciones lineales .

Algoritmo

Los modelos aditivos son una clase de modelos de regresión no paramétricos de la forma:

Yi=α+j=1pagFj(incógnitaij)+ϵi{\displaystyle Y_{i}=\alpha +\sum _{j=1}^{p}f_{j}(X_{ij})+\epsilon _{i}}

donde cadaincógnita1,incógnita2,,incógnitapag{\displaystyle X_{1},X_{2},\ldots ,X_{p}}es una variable en nuestropag{\displaystyle p}predictor dimensionalincógnita{\displaystyle X}, yY{\displaystyle Y}es nuestra variable de resultado.ϵ{\displaystyle \epsilon }representa nuestro error inherente, que se supone que tiene media cero.Fj{\displaystyle f_{j}}representan funciones suaves no especificadas de un únicoincógnitaj{\displaystyle X_{j}}. Dada la flexibilidad en elFj{\displaystyle f_{j}}Por lo general, no tenemos una solución única:α{\displaystyle \alpha }queda sin identificar ya que se pueden agregar constantes a cualquiera de lasFj{\displaystyle f_{j}}y restar este valor deα{\displaystyle \alpha }Es común rectificar esto restringiendo

i=1norteFj(incógnitaij)=0{\displaystyle \sum _{i=1}^{N}f_{j}(X_{ij})=0}a pesar dej{\displaystyle j}

partida

α=1/nortei=1norteyi{\displaystyle \alpha =1/N\sum _ {i=1}^{N}y_ {i}}

necesariamente.

El algoritmo de ajuste inverso es entonces:

Inicializarα^=1/nortei=1norteyi,Fj^0{\displaystyle {\hat {\alpha }}=1/N\sum _{i=1}^{N}y_{i},{\hat {f_{j}}}\equiv 0},j{\displaystyle \forall j}Hazlo hasta queFj^{\displaystyle {\sombrero {f_{j}}}}converge: Para cada predictor j : (a)Fj^Liso[{yiα^kjFk^(incógnitaik)}1norte]{\displaystyle {\hat {f_{j}}}\leftarrow {\text{Suave}}[\lbrace y_{i}-{\hat {\alpha }}-\sum _{k\neq j}{\hat {f_{k}}}(x_{ik})\rbrace _{1}^{N}]}(paso de ajuste posterior) (b)Fj^Fj^1/nortei=1norteFj^(incógnitaij){\displaystyle {\hat {f_{j}}}\leftarrow {\hat {f_{j}}}-1/N\sum _{i=1}^{N}{\hat {f_{j}}}(x_{ij})}(centrado medio de la función estimada)

dóndeLiso{\displaystyle {\text{Suave}}}es nuestro operador de alisado. Normalmente se elige un alisador de spline cúbico , pero puede ser cualquier otra operación de ajuste apropiada, como por ejemplo:

En teoría, el paso (b) del algoritmo no es necesario, ya que las estimaciones de la función están restringidas a sumar cero. Sin embargo, debido a problemas numéricos, esto podría convertirse en un problema en la práctica. [ 1 ]

Motivación

Si consideramos el problema de minimizar el error cuadrático esperado:

minα,Fj mi[(Yαj=1pagFj(incógnitaj))2]{\displaystyle \min _{\alpha ,f_{j}}\ \mathbb {E} [(Y-\alpha -\sum _ {j=1}^{p}f_{j}(X_{j}))^{2}]}

Existe una solución única según la teoría de proyecciones dada por:

Fi(incógnitai)=mi[YαjipagFj(incógnitaj)incógnitai]{\displaystyle f_{i}(X_{i})=\mathbb {E} [Y-\alpha -\sum _{j\neq i}^{p}f_{j}(X_{j})\mid X_{i}]}

para i  =  1,  2,  ..., p . 

Esto proporciona la interpretación de la matriz:

(IPAG1PAG1PAG2IPAG2PAGpagPAGpagI)(F1(incógnita1)F2(incógnita2)Fpag(incógnitapag))=(PAG1YPAG2YPAGpagY){\displaystyle {\begin{pmatrix}I&P_{1}&\cdots &P_{1}\\P_{2}&I&\cdots &P_{2}\\\vdots &&\ddots &\vdots \\P_{p}&\cdots &P_{p}&I\end{pmatrix}}{\begin{pmatrix}f_{1}(X_{1})\\f_{2}(X_{2})\\\vdots \\f_{p}(X_{p})\end{pmatrix}}={\begin{pmatrix}P_{1}Y\\P_{2}Y\\\vdots \\P_{p}Y\end{pmatrix}}}

dóndePAGi()=mi(|incógnitai){\displaystyle P_{i}(\cdot )=\mathbb {E} (\cdot |X_{i})}. En este contexto podemos imaginar una matriz más suave,Si{\displaystyle S_{i}}, que se aproxima a nuestroPAGi{\displaystyle P_{i}}y da una estimación,SiY{\displaystyle S_{i}Y}, demi(Y|incógnita){\displaystyle \mathbb {E} (Y|X)}

(IS1S1S2IS2SpagSpagI)(F1F2Fpag)=(S1YS2YSpagY){\displaystyle {\begin{pmatrix}I&S_{1}&\cdots &S_{1}\\S_{2}&I&\cdots &S_{2}\\\vdots &&\ddots &\vdots \\S_{p}&\cdots &S_{p}&I\end{pmatrix}}{\begin{pmatrix}f_{1}\\f_{2}\\\vdots \\f_{p}\end{pmatrix}}={\begin{pmatrix}S_{1}Y\\S_{2}Y\\\vdots \\S_{p}Y\end{pmatrix}}}

o en forma abreviada

S^F=QY{\displaystyle {\hat {S}}f=QY\,}

Es inviable calcular una solución exacta para esto para np grande , por lo que se utiliza la técnica iterativa de ajuste inverso. Tomamos estimaciones iniciales.Fj(0){\displaystyle f_{j}^{(0)}}y actualizar cadaFj(){\displaystyle f_{j}^{(\ell )}}a su vez, ser el ajuste suavizado para los residuos de todos los demás:

Fj^()Liso[{yiα^kjFk^(incógnitaik)}1norte]{\displaystyle {\hat {f_{j}}}^{(\ell )}\leftarrow {\text{Suave}}[\lbrace y_{i}-{\hat {\alpha }}-\sum _{k\neq j}{\hat {f_{k}}}(x_{ik})\rbrace _{1}^{N}]}

Al observar la forma abreviada , es fácil ver que el algoritmo de ajuste inverso es equivalente al método de Gauss - Seidel para operadores de suavizado lineal S.

Derivación explícita para dos dimensiones

A continuación, [ 2 ] podemos formular explícitamente el algoritmo de ajuste inverso para el caso bidimensional. Tenemos:

F1=S1(YF2),F2=S2(YF1){\displaystyle f_{1}=S_{1}(Y-f_{2}),f_{2}=S_{2}(Y-f_{1})}

Si denotamosF^1(i){\displaystyle {\hat {f}}_{1}^{(i)}}como la estimación deF1{\displaystyle f_{1}}En el i -ésimo paso de actualización, los pasos de ajuste posterior son:

F^1(i)=S1[YF^2(i1)],F^2(i)=S2[YF^1(i)]{\displaystyle {\hat {f}}_{1}^{(i)}=S_{1}[Y-{\hat {f}}_{2}^{(i-1)}],{\hat {f}}_{2}^{(i)}=S_{2}[Y-{\hat {f}}_{1}^{(i)}]}

Por inducción obtenemos

F^1(i)=Yα=0i1(S1S2)α(IS1)Y(S1S2)i1S1F^2(0){\displaystyle {\hat {f}}_{1}^{(i)}=Y-\sum _{\alpha =0}^{i-1}(S_{1}S_{2})^{\alpha }(I-S_{1})Y-(S_{1}S_{2})^{i-1}S_{1}{\hat {f}}_{2}^{(0)}}

y

F^2(i)=S2α=0i1(S1S2)α(IS1)Y+S2(S1S2)i1S1F^2(0){\displaystyle {\hat {f}}_{2}^{(i)}=S_{2}\sum _{\alpha =0}^{i-1}(S_{1}S_{2})^{\alpha }(I-S_{1})Y+S_{2}(S_{1}S_{2})^{i-1}S_{1}{\hat {f}}_{2}^{(0)}}

Si establecemosF^2(0)=0{\displaystyle {\hat {f}}_{2}^{(0)}=0}entonces obtenemos

F^1(i)=YS21F^2(i)=[Iα=0i1(S1S2)α(IS1)]Y{\displaystyle {\hat {f}}_{1}^{(i)}=Y-S_{2}^{-1}{\hat {f}}_{2}^{(i)}=[I-\sum _{\alpha =0}^{i-1}(S_{1}S_{2})^{\alpha }(I-S_{1})]Y}
F^2(i)=[S2α=0i1(S1S2)α(IS1)]Y{\displaystyle {\hat {f}}_{2}^{(i)}=[S_{2}\sum _{\alpha =0}^{i-1}(S_{1}S_{2})^{\alpha }(I-S_{1})]Y}

Donde hemos resueltoF^1(i){\displaystyle {\hat {f}}_{1}^{(i)}}desenchufándolo directamente deF2=S2(YF1){\displaystyle f_{2}=S_{2}(Y-f_{1})}.

Tenemos convergencia siS1S2<1{\displaystyle \|S_{1}S_{2}\|<1}En este caso, dejarF^1(i),F^2(i)F^1(),F^2(){\displaystyle {\hat {f}}_{1}^{(i)},{\hat {f}}_{2}^{(i)}{\xrightarrow {}}{\hat {f}}_{1}^{(\infty )},{\hat {f}}_{2}^{(\infty )}}:

F^1()=YS21F^2()=Y(IS1S2)1(IS1)Y{\displaystyle {\hat {f}}_{1}^{(\infty )}=Y-S_{2}^{-1}{\hat {f}}_{2}^{(\infty )}=Y-(I-S_{1}S_{2})^{-1}(I-S_{1})Y}
F^2()=S2(IS1S2)1(IS1)Y{\displaystyle {\hat {f}}_{2}^{(\infty )}=S_{2}(I-S_{1}S_{2})^{-1}(I-S_{1})Y}

Podemos comprobar que esta es una solución al problema, es decir queF^1(i){\displaystyle {\hat {f}}_{1}^{(i)}}yF^2(i){\displaystyle {\hat {f}}_{2}^{(i)}}converger aF1{\displaystyle f_{1}}yF2{\displaystyle f_{2}}de forma correspondiente, sustituyendo estas expresiones en las ecuaciones originales.

Asuntos

La elección del momento para detener el algoritmo es arbitraria y es difícil saber a priori cuánto tiempo llevará alcanzar un umbral de convergencia específico. Además, el modelo final depende del orden en que se introducen las variables predictoras.incógnitai{\displaystyle X_{i}}están en forma.

Además, la solución encontrada por el procedimiento de ajuste inverso no es única. Sib{\displaystyle b}es un vector tal queS^b=0{\displaystyle {\hat {S}}b=0}desde arriba, entonces siF^{\displaystyle {\hat {f}}}Si es una solución, entonces también lo es.F^+αb{\displaystyle {\hat {f}}+\alpha b}también es una solución para cualquierαR{\displaystyle \alpha \in \mathbb {R} }Una modificación del algoritmo de ajuste inverso que involucre proyecciones sobre el espacio propio de S puede solucionar este problema.

Algoritmo modificado

Podemos modificar el algoritmo de ajuste inverso para que sea más fácil proporcionar una solución única.V1(Si){\displaystyle {\mathcal {V}}_{1}(S_{i})}Sea el espacio generado por todos los autovectores de S i que corresponden al autovalor 1. Entonces, cualquier b que satisfagaS^b=0{\displaystyle {\hat {S}}b=0}tienebiV1(Si)i=1,,pag{\displaystyle b_{i}\in {\mathcal {V}}_{1}(S_{i})\forall i=1,\dots ,p}yi=1pagbi=0.{\displaystyle \sum _{i=1}^{p}b_{i}=0.}Ahora, si tomamosA{\displaystyle A}ser una matriz que se proyecta ortogonalmente sobreV1(S1)++V1(Spag){\displaystyle {\mathcal {V}}_{1}(S_{1})+\dots +{\mathcal {V}}_{1}(S_{p})}, obtenemos el siguiente algoritmo de ajuste inverso modificado:

Inicializarα^=1/norte1norteyi,Fj^0{\displaystyle {\hat {\alpha }}=1/N\sum _{1}^{N}y_{i},{\hat {f_{j}}}\equiv 0},i,j{\displaystyle \forall i,j},F+^=α+F1^++Fpag^{\displaystyle {\hat {f_{+}}}=\alpha +{\hat {f_{1}}}+\dots +{\hat {f_{p}}}}Hazlo hasta queFj^{\displaystyle {\hat {f_{j}}}}converger: RegresoyF+^{\displaystyle y-{\hat {f_{+}}}}en el espacioV1(Si)++V1(Spag){\displaystyle {\mathcal {V}}_{1}(S_{i})+\dots +{\mathcal {V}}_{1}(S_{p})}, configuracióna=A(YF+^){\displaystyle a=A(Y-{\hat {f_{+}}})}Para cada predictor j : Aplicar actualización de ajuste de espalda a(Ya){\displaystyle (Y-a)}utilizando el operador de suavizado(IAi)Si{\displaystyle (I-A_{i})S_{i}}, lo que arroja nuevas estimaciones paraFj^{\displaystyle {\hat {f_{j}}}}

Referencias

  1. Hastie, Trevor , Robert Tibshirani y Jerome Friedman (2001). Los elementos del aprendizaje estadístico: minería de datos, inferencia y predicción . Springer, ISBN 0-387-95284-5.
  2. Härdle, Wolfgang; et al. (9 de junio de 2004). "Backfitting". Archivado del original el 10 de mayo de 2015. Recuperado el 19 de agosto de 2015.
  • Breiman, L. y Friedman, JH (1985). "Estimación de transformaciones óptimas para regresión múltiple y correlaciones (con discusión)". Journal of the American Statistical Association . 80 (391): 580– 619. doi : 10.2307/2288473 . JSTOR 2288473 . 
  • Hastie, TJ y Tibshirani, RJ (1990). "Modelos aditivos generalizados". Monografías sobre estadística y probabilidad aplicada . 43 .
  • Härdle, Wolfgang; et  al. (9 de junio de 2004). "Backfitting" . Archivado del original el 10 de mayo de 2015. Recuperado el 19 de agosto de 2015 .
  • Paquete R para el ajuste retroactivo de GAM
  • Paquete R para la adaptación de la parte trasera de BRUTO