1 votos

Matriz derivada de $(\mathbf{Y-X \beta})^T\mathbf{P}(\mathbf{Y-X \beta})$

Estoy tratando de calcular la derivada de $$(\mathbf{Y-X \beta})^T\mathbf{P}(\mathbf{Y-X \beta}) $$ donde $\mathbf{P}$ es una matriz definida positiva. Las dimensiones reales de cada elemento no se dan en la especificación de la pregunta, pero como se trata de minimizar $\beta$ para el análisis de regresión, creo que $\mathbf{X}$ es mxn, $\mathbf{\beta}\in \mathbf{R}^n$ y $\mathbf{Y}\in \mathbf{R}^m$ . En primer lugar, amplío la expresión,

$$(\mathbf{Y-X \beta})^T\mathbf{P}(\mathbf{Y-X \beta}) = (\mathbf{Y^TP-\beta^T\mathbf{X}^TP})(\mathbf{Y-X \beta}) = \mathbf{Y^TPY-Y^TPX\beta -\beta^TX^TPY+\beta^TX^TPX\beta} $$

Ahora tomo la derivada para wrt $\beta$ . Para el término final, estoy utilizando que es una forma cuadrática y creo que estoy asumiendo $\mathbf{X^TPX}$ es simétrica. Sólo estoy usando identidades en - https://en.wikipedia.org/wiki/Matrix_calculus De todos modos lo entiendo,

$$\mathbf{-Y^TPX-Y^TPX}+2\mathbf{\beta^TX^TPX} = -2\mathbf{Y^TPX+2\beta^TX^TPX}$$

Desde aquí, puedo equiparar a $0$ y tomar la transposición, para resolver $\beta$ (asumiendo que todo es invertible por ahora, no te preocupes).

$$\mathbf{\beta^TX^TPX=Y^TPX}\iff \mathbf{X^TPX\beta=X^TPY} \iff \beta=\mathbf{(X^TPX)^{-1}X^TPY}$$

Las soluciones lo resuelven de forma ligeramente diferente. Dijeron desde entonces, $(\mathbf{Y-X \beta})^T\mathbf{P}(\mathbf{Y-X \beta})$ ya es una forma cuadrática, podemos usarla para calcular la derivada como $$\mathbf{-X^T}2\mathbf{P(Y-X\beta})=-2\mathbf{X^TPY} + 2{\mathbf{X^TPX\beta}}$$ . Como puedes ver, esto es lo mismo que mi derivada, pero transpuesta. Por supuesto, una vez que transpongo para resolver para $\beta$ Pero no es así y obtenemos la misma solución final. Tengo dos preguntas.

  1. ¿Es el método que he hecho incorrecto, es decir, si la pregunta era sólo calcular la derivada lo he hecho mal. Si es así, ¿podría indicarme dónde he cometido el error?

  2. Podría alguien recomendar alguna bibliografía/página web que explique el proceso que siguieron las soluciones para tomar la derivada al detectar que era una forma cuadrática.

¡Muchas gracias!

1voto

greg Puntos 156

$\def\d{\cdot}\def\p#1#2{\frac{\partial #1}{\partial #2}}$ El uso de un explícito El producto punto suele evitar errores de transposición como el que ha encontrado, y reducir desorden visual minimizará las distracciones durante el proceso de diferenciación. Para ello, defina el vector de trabajo $$\eqalign{ w &= X\d b-y \\ }$$ Escriba el error de regresión en términos de este nuevo vector, calcule el gradiente y luego sustituya las variables originales. $$\eqalign{ {\cal E} &= w\d P\d w \\ d{\cal E} &= 2w\d P\d dw = 2w\d P\d X\d db = 2\big(X^T\d P\d w\big)\d db \\ \p{\cal E}{b} &= 2X^T\d P\d w = 2X^T\d P\d \big(X\d b-y\big) \\ }$$ NB:   El $P$ se ha supuesto que la matriz es simétrica, si no es así debe sustituirse por su componente simétrica, es decir $\;P=\tfrac 12\left(P+P^T\right).$

Ahora puedes proceder como de costumbre: poner el gradiente a cero y resolver el óptimo $b$ vectorial. $$\eqalign{ P &= L\d L^T &\qquad\big({\rm Cholesky\,factorization}\big) \\ R &= L^T\d X \\ R^T\d R\d b &= R^T\d L^T\d y \\ b &= R^+\d L^T\d y &\qquad\big(R^+{\rm \,is\,the\,Moore\,Penrose\,inverse}\big) \\ }$$

0voto

schooner Puntos 1602

La derivada que se desea es la derivada de Fréchet (véase https://en.wikipedia.org/wiki/Fr%C3%A9chet_derivative ). Sea $$ \mathbf f(\beta)=(\mathbf{Y-X\beta})^T\mathbf{P}(\mathbf{Y-X \beta}). $$ Entonces \begin{eqnarray} D\mathbf f(\beta)\mathbf h&=&\lim_{t\to0}\frac{\mathbf f(\beta+t\mathbf h)-\mathbf f(\beta)}{t}\\ &=&\lim_{t\to0}\frac{-t(\mathbf{Y}-\mathbf{X}\beta)^T\mathbf{Ph}-t\mathbf{h}^T\mathbf{P}(\mathbf{Y}-\mathbf{X}\beta)+t^2\mathbf{h}^T\mathbf{Ph}}{t}\\ &=&-(\mathbf{Y}-\mathbf{X}\beta)^T\mathbf{Ph}-\mathbf{h}^T\mathbf{P}(\mathbf{Y}-\mathbf{X}\beta). \end{eqnarray}

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