4 votos

Cálculo de la derivada de una forma cuadrática y regla de la cadena matricial

Estoy trabajando en el uso del Método Generalizado de los Momentos para analizar algunos datos de compras de yogur, y al tratar de implementar el método estándar de Hansen (es decir, no un método de verosimilitud empírica), necesito calcular las derivadas primera y segunda de la siguiente función:

$$Q(\theta) = \biggl[\frac{1}{N}\sum_{i=1}^{N}\psi(Z_{i},\theta)\biggr]^{T}C\biggl[\frac{1}{N}\sum_{i=1}^{N}\psi(Z_{i},\theta)\biggr].$$

Aquí, $\psi(Z_{i},\theta)$ es una función vectorial (en mi caso un vector columna de 9 por 1 de las condiciones de momento; se puede pensar en cada componente como una función del parámetro escalar $\theta$ si lo desea). El $Z_{i}$ son los datos de las compras individuales. $C$ es una matriz de pesos derivada de las suposiciones del modelo, pero se puede tratar como la matriz de identidad de tamaño adecuado si se quiere; no debería importar ya que no es una función de $\theta$ .

Si dejo que $$F(\theta) = \biggl[\frac{1}{N}\sum_{i=1}^{N}\psi(Z_{i},\theta)\biggr]$$ para simplificar, entonces el lugar donde me estoy atascando es en el cálculo de la primera y segunda derivada de $Q_{C}$ por ejemplo $\theta$ . Se trata de una función objetivo de valor escalar de una sola variable, por lo que todo lo que se involucra debe ser un escalar.

Basado en el Artículo de Wikipedia sobre el cálculo matricial Aquí está lo que he probado hasta ahora. $$\frac{dQ}{d\theta} = \frac{dQ}{dF}\cdot{}\frac{dF}{d\theta} = \biggl[ F(\theta)^{T}(C+C^{T})\biggr]\cdot{}\biggl[\frac{d}{d\theta}F(\theta)\biggr]$$

A continuación quiero volver a tomar la derivada, así que uso las reglas de la cadena matricial y del producto. En mi caso, sucede que el término final, $\frac{d}{d\theta}F(\theta)$ ya no es una función de $\theta$ (sólo constantes en todos los componentes), por lo que su derivada será cero y sólo tendremos que preocuparnos de la primera parte del producto.

$$\frac{d}{d\theta}\biggl[ F(\theta)^{T}(C+C^{T})\biggr]\cdot{}\biggl[\frac{d}{d\theta}F(\theta)\biggr].$$

Por lo que veo, esto sólo da lugar a lo siguiente: $$ \frac{d}{d\theta}\biggl[ F(\theta)^{T}(C+C^{T})\biggr]\cdot{}\biggl[\frac{d}{d\theta}F(\theta)\biggr] = \biggl(\frac{d}{d\theta}F(\theta) \biggr)^{T}(C+C^{T})\biggl(\frac{d}{d\theta}F(\theta) \biggr).$$

Esto da una buena fórmula, pero cuando uso estos resultados para la primera y segunda derivadas para programar el método de Newton para encontrar el valor de $\theta$ que minimiza la forma cuadrática, el método no converge, y me preocupa que sea porque he calculado mal las derivadas (falta una transposición, o algo así).

Además, se agradecerían enlaces a referencias buenas y claramente escritas que expliquen la lógica del cálculo matricial, especialmente cuándo y por qué se producen las transposiciones. Casi todas las referencias que he podido encontrar en más de 30 minutos de búsqueda en Google eran absolutamente inescrutables y tendían a limitarse a exponer resultados sin ninguna exposición.

2 votos

Maldita sea. Yogur. ¿De verdad?

0 votos

Sí, también estoy trabajando con datos salariales para predecir las decisiones de compra de marcas de yogur en función de los datos salariales. Los datos salariales proceden de un artículo muy conocido, Abowd y Card (1989) "On the Covariance Structure of Earnings and Hours Changes", Econometrica, 57 (2), 441-445. Esta parte del GMM consiste en estimar un parámetro para un modelo autorregresivo sobre los ingresos.

3 votos

Me recuerda a la película "99 francos", en la que un tipo creador de anuncios se volvía loco con la coca y demás porque hacía anuncios para esta empresa de yogures Madone (parodia de Danone). Sabía que hay aplicaciones para lo que hacemos, pero me choca que se utilice para... analizar el mercado del yogur... aunque tenga sentido.

1voto

Daniel Schierbeck Puntos 962

Dejando que los primos denoten las derivadas con respecto a $\theta$ y $A=C+C^T$ Estoy de acuerdo con sus cálculos $$ \eqalign{ &&\href{.}{\text{reasons:}}\\ Q'' &=\frac{d^2Q}{d\theta^2} =\frac{d}{d\theta} \left(F^T\cdot A\cdot F\,'\right)\qquad & \href{http://en.wikipedia.org/wiki/Matrix\_calculus#Identities}{\\text{chain rule, }} \href{http://en.wikipedia.org/wiki/Matrix\_calculus#Derivative\_of\_quadratic\_functions}{\\frac{\\partial{\\mathbf{x}^T\\mathbf{C}\\mathbf{x}}}{\\partial\\mathbf{x}}=\\mathbf{x}^T\\left(\\mathbf{C}+\\mathbf{C}^T\\right)} \\ &=\left(\frac{d}{d\theta} F^T\cdot A\right)\cdot F\,' &\href{http://en.wikipedia.org/wiki/Matrix\_calculus#Identities}{\\text{product rule}}\href{.}{\text{, assumption }F\,''=0} \\ &=\left(F\,'\right)^T\cdot A \cdot F\,' &\href{http://en.wikipedia.org/wiki/Matrix\_calculus#Identities}{\\text{product rule}}\href{.}{\text{, assumption }A\,'=0} \\&&\text{or } \href{http://en.wikipedia.org/wiki/Matrix\_calculus#Identities}{\\text{chain rule, }} \href{http://en.wikipedia.org/wiki/Matrix\_calculus#Derivative\_of\_linear\_functions}{\\frac{\\partial{\\mathbf{x}^T\\mathbf{A}}}{\\partial\\mathbf{x}}=\\mathbf{A}} } $$ La lógica se basa en la suma. Todas las transposiciones son las necesarias debido a la forma en que definimos los productos de la matriz. Para los vectores $\vec{x},\vec{y}\in\mathbb{R}^n\cong\mathbb{R}^{n\times1}$ identificado con $n\times1$ matrices de columnas , $$ \eqalign{ \vec{x}^T\cdot\vec{y} &=\left[\matrix{x_1\\\vdots\\x_n}\right]^T \cdot \left[\matrix{y_1\\\vdots\\y_n}\right] \\ &=\left[\matrix{x_1&\cdots&x_n}\right] \cdot \left[\matrix{y_1\\\vdots\\y_n}\right] \\ &=\sum_{i=1}^n x_i y_i } $$ La notación tensorial va más allá y prescinde de los signos de suma, pero introduce una convención de emparejamiento superíndice-subíndice en la cancelación de los índices: $x_iy^i$ (o $x^iy_i$ ), para lo anterior. Pero como se trata de una única cantidad real, la regla del producto normal se aplica a su derivada, y luego las reglas del producto matricial hacen que podamos escribirla como aparecen en diversas fuentes. Una buena fuente sería un libro de análisis real, cálculo/análisis vectorial, cálculo/análisis tensorial o geometría diferencial. Para un ejemplo (de análisis real), Principios de Análisis Matemático de Rudin, pero probablemente haya también muchas otras buenas recomendaciones.

Así que la segunda derivada de una forma cuadrática en $\mathbf{x}(\theta)$ con matriz constante $C$ , donde $\mathbf{x}''=\mathbf{0}$ es otra forma cuadrática, en $\mathbf{x}'$ con la matriz $A=C+C^T$ . Es bueno saberlo.

En cuanto a la convergencia, ¿se cumplen las condiciones del método de Newton? ¿Es $Q'\ne0$ en un intervalo adecuado $I$ de $\theta$ ? ¿Conoce el valor de $$M=\sup_{\theta\in I}\frac12\left|\frac{Q''}{Q'}\right|,$$ su constante de convergencia cuadrática (es decir, para que $|\epsilon_{n+1}|\le M\epsilon_n^2$ )? Y, por último, ¿tiene buenas estimaciones iniciales?

Además, ¿cuál es la geometría (es decir, valores/vectores propios, índice de Witt) de $C$ & $A$ ?

0 votos

Gracias por las aclaraciones. Después de volver a hacer una depuración, encontré una razón diferente por la que el código no convergía. Al final, con las derivadas que había calculado, conseguí que convergiera.

2 votos

Si te digo mis ingresos, ¿me dirás qué yogur comprar? =)

1voto

hans Puntos 21

Dejemos que ${\rm sym}(X)=\frac{1}{2}(X+X^T)$ denota la función que devuelve la parte simétrica de una matriz,
y que $A=2\,{\rm sym}(C)=(C+C^T)$ .

Entonces escriba la función objetivo en términos de el Producto de Frobenius (:) y encontrar sus derivadas wrt $\theta$
$$\eqalign{ Q &= C:FF^T \cr\cr dQ &= C:2\,{\rm sym}(dF\,F^T) \cr &= 2\,{\rm sym}(C):dF\,F^T \cr &= AF:dF \cr\cr d^2Q&= A\,dF:dF + AF:d^2\!F \cr &= dF^TA\,dF + 0 \cr }$$

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