3 votos

Encontrar la expresión de la $n$-ésima derivada, cuando $n$ es grande

Para mayor completitud, asume que $C$ es una cópula arquimediana con alguna función generadora $\varphi$, que generalmente se asume que tiene propiedades agradables. Se sabe que $$ C(u_1, u_2, \ldots, u_n)=\varphi^{-1}(\varphi(u_1) + \ldots +\varphi(u_n))$$. Si mis cálculos son correctos, para una cópula de $n-$variables, podemos estimar su función de densidad por

$$ \frac{\partial^n C}{\partial u_1 \partial u_2 \cdots \partial u_n } = \{\varphi^{-1}\}^{(n)}(\varphi(u_1) + \ldots +\varphi(u_n))\prod_{j=1,\ldots,n} \varphi'(u_j) $$

Sin embargo, con un valor grande de $n$, no es sorprendente que sea bastante intensivo computacionalmente y de memoria encontrar las derivadas de orden $n$ de $\varphi^{-1}$.

Mi pregunta: ¿cuáles son las estrategias más conocidas/rápidas para obtener rápidamente las derivaciones de $\{\varphi^{-1}\}^{(n)}$? No estoy completamente seguro de lo que estoy buscando aquí, ya sea una forma más rápida/limpia de encontrar la expresión de la densidad que no implicaría derivadas (¿si tal cosa existe?), o algún tipo de aproximación que haría que encontrar las expresiones sea una tarea más factible?

Como nota adicional, estoy tratando de obtener la expresión de la función de densidad y sustituir varios valores en ella. Actualmente he intentado usar la función deriv en R, que es capaz de manejar las derivadas hasta, digamos, $n \sim 15$.

Una posible solución sería simular una muestra de la distribución de la cópula deseada y estimar no paramétricamente su densidad a través de algún suavizador kernel, pero hasta donde sé, los suavizadores kernel también son bastante complejos y lentos en dimensiones grandes.

0voto

Aaron Puntos 36

No soy un experto en esta área, así que toma esta respuesta con precaución. Dado que no has especificado una forma funcional para tus objetos, voy a dar una respuesta que se aplica a un nivel de generalidad amplio. (Sin duda, hay métodos mejores si estás dispuesto a especificar más sobre tus formas particulares). De todas formas, una forma de calcular este problema, en una especificación que abarca una amplia clase de formas funcionales, es tomar una aproximación de diferencia finita a la derivada parcial (ver por ejemplo, aquí). No sé si esto dará buen rendimiento para un $n$ grande, pero es un camino que vale la pena explorar, así que lo agrego aquí como una sugerencia.

Sea $\Delta_h$ el operador de diferencia adelantada de manera que $\Delta_h f(x) = f(x+h) - f(x)$ para una función escalar $f$. Extiende esto a un entorno multivariable definiendo el operador multivariable:

$$\Delta_h^{(k)} \equiv (1, ..., 1, \Delta_h, 1,..., 1),$$

donde el elemento de diferencia finita en el último vector ocurre en la posición $k$, y los operadores de unidad operan sobre una función multiplicándola por uno (es decir, dejándola sin cambios). Ahora, desde la definición de primeros principios de diferenciación de Riemann tenemos:

$$\frac{\partial}{\partial u_k} C(\mathbf{u}) = \lim_{h \downarrow 0} \frac{\Delta_h^{(k)}}{h} C (\mathbf{u}) \approx \frac{\Delta_h^{(k)}}{h} C (\mathbf{u}) \quad \quad \quad \text{para pequeños } h \approx 0.$$

Por lo tanto, si eliges algún valor pequeño $h \approx 0$, deberías obtener:

$$\begin{equation} \begin{aligned} \frac{\partial^n C}{\partial u_1 \cdots \partial u_n}(\mathbf{u}) = \frac{\partial}{\partial u_1} \cdots \frac{\partial}{\partial u_n} C(\mathbf{u}) \approx \frac{\Delta_h^{(1)} \cdots \Delta_h^{(n)}}{h^n} C(\mathbf{u})\\[6pt] \end{aligned} \end{equation}$$

Debería ser posible computacionalmente formar la función $\Delta_h^{(1)} \cdots \Delta_h^{(n)} C$ para $h$ arbitrario a través de sumas combinatorias, y dado que estás usando valores pequeños de $h$, podrías aproximar esto aún más ignorando algunos términos. No estoy seguro de cuánto intensiva computacionalmente sería esto para un $n$ grande, pero es algo que vale la pena investigar. Eso es todo lo que realmente puedo agregar aquí --- no estoy seguro de que este método produciría una solución útil, pero es un camino que creo que vale la pena explorar.

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