¿Alguien puede sugerir cómo puedo calcular el segundo momento (o la función generadora del momento completo) del coseno de dos vectores aleatorios gaussianos , cada uno distribuido como , independientes el uno del otro? IE, momento para la siguiente variable aleatoria
La pregunta más cercana es la función generadora de momentos del producto interno de dos vectores aleatorios gaussianos que deriva MGF para el producto interno. También existe esta respuesta de mathoverflow que vincula esta pregunta con la distribución de valores propios de matrices de covarianza de muestra, pero no veo de inmediato cómo usarlas para calcular el segundo momento.
Sospecho que el segundo momento escala en proporción a la media de los valores propios de ya que obtengo este resultado a través de la manipulación algebraica para 2 dimensiones, y también para 3 dimensiones de adivinar y verificar. Para valores propios suman 1, el segundo momento es:
Usando lo siguiente para verificación numérica
val1[a_, b_, c_] := (a + b + c)/(Sqrt[a] + Sqrt[b] + Sqrt[c])^2
val2[a_, b_, c_] := Block[{},
x := {x1, x2, x3};
y := {y1, y2, y3};
normal := MultinormalDistribution[{0, 0, 0}, ( {
{a, 0, 0},
{0, b, 0},
{0, 0, c}
} )];
vars := {x \[Distributed] normal, y \[Distributed] normal};
NExpectation[(x.y/(Norm[x] Norm[y]))^2, vars]]
val1[1.5,2.5,3.5] - val2[1.5,2.5,3.5]
Comprobación de la fórmula para 4 variables (dentro de límites numéricos):
val1[a_, b_, c_,
d_] := (a + b + c + d)/(Sqrt[a] + Sqrt[b] + Sqrt[c] + Sqrt[d])^2
val2[a_, b_, c_, d_] := Block[{},
x := {x1, x2, x3, x4};
y := {y1, y2, y3, y4};
normal :=
MultinormalDistribution[{0, 0, 0,
0}, {{a, 0, 0, 0}, {0, b, 0, 0}, {0, 0, c, 0}, {0, 0, 0, d}}];
vars := {x \[Distributed] normal, y \[Distributed] normal};
NExpectation[(x.y/(Norm[x] Norm[y]))^2, vars]]
val1[0.5, 1.5, 2.5, 3.5] - val2[0.5, 1.5, 2.5, 3.5]
Respuestas:
Hola Yaroslav, realmente no tienes que darte prisa para aceptar mi respuesta en MO y eres más que bienvenido para pedir más detalles :).
Como reformulas la pregunta en 3-dim, puedo ver exactamente lo que quieres hacer. En MO post pensé que solo necesita calcular el coseno más grande entre dos variables aleatorias. Ahora el problema parece más difícil.
Primero, calculamos la Gaussiana normalizada , que no es un trabajo trivial ya que en realidad tiene un nombre de "distribución normal proyectada" porque podemos reescribir la densidad multivariada en términos de su coordenada polar . Y la densidad marginal para se puede obtener enX∥X∥ X (∥X∥,X∥X∥)=(r,θ) θ
En este paso podemos obtener distribuciones para , y por lo tanto su densidad conjunta debido a la independencia. En cuanto a una función de densidad de hormigón de distribución normal proyectada, ver [Mardia y Peter] Capítulo 10. o [2] Ecuación (4) o [1]. (Observe que en [2] también asumen una forma especial de matriz de covarianza )PNk X∥X∥⊥Y∥Y∥ (X∥X∥,Y∥Y∥) Σ=(Γγ′γ1)
En segundo lugar, dado que ya obtuvimos su densidad de unión, su producto interno puede derivarse fácilmente usando la fórmula de transformación . Ver también [3].
Mientras calculemos la densidad, el segundo momento es solo un problema de integración.
Referencia
[Mardia y Peter] Mardia, Kanti V. y Peter E. Jupp. Estadísticas direccionales. Vol. 494. John Wiley & Sons, 2009.
[1] Wang, Fangpo y Alan E. Gelfand. "Análisis de datos direccionales bajo la distribución normal proyectada general". Metodología estadística 10.1 (2013): 113-127.
[2] Hernández-Stumpfhauser, Daniel, F. Jay Breidt y Mark J. van der Woerd. "La distribución normal general proyectada de la dimensión arbitraria: modelado e inferencia bayesiana". Análisis Bayesiano (2016). https://projecteuclid.org/download/pdfview_1/euclid.ba/1453211962
[3] Función generadora de momentos del producto interno de dos vectores aleatorios gaussianos
fuente