9 votos

Muestreo de un $2$ d normal con una matriz de covarianza dada

¿Cómo se puede tomar una muestra del $2$ -distribución normal con media $0$ y la matriz de covarianza $$\begin{bmatrix} a & b\\b & c \end{bmatrix}$$ dada la capacidad de muestreo de la norma ( $1$ -¿distribución normal?

Esto parece que debería ser bastante sencillo, pero no encuentro la respuesta en ningún sitio.

7voto

Normalmente, dada una matriz de covarianza $Q$ Uno de ellos es el que realiza el Descomposición Cholesky en $Q$ es decir, obtener $Q = LL^T$ donde $L$ es una matriz triangular inferior.

Una vez que tenemos $L$ , generan un vector normal estándar digamos $x$ . Entonces $y=Lx$ es el vector aleatorio deseado con la matriz de covarianza $Q$ .

Esto se debe a que tenemos $$\mathbb{E}(y) = \mathbb{E}(Lx) = L\mathbb{E}(x) = L \times 0 = 0$$ y $$\mathbb{E}(yy^T)=\mathbb{E}(Lx(Lx)^T)=\mathbb{E}(Lxx^TL^T) = L\mathbb{E}(xx^T)L^T = L \times I \times L^T = LL^T$$

Obsérvese que cualquier otra descomposición simétrica de la raíz cuadrada de $Q$ también da el resultado deseado, es decir, si podemos descomponer $Q$ en $GG^T$ entonces $Gx$ también nos dará el vector aleatorio con media cero y covarianza $Q$ .

En su caso, si realizamos la descomposición de Cholesky, obtenemos $$L = \begin{bmatrix}\sqrt{a} & 0\\ \dfrac{b}{\sqrt{a}} & \dfrac{\sqrt{ac-b^2}}{\sqrt{a}} \end{bmatrix}$$ Ahora genera $x = \begin{bmatrix} x_1 \\ x_2\end{bmatrix}$ donde $x_,x_2 \sim \mathcal{N}(0,1)$ entonces $$y = Lx = \begin{bmatrix}\sqrt{a} & 0\\ \dfrac{b}{\sqrt{a}} & \dfrac{\sqrt{ac-b^2}}{\sqrt{a}} \end{bmatrix} \begin{bmatrix}x_1 \\ x_2 \end{bmatrix} = \begin{bmatrix} \sqrt{a} x_1 \\ \dfrac{bx_1 + \sqrt{ac-b^2}x_2}{\sqrt{a}}\end{bmatrix}$$ es el vector deseado que está buscando.

4voto

Kevin Moore Puntos 376

Wikipedia tiene un contorno. Necesita una raíz cuadrada (de tipo) $A$ de su matriz de covarianza, que puede obtener utilizando la descomposición de Cholesky. A continuación, muestrear dos iid $N(0,1)$ variables aleatorias, multiplicarlas (como un vector) por $A$ y se obtiene una extracción bivariada de su distribución normal bivariada.

Si trabajas en R, puedes utilizar la función mvtnorm paquete.

3voto

chiborg Puntos 364

Digamos que tienes una variable aleatoria $X\sim N(0,E)$ donde $E$ es la matriz de identidad. Sea $A$ sea una matriz. Entonces $Y:=AX\sim N(0,AA^T)$ . Por lo tanto, es necesario encontrar una matriz $A$ con $AA^T = \left[\matrix{a & b \\ b & c}\right]$ . No existe una solución única para este problema. Un método popular es la descomposición de Cholesky, donde se encuentra una matriz triangular $L$ con una matriz de covarianza determinada. Otro método consiste en realizar una transformación del eje principal $$ \left[\matrix{a & b \\ b & c}\right] = U^T\left[\matrix{\lambda_1 & 0 \\ 0 & \lambda_2}\right]U $$ con $UU^T=E$ y luego tomar $$ A = U^T\left[\matrix{\sqrt{\lambda_1} & 0 \\ 0 & \sqrt{\lambda_2}}\right]U $$ como solución. Se trata entonces de la única solución simétrica definida positiva. También se llama la raíz cuadrada de la matriz simétrica definida positiva $AA^T$ .

En general, para la distribución $X\sim N(\mu,\Sigma)$ tiene $AX+b\sim N(A\mu+b,B\Sigma B^T)$ , ver Wikipedia .

2voto

Michael Hardy Puntos 128804

Se han publicado varios métodos; aquí hay otro.

Si puede tomar una muestra del $2$ -distribución normal dimensional cuya varianza es $\begin{bmatrix} 1 & \rho \\ \rho & 1\end{bmatrix}$ puede reescalar el $x$ -y el $y$ -coordinación para obtener las desviaciones estándar que desea, y que no alterará la correlación $\rho$ . Si $A$ es una raíz cuadrada de la matriz de correlación dada y $\begin{bmatrix} Z_1 \\ Z_1 \end{bmatrix}$ tiene un $2$ -distribución normal dimensional cuya varianza es la $2\times 2$ matriz de identidad, entonces $A\begin{bmatrix} Z_1 \\ Z_1 \end{bmatrix}$ tiene un $2$ -distribución normal dimensional cuya varianza es $\begin{bmatrix} 1 & \rho \\ \rho & 1\end{bmatrix}$ .

Así que el problema que queda es encontrar una raíz cuadrada de $\begin{bmatrix} 1 & \rho \\ \rho & 1\end{bmatrix}$ .

Dejemos que $P=\begin{bmatrix} 1/2 & 1/2 \\ 1/2 & 1/2\end{bmatrix}$ y $Q=I-P$ . Entonces $P^2=P$ , $Q^2=Q$ y $PQ=QP=0$ .

Entonces tenemos $$\begin{bmatrix} 1 & \rho \\ \rho & 1\end{bmatrix} = (1+\rho)P + (1-\rho)Q.$$ Desde $P^2=P$ , $Q^2=Q$ y $PQ=QP=0$ podemos encontrar una raíz cuadrada simplemente sacando raíces cuadradas de los coeficientes: $$ \sqrt{1+\rho}\,P + \sqrt{1-\rho}\,Q. $$

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