다변량 정규분포 Multivariate Normal Distribution


Topics:


  • (일변량) 정규분포 / 표준정규분포

  • 이변량 정규분포

  • 다변량 정규분포




1. 정규분포 / 표준정규분포



  • 기호적 표현: \(\qquad Y ~\sim ~ N(\mu, \sigma^2 ), \qquad \mu: \mbox{평균}, ~~ \sigma^2: \mbox{분산}\)


  • 밀도함수: \(\qquad f(y) =\frac1{\sqrt{2 \pi \sigma^2}} \, \exp \left\{ -\frac{1}{2 \sigma^2 }(y-\mu)^2 \right\}\)




library(ggplot2)
x <- (-350:350)/100
pp<- ggplot()+geom_line(aes(x=x, y=dnorm(x)),col='red')
pp+labs(y='density',title='The standard normal distribution', subtitle='density function')




x <- (-350:350)/100
pp<- ggplot()+geom_line(aes(x=x, y=pnorm(x)),col='red')
pp+labs(y='probability',title='The standard normal distribution', subtitle='cumulative distribution function')




2. 확률표본에 대한 결합분포


  • 확률표본 : random sample(r.s.), a sample satisfying ‘iid’ properties.


  • iid : independent & identically distributed


  • 독립 : 결합분포의 밀도함수가 주변푼포 밀도함수들의 곱의 형태로 표현되는 경우


\(\qquad \qquad \qquad f(y_1, y_2, y_3 ) = h(y_1) g(y_2) r(y_3)\)




3. 정규분포 모집단에서 추출한 확률표본에 대한 결합분포


  • \(Y_j ~\stackrel{iid}{\sim} ~ N(\mu, \sigma^2 ), \qquad j=1, 2, \ldots,n\)


  • \(\mbox{확률(변수) 벡터: }\quad \mathbf{Y}=(Y_1, \ldots, Y_n )'\)


  • \(\mbox{관측(값) 벡터: } \quad \mathbf{y}=(y_1, \ldots, y_n )'\)


  • \(\mbox{밀도함수: } \qquad f(\mathbf{y}) = \left( \frac1{\sqrt{2 \pi \sigma^2}} \right)^n \, \exp \left\{ -\frac{1}{2 \sigma^2 } \sum_{j=1}^n (y_j -\mu)^2 \right\}\)




4. 독립인 경우의 이변량 정규분포


  1. \(\quad Y_1 ~\sim~ N(\mu_1 , \sigma_1^2 ), \quad Y_2 ~\sim~ N(\mu_2 , \sigma_2^2 ), \quad Y_1 \mbox{와} Y_2 \mbox{는 독립}\)


  1. \(\quad \mathbf{Y} ~ \sim~ N_2 \left(\boldsymbol{\mu}, \Sigma \right), \quad \mbox{where} \quad \mathbf{Y} =(Y_1, Y_2 )', \quad \boldsymbol{\mu}=(\mu_1, \mu_2)', \quad \Sigma = \begin{pmatrix} \sigma_1^2 & 0 \\ 0 & \sigma_2^2 \end{pmatrix}\)


  1. \(\quad f(\mathbf{y})= f(y_1) \, f(y_2 ) = \left( \frac1{2 \pi \sigma_1 \sigma_2 }\right)^{2/2} \exp \left \{ -\frac1{2}\left\{ \left( \frac{y_1 -\mu_1}{\sigma_1} \right)^2 +\left( \frac{y_2 -\mu_2 }{\sigma_2} \right)^2 \right\} \right\}\)


  1. \(\quad f(\mathbf{y}) =\left( \frac1{2 \pi \sigma_1 \sigma_2 }\right)^{2/2} \exp \left \{ -\frac1{2} (\mathbf{y}-\boldsymbol{\mu})' \Sigma^{-1} (\mathbf{y}-\boldsymbol{\mu}) \right\}\)



  • 위 A, B, C, D 는 모두 동일한 의미




5. 상관계수가 \(\rho\) 인 경우의 이변량 정규분포 (\(\rho \neq 0\))


  1. \(\quad Y_1 ~\sim~ N(\mu_1 , \sigma_1^2 ), \quad Y_2 ~\sim~ N(\mu_2 , \sigma_2^2 ), \quad corr(Y_1, Y_2) =\rho\)


  1. \(\quad \mathbf{Y} ~ \sim~ N_2 \left(\boldsymbol{\mu}, \Sigma \right), \quad \mbox{where} \quad \mathbf{Y} =(Y_1, Y_2 )', \quad \boldsymbol{\mu}=(\mu_1, \mu_2)', \quad \Sigma = \begin{pmatrix} \sigma_1^2 & \rho \sigma_1 \sigma_2 \\ \rho \sigma_1 \sigma_2 & \sigma_2^2 \end{pmatrix}\)


\[\quad f(\mathbf{y})= \left( \frac1{2 \pi \sigma_1 \sigma_2 \sqrt{1-\rho^2 } }\right)^{2/2} \exp \left \{ -\frac1{2(1-\rho^2 )}\left\{ \left( \frac{y_1 -\mu_1}{\sigma_1} \right)^2 - 2 \rho \left( \frac{y_1 -\mu_1}{\sigma_1} \right) \left( \frac{y_2 -\mu_2 }{\sigma_2} \right) +\left( \frac{y_2 -\mu_2 }{\sigma_2} \right)^2 \right\} \right\}\]


  1. \(\quad f(\mathbf{y}) = | 2 \pi \Sigma|^{- 1/2} \, \exp \left \{ -\frac1{2} (\mathbf{y}-\boldsymbol{\mu})' \Sigma^{-1} (\mathbf{y}-\boldsymbol{\mu}) \right\}\)



  • B, C, D 는 동일한 의미이고, A 를 함축한다. 그러나 A 라고 해서, B, C, D 를 의미하는 것은 아니다.




참고: 이변량 정규분포의 조건부 분포


  • \(\quad \mathbf{Y} ~ \sim~ N_2 \left(\boldsymbol{\mu}, \Sigma \right), \quad \mbox{where} \quad \mathbf{Y} =(Y_1, Y_2 )', \quad \boldsymbol{\mu}=(\mu_1, \mu_2)', \quad \Sigma = \begin{pmatrix} \sigma_1^2 & \rho \sigma_1 \sigma_2 \\ \rho \sigma_1 \sigma_2 & \sigma_2^2 \end{pmatrix}~~\) 일 때,


  • \(\quad Y_2\) 의 값이 \(y_2\) 로 주어진 경우, \(Y_1\) 의 조건부 분포 :


\(\qquad \qquad \qquad Y_1 | (Y_2 = y_2 ) ~ \sim~ N \left( ~~\mu_1 + \rho (\sigma_1 /\sigma_2) (y_2 - \mu_2 ) , ~~~\sigma_1^2 (1- \rho^2 ) ~~~ \right)\)




6. 이변량 정규분포의 밀도함수


밀도함수의 3차원 그림 (old style)


  • 주변분포의 평균은 각각 0, 분산은 1 이고, 상관계수가 0.3 인 경우의 예


xsq<- seq( -3, 3 ,l=31)
ysq<- seq( -3, 3 ,l=31)

rxy <- 0.3

exy <- expand.grid(x=xsq,y=ysq )
density <- function(xy, rho)  dnorm(xy$x)*dnorm(xy$y,rho*xy$x, sqrt(1-rho*rho)) 

mymat <-matrix(density(exy, rxy ), nrow=31)

res<-persp(xsq, ysq, mymat, xlab="x",ylab="y",zlab="", 
           cex=0.8, theta = 45, phi = 20, col="powderblue", expand=0.8, 
           axes=TRUE, box=TRUE,shade=0.2,ticktype="detailed") 

trans3d <- function(x,y,z, pmat) {
       tr <- cbind(x,y,z,1) %*% pmat
       list(x = tr[,1]/tr[,4], y= tr[,2]/tr[,4])
     }

p0 <- trans3d(0,0,density(data.frame(x=0,y=0), rxy ), pm = res)

points(p0, col ="darkred", cex=1.5, pch =16)




밀도함수 등고선도 (plotly 패키지 이용)


  • 상관계수가 0.6 인 경우와, -0.6 인 경우의 예

  • 이변량 정규분포 밀도함수 등고선도, 타원 형태


# install.packages("plotly")
library(plotly, warn.conflicts = FALSE, quietly = TRUE)

rxy <- 0.6

dmat1 <-matrix(density(exy, rxy ), nrow=31)
dmat2 <-matrix(density(exy, -rxy ), nrow=31)

p1<- plot_ly(x=xsq, y=ysq, z=dmat1, type='contour') 
p2<- plot_ly(x=xsq, y=ysq, z=dmat2, type='contour')

subplot(p1,p2)




이변량 정규분포의 밀도함수 (3차원 대화형 그림)


주변분포의 평균은 각각 0, 분산은 1 이고, 상관계수가 0.6 인 경우


# library(plotly)
zero<-density(data.frame(x=0,y=0), rxy )

pp <- plot_ly(z=~t(dmat1),x=xsq, y=ysq)  %>%
      add_surface( showscale=FALSE, opacity =0.8,
                   contours = list( z = list(show=TRUE, usecolormap=TRUE,
                                             highlightcolor="#ff0000", project=list(z=TRUE)
                                             )
                                   )  
                   )                     %>%
      add_markers(x=~0, y=~0, z=~zero, size=0.8)     

pp %>%  layout(title="The density function of bivariate normal", 
               scene=list(xaxis=list(title="y1"), yaxis=list(title="y2"), 
                          zaxis=list(title="density")
              ))




7. 다변량 정규분포


  1. \(\qquad Y_j ~\sim~ N(\mu_j , \sigma_j^2 ), \quad Cov(Y_i, Y_j) = \begin{cases} \sigma_i^2, & ~\mbox{if} i=j,\\ \sigma_{ij},& ~ \mbox{if} i \neq j, \end{cases} \qquad i, j=1, 2, \ldots, k\)


  1. \(\qquad \mathbf{Y} ~ \sim~ N_k \left(\boldsymbol{\mu}, \Sigma \right), \quad \mbox{where} \quad \mathbf{Y} =(Y_1, Y_2 , \ldots , Y_k)', \quad \boldsymbol{\mu}=(\mu_1, \mu_2, \ldots , \mu_k)', \quad \Sigma = \begin{pmatrix} \sigma_1^2 & \cdots &\sigma_{1k} \\ \vdots & \cdots & \vdots \\ \sigma_{k1} & \cdots &\sigma_k^2 \end{pmatrix}\)


  1. \(\qquad f(\mathbf{y}) = | 2 \pi \Sigma|^{- 1/2} \, \exp \left \{ -\frac1{2} (\mathbf{y}-\boldsymbol{\mu})' \Sigma^{-1} (\mathbf{y}-\boldsymbol{\mu}) \right\}\)



  • B, C 는 동일한 의미이고, A 를 함축한다. 그러나 A 가 B, C 를 의미하지는 않는다.




참고: 분산-공분산 행렬에 대하여


  • 다음 사항은, 정규분포, 다변량 정규분포에 대한 가정과 무관하게,

    확률벡터 형태로 표현되는 일반적인 다변량분포와 관련된 용어와 그 의미임.


  • 확률벡터의 평균, 분산, 공분산, 상관계수

    • 확률벡터 : \(\mathbf{Y}=(Y_1, \ldots, Y_k)'\)

    • 평균벡터 : \(E[\mathbf{Y}] =\boldsymbol{\mu} = (\mu_1, \ldots, \mu_k)'\)

    • 분산 : \(Var(Y_i ) = E[(Y_i -\mu_i)^2]\), 이를 기호로 \(\sigma_i^2\) (혹은 \(\sigma_{ii}\)) 이라고 한다

    • 공분산 : \(Cov(Y_i , Y_j ) = E[(Y_i -\mu_i)(Y_j -\mu_j)]\), 이를 기호로 \(\sigma_{ij}\) 이라고 한다

    • 상관계수 : \(\rho_{ij} = \sigma_{ij}/(\sigma_i \sigma_j )\), \(\quad Cov(Y_i , Y_j)= \rho_{ij} \sigma_i \sigma_j\)

    • 분산-공분산 행렬: \(Cov({\mathbf{Y}})=E[(\mathbf{Y} -\boldsymbol{\mu})(\mathbf{Y} -\boldsymbol{\mu})']\)

    • 분산-공분산 행렬은 \(n \times n\) 행렬이고, 보통 기호로 \(\Sigma\) 를 이용하여 나타낸다


\(\qquad \qquad \qquad \Sigma = Cov({\mathbf{Y}})= \begin{pmatrix} Var(Y_1) & Cov(Y_1, Y_2 ) & \cdots & Cov(Y_1, Y_k )\\ Cov(Y_2, Y_1 ) & Var(Y_2) & \cdots & Cov(Y_2, Y_k ) \\ \vdots & \cdots & \cdots & \vdots \\ Cov(Y_k, Y_1 ) & Cov(Y_k, Y_2) & \cdots & Var(Y_k )\end{pmatrix}\)




  • 분산-공분산 행렬의 성질 :

    • 분산-공분산 행렬 \(\Sigma\)는 항상 비음정치행렬이다

    • 분산-공분산 행렬 \(\Sigma\)는 퇴행이 발생하지 않으면 양정치행렬이다

    • 다변량 분포의 퇴행(degeration)이 발생하는 경우:

      • 구성 확률변수의 분산이 0 이 되는 경우

      • 구성 확률변수들 사이의 상관계수가 1이 되는 경우


  • 확률벡터의 선형변환과 분산-공분산 :

    • 확률벡터 \(\mathbf{U}\) 가, 상수 \(w\) 와 상수벡터 \(\mathbf{v}\) 로부터, \(\mathbf{U}= \mathbf{v}' \mathbf{Y}+w\) 인 관계가 있다고 하자

      • 이때, \(E(\mathbf{U})=\mathbf{v}' \boldsymbol{\mu}+w\) 이고, \(Var(\mathbf{U}) = \mathbf{v}' \Sigma \mathbf{v}\) 이다.

      • 분산-공분산 행렬 \(\Sigma\) 가 양정치 행렬이고, \(\mathbf{v}\neq \mathbf{0}\) 이면, \(Var(\mathbf{U}) >0\) 이다

    • \(\mathbf{U}_1\)\(\mathbf{U}_2\) 는 다음과 같이 확률벡터 \(\mathbf{Y}\)로 부터 선형변환으로 얻어지는 확률벡터라 하자

      • 임의의 (상수) 행렬 \(A_{p \times k}\) 와 임의의 \(p\) 차원 벡터 \(\mathbf{c}\) 에 대하여, \(\mathbf{U}_1 = A\mathbf{Y}+ \mathbf{c}\),

      • 임의의 (상수) 행렬 \(B_{q \times k}\) 와 임의의 \(q\) 차원 벡터 \(\mathbf{d}\) 에 대하여, \(\mathbf{U}_2 = B\mathbf{Y}+ \mathbf{d}\)

    • \(\mathbf{U}_1\)\(\mathbf{U}_2\) 사이의 분산-공분산 행렬은 \(~Cov(\mathbf{U}_1, \mathbf{U}_2) = A \, Cov(\mathbf{Y}) \, B'~\) 이고, 크기는 \(p\times q\) 이다

      • \(E(\mathbf{U}_1) =A E[\mathbf{Y}]+\mathbf{c}\) 이고, \(E(\mathbf{U}_2) = B E[\mathbf{Y}]+\mathbf{d}\)

      • \(\mathbf{U}_1- E(\mathbf{U}_1) =A ( \mathbf{Y} - E[\mathbf{Y}] )\), \(~~\mathbf{U}_2- E(\mathbf{U}_2) =B ( \mathbf{Y} - E[\mathbf{Y}] )\)

      • \(Cov(\mathbf{U}_1, \mathbf{U}_2) = E[(\mathbf{U}_1- E(\mathbf{U}_1))(\mathbf{U}_2- E(\mathbf{U}_2))'] = A \, E[(\mathbf{Y}- \boldsymbol{\mu})(\mathbf{Y}- \boldsymbol{\mu}'] \, B'\)




참고: 다변량 정규분포의 조건부 분포


  • \(\quad k\) 차원 다변량 확률벡터 \(\mathbf{Y}\) 가, \(p\) 차원 확률벡터 \(\mathbf{Y}_1\)\(q\) 차원 확률벡터 \(\mathbf{Y}_2\) 로 구성되어 있다고 하자


  • \(\quad E[\mathbf{Y}_j]=\boldsymbol{\mu}_j\), \(~j=1,2\), \(\quad Cov(\mathbf{Y}_i,\mathbf{Y}_j) = \Sigma_{ij}\), \(~i,j=1,2\)


  • \(\quad \mathbf{Y} ~ \sim~ N_k \left(\boldsymbol{\mu}, \Sigma \right), \quad \mbox{where} \quad \mathbf{Y} =(\mathbf{Y}_1 ' , \mathbf{Y}_2 ' )', \quad \boldsymbol{\mu}=(\boldsymbol{\mu}_1 ', \boldsymbol{\mu}_2 ')', \quad \Sigma = \begin{pmatrix} \Sigma_{11} & \Sigma_{12} \\ \Sigma_{21} & \Sigma_{22} \end{pmatrix}~~\)


  • \(\quad \mathbf{Y}_2\) 의 값이 \(\mathbf{y}_2\) 로 주어진 경우, \(\mathbf{Y}_1\) 의 조건부 분포 :


\(\qquad \qquad \qquad \mathbf{Y}_1 | (\mathbf{Y}_2 = \mathbf{y}_2 ) ~ \sim~ N \left( ~~\boldsymbol{\mu}_1 + \Sigma_{12} \Sigma_{22}^{-1} ( \mathbf{y}_2 - \boldsymbol{\mu}_2 ) , ~~~ \Sigma_{11} - \Sigma_{12} \Sigma_{22}^{-1} \Sigma_{21} ~~~ \right)\)




8. 정규분포 모집단에서 추출한 확률표본의 분포


  • \(\qquad Y_j ~\stackrel{iid}{\sim} ~ N(\mu, \sigma^2 ), \qquad j=1, 2, \ldots,n\)


  • \(\qquad \mathbf{Y} ~ \sim~ N_n \left(\boldsymbol{\mu}, \Sigma \right),\)


\(\qquad \qquad \qquad \mbox{where} \quad \mathbf{Y} =(Y_1, Y_2 , \ldots , Y_n )', \quad \boldsymbol{\mu}=\mu \cdot \mathbf{1} = (\mu, \mu, \ldots , \mu )', \quad \Sigma = \sigma^2 \, I_n\)


  • \(\qquad f(\mathbf{y}) = | 2 \pi \Sigma|^{- 1/2} \, \exp \left \{ -\frac1{2} (\mathbf{y}-\boldsymbol{\mu})' \Sigma^{-1} (\mathbf{y}-\boldsymbol{\mu}) \right\}\)


\(\qquad \qquad \qquad ~~ = \left( \frac1{\sqrt{2 \pi \sigma^2}} \right)^n \, \exp \left\{ -\frac{1}{2 \sigma^2 } \sum_{j=1}^n (y_j -\mu)^2 \right\}\)




9. 다변량 정규분포와 독립성


  • 일반적인 경우:

    • 두 확률변수 \(Y_1\)\(Y_2\) 가 독립이면, 상관계수는 0 이다. 즉, \(Corr(Y_1, Y_2)=0\).

    • 두 확률변수 \(Y_1\)\(Y_2\) 상관계수가 0 이더라도, 독립이 아닌 경우가 있다. [설명: my lecture note]


  • 주변분포가 정규분포인 경우:

    • 두 확률변수 \(Y_1\)\(Y_2\) 각각이 정규분포이고, 상관계수가 0 이면, 독립이 아닌 경우가 있다.

    • 두 확률변수 \(Y_1\)\(Y_2\) 각각이 정규분포이고, 독립이면, \(Y_1\)\(Y_2\) 는 이변량 정규분포다.


  • 이변량 정규분포의 경우:

    • 이변량 정규분포를 가정하면, 주변분포는 당연히 정규분포임

    • 두 확률변수 \(Y_1\)\(Y_2\)이변량 정규분포이고, 상관계수가 0 이면, 독립이다.

    • 두 확률변수 \(Y_1\)\(Y_2\)이변량 정규분포이고, 독립이면, 상관계수는 0이다.




주변분포는 정규분포이고, 이변량 정규분포가 아닌 경우


  • 대칭 형태가 되어 상관계수가 0 이 되도록 고안된,


  • 상관계수가 음수인 경우와 양수인 경우를 1대1 비율로 혼합한 혼합분포(mixture) :


\(\qquad \qquad \qquad f(\mathbf{y}) = \frac{1}2 h(\mathbf{y};\rho) + \frac{1}2 h(\mathbf{y}; -\rho)\)


\(\qquad \qquad \qquad \mbox{where} \qquad h(\mathbf{y};\rho) = \left( \frac1{2 \pi \sigma_1 \sigma_2 \sqrt{1-\rho^2 } }\right)^{2/2} \exp \left \{ -\frac1{2(1-\rho^2 )}\left\{ \left( \frac{y_1 -\mu_1}{\sigma_1} \right)^2 - 2 \rho \left( \frac{y_1 -\mu_1}{\sigma_1} \right) \left( \frac{y_2 -\mu_2 }{\sigma_2} \right) +\left( \frac{y_2 -\mu_2 }{\sigma_2} \right)^2 \right\} \right\}\)




이변량 정규분포가 아닌 경우의 3차원 그림과 등고선도


  • 주변분포는 각각 평균이 0, 분산이 1 인 정규분포

  • 상관계수가 0.9 인 경우, -0.9인 경우의 혼합분포로,

  • 대칭 형태를 갖게 되어 상관계수는 0

  • 위에서 내려 본 등고선도가 타원 형태가 아니고, 별모양의 형태를 갖는다


rxy = 0.9

mixture <- function(xy, rho) (density(xy,rho)+density(xy,-rho))/2

dmat3 <-matrix( mixture(exy,rxy ), nrow=31)

zero<-mixture(data.frame(x=0,y=0), rxy )

pp <- plot_ly(z=~t(dmat3),x=xsq, y=ysq)  %>%
      add_surface(  showscale =FALSE, opacity=0.8,
                    contours = list( z = list(show=TRUE, usecolormap=TRUE,
                                             highlightcolor="#ff0000", project=list(z=TRUE)
                                   ) ) ) %>%
      add_markers(x=~0, y=~0, z=~zero, size=0.8)  

pp %>% layout(title="The density function of mixture", 
               scene=list(xaxis=list(title="y1"), 
                         yaxis=list(title="y2"), 
                         zaxis=list(title="density")
              ))