(일변량) 정규분포 / 표준정규분포
이변량 정규분포
다변량 정규분포
정규분포 자료 1: [my lecture note]
정규분포 자료 2: [wiki]
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')
\(\qquad \qquad \qquad f(y_1, y_2, y_3 ) = h(y_1) g(y_2) r(y_3)\)
\[\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\}\]
\(\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)\)
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)
상관계수가 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)
주변분포의 평균은 각각 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")
))
다음 사항은, 정규분포, 다변량 정규분포에 대한 가정과 무관하게,
확률벡터 형태로 표현되는 일반적인 다변량분포와 관련된 용어와 그 의미임.
확률벡터의 평균, 분산, 공분산, 상관계수
확률벡터 : \(\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'\)
\(\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)\)
\(\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 \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\}\)
일반적인 경우:
두 확률변수 \(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이다.
\(\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\}\)
주변분포는 각각 평균이 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")
))