Always awake,

correlation의 기하학적 의미 본문

선형 대수

correlation의 기하학적 의미

호재 P.B 2022. 12. 10. 18:24

 

팀원분께서 두 벡터의 correlation이 갖는 기하학적 의미에 대해 공유해주신 내용을 공부하여 정리해보았습니다 :)
(팀원분께 무한한 감사를! 👍)

사전 지식

correlation을 기하학적으로 이해하기 위해서는 벡터의 사영(projection)에 대한 이해가 필요합니다 (Orthogonal 벡터 만들기 참고)
두 벡터 $\vec{u} = (u_1, u_2, ..., u_n)$, $\vec{v} = (v_1, v_2, ..., v_n)$가 주어져 있고, 두 벡터의 각도가 $\theta$일 때,

  • 정리1. 두 벡터 $\vec{u}$, $\vec{v}$가 이루는 각도 $\theta$의 코사인 값은 아래와 같다

$$ cos(\theta) = \frac{\vec{u} \cdot \vec{v}}{|\vec{u}| |\vec{v}|}$$

  • 정리2. 벡터 $\vec{u}$를 $\vec{v}$에 사영(projection)시킨 벡터는 아래와 같이 계산한다

$$ \vec{u}_{project \ to \ \vec{v}} = \frac{\vec{u} \cdot \vec{v}}{\vec{v} \cdot \vec{v}} \vec{v} $$

sampled correlation의 수식

먼저 sampled covariance 와 sampled correlation의 수식에 대해 살펴봅니다

sampled covariance

$n$개의 샘플을 가진 두 변수 $\vec{x}= (x_1, x_2, ..., x_n) $, $\vec{y} = (y_1, y_2, ..., y_n) $의 sampled covariance는 아래와 같습니다
범위 : -∞ ~ ∞
$$Cov(\vec{x},\vec{y}) = \sum_{i=1}^{n}{ (x_i - \bar{x}) (y_i - \bar{y} ) } = (\vec{x} - \bar{x}) \cdot (\vec{y} - \bar{y})$$

sampled correlation

그리고 공분산을 normalize 한 것이 sampled correlation입니다
범위 : -1 ~ 1
$$Corr(\vec{x},\vec{y}) = \normalsize{\frac{\sum_{i=1}^{n}{ (x_i - \bar{x}) (y_i - \bar{y} ) }}{\sqrt{\sum_{i=1}^{n} {(x_i - \bar{x}})^2} \sqrt{\sum_{i=1}^{n} {(y_i - \bar{y}})^2}}} = \frac{(\vec{x} - \bar{x}) \cdot (\vec{y}- \bar{y})}{|\vec{x} - \bar{x}| |\vec{y} - \bar{y}|}$$

sample correlation의 기하학적 의미

위의 정리1의 수식을 보니 sampled correlation과 유사합니다 ($\vec{u}$가 $\vec{x} - \bar{x}$로, $\vec{v}$가 $\vec{y} - \bar{y}$ 인 경우가 sampled correlation이 됩니다!)
즉, $\vec{x}$, $\vec{y}$의 sample correlation은 두 벡터 ($\vec{x}$, $\vec{y}$)에 각각의 sampled mean ($\bar{x}$, $\bar{y}$)을 빼서 구한 두 벡터 ($\vec{x} - \bar{x}$, $\vec{y} - \bar{y}$) 간 각도의 코사인 값과 같습니다

그렇다면 기하학적으로 sampled mean을 빼준다는 것은 어떤 의미일까요?
바로, $\vec{1}$ (1벡터; 모든 요소 값이 1인 벡터)에 사영(projection) 시킨다는 의미입니다

두 벡터를 1벡터에 사영


위의 정리2의 수식을 적용하여 $\vec{x} = (x_1, x_2, ..., x_n) $와 $\vec{y} = (y_1, y_2, ..., y_n)$를 각각 1벡터에 사영시킨 벡터는 아래와 같이 계산됩니다. 각 sample mean ($\bar{x}$, $\bar{y}$) 이 모든 요소 값인 벡터가 되는 것이지요
$$ \vec{x}_{project \ to \ \vec{1}} = \frac{\vec{x} \cdot \vec{1}}{\vec{1} \cdot \vec{1}} \vec{1} = \frac{\sum_{i=1}^{n}{x_i}}{\sum_{i=1}^{n}{1}} \vec{1} = \frac{\sum_{i=1}^{n}{x_i}}{n} \vec{1} = \bar{x} \vec{1} = (\bar{x}, \bar{x}, ..., \bar{x}) = \vec{\bar{x}}$$
$$ \vec{y}_{project \ to \ \vec{1}} = ... = (\bar{y}, \bar{y}, ..., \bar{y}) = \vec{\bar{y}}$$

두 벡터를 1벡터에 사영한 벡터의 값



이를 해석하자면, 벡터 $\vec{x}$, $\vec{y}$에서 각각의 평균의 효과를 뺀 벡터 ($\vec{x} - \vec{\bar{x}}$, $\vec{y} - \vec{\bar{y}}$)를 구하고, 두 벡터 간의 각도($\theta^{\prime}$)의 코사인 값이 두 벡터의 correlation입니다

두 벡터의 corrrelation의 기하학적 의미

 

확장

각 벡터 $\vec{x}$, $\vec{y}$의 평균 효과를 뺀(통제한) 벡터 ($\vec{x} - \vec{\bar{x}}$, $\vec{y} - \vec{\bar{y}}$) 간 각도의 코사인 값이 두 벡터 간 correlation입니다.
그리고 평균의 효과를 계산하기 위해 $\vec{1}$에 사영(projection)하였습니다.

그럼 일반화 하여 $\vec{1}$이 아닌 다른 벡터 $\vec{z}$에 사영한 후 구한 correlation은 무엇일까요?
해석하면 두 벡터 $\vec{x}$, $\vec{y}$에 $\vec{z}$의 효과를 제거(통제)하였다고 생각할 수 있습니다.
이렇게 구한 correlation을 partial correlation이라고 합니다
다음 포스팅에서는 partial correlatoin에 대해 알아보겠습니다 😊

마치며

변수 간의 상관성 등을 공부하다 보니 기하 공간에서의 이해는 정말 중요한 것 같습니다
앞으로 기하 공간에서의 개념 이해를 위해 공부를 많이 해야겠다는 생각이 듭니다
글 읽어주셔서 감사합니다

글이 도움이 되셨다면 아래 클릭 한번 부탁드립니다 :)

반응형