8 minute read

통계학 맛보기

모수란?

  • 통계적 모델링은 적절한 가정 위에서 확률분포를 추정(inference)하는 것이다.
  • 그러나 유한한 개수의 데이터만 관찰해서 모집단의 분포를 정확하게 알아낸 다는 것은 불가능하므로, 근사적으로 확률분포를 추정할 수 밖에 없습니다.
  • 데이터가 특정 확률분포를 따른다고 선험적으로(a priori) 가정한 후 그 분포 를 결정하는 모수(parameter)를 추정하는 방법을 모수적(parametric) 방 법론이라 합니다.
  • 특정 확률분포를 가정하지 않고 데이터에 따라 모델의 구조 및 모수의 개수 가 유연하게 바뀌면 비모수(nonparametric) 방법론이라 부릅니다.

확률분포 가정: 예

기계적으로 확률분포를 가정해서는 안되고, 데이터를 생성하는 원리를 먼저 고려하는 것이 원칙.
분포 그래프를 많이 관찰하고 어느 경우에 써야할지를 학습해야 할 것이다.

  • 확률분포를 가정하는 방법: 우선 히스토그램을 통해 모양을 관찰합니다
  • 데이터가 2개의 값(0 또는 1)만 가지는 경우 → 베르누이분포 데이터가 n개의 이산적인 값을 가지는 경우 → 카테고리분포
  • 데이터가 [0,1] 사이에서 값을 가지는 경우 → 베타분포
  • 데이터가 0 이상의 값을 가지는 경우 → 감마분포, 로그정규분포 등
  • 데이터가 R 전체에서 값을 가지는 경우 → 정규분포, 라플라스분포 등

데이터로 모수 추정

  • 정규 분포의 모수는 평균 \(\mu\) 과 분산 \(\sigma^{2}\) 로 이를 추정하는 통계량은 다음 식과 같다. aver
  • 통계량의 확률분포를 표집분포(sampling distribution) 라고 하며, 표본평균의 표집분포는 N이 커질수록 정규분포를 따른다.
  • 이를 중심극한정리(Central Limit Theorem)이라 부르며, 모집단의 분포가 정규분포를 따르지 않아도 성립합니다.

최대가능도 추정법

  • 표본평균이나 표본분산은 중요한 통계량이지만 확률분포마다 사용하는 모수가 다르므로 적절한 통계량이 달라지게 됩니다
  • 이론적으로 가장 가능성이 높은 모수를 추정하는 방법 중 하나는 최대가능도 추정법(maximum likelihood estimation, MLE)입니다.

mosu

모수를 \(\theta\) 로 나타낸다.
가능도(likelihood) 함수는 모수를 따르는 분포가 x를 관찰할 가능성을 뜻하지만 확률로 해석하면 안됨.

로그가능도 사용이유

  • 로그가능도를 최적화하는 모수 θ 는 가능도를 최적화하는 MLE 가 됩니다.
  • 데이터가 커지면 컴퓨터의 정확도로는 가능도를 계산하는 것은 불가능하지만, 데이터가 독립일 경우 로그를 사용하면 곱셈을 덧셈으로 바꿀 수 있기 때문에 컴퓨터로 연산이 가능해집니다.
  • 경사하강법으로 가능도를 최적화할 때 미분 연산을 사용하게 되는데, 로그가능도를 사용하면 연산량을 O(\(n^2\)) 에서 O(n) 으로 줄어듭니다.
  • 대게의 손실함수의 경우 경사하강법을 사용하므로 음의 로그가능도 (negative log-likelihood)를 최적화하게 됩니다

최대가능도 추정법 예제: 정규분포

최대가능도를 추정하는 방법중에 먼저 정규분포를 통해 최대가능도를 추정하는 방법을 배워보자.

  • 정규분포를 따르는 확률변수 X로부터 독립적인 표본을 얻었을때 최대가능도 추정법을 이용하여 모수를 추정하면?

likelihood

위의 공식에서 평균과 분산에 대해 각각 미분해주면 아래와 같은 결과가 나온다. likelihood2

아래 처럼 각 모수에 MLE 값을 구하면 다음과 같은 식이 나오며 MLE는 불편추정량을 보장하진 않는다.
likelihood2

최대가능도 추정법 예제: 카테고리 분포

카테고리 분포 예제는 카테고리 확률변수를 먼저 알아야 한다. 카테고리 확률변수(Categorical random variable)는 1부터 𝐾까지 𝐾개 정숫값 중 하나가 나온다. 이 정숫값을 범주값, 카테고리(category) 혹은 클래스(class)라고 한다. 예를 들어 주사위를 던져 나오는 눈금 수는 𝐾=6인 카테고리분포다.

주의 !! \(\sum_{k=1}^{d}p_{k} = 1\) 모든 확률변수의 합이 1

  • 카테고리 분포 Multinoulli(x; p1, …, pd) 를 따르는 확률변수 X 로부 터 독립적인 표본 {x1, …, xn} 을 얻었을 때 최대가능도 추정법을 이용하여 모수를 추정한다면 아래와 같은 식을 도출 할 수 있다.

모든 분포에서 추출한 독립적인 표본의 확률변수들을 모두 곱하여 준다. cate1

위에서 도출한 식으로 부터 카테고리 확률변수의 특성을 고려한 모든 확률변수의 합이 1인 것을 고려하여 왼쪽 목적식을 최대화 하는 것이 MLE를 구하는 방법이다. cate2

라그랑주 승수법을 통해 최적화 문제를 아래 식으로 나타내고, 확률변수에 대한 편미분 값과 람다에 대하여 편미분 값을 구해 MLE를 구할 수 있다. cate3 (카테고리 분포의 MLE는 경우의 수를 세어서 비율을 구하는 것으로 왼쪽식과 오른쪽 식의 연립을 통해 \(p_{k} = \frac{n_k}{\sum_{k=1}^{n^k}n_k}\)를 구할 수 있다.)

딥러닝에서 최대가능도 추정법

  • 최대가능도 추정법을 이용해서 기계학습 모델을 학습 할 수 있다.
  • 딥러닝 모델의 가중치를 \(\theta = (W^{(1)},...,W^{L})\)라 표기했을때 분류 문제에서 소프트맥스 벡터는 카테고리분포의 모수 \((p_1,...,p_K)\)를 모델링한다.
  • 원핫벡터로 표현된 정답레이블 y = \((y_1,...y_K)\) 을 관찰데이터로 이용해 확률분포인 소프트맥스 벡터의 로그가능도를 최적화 할 수 있다.
  • 아래의 식 중요합니다!

deep

확률분포의 거리를 구해보자

  • 기계학습에서 사용되는 손실함수들은 모델이 학습하는 확률분포와 데이터 에서 관찰되는 확률분포의 거리를 통해 유도합니다.
  • 데이터공간에 두 개의 확률분포 P(x), Q(x) 가 있을 경우 두 확률분포 사이 의 거리(distance)를 계산할 때 다음과 같은 함수들을 이용합니다
  • 총변동 거리 (Total Variation Distance, TV)
  • 쿨백-라이블러 발산 (Kullback-Leibler Divergence, KL)
  • 바슈타인 거리 (Wasserstein Distance)

그 중 가장 대표적인 쿨백-라이블러 발산에 대해 알아보자.

쿨백-라이블러 발산(Kullback-Leibler Divergence, KL)

  • KL Divergence는 다음과 같이 정의한다.

kl1

  • KL Divergence는 다음과 같이 분해 가능하다.

kl2

  • 분류 문제에서 정답레이블을 P, 모델 예측을 Q 라 두면 최대가능도 추정법은 쿨백-라이블러 발산을 최소화하는 것과 같습니다

베이즈 통계학(Bayes’ theorem)

조건부 확률이란?

  • 조건부 확률 $$P(A B)$$ 는 사건 B가 일어난 상황에서 사건 A가 발생할 확률이다.
  • 베이즈 정리는 조건부 확률을 통해 정보를 갱신하는 방법을 알려줌

BayesTheorem

다음 그림은 베이즈 정리 에서 사용되는 변수와 그 의미들이다. BayesTheorem2

베이즈 정리: 예제

BayesTheorem3

아래 그림에서는 만일 오검진될 확률이 1%가 아닌 10%로 올렸을 때의 COVID에 감염되었을 확률이다.(신뢰성이 많이 떨어지게 된다) BayesTheorem4

다음 그림은 조건부확률을 시각화하여 나타낸 것으로 아래 4가지를 나타낸다.

  • True Positive(참을 참으로 판단했을)
  • True Negative(거짓을 거짓으로 판단했을 때)
  • False Negative(거짓을 참으로 판단했을 때)
  • False Positive(참을 거짓으로 판단했을 때)

위의 네가지 경우를 나타내며 예제에서 False Positive의 경우 0.01 에서 0.1 로 증가하였을때 정밀도(Precision)은 0.916 에서 0.524로 감소했다. 조건부확률 시각화

베이즈 정리를 통한 정보의 갱신

  • 베이즈 정리를 통해 새로운 데이터가 들어왔을 때 앞서 계산한 사후 확률을 사전확률로 사용하여 갱신된 사후확률을 계산할 수 있다.
  • 이전에서 계산한 사후확률이 다음것의 사전확률이 된다.

정보 갱신

아래의 예제를 보면 정밀도가 상당히 향상된 것을 확인할 수 있다. 정보 갱신2

조건부 확률 -> 인과관계?

  • 조건부 확률을 인과관계를 추론할 때 사용하면 안된다.
  • 인과관계를 알아내기 위해서는 중첩요인(confounding factor)의 효과를 제거하고 원인에 해당하는 변수만의 인과관계를 계산해야한다. (키가 큰 사람이 지능이 높게 나온다 -> 키가 큰사람이 연령이 높기 때문 지능이 높게나옴)

정보 갱신2

참고 자료 1 : 중심극한정리

참고 자료 2 : 카테고리분포

참고 자료 3 : 라그랑주 승수법

참고 자료 4 : 베이즈 정리

Comments