> 모수란?
- 통계적 모델링은 적절한 가정 위에서 확률분포를 추정(inference) 하는 것이 목표이며, 기계학습과 통계학이 공통적으로 추구하는 목표입니다.
- 그러나 유한한 개수의 데이터만 관찰해서 모집단의 분포를 정확하게 알아낸다는 것은 불가능하므로, 근사적으로 확률분포를 추정할 수 밖에 없습니다.
< 예측모형의 목적은 분포를 정확하게 맞추는 것보다는 데이터와 추정 방법의 불확실성을 고려해서 위험을 최소화 하는것입니다. >
- 데이터가 특정 확률분포를 따른다고 선험적으로(apriori) 가정한 후 그 분포를 결정하는 모수(parameter)를 추정하는 방법을 모수적(parametric)방법론이라합니다
- 특정 확률분포를 가정하지 않고 데이터에 따라 모델의 구조 및 모수의 개수가 유연하게 바뀌면 비모수(nonparametric)방법론이라부릅니다
< 기계학습의 많은 방법론은 비모수 방법론에 속합니다. >
평균과 분산을 모수 라고함. 비모수는 모수가 없는것이 아님. 모수가 무한히 많거나 데이터에 따라서 바뀌는 경우임.
> 확률분포 가정하기
- 확률분포를 가정하는 방법 : 우선 히스토그램을 통해 모양을 관찰합니다.
= 데이터가 2개의 값(0또는1)만 가지는 경우 → 베르누이분포
= 데이터가 n개의 이산적인 값을 가지는 경우→카테고리분포
= 데이터가 [0,1] 사이에서 값을 가지는 경우 → 베타분포
= 데이터가 0 이상의 값을 가지는 경우 → 감마분포, 로그정규분포 등
= 데이터가 R 전체에서 값을 가지는 경우 → 정규분포, 라플라스분포 등
- 위 예시가 100%다! 처럼 기계적으로 확률분포를 가정해서는 안 되며, 데이터를 생성하는 원리를 먼저 고려하는 것이 원칙입니다.
< 각 분포마다 검정하는 방법들이 있으므로 모수를 추정한 후에는 반드시 검정을 해야 한다. >
> 데이터로 모수 추정하기.
- 데이터의 확률분포를 가정했다면 모수를 추정해 볼 수 있습니다.
표본분포 ( sample distribution ) 과 표집분포 (sampling distribution) 은 다르다.
통계에 대한 표본들의 분포가 아니라(표본분포), 표본 평균과 표본 분산의 확률 분포가 표집 분포.
모집단의 분포가 정규분포를 따르지 않아도 표본평균의 표집분포는 정규분포를 따른다.
다시말하자면, 표집분포란 표본분포는 다른 것이다. 원래 모집단의 분포가 정규분포를 따르지 않는다 그러면 표본 분포, 즉 sample distribution 은 데이터를 많이 모아도 정규 분포가 될 수 없다. 여기서 말하는 통계량의 확률 분포, 즉 표본 평균의 확률분포가 정규분포를 따른다는 것이고, 표본에 대해서의 분포는 정규분포를 따르지 않을 수 있기 때문에 두가지 다른 개념을 꼭 이해할 것!
원래 확률 분포는 이항 분포이고 이항 분포에서 이항 분포의 표본 분포는 데이터를 모아도 정규분포가 안된다.하지만 이항분포에서 추출한 통계량 즉 표본평균의 확률분포는 정규분포를 따른다. 이 현상을 중심극한 정리라고 합니다.
> 최대가능도 추정법
-표본평균이나 표본분산은 중요한 통계량이지만 확률분포마다 사용하는 모수가 다르므로 적절한 통계량이 달라지게 됩니다
- 이론적으로 가장 가능성이 높은 모수를 추정하는 방법 중 하나는 최대가능도 추정법(maximumlikelihoodestimation,MLE)입니다
< 가능도(likelihood)함수는 모수 θ를 따르는 분포가 x를 관찰할 가능성을 뜻하지만 확률로 해석하면 안됩니다 >
- 데이터 집합 X가 독립적으로 추출되었을 경우 로그가능도를 최적화합니다.
> 로그가능도를 사용하는 이유
- 로그가능도를 최적화하는 모수 θ는가능도를 최적화하는 MLE가됩니다
- 데이터의 숫자가 적으면 상관없지만 만일 데이터의 숫자가 수억 단위가 된다면 컴퓨터의 정확도로는 가능도를 계산하는것 은불가능합니다
- 데이터가 독립일 경우, 로그를 사용하면 가능도의 곱셈을 로그가능도의 덧셈으로 바꿀 수 있기 때문에 컴퓨터로 연산이 가능해집니다
- 경사하강법으로 가능도를 최적화할 때 미분연산을 사용하게 되는데, 로그 가능도를 사용하면 연산량을 O(n²)에서 O(n)으로줄여줍니다
- 대게의 손실함수의 경우 경사하강법을 사용하므로 음의 로그가능도 (negativelog-likelihood)를 최적화하게 됩니다
> 딥러닝에서 최대가능도 추정법
- 최대가능도 추정법을 이용해서 기계학습 모델을 학습할 수 있습니다.
- 딥러닝 모델의 가중치를 θ = (W(¹) , ...... , W(L) )라 표기했을 때 분류 문제에서 소프트맥스 벡터는 카테고리분포의 모수 (p₁, .... PK) 를 모델링 합니다.
- 원핫벡터로 표현한 정답레이블 y = (y₁, ... yK) 을 관찰데이터로 이용해 확률분포인 소프트맥스 벡터의 로그가능도를 최적화 할 수 있습니다.
> 확률분포의 거리를 구하기.
- 기계학습에서 사용되는 손실함수들은 모델이 학습하는 확률분포와 데이터에서 관찰되는 확률분포의 거리를 통해 유도합니다.
- 데이터공간에 두 개의 확률분포 P(x), Q(x) 가 있을 경우 두 확률분포 사이의 거리(distance)를 계산할 때 다음과 같은 함수들을 이용합니다.
= 총변동 거리 (Total Variation Distance, TV)
= 쿨백-라이블러 발산 ( Kullback-Leibler Divergence, KL )
= 바슈타인 거리 ( Wasserstein Distance )
> 쿨백-라이블러 발산
최대가능도 추정법에서 로그라이크류들을 최대화 시키는것과 동일한 것은. 정답레이블에 해당하는 확률분포 P와 모델예측에 사용되는 확률분포 Q 사이에 거리, 다시말해서 쿨백라이블러 발산의 최소화와 동일함.
확률분포사이의 거리를 최소화하는 개념과 로그 가능도 함수를 최대화 한다는 것이 매우 밀접함.
두개의 확률 분포의 거리를 최소화한다는 개념이 주어진 데이터를 통해서 목적으로 하는 확률 분포에 최적화된 모수를 구하는것과 동일한 개념으로 이해하면 됩니다.
기계학습의 원리가 데이터로부터 확률분포사이의 어떤 거리를 최소화하는 것과 동일하구나. 라고 볼 수있음.
'공부 정리 ( 강의 ) > AI 기초' 카테고리의 다른 글
수료! (2) | 2023.01.02 |
---|---|
4.3.1. 파이썬 시각화 툴 (0) | 2023.01.02 |
4.2.2. 확률론 맛보기 (0) | 2023.01.02 |
4.2.1. pandas 2 (2) | 2022.12.30 |
4.1.2. 딥러닝 학습방법 이해 (0) | 2022.12.30 |