Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- IBM
- 파이썬
- softeer
- 알고리즘
- 코세라
- 데이터사이언스
- Clean Code
- Boostcamp AI
- Data Science
- 클린코드
- 소프티어
- 클린코드 파이썬
- 데이터 사이언스
- data science methodology
- 깨끗한 코드
- 코테
- Python
- 티스토리챌린지
- 오블완
- string
- 데이터과학
- programmers
- 자바
- 코딩테스트
- Java
- 문자열
- AI Mathematics
- 프로그래머스
- Coursera
- 부스트캠프
Archives
- Today
- Total
떼닝로그
통계학 기초 본문
모수
- 통계적 모델링은 적절한 가정 위에서 확률분포를 추정(inference)하는 것이 목표
- 유한한 개수의 데이터에서 관측하여 정확하게 알아내는 것은 불가능하므로, 근사적으로 확률분포를 추정해야 함
- 예측모형의 목적은 데이터와 추정 방법의 불확실성을 고려해서 위험을 최소화하기 위함
- 어떤 가정을 미리 부여하는지 아닌지에 따라 모수적, 비모수적 방법론으로 나뉨
- 데이터가 특정 확률분포를 따른다고 선험적으로(a priori) 가정한 후, 그 분포를 결정하는 모수(parameter)를 추정하는 방법을 모수적(parametric) 방법론
- 특정 확률분포를 가정하지 않고, 데이터에 따라 모델의 구조 및 모수의 개수가 유연하게 바뀌면, 또는 모수의 개수가 무한할 때 비모수(noparametric) 방법론
확률분포 사용 예시
- 기계적으로 확률분포를 가정해선 안 되며, 데이터를 생성하는 원리를 먼저 고려해야
- 데이터가 2개의 값만 가지는 경우 : 베르누이 분포
- 데이터가 N개의 이산적인 값을 가지는 경우 : 카테고리 분포
- 데이터가 [0,1]사이에서 값을 가지는 경우 : 베타분포
- 데이터가 0 이상의 값을 가지는 경우 : 감마분포, 로그정규분포 등
- 데이터가 실수 전체에서 값을 가지는 경우 : 정규분포, 라플라스 분포 등
- 모수를 추정한 후에는 반드시 통계적 검정을 해야 함
데이터로 모수 추정하기
- 정규분포의 모수는 평균 μ과 분산 σ².

- 표본분산을 구할 때 N-1을 사용하는 것은 불편(unbiased) 추정량을 구하기 위해서임
- 통계량의 확률분포를 표집분포(sampling distribution)
- 통계량은 표본들의 분포가 아닌, 표본평균과 표본분산의 확률분포를 나타냄
- 표집분포는 N이 커질수록 정규분포 N(μ, σ²/N)을 따름 : 이를 중심극한정리(Central Limit Theorem)
- 베르누이 확률 분포를 따르는 확률변수들의 분포

- 점점 정규분포를 따라가는 모습 확인 가능. 평균값은 하나의 값으로, 분산은 점점 작아지는 형태.
최대가능도 추정법
- 표본평균과 표본분산은 중요한 통계량이나, 확률분포마다 사용하는 모수가 다르므로 적절한 통계량이 달라지게 됨.
- 최대가능도 추정법(maximum likelihood estimation, MLE)를 통해 이론적으로 가장 가능성이 높은 모수를 추정 가능

- 확률밀도에선 θ를 x에 대한 함수로 인식하나, 가능도(likelihood)에서는 주어진 data x에 대해서 모수 θ를 변수로 둔 함수
- 데이터 집합 X가 독립적으로 추출되었을 경우 로그가능도 최적화

왜 로그가능도를 사용하는가?
- 로그가능도를 최적화하는 모수 θ는 가능도를 최적화하는 MLE
- 데이터의 숫자가 수억 단위가 된다면, 연산 오차때문에 컴퓨터의 정확도로 가능도 계산 불가
- 로그가능도를 이용함으로써 곱셈을 덧셈으로 변환 가능 -> 컴퓨터로의 연산 가능
- 연산량 O(n²)에서 O(n)으로 줄어듦
- 대개의 손실함수의 경우, 경사하강법을 사용하므로, 음의 로그가능도(negative log-likelihood)를 최적화
MLE 추정법 예제
정규분포 (연속확률변수)
- 정규분포에서의 모수는 평균과 표준편차
- 정규분포를 따르는 확률변수 X로부터 독립적인 표본 {x₁, x₂, ..., x_n}을 얻었을 때 최대가능도 추정법을 이용하여 모수 추정

- 위의 결과에서 각각 평균과 표준편차로 나눠 미분 진행.
- 두 미분이 모두 0이 되는 μ와 σ를 찾으면 가능도 최대화

- 데이터가 주어져있을 때 데이터들의 표본평균이 최대가능도 추정법과 일치
- MLE는 불편추정량을 보장하진 않으나, consistency를 보장함
카테고리 분포 (이산확률변수)
- 베르누이분포(두 개의 값 중 하나 선택)를 d차원으로 확장한 형태가 카테고리분포. one-hot vector로 값 표현
- 카테고리 분포 Multinoulli(x;p₁, p₂, ..., p_d)를 따르는 확률변수 X로부터 독립적인 표본 {x₁, x₂, ..., x_n}을 얻었을 때 최대가능도 추정법을 이용하여 모수 추정하면

- 카테고리분포의 모수는 확률을 나타내고 있기 때문에 p를 모두 더한 값이 1이 되어야 함
- 주어진 \(x_i\)의 k번째 차원에 해당하는 값인 \(x_ik\)는 0과 1로만 이루어짐
- log를 이용하여 곱셈을 덧셈으로 표현 가능

- 모수들을 전부 더했을 때 1이 된다는 제약을 만족하면서 왼쪽 목적식을 최대화하는 것이 MLE
- 라그랑주 승수법을 통해 최적화 문제를 풀 수 있음
- 제약식(등식)을 양변으로 넘겨준 상태에서 λ 곱해준 식을 목적식에 더해줌으로써 새로운 목적식 생성
- 카테고리 분포의 MLE는 경우의 수를 세어서 비율을 구하는 것
딥러닝에서 최대가능도 추정법
- 딥러닝 모델의 가중치를 θ = \((W^(1), ..., W^(L))\)이라 표기했을 때, 분류 문제에서 소프트맥스 벡터는 카테고리분포의 모수(p₁, p₂, ..., \(p_k\))를 모델링
- one-hot vector로 표현한 정답 레이블 y를 관찰데이터로 이용해 확률분포인 소프트맥스 벡터의 로그가능도 최적화 가능
softmax 벡터의 로그가능도 최적화
확률분포의 거리
- 손실함수(loss 함수)들은 모델이 학습하는 확률분포와 데이터에서 관찰되는 확률분포의 거리를 통해 유도
- 데이터공간에 두 개의 확률분포 \(P(x)\)와 \(Q(x)\)가 있을 경우 두 확률분포 사이의 거리를 계산할 때 아래 함수 이용
- 총변동 거리 (Total Variation Distance, TV)
- 쿨백-라이블러 발산 (Kullback-Leibler Divergence, KL)
- 바슈타인 거리 (Wasserstein Distane)
쿨백-라이블러 발산
- 분류 문제에서 정답 레이블을 P, 모델 예측을 Q라 두면 최대가능도 추정법은 쿨백-라이블러 발산을 최소화하는 것과 같음
- 확률분포상의 거리를 최소화하는 것과 로그가능도를 최대화하는 것은 굉장히 밀접하게 연결되어있음
'Boostcamp AI Tech > AI Mathematics' 카테고리의 다른 글
CNN 기초 (0) | 2022.06.18 |
---|---|
베이즈 통계학 (0) | 2022.06.17 |
확률론 기초 (0) | 2022.06.16 |
딥러닝 학습방법 이해하기 (0) | 2022.06.16 |
경사 하강법 (Gradient Descent) (1) | 2022.06.15 |
Comments