조건부 확률 분포란?
조건부 확률 분포는 어떤 사건이나 변수가 주어졌을 때, 다른 사건이 일어날 확률이 어떻게 분포되는지를 나타냅니다. 인공지능 논문을 읽다보면 수식에서 조건부 확률 분포 표현이 많다보니, 해당 포스트에 개념을 정리했습니다.
1. 기본 개념: 조건부 확률
조건부 확률 P(A∣B) 는 “B가 일어났다는 조건 하에 A가 일어날 확률”을 의미합니다.
공식은 다음과 같습니다:
P(A∣B)=P(B)P(A,B)(단, P(B)>0)
2. 조건부 확률 분포의 예
확률 분포는 “가능한 모든 값에 대한 확률을 나열한 것”이니까, 조건부 확률 분포는 다음과 같이 됩니다:
예를 들어 두 확률 변수 X, Y가 있을 때,
p(x∣y) 는 Y=y라는 조건 하에서 X가 어떤 값을 가질 확률 분포
즉, Y=y일 때 X의 값에 따라 확률이 어떻게 달라지는지를 보여주는 분포입니다.
3. 예시
학생들의 수학 점수 X와 성별 Y가 있다고 해봅시다.
- p(x∣Y=남): 남학생들의 점수 분포
- p(x∣Y=여): 여학생들의 점수 분포
즉, 성별이라는 조건이 주어졌을 때의 점수 분포가 조건부 확률 분포입니다.
4. 머신러닝에서의 조건부 확률 분포
4.1. 머신러닝 활용 예시
- Naive Bayes: p(label∣features)
- VAE: p(x∣z)
→ 잠재변수 z가 주어졌을 때 관측값 x의 분포 (즉, 하나의 z에서 확률적으로 여러가지 x가 생성됩니다.)
4.2. 최대우도추정 (Maximum Likelihood Estimation, MLE)
수식:
θ∗=argθmaxp(데이터∣θ)
이 표현은 최대우도추정(MLE)을 나타냅니다.
argmax는 어떤 값을 넣었을 때 함수의 출력이 최대가 되는 인풋을 찾는다는 뜻입니다.
예시:
argxmaxf(x)
→ 함수 f(x)가 최대가 되는 x값을 구하는 것!
θ∗=argθmaxp(데이터∣θ)
→ "데이터가 주어졌을 때, 그 데이터를 가장 잘 설명해주는 모델 파라미터 θ를 찾자"
→ 즉, 학습을 통해 최고의 모델 파라미터 θ를 찾는 과정입니다.
여기서 데이터는 보통 다음을 의미합니다:
-
입력 x 와 정답 y 쌍 전체
-
또는 전체 학습 데이터셋:
D={(xi,yi)}i=1N
-
p(데이터∣θ)는 모델이 데이터셋을 얼마나 잘 설명하는지에 대한 확률입니다.
-
네트워크 출력은 이 확률을 예측하기 위한 도구이고,
-
데이터 자체는 모델이 맞춰야 할 정답 값들입니다.
예시
- 입력 이미지: 고양이 사진 x
- 정답 라벨: 고양이 y
- 모델 파라미터: θ
모델의 예측 확률:
p(y∣x;θ)
→ 모델이 x를 보고 y일 확률을 얼마나 높게 예측하는지를 의미합니다.
학습의 목표는 이 확률이 커지도록,
즉 우도(likelihood)를 최대화하도록 θ를 조정하는 것입니다.
개념 | 설명 |
---|
argmaxθ | 어떤 θ 값이 확률을 가장 크게 만드는지 찾는 것 |
p(데이터∣θ) | 모델이 데이터를 잘 설명할 확률 (우도) |
데이터 | 학습에 사용되는 (x,y) 쌍 또는 전체 데이터셋 |
학습의 목적 | 우도를 최대화하는 파라미터 θ 찾기 |
5. 요약
용어 | 의미 |
---|
조건부 확률 P(A∣B) | B가 일어났을 때 A가 일어날 확률 |
조건부 확률 분포 p(x∣y) | Y가 주어졌을 때 X의 전체 확률 분포 |
중요한 점 | 주어진 조건에 따라 확률이 바뀐다 |
활용 예시 | 베이즈 정리, 생성 모델, VAE, 분류 모델 등 |