ML/Statistics

[ML] Statistics - 확률 기초

제이널 2025. 5. 31. 14:56

확률을 알아야 하는 이유

일반적으로 기계학습 모델의 출력은 확률 형태를 띤다.

 

  • 이미지 분류 모델이 이미지 x에 대해서 75% 확률로 고양이일 것이라고 예측했다.
  • 글 쓰기 모델은 "나는 밥을" 이후에 "먹었다"라는 단어가 나올 확률을 42%로 예측했다.

 

그렇다면 모델은 어떤 기준으로 "확률"을 출력했을까?

이는 확률 분포와 관련이 있는데, 확률 분포를 이해하려면 확률의 개념을 알아야 한다.


확률이란?

확률(Probability)
- 특정한 사건이 일어날 가능성을 수로 표현한 것
- 확률은 0부터 1(100%) 사이의 실수로 표현

실수(Real Number)
- 수직선 위에 표시할 수 있는 모든 수
- 자연수(1, 2, ...), 정수(-1, 0, 1, ...), 유리수(분수), 무리수(π 등)를 포함하는 모든 수

 


경우의 수 계산

확률을 계산하기 위해선 경우의 수를 계산할 수 있어야 하는데, 여기에 곱의 법칙, 순열, 조합이 사용된다.

 

 

곱의 법칙

어떤 사건이 순차적으로 일어날 때, 각 단계의 경우의 수를 모두 곱하면 전체 경우의 수가 된다.

  • 예시 1) 티셔츠 3장, 바지 2장이 있을 때 코디할 수 있는 모든 경우의 수는?
    • 3 * 2 = 6
  • 예시 2) 동전을 3번 던졌을 때 앞면, 뒷면이 나올 모든 경우의 수는?
    • 2 * 2 * 2 = 8

 

순열

서로 다른 n개 중 r개를 뽑아서 "중복 없이", "순서대로" 배열, 즉 같은 것을 뽑았더라도 뽑은 순서가 다르면 다른 것으로 본다.

  • 예시 1) 5명 중에 3명을 뽑아서 중복 없이 순서 있게 줄 세우는 경우의 수는?
      - 5! / (5 - 3)! = 120 / 2 = 60
  • 예시 2) 이미지 분류 모델에 이미지를 학습시켜야 하는데, 학습시키는 이미지 세트의 순서에 따라 분류 성능이 달라진다고 한다. 총 3개의 이미지 세트가 있고, 2개의 이미지 세트를 골라서 학습시킬 수 있는 경우의 수는?
      - 3! / (3 - 2)! = 6

 

조합

서로 다른 n개 중 r개를 "중복 없이", "순서 없이" 뽑기, 즉 순서가 달라도 같은 것으로 본다.

 

  • 예시 1) 5명 중에 3명을 순서 상관 없이 줄 세우는 경우의 수는?
    • 5! / (5 - 3)!3! = 120 / (2 * 6) = 10
  • 예시 2) 이미지 분류 모델에 이미지를 학습시켜야 하는데, 학습시키는 이미지 세트의 순서는 성능에 영향이 없다고 한다. 3개의 이미지 세트가 있고, 2개의 이미지 세트를 골라서 학습시킬 수 있는 경우의 수는?
    • 3! / (3 - 2)!2! = 6 / (1 * 2) = 3

 

중복 순열

중복 선택을 허용하는 순열, 즉 [1, 2, 3]이라는 숫자에서 2개를 뽑는다고 가정할 때 [1, 1]도 허용한다.

 

 

중복 조합

중복 선택을 허용하는 조합

 

 

  • 예시) 딥러닝에서는 학습된 여러 모델의 결과를 활용해서 최종적인 결과를 생성하는 앙상블(ensemble) 방법이 존재한다.
    • 서로 다른 딥러닝 아키텍처가 3개 존재한다.
    • 중복을 허용하여 아키텍처 4개를 골라 딥러닝 모델 4개를 학습시키고자 할 때, 모든 아키텍처 조합의 수는?
      • 6! / (6 - 4)!4! = 720 / (2 * 24) = 15

통계적 확률

  • 주사위를 굴렸을 때 5가 나올 수학적 확률은 1/6이다.
  • 그렇다면 실제로 주사위를 6번 굴렸을 때 반드시 5가 나올까?
  • 시행 횟수가 적기 때문에 장담할 수 없다.
  • 하지만 주사위를 굴리는 횟수가 많아질수록 1/6에 가까워질 것이다.
  • 시행 횟수를 무한히 크게 만들었을 때 수렴하는 값을 통계적 확률이라 한다.

 

 


✅ 확률 변수와 확률 함수

 

알아야 하는 이유

예를 들어 분류(Classification) 모델의 출력은 확률 분포에 해당한다. 이미지 x가 주어졌을 때 클래스 y의 확률이 출력되는데, 확률 변수 X의 값에 따라서 Y의 확률 분포가 변경되는 조건부 확률을 이해하기 위해 알야아 한다.

 

 

확률 변수


- 확률 시험의 결과를 수치로 나타내는 변수.
- 확률 변수는 대문자 X로 표기하고, 확률 변수가 취할 수 있는 값은 소문자 x로 표현한다.
- 예를 들어, 주사위 2개를 던질 때마다 눈금의 합이 변한다. 이 눈금의 합들을 확률 변수(X)라고 하고, 눈금의 합 중에 나올 수 있는 특정 눈금의 합을 x라고 할 수 있다.

확률 함수


- 확률 변수가 특정 값을 가질 확률을 나타내는 함수. 이산(셀 수 있는) 확률 변수의 경우, 확률 질량 함수(PMF)라고 불리고, 연속(셀 수 없는) 확률 변수의 경우, 확률 밀도 함수(PDF)라고 불린다.
- 예시 1) 주사위 두 개를 던져서 나올 수 있는 모든 눈금의 합(X) 중에 3(x)이 나올 확률
  - P(X = 3) = 2 / (6*6)
- 예시 2) 모든 이미지 중에서 특정 이미지 x가 나올 확률 = P(x)


✅ 확률 분포(Probability Distribution)

확률 변수가 취할 수 있는 모든 값과 그 값들이 나타날 확률을 나열한 표/그림/함수식이다.

 

 

정규 분포 예시

 

확률 분포 함수(Probability Distribution Function)

확률 변수 X가 가지는 값 x에 확률 P(X = x)을 대응시키는 함수를 의미한다.

모든 사건에 대하여 확률 분포 함수의 값을 표현한 것을 "확률 분포"로 이해할 수 있다.

 

 

 

이산 확률 분포(Discrete Probability Distribution)

확률 변수 X가 취할 수 있는 모든 값을 셀 수 있는 경우, 이를 이산 확률 변수라고 한다.

이때 이산 확률 분포는 이산 확률 변수의 확률 분포를 의미한다.

 

 

확률 질량 함수(Probability Mass Function, PMF)

이산 확률 변수가 특정한 값을 가질 확률을 출력하는 함수이며, 다음과 같이 정의할 수 있다.

 

  • 예시 1) 동전 2개를 동시에 던지는 시행에서 앞면엔 0, 뒷면엔 1이 적혀 있을 때, 두 눈금의 합을 X라고 한다.
    • f(0) = P(X = 0) = 1/4
    • f(1) = P(X = 1) = 1/2
    • f(2) = P(X = 2) = 1/4
  • 예시 2) 분류(Classification) 모델의 출력은 확률 분포에 해당한다.
    • 이미지 x가 주어졌을 때 클래스 y의 확률을 P(y | x)로 표현할 수 있다.
    • 확률 변수 X의 값에 따라서 Y의 확률 분포가 변경된다는 의미에서 조건부 확률이라 한다.
      • P(Y = 고양이 | X = 이미지 x) = 15%
      • P(Y = 강아지 | X = 이미지 x) = 55%
      • P(Y = 다람쥐 | X = 이미지 x) = 30%

확률 분포 그래프

 

 

이외에도 셀 수 없는 확률 변수에 대한 분포를 계산할 수 있는 연속 확률 변수 확률 밀도 함수가 존재한다.