[AI Book Review #1] (작성중) Machine Learning

Machine learning by 오일석
[AI Book Review #1] (작성중) Machine Learning

Machine learning by 오일석

확률통계

Conditional Independent

  • \(P(x,y|z)=P(x|z)P(y|z)\) 이면 z가 주어졌을때 x와 y는 조건부 독립

베이즈 정리(Bayes’ theorem)

  • 일반적으로 x와 y가 같이 일어날 결합확률(동시에 일어날 확률)이나 y와 x가 같이 일어날 결합확률이 같다.
    • \(P(x,y) = p(y,x)\), 그러므로 아래 식이 성립
    • \(P(y,x) = P(x|y)P(y) = P(x,y) = P(y|x)P(x)\)
  • 위 식을 정리하면 베이즈 정리
    • \[P(y|x) = \frac{P(x|y)P(y)}{P(x)}\]
  • 이때, P(y|x)는 x라는 사건 이후에 발생했으므로 사후확률(posterior probability),
  • P(y)는 x와 상관 없이 알 수 있으므로 사전 확률(prior probability)라고 한다.
  • P(x\|y)는 우도(likelihood)라고 한다.
  • 분모의 P(x)는 기계학습에서 무시된다. 정답중에서 상대적인 확률만 알면되기 때문.

베이즈 정리를 기계학습에 적용

  • 결국 기계학습에서 알고자 하는건 입력 x가 들어왔을 때, 가장 정답일 확률이 높은 y를 찾는 것이다.
    • \(\hat{y}=argmax_y\,P(y|x)\)
  • 그러나 입력 x가 만드는 공간은 무수히 많으므로 p(y|x)를 바로 추정하는 것은 어려움.
  • 따라서 베이즈 정리를 통해 우회적으로 문제를 해결.
    • 사전확률 P(y)와 우도 P(x\|y)를 구할 수 있으면 사후확률 P(y\|x)

      를 구할 수 있다.

  • 사전확률 P(y)는 랜덤샘플링 한 결과에서 y의 분포를 보면 됨.
  • 우도 P(x|y)는 y가 고정되어 있는 상태에서 x의 분포를 추정하는데, y가 고정되어 있으므로 각 y에 대해서 독립적으로 계산이 가능.
  • 우도 추정에 적용할 수 있는 여러 가지 확률밀도 추정(density estimation) 방식이 있는데, 가우시안, 파젠 창, 가우시안 혼합 등 여러 방법 존재

최대 우도

  • \(\mathbb{X}=\{x_1, x_2, ..., x_n\}\)
  • From https://angeloyeo.github.io/2020/07/17/MLE.html
    • likelihood(분포Y|데이터B)는 얻은 데이터 B가 추정하고자 하는 분포 Y에서 나왔을 확률이다.
    • 아래와 같이 전체 표본집합의 결합확률밀도 함수를 likelihood function이라고 한다.
    • \[P(\mathbb{X}|\theta)=\prod_{k=1}^{n}P(x_{k}|\theta)\]
    • (각 샘플들이 IID 이기 때문에 곱해줌)
    • 보통 계산의 편의성 및 확률이라는 작은 값을 n번 곱하면 매우 작은 수가 되므로 log likelyhood function을 계산함
      • \[Liklihood(\theta| \mathbb{X}) = \log P(\mathbb{X}|\theta) = \sum_{i=1}^{n}\log P(x_i | \theta)\]
    • 결국 Maximum Likelihood Estimation은 Likelihood 함수의 최대값을 찾는 방법이라 할 수 있다.
    • \(\hat{\theta}=argmax_{\theta}\;log\;P(\mathbb{X}|\theta)\)
    • log 함수는 단조증가 함수이기 때문에 likelihood function의 최대값을 찾으나 log-likelihood function의 최대값을 찾으나 두 경우 모두의 최대값을 갖게 해주는 정의역의 함수 입력값은 동일하다. 따라서 log를 취해도 solution은 같다.
    • 어떤 함수의 최대값을 찾는 방법 중 가장 보편적인 방법은 미분계수를 이용하는 것이다.
    • 즉, 찾고자하는 파라미터 θ 에 대하여 다음과 같이 편미분하고 그 값이 0이 되도록 하는 θ 를 찾는 과정을 통해 likelihood 함수를 최대화 시켜줄 수 있는 θ 를 찾을 수 있다.
    • \[\frac{\partial}{\partial \theta}L(\theta|x) = \frac{\partial}{\partial \theta}\log P(x|\theta) = \sum_{i=1}^{n}\frac{\partial}{\partial\theta}\log P(x_i|\theta) = 0\]

정보이론

  • 특정 사건에 대한 메시지가 가진 정보량을 수량화 하는 방식(e.g, 고비사막에 눈이 왔다.)

자기 정보(Self-information)

  • 확률변수를 x라 하고 x의 정의역이 \(\{e_1, e_2, ..., e_k\}\)
  • 사건 \(e_i\)의 정보량은 \(h(e_i)\) = 자기 정보(self-information)라 한다.
  • \(h(e_i)=-log_{2}P(e_i)\) or \(h(e_i)=-log_{e}P(e_i)\)
  • 밑이 2인 로그함수는 자기 정보의 단위가 bit
  • 밑이 e인 로그함수는 자기 정보의 단위가 nat(나츠)

엔트로피(entropy)

  • 확률분포의 무질서도 또는 불확실성을 측정
  • 자기 정보의 평균
  • \[H(x) = -\sum_{k=1}^{K} P(e_k) log_2 P(e_k)\]
  • \[H(x) = \int_{-\infty}^{\infty}P(x)log_2P(x)\]
  • 윷놀이보다 주사위의 엔트로피가 더 큰데, 주사위는 모든 사건이 동일한 확률을 가지기 때문에 불확실성이 높기 때문이다.
  • 정오각형 주사위를 만들어도 마찬가지로 윷놀이보다 엔트로피가 높음.
  • 정의역이 커지면 엔트로피도 커진다.

교차 엔트로피

  • 서로 다른 두 확률분포 P와 Q사이의 교차 엔트로피를 구해야 할 때도 있다(이 때, 두 확률분포는 같은 확률 변수에 대해 정의되어 있어야함.)
  • \[H(P, Q) = -\sum_{x}P(x)lnQ(x) = -\sum_{i=1,k}P(e_i)lnQ(e_i)\]
  • 위 식을 아래와 같이 유도 가능
  • \(H(P, Q) = -\sum_{x}P(x)lnQ(x)\)

    \(= -\sum_{x}P(x)lnP(x) + \sum_{x}P(x)lnP(x)-\sum_{x}P(x)lnQ(x)\)

    \(=H(P) + \sum_{x}P(x)ln\frac{P(x)}{Q(x)}\)
  • 마지막 식의 두 번째 항을 KL Divergence라고 한다.
  • 즉, P와 Q의 교차엔트로피는 P의 엔트로피 + P와 Q간의 KL 다이버전스 이다.
    • \[KL(P||Q) = \sum_{x}P(x)ln\frac{P(x)}{Q(x)}\]
    • P와 Q가 같으면 0이다. 따라서 거리 개념을 내포한다.
    • 하지만 \(KL(P\|Q) != KL(Q\|P)\) 이므로 엄밀한 수학적 정의에 따르면 거리가 아니다.