pullwall
Well done! 코딩
pullwall
전체 방문자
오늘
어제
  • 분류 전체보기 (151)
    • 개발환경 (2)
    • java study (21)
    • 백준 단계별 (51)
    • 알고리즘 (3)
    • AI (43)
    • 클라우드 (3)
      • Kubernetes in Google (3)
    • 논문 (5)
    • 리눅스 (1)
    • AWS (4)
    • 수학 (15)
    • 기타 (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 알고리즘
  • 정렬
  • dataset
  • AWS
  • 선택정렬
  • Ai
  • 자바독학
  • 자바
  • pytorch
  • 단계별
  • 수학
  • Kubernetes
  • Java
  • 백준
  • 정렬알고리즘
  • 논문리뷰
  • Google
  • 백준 단계별
  • 쿠버네티스
  • LLM

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
pullwall

Well done! 코딩

수학

Entropy, Cross-Engropy, KL-divergence, Mutual information

2024. 8. 31. 12:19
728x90
해당 게시물은 "혁펜하임의 AI DEEP DIVE"를 수강하고 작성되었습니다.

1.Entropy

Entropy는 "평균 코드 길이의 최소"이다.

여기서 코드란, 빈도 수가 높은 (자주 사용되는) 정보의 길이를 압축하는 것이다.

 

"나"라는 단어는 자주 사용되기 때문에 0이라는 정보로 압축하고, "뷁"이라는 단어는 자주 사용되지 않기 때문에 11011의 정보로 표현하여, "나"=11111, "뷁"=11011 일때 보다 정보량을 압축시키는 것이다.

 

Entropy는 "불확실성" 으로도 해석할 수 있다.

앞면만 나오는 동전이 있다면, 그 동전을 던지는 시행의 Entropy는 0이다.

 

이는 수식으로 아래와 같이 표현할 수 있다. 

  • $\sum_{i}^{}-p_ilog_2p_i$ 해당 수식은 Lower bound의 역할을 한다.
  • $\sum_{i}^{}-p_ilog_2p_i \leq \sum_{i}^{}l_ip_i$

코드의 길이를 $l_i$이라고 한다면, 이론적으로 $l_i=-log_2p_i$일 때  평균 코드의 길이가 최소가 되는 순간을 얻을 수 있다.

 

Entropy는 균등 분포일 때(동전 던지기나 주사위 던지기 같은 경우) 제일 높게 측정된다.

확률 분포가 불균등해야, source coding 즉, 정보 압축을 통해 이득을 볼 수 있다. 

 

 


 

2.Cross-entropy

Entropy가 $p_i$를 따랐다면, Cross-entropy는 $q_i$를 따른다고 가정한다. ($p_i$를 모르거나 정수가 아닐 수도 있기 때문에)

 

딥러닝에서는 $q$를 신경망의 출력으로 사용하며, $p$와 최대한 비슷해 지도록 되기 위해 학습한다.

 

이는 수식으로 아래와 같이 표현할 수 있다.

  • $\sum_{i}^{}-p_ilog_2q_i$

이는 실제로는 $p$를 따르지만, $q$를 따른다고 가정하고 정의한 수식이기 때문에 항상 Entropy보다 크다.

 

 

 


 

 

3.KL-divergence

Cross-entropy에서 entropy를 뺀 것이다.

수식으로는 아래와 같이 나타낼 수 있다.

  • $\sum_{i}^{}-p_ilog_2 \frac{p_i}{q_i}$

이는" p와 q의 분포 차이(거리)" 로 해석할 수 있다.

 

여기서 $q$만 업데이트 할 수 있다면, KL-divergence를 최소화 하는 것은 Cross-entropy를 최소화 하는 것과 같다.

 

 

 


 

 

 

4.Mutual information

"독립적이지 않은 정도"를 의미한다. (독립이면 0)

 

수식으로는 아래와 같이 나타낼 수 있다.

  • $\sum_{i}^{}\sum_{j}^{}-p(x_i,y_j)log_2\frac{p(x_i,y_j)}{p(x_i)p(y_j)}$

이는 $ p(x_i,y_j) $와 $ p(x_i)p(y_j) $의 분포 차이를 보고자 하는 것이다.

 

$x_i, y_j$가 독립이라면 $ p(x_i,y_j) =p(x_i)p(y_j)$로 바뀌어 수식의 결과가 0이 된다.

 

따라서 Mutual information이 클수록 서로 독립적이지 않다. 라고 해석할 수 있다.

728x90

'수학' 카테고리의 다른 글

최대 사후 확률 (MAP : Maximum A Posteriori)  (0) 2024.08.30
최대 우도 추정 (MLE : Maximum Likelihood Estimation)  (0) 2024.08.30
균등 분포와 정규 분포  (0) 2024.08.30
평균과 분산에 대하여  (0) 2024.08.29
확률 및 랜덤 변수  (0) 2024.08.29
    '수학' 카테고리의 다른 글
    • 최대 사후 확률 (MAP : Maximum A Posteriori)
    • 최대 우도 추정 (MLE : Maximum Likelihood Estimation)
    • 균등 분포와 정규 분포
    • 평균과 분산에 대하여
    pullwall
    pullwall

    티스토리툴바