인공지능수학: 통계학
숙제 14 (HW 14)
- 어떤 확률 변수에 대한 확률분포가 아래 변수 P와 같이 주어져 있다. 이 확률분포의 엔트로피 (entropy)를 비트로 계산하시오.
import numpy as np
P=[0.25, 0.1, 0.25, 0.1, 0.18, 0.12]
def entropy (P):
return sum([-P[i]*np.log2(P[i]) for i in range(len (P))])
print("Entropy = ", entropy(P))
from scipy import stats
stats.entropy(P, base=2)
- 아래는 2개의 확률 분포를 각각 변수 P와 Q에 저장하였다. 확률분포 P에 대한 확률분포 Q의 교차 엔트로피를 계산하시오.
import numpy as np
P=[0.35, 0.25, 0.1, 0.18, 0.12]
Q=[0.32, 0.23, 0.11, 0.20, 0.14]
def crossentropy (P, Q):
return sum([-P[i]*np.log2(Q[i]) for i in range(len (P))])
print("Cross Entropy = ", crossentropy(P, Q))