def entropy_score(labels):
"""
entropy = sum(p*log(1/p))
"""
n_labels = labels.shape[0]
if n_labels <= 1:
return 0.0
counts = np.bincount(labels)
probs = counts / float(n_labels)
n_classes = np.count_nonzero(probs)
if n_classes <= 1:
return 0.0
entropy = 0.0
for p in probs:
entropy -= p*np.log(p)
return entropy
评论列表
文章目录